কম্পিউটার টিউটোরিয়াল

পাইথন - লিস্ট থেকে ট্রিপলেট (৩-টি উপাদানের সমষ্টি) তৈরি করার পদ্ধতিগুলো

একটি লিস্ট থেকে পরপর তিনটি উপাদান নিয়ে স্লাইডিং উইন্ডো পদ্ধতিতে ট্রিপলেট তৈরি করা একটি সাধারণ টেক্সট প্রসেসিং এবং NLP টাস্ক। নিচে দুটি পদ্ধতি দেখানো হলো।

উদাহরণ

list_of_words = ['I', 'am', 'Vishesh', 'and', 'I', 'like', 'Python', 'programming']
# প্রত্যাশিত: [['I','am','Vishesh'], ['am','Vishesh','and'], ...]

১. লিস্ট কাম্প্রিহেনশন + স্লাইসিং (সংক্ষিপ্ত এবং দ্রুত)

triplets = [list_of_words[i:i + 3] for i in range(len(list_of_words) - 2)]
print(triplets)

২. স্পষ্ট লুপ ব্যবহার করে (বোঝার জন্য সহজ)

out = []
length = len(list_of_words)
for z in range(0, length - 2):
    temp = [
        list_of_words[z],
        list_of_words[z + 1],
        list_of_words[z + 2]
    ]
    out.append(temp)
print(out)

আউটপুট (দুই পদ্ধতিরই একই)

[
  ['I', 'am', 'Vishesh'],
  ['am', 'Vishesh', 'and'],
  ['Vishesh', 'and', 'I'],
  ['and', 'I', 'like'],
  ['I', 'like', 'Python'],
  ['like', 'Python', 'programming']
]

সাধারণীকরণ: যেকোনো উইন্ডো সাইজের জন্য

def sliding_window(lst, window_size):
    return [lst[i:i + window_size] for i in range(len(lst) - window_size + 1)]

# ব্যবহার
print(sliding_window(list_of_words, 3))  # ট্রিপলেট
print(sliding_window(list_of_words, 2))  # পেয়ার (বিগ্রাম)
print(sliding_window(list_of_words, 4))  # কোয়াড্রুপলেট

NLP-এ ব্যবহার

এই প্যাটার্নটি n-gram তৈরি, ভাষা মডেল ট্রেনিং, টেক্সট জেনারেশন এবং সিকোয়েন্স প্রেডিকশনে ব্যাপকভাবে ব্যবহৃত হয়। বড় ডেটাসেটের জন্য itertools.islice বা more_itertools.windowed ব্যবহার করা আরও দক্ষ।

  1. পাইথনে দেয়া রেঞ্জের সাথে নম্বরের লিস্ট তৈরি করুন

  2. পাইথন লিস্ট থেকে বিগ্রাম (Bigram) তৈরি করা

  3. পাইথনে ৩D লিস্ট তৈরি করার প্রোগ্রাম

  4. পাইথনে লিস্ট থেকে স্ট্রিং তৈরি করার পদ্ধতি