Skill

ডেটা লোড করা (CSV, Image, Text)

Data Preprocessing এবং Augmentation - কেরাস (Keras) - Machine Learning

357

ডেটা লোড করা একটি গুরুত্বপূর্ণ পদক্ষেপ যখন আপনি মেশিন লার্নিং বা ডীপ লার্নিং মডেল তৈরি করছেন। এটি বিভিন্ন ফরম্যাটে ডেটা লোড করার প্রক্রিয়া ব্যাখ্যা করে, যেমন CSV ফাইল, ইমেজ ফাইল, এবং টেক্সট ডেটা। নিচে এই ফরম্যাটগুলো থেকে ডেটা লোড করার পদ্ধতি আলোচনা করা হলো।


১. CSV ফাইল থেকে ডেটা লোড করা

CSV (Comma Separated Values) ফাইল হল একধরনের টেক্সট ফাইল যা সাধারণত ডেটা টেবিল হিসেবে ব্যবহৃত হয়। Python এ CSV ফাইল থেকে ডেটা লোড করার জন্য সবচেয়ে জনপ্রিয় লাইব্রেরি হলো Pandas

১.১ Pandas ব্যবহার করে CSV লোড করা

Pandas লাইব্রেরি ব্যবহার করে আপনি CSV ফাইল থেকে সহজেই ডেটা লোড করতে পারেন। প্রথমে Pandas ইনস্টল করতে হবে (যদি ইনস্টল না থাকে):

pip install pandas

তারপর Python স্ক্রিপ্টে নিম্নলিখিত কোডটি ব্যবহার করুন:

import pandas as pd

# CSV ফাইল থেকে ডেটা লোড করা
df = pd.read_csv('data.csv')

# প্রথম ৫টি রো দেখানো
print(df.head())
  • pd.read_csv(): এটি একটি ফাংশন যা CSV ফাইল থেকে ডেটা লোড করে এবং একটি Pandas DataFrame তৈরি করে।
  • df.head(): এটি DataFrame এর প্রথম ৫টি রো প্রিন্ট করবে।

১.২ CSV থেকে নির্দিষ্ট কলাম লোড করা

যদি আপনি CSV থেকে নির্দিষ্ট কলাম লোড করতে চান, তাহলে usecols প্যারামিটার ব্যবহার করতে পারেন:

df = pd.read_csv('data.csv', usecols=['Column1', 'Column2'])

২. ইমেজ ফাইল থেকে ডেটা লোড করা

ইমেজ ডেটা লোড করার জন্য, আপনি সাধারণত PIL (Python Imaging Library) বা OpenCV ব্যবহার করতে পারেন। কিন্তু, ডীপ লার্নিং মডেল তৈরি করার জন্য TensorFlow বা Keras এর ইনবিল্ট ফাংশনও ইমেজ লোড করার জন্য ব্যবহার করা হয়।

২.১ PIL (Pillow) ব্যবহার করে ইমেজ লোড করা

Pillow হল Python এর জন্য একটি ইমেজ প্রসেসিং লাইব্রেরি। এটি ইনস্টল করতে:

pip install pillow

ইমেজ লোড করার জন্য:

from PIL import Image

# ইমেজ লোড করা
img = Image.open('image.jpg')

# ইমেজ দেখানো
img.show()

২.২ TensorFlow/Keras ব্যবহার করে ইমেজ লোড করা

TensorFlow বা Keras এর মাধ্যমে ইমেজ লোড করতে, আপনি tensorflow.keras.preprocessing.image মডিউল ব্যবহার করতে পারেন:

from tensorflow.keras.preprocessing import image

# ইমেজ লোড করা এবং রিসাইজ করা
img = image.load_img('image.jpg', target_size=(224, 224))

# ইমেজকে numpy অ্যারে এ কনভার্ট করা
img_array = image.img_to_array(img)

# ইমেজের আকার
print(img_array.shape)
  • load_img(): ইমেজ লোড করার জন্য ব্যবহৃত হয়, এবং target_size দিয়ে ইমেজের সাইজ রিসাইজ করা হয়।
  • img_to_array(): ইমেজকে একটি NumPy অ্যারেতে কনভার্ট করে, যা মডেল প্রশিক্ষণের জন্য ব্যবহৃত হতে পারে।

৩. টেক্সট ডেটা লোড করা

টেক্সট ডেটা লোড করার জন্য, Python এর ফাইল হ্যান্ডলিং বা Pandas ব্যবহার করা যেতে পারে। সাধারণত টেক্সট ডেটা লোড করতে open() ফাংশন ব্যবহার করা হয়।

৩.১ টেক্সট ফাইল থেকে ডেটা লোড করা

# টেক্সট ফাইল থেকে ডেটা লোড করা
with open('textfile.txt', 'r') as file:
    text = file.read()

# টেক্সট প্রদর্শন
print(text)
  • open(): এটি ফাইল খোলার জন্য ব্যবহার করা হয়।
  • read(): পুরো ফাইলের কনটেন্ট পড়তে ব্যবহৃত হয়।

৩.২ Pandas ব্যবহার করে টেক্সট লোড করা

Pandas দিয়ে আপনি CSV বা TSV (Tab Separated Values) ফাইলগুলির মতো টেক্সট ডেটাও সহজে লোড করতে পারেন:

import pandas as pd

# টেক্সট ডেটা লোড করা
df = pd.read_csv('textfile.txt', delimiter="\t")

# প্রথম ৫টি রো দেখানো
print(df.head())

৩.৩ টেক্সট প্রিপ্রসেসিং এবং টোকেনাইজেশন

টেক্সট ডেটা প্রিপ্রসেসিং এর জন্য Keras বা NLTK (Natural Language Toolkit) ব্যবহার করা যায়। উদাহরণস্বরূপ, Keras এর Tokenizer ক্লাস ব্যবহার করা:

from tensorflow.keras.preprocessing.text import Tokenizer

# টোকেনাইজার তৈরি করা
tokenizer = Tokenizer()
tokenizer.fit_on_texts(text)

# টোকেনাইজড ডেটা দেখানো
print(tokenizer.texts_to_sequences(['Example sentence for tokenization']))

সারাংশ

  1. CSV থেকে ডেটা লোড করা: Pandas ব্যবহার করে CSV ফাইল থেকে ডেটা লোড করা হয়। pd.read_csv() ফাংশন দিয়ে এটি করা যায়।
  2. ইমেজ থেকে ডেটা লোড করা: Pillow বা TensorFlow/Keras ব্যবহার করে ইমেজ লোড করা যায় এবং পরবর্তীতে মডেল প্রশিক্ষণের জন্য প্রস্তুত করা যায়।
  3. টেক্সট ডেটা লোড করা: Python এর open() ফাংশন বা Pandas ব্যবহার করে টেক্সট ফাইল থেকে ডেটা লোড করা যায়। টেক্সট প্রিপ্রসেসিং এবং টোকেনাইজেশনের জন্য Keras বা NLTK ব্যবহার করা যায়।

এই উপায়ে আপনি বিভিন্ন ধরনের ডেটা লোড করতে পারেন এবং ডীপ লার্নিং অথবা মেশিন লার্নিং মডেল তৈরির জন্য প্রস্তুত করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...