توی این آموزش به سراغ کتابخونه ی huggingface رفتیم که یکی از مهم ترین و خفن ترین ابزارهایی هستش که اگر میخواید توی حوزه ی NLP کار کنید باید بلد باشید. این یک آموزش کوتاهه و قابلیت های این کتابخونه خیلی فراتر ازین حرفاست ! ولی شما رو با یه سری چیزا آشنا میکنه.
🎓 آموزش مقدماتی Hugging Face برای NLP با Python
1️⃣ مقدمهای بر Hugging Face
کتابخانهی Hugging Face، یک ابزار متنباز برای استفاده از مدلهای یادگیری عمیق مخصوص زبانهای انسانی هست. این کتابخانه به شما امکان میده:
از مدلهای پیشآموزشدیده استفاده کنید
دیتاستهای رایج رو با یک خط کد بارگذاری کنید
متن تولید کنید، تحلیل احساسات انجام بدید، یا متن دستهبندی کنید
2️⃣ نصب کتابخانهها
pip install transformers datasets
3️⃣ آشنایی با مدلهای زبانی و چرا باید "بارگذاریشون" کنیم؟
مدلهای NLP مثل bert-base-uncased یا gpt2 در واقع شبکههای عصبی آموزشدیدهای هستن که میتونن متن رو تحلیل یا تولید کنن. وقتی از from_pretrained استفاده میکنی:
from transformers import AutoModel model = AutoModel.from_pretrained("bert-base-uncased")
🎯 یعنی داری مدل رو به همراه وزنهای آموزشدیدهشدهاش از اینترنت بارگذاری میکنی، بدون اینکه خودت آموزشش بدی. در واقع اینجوری تو از مدلی استفاده میکنی که هزاران ساعت آموزش دیده و تو صرفا اونو لود میکنی و برات خیلی به صرفه تره !
🔍 مزایا:
صرفهجویی در زمان و منابع
استفاده سریع از مدلهای حرفهای
مناسب برای prototyping و حتی production
4️⃣ کار با tokenizer: تبدیل متن به ورودی مدل
from transformers import AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased") inputs = tokenizer("Hugging Face is amazing!", return_tensors="pt")
✅ Tokenizer متن رو به شکل عددی تبدیل میکنه تا مدل بتونه بفهمدش. مثلاً:
Input: "hello world" Output: {'input_ids': tensor([...]), 'attention_mask': tensor([...])}
5️⃣ اجرای مدل بدون استفاده از pipeline
اینجا یک مدل دلخواه رو load میکنی و بعدا میتونی تصمیم بگیری که چه تسکی باهاش انجام بدی مثلا پردازش اخساسات یا هر چیز دیگه ای
from transformers import AutoModel model = AutoModel.from_pretrained("bert-base-uncased") outputs = model(**inputs) print(outputs.last_hidden_state.shape)
📍 این روش برای مواقعی هست که میخوای کنترل کامل روی پردازش داشته باشی.
6️⃣ استفاده از pipeline برای راحتی و سرعت
اینجا که از pipeline ها استفاده میکنی میتونی با زحمت کمتر مثلا یک طبقه بند تحلیل احساسات داشته باشی.
from transformers import pipeline classifier = pipeline("sentiment-analysis") result = classifier("I love this library!") print(result)
🔹 pipeline همهی مراحل tokenizer، اجرای مدل و تفسیر نتیجه رو خودش هندل میکنه. عالیه برای تست سریع!
7️⃣ ماژول datasets: کار با دیتاستهای آماده
from datasets import load_dataset dataset = load_dataset("imdb", split="train[:2%]") print(dataset[0])
📦 این ماژول دیتاستهای رایج رو بارگذاری میکنه. همچنین میتونی دیتاست خودت رو هم اضافه کنی و برای آموزش ازش استفاده کنی.
8️⃣ کار با مدلهای فارسی
tokenizer = AutoTokenizer.from_pretrained("HooshvareLab/bert-base-parsbert-uncased") model = AutoModel.from_pretrained("HooshvareLab/bert-base-parsbert-uncased")
🗣 مدلهای فارسی مثل ParsBERT روی دادههای فارسی آموزش داده شدن و برای پردازش متن فارسی مناسب ترن.کلا این مدلا به پای نسخه های انگلیسی و امروزه استفاده از API های chatgpt شاید بهتر باشه برای زبان فارسی ولی خوب اینم یک راهه برای بعضی کاربردها . اونم راهیه برای کاربردهای دیگه . باید دید که چی براتون بهتره.