Hugging Face 101: یک راهنمای آموزشی برای مبتدیان!


به این راهنمای آموزشی برای مبتدیان در راستای تحلیل احساسات با استفاده از تبدیل‌کننده‌های Hugging Face خوش آمدید! تحلیل احساسات یک تکنیک در پردازش زبان طبیعی (NLP) است که به منظور تعیین لحن یا احساس عاطفی بیان شده در یک قطعه متن استفاده می‌شود.

در این آموزش، شما با نحوه استفاده از مدل‌های پیش‌آموزش‌دیده یادگیری ماشین از Hugging Face برای اجرای تحلیل احساسات بر روی نمونه‌های متنی مختلف آشنا خواهید شد. ما شما را در تمام مراحل راهنمایی خواهیم کرد، از نصب بسته‌های لازم تا اجرای مدل و تفسیر خروجی آن، همه در یک محیط SingleStore Notebook، مشابه Jupyter Notebook.

تا پایان این آموزش، شما با دانش لازم برای استفاده از Hugging Face Transformers به عنوان یک کتابخانه برای تحلیل احساسات داده‌های متنی آشنا خواهید شد.

Hugging Face چیست؟🤗

Hugging Face چیست؟🤗

Hugging Face🤗 یک جامعه تخصصی در زمینه پردازش زبان طبیعی (NLP) و هوش مصنوعی (AI) به شمار می‌آید. این شرکت در سال 2016 تأسیس شده و به طور قابل توجهی به دمکراتیزه کردن دسترسی به مدل‌ها و ابزارهای پیشرفته یادگیری ماشین در حوزه NLP یاری رسانده است.

Hugging Face بر روی تقویت جامعه متمرکز است و پلتفرمی فراهم کرده است که در آن محققان و توسعه‌دهندگان می‌توانند مدل‌های آموزش‌دیده خود را به اشتراک بگذارند و بدین ترتیب همکاری و پیشرفت در این حوزه را تسریع کنند.

NLP مخفف پردازش زبان طبیعی است که به تعامل میان کامپیوترها و زبان انسانی مرتبط می‌شود. Hugging Face به خاطر ارائه کمک‌های شایان به این رشته از طریق کتابخانه‌های متن‌باز، مدل‌های پیش‌آموزش‌دیده و پلتفرم‌های اجتماعی معروف است.

تبدیل‌کننده‌های Hugging Face🤗 به عنوان یک کتابخانه:

کتابخانه تبدیل‌کننده‌های Hugging Face یک کتابخانه متن‌باز برای NLP و یادگیری ماشین به شمار می‌آید. این کتابخانه مجموعه‌ای گسترده از مدل‌ها و معماری‌های پیش‌آموزش‌دیده، نظیر BERT، GPT-2، T5 و بسیاری دیگر را ارائه می‌دهد. طراحی این کتابخانه به گونه‌ای است که مدولار و آسان برای استفاده باشد و کمک به توسعه سریع پروژه‌های تحقیقاتی و تولیدی کند. این کتابخانه از چندین زبان و وظایف مختلف نظیر طبقه‌بندی متن، پاسخ به سوالات، تولید متن، ترجمه و غیره پشتیبانی می‌کند.

پیش‌نیازها

قبل از آغاز این آموزش، اطمینان حاصل کنید که پیش‌نیازهای زیر را در نظر دارید:

  • تنها پیش‌نیاز این آموزش، وجود SingleStore Notebook است. این آموزش به گونه‌ای طراحی شده که در محیط SingleStore Notebook دنبال شود. اگر هنوز SingleStore Notebook را نصب نکرده‌اید، می‌توانید با ثبت‌نام در SingleStore و سپس انتخاب ویژگی Notebook، آن را نصب نمایید.

شروع با نوت‌بوک‌های سینگل‌استور

یک نوت‌بوک خالی جدید ایجاد کنید.
نوت‌بوک جدید

شما به داشبورد نوت‌بوک سینگل‌استور منتقل خواهید شد.
داشبورد نوت‌بوک سینگل‌استور

از اینجا، ما از آن به عنوان محیط اجرای دستورات پایتون خود بهره‌برداری خواهیم کرد.

مرحله 1: نصب بسته‌های مورد نیاز

ابتدا، باید کتابخانه تبدیل‌کننده‌ها از Hugging Face را نصب نمایید. می‌توانید این کار را با استفاده از pip انجام دهید:

!pip install transformers

PyTorch پیش‌نیاز استفاده از کتابخانه تبدیل‌کننده‌های Hugging Face است.

شما می‌توانید PyTorch را با اجرای فرمان زیر در نوت‌بوک سینگل‌استور خود نصب کنید:

!pip install torch

راه‌اندازی مجدد هسته: پس از نصب، ممکن است نیاز باشد که هسته نوت‌بوک سینگل‌استور را راه‌اندازی مجدد کنید تا اطمینان حاصل شود که بسته‌های جدید نصب شده شناسایی می‌شوند. معمولاً می‌توانید این کار را با کلیک بر روی "Kernel" در منو و سپس انتخاب "Restart Kernel" انجام دهید.

مرحله 2: وارد کردن کتابخانه‌ها

کتابخانه‌های مورد نیاز پایتون را وارد کنید:

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

مرحله 3: بارگذاری مدل و توکنایزر پیش‌آموزش‌دیده

یک مدل پیش‌آموزش‌دیده و توکنایزر مربوط به آن را بارگذاری نمایید. برای این مثال، بیایید از مدل distilbert-base-uncased-finetuned-sst-2-english برای تحلیل احساسات استفاده کنیم.

tokenizer = AutoTokenizer.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english")
model = AutoModelForSequenceClassification.from_pretrained("distilbert-base-uncased-finetuned-sst-2-english")

مرحله 4: پیش‌پردازش متن

متن مورد نظر برای تحلیل را توکنایز کنید:

text = "I love programming!"
tokens = tokenizer(text, padding=True, truncation=True, return_tensors="pt")

مرحله 5: استنتاج مدل

متن توکنایز شده را از طریق مدل پردازش نمایید:

with torch.no_grad():
    outputs = model(**tokens)
    logits = outputs.logits
    probabilities = torch.softmax(logits, dim=1)

مرحله 6: تفسیر نتایج

خروجی مدل را برای استخراج احساسات تفسیر کنید:

label_ids = torch.argmax(probabilities, dim=1)
labels = ['منفی', 'مثبت']
label = labels[label_ids]
print(f"احساسات این است: {label}")

این باید خروجی "مثبت" یا "منفی" را بر اساس احساسات متن ارائه دهد.

اطمینان حاصل کنید که کد خود را در بستر نوت‌بوک سینگل‌استور اجرا می‌نمایید.
زمین بازی نوت‌بوک سینگل‌استور

بیایید متن را که می‌خواهیم تحلیل کنیم، از "I love programming!" به "I hate programming!" تغییر دهیم. شما باید تحلیل احساسات منفی را مشاهده کنید.

تحلیل احساسات منفی

بیایید یک جمله دیگر را تحلیل کنیم: "SingleStore's Notebook feature is just mind blowing!" و ببینیم پاسخ چیست. (باید مثبت باشد همان‌طور که انتظار می‌رود)

ویژگی شگفت‌انگیز

تبریک به خاطر اتمام این راهنمای آموزشی برای مبتدیان در زمینه تحلیل احساسات با استفاده از کتابخانه‌های تبدیل‌کننده‌های Hugging Face! اکنون، شما باید درکی کافی از روش استفاده از مدل‌های پیش‌آموزش‌دیده برای تحلیل احساسات متون داشته باشید. شما یاد گرفته‌اید که چگونه متن را توکنایز کنید، آن را از طریق یک مدل پردازش نمایید و خروجی را تفسیر کنید - همه در یک محیط نوت‌بوک سینگل‌استور.

منبع

https://dev.to/pavanbelagatti/hugging-face-101-a-tutorial-for-absolute-beginners-3b0l