سایت خبرکاو

جستجوگر هوشمند اخبار و مطالب فناوری

چگونه با استفاده از Transformers Huggingface یک خلاصه‌نویس متن بسازیم

در دنیای پر سرعت امروز، ما با اطلاعات بمباران شده ایم. مثل این است که بخواهید از شلنگ آتش نشانی آب بنوشید. اینجاست که یک خلاصه‌کننده متن وارد می‌شود. آن را به عنوان فیلتری تصور کنید که بیت‌های ضروری را از سیل عظیم کلمات جدا می‌کند. در این مقاله، من به شما توضیح می‌دهم که خلاصه‌کننده چیست، موارد استفاده آن، Transformers Hugging Face چیست و چگونه می‌توانید خلاصه‌کننده متن خود را ...

در دنیای پر سرعت امروز، ما با اطلاعات بمباران شده ایم. مثل این است که بخواهید از شلنگ آتش نشانی آب بنوشید.

اینجاست که یک خلاصه‌کننده متن وارد می‌شود. آن را به عنوان فیلتری تصور کنید که بیت‌های ضروری را از سیل عظیم کلمات جدا می‌کند.

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

خلاصه ساز چیست؟

خلاصه کننده دقیقاً همان کاری را انجام می دهد که نامش نشان می دهد. بلوک بزرگی از متن را می گیرد و آن را به یک نسخه کوتاه تر متراکم می کند.

این نسخه کوتاهتر فقط نکات کلیدی را حفظ می کند. به آن به عنوان تفاوت بین خواندن یک رمان کامل و نگاه کردن به پشت جلد آن فکر کنید. هدف صرفه جویی در زمان و در عین حال دریافت ماهیت محتوا است.

از Cases برای خلاصه کننده استفاده کنید

خلاصه سازها فقط ترفندهای فنی جالب نیستند. آنها نیازهای دنیای واقعی را برآورده می کنند.

روزنامه نگاران از آنها برای تحلیل سریع گزارش ها و مطالعات استفاده می کنند. دانش آموزان از آنها برای خلاصه کردن مطالب طولانی استفاده می کنند. کسب و کارها از آنها برای فشرده کردن تحلیل های بازار یا گزارش های طولانی استفاده می کنند.

در اصل، هرکسی که نیاز دارد حجم زیادی از متن را به سرعت پردازش کند، می تواند از یک خلاصه کننده بهره مند شود.

ترانسفورماتورهای صورت در آغوش گرفتن چیست؟

Hugging Face شرکتی است که یک پلتفرم پیشرفته برای پردازش زبان طبیعی (NLP) ایجاد کرده است.

کتابخانه Transformers آنها مانند گنجینه ای برای وظایف NLP است. این شامل مدل های از پیش آموزش دیده ای است که می توانند همه چیز را از ترجمه و تجزیه و تحلیل احساسات تا بله، خلاصه سازی انجام دهند.

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

چگونه با ترانسفورماتورهای صورت در آغوش گرفته یک خلاصه ساز بسازیم

حالا بیایید آستین ها را بالا بزنیم و شروع به ساختن کنیم. ما از خط لوله Huggingface برای پیاده سازی مدل خلاصه سازی خود با استفاده از مدل بارت فیس بوک استفاده خواهیم کرد.

مدل BART به زبان انگلیسی از قبل آموزش دیده است. این یک مدل توالی به دنباله است و برای تولید متن (مانند تلخیص و ترجمه) عالی است. همچنین برای کارهای درک مطلب (به عنوان مثال، طبقه بندی متن و پاسخ به سؤال) به خوبی کار می کند.

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

چگونه محیط خود را تنظیم کنیم

ابتدا باید محیط کدنویسی خود را تنظیم کنید. من ترجیح می‌دهم از نوت بوک Google Collab به جای نصب آن بر روی دستگاه محلی شما استفاده کنم.در اینجا دفترچه یادداشت این آموزش است.

بیایید با نصب کتابخانه ترانسفورماتور شروع کنیم. از یک استفاده کنید! قبل از دستور اگر آن را در یک نوت بوک همکار اجرا می کنید:

 pip install transformers

حالا بیایید یک خط لوله خلاصه سازی متن را با استفاده از کتابخانه transformers Hugging Face مقداردهی کنیم:

 summarizer = pipeline("summarization", model="facebook/bart-large-cnn")

بیایید کارهایی که هر قسمت انجام می دهد را بشکنیم:

pipeline : این تابعی است که توسط کتابخانه transformers Hugging Face ارائه شده است تا اعمال انواع مختلف وظایف پردازش زبان طبیعی (NLP) مانند طبقه بندی متن، ترجمه، خلاصه سازی و غیره را آسان کند. تابع یک شیء خط لوله آماده برای استفاده را برای وظیفه مشخص شده برمی گرداند.

"summarization" : این اولین آرگومان تابع pipeline است و نوع وظیفه ای را که می خواهید خط لوله انجام دهد را مشخص می کند. در این مورد، "summarization" به این معنی است که خط لوله برای خلاصه کردن متن پیکربندی می شود.

model="facebook/bart-large-cnn" : این آرگومان مدل از پیش آموزش دیده ای را که برای کار خلاصه سازی استفاده می شود مشخص می کند. در اینجا، "facebook/bart-large-cnn" به مدل خاصی اشاره دارد که بر روی یک مجموعه داده بزرگ برای انجام خلاصه سازی متن آموزش داده شده است. این مدل توسط فیسبوک ارائه شده است و بر اساس معماری BART (ترانسفورماتورهای دو جهته و خودکار پس‌رونده) است که برای کارهایی که نیاز به درک و تولید زبان طبیعی دارند، موثر است. بخش large-cnn نشان می‌دهد که این مدل خاص برای کارهای خلاصه‌سازی مشابه مواردی که توسط خلاصه‌های سنتی به سبک اخبار CNN انجام می‌شود، بهینه شده است.

هنگامی که این خط کد اجرا می شود، یک شی summarizer ایجاد می کند. سپس می توان از این شی برای انجام خلاصه سازی متن با ارسال داده های متنی به آن استفاده کرد. این مدل نسخه کوتاه‌تری از متن ورودی تولید می‌کند و اصلی ترین یا مرتبط‌ترین اطلاعات را بر اساس آموزش در مورد وظیفه خلاصه‌سازی می‌گیرد.

اکنون ما آماده ایم از مدل برای خلاصه کردن متن خود استفاده کنیم (آره، واقعاً!). بیایید از گزارش سالانه FDA استفاده کنیم و از آن به عنوان ورودی برای دریافت خلاصه خود استفاده کنیم.

 text = """In 2023 generic drugs continued to play a critical role in the US health care system allowing patients greater access to needed medicines. Generic drugs are generally lower cost than their brand-name equivalent and the approval of generic drugs often means multiple manufacturers for generic medicines, which can help stabilize the supply chain and reduce drug shortage risks. The mission of the Office of Generic Drugs is to ensure high-quality, safe, and effective generic medicines are available to the American public. Our 2023 Annual Report provides highlights of activities and accomplishments including generic drug approvals, first generic approvals, science and research innovations for generic medicines – including complex generics, and international collaboration, as well as how we are doing on agreements made under the third iteration of the Generic Drug User Fee Amendments."""

حالا بیایید از این متن به عنوان ورودی استفاده کنیم و خلاصه کننده خود را فراخوانی کنیم:

 summary = summarizer(text, max_length=150, min_length=40, do_sample=False)

این خط کد از شیء summarizer ایجاد شده از pipeline Hugging Face برای تولید خلاصه‌ای از متن ورودی استفاده می‌کند. در اینجا تجزیه و تحلیل فراخوانی تابع و پارامترهای آن است:

summarizer : این شیئی است که قبلاً با تابع pipeline مقداردهی شده است.

text : این متن ورودی است که می خواهید خلاصه کنید.

max_length=150 : این پارامتر حداکثر طول خلاصه را بر حسب تعداد نشانه ها (کلمات و علائم نگارشی) مشخص می کند.

min_length=40 : به طور مشابه، این پارامتر حداقل طول خلاصه را تعیین می کند.

در نهایت خلاصه خود را چاپ می کنیم:

 print(summary[0]['summary_text'])

و این هم پاسخ:

 In 2023 generic drugs continued to play a critical role in the US health care system allowing patients greater access to needed medicines. Generic drugs are generally lower cost than their brand-name equivalent and the approval of generic drugs often means multiple manufacturers for generic medicines.

به طور خلاصه این کد:

یک خط لوله خلاصه سازی را بارگذاری می کند که از قبل برای استفاده از مدل facebook/bart-large-cnn پیکربندی شده است.

متن را به خلاصه کننده می دهد.

خلاصه ای را با حداقل و حداکثر طول مشخص شده خروجی می دهد.

نتیجه

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

با استفاده از Transformers Hugging Face، روی شانه های غول ها می ایستید و از برخی از پیشرفته ترین مدل های NLP موجود امروزی استفاده می کنید. پس آن را امتحان کنید. چه کسی می داند؟ ممکن است نحوه برخورد شما با متن را برای همیشه تغییر دهد.

با تشکر از خواندن این مقاله. لطفا اگر از مقاله لذت بردید نظر بدهید. آموزش های هوش مصنوعی بیشتری را در TuringTalks.ai بیابید.

خبرکاو