سازمانها در سراسر صنایع مانند خردهفروشی، بانکداری، مالی، مراقبتهای بهداشتی، تولیدی و وامدهی اغلب مجبورند با حجم وسیعی از اسناد متنی بدون ساختار که از منابع مختلفی مانند اخبار، وبلاگها، بررسیهای محصول، کانالهای پشتیبانی مشتری و رسانههای اجتماعی میآیند، سر و کار داشته باشند. این اسناد حاوی اطلاعات مهمی هستند که کلید تصمیم گیری های تجاری مهم هستند. با رشد یک سازمان، استخراج اطلاعات حیاتی از این اسناد به یک چالش تبدیل می شود. با پیشرفت تکنیکهای پردازش زبان طبیعی (NLP) و یادگیری ماشینی (ML)، میتوانیم بینشها و ارتباطات ارزشمندی را از این اسناد متنی به سرعت و با دقت بالا کشف کنیم و از این طریق به شرکتها کمک کنیم تا به موقع تصمیمهای تجاری باکیفیت بگیرند. خدمات NLP کاملاً مدیریت شده نیز پذیرش NLP را تسریع کرده است. درک آمازون یک سرویس کاملاً مدیریت شده است که به شما امکان میدهد مدلهای NLP سفارشی را که مخصوص نیازهای شما هستند، بدون نیاز به تخصص ML بسازید.
در این پست، نحوه استفاده از تکنیکهای پیشرفته ML برای حل پنج کار مختلف NLP را نشان میدهیم: خلاصهسازی اسناد، طبقهبندی متن، پاسخ به سؤال، شناسایی موجودیت نامگذاری شده و استخراج رابطه. برای هر یک از این وظایف NLP، نحوه استفاده را نشان می دهیم آمازون SageMaker برای انجام اقدامات زیر:
- استقرار و اجرای استنتاج بر روی یک مدل از پیش آموزش دیده
- مدل از پیش آموزش داده شده را روی یک مجموعه داده سفارشی جدید تنظیم کنید
- بهبود بیشتر عملکرد تنظیم دقیق با تنظیم خودکار مدل SageMaker
- ارزیابی عملکرد مدل بر روی داده های آزمون نگهدارنده با معیارهای ارزیابی مختلف
اگرچه در این پست پنج وظیفه NLP خاص را پوشش میدهیم، میتوانید از این راهحل بهعنوان الگویی برای تعمیم مدلهای از پیش آموزشدیده شده با مجموعه دادههای خود استفاده کنید و متعاقباً برای بهبود دقت، بهینهسازی هایپرپارامتر را اجرا کنید.
قالب های راه حل JumpStart
Amazon SageMaker JumpStart راه حل های یک کلیک و سرتاسر برای بسیاری از موارد رایج استفاده از ML ارائه می دهد. برای اطلاعات بیشتر در مورد الگوهای راه حل موجود، موارد استفاده زیر را کاوش کنید:
قالبهای راهحل JumpStart موارد استفاده مختلفی را پوشش میدهند، که تحت هر یک از آنها چندین الگوی راهحل مختلف ارائه میشود (این راهحل درک سند در زیر مورد استفاده «استخراج و تجزیه و تحلیل دادهها از اسناد» است).
از صفحه فرود JumpStart الگوی راه حلی را انتخاب کنید که به بهترین وجه مناسب مورد استفاده شما باشد. برای اطلاعات بیشتر در مورد راه حل های خاص در هر مورد و نحوه راه اندازی راه حل JumpStart، نگاه کنید الگوهای راه حل.
بررسی اجمالی راه حل
تصویر زیر نشان می دهد که چگونه می توانید از این راه حل با اجزای SageMaker استفاده کنید. مشاغل آموزشی SageMaker برای آموزش مدل های مختلف NLP و نقاط پایانی SageMaker برای استقرار مدل ها در هر مرحله استفاده می شود. ما استفاده می کنیم سرویس ذخیره سازی ساده آمازون (Amazon S3) در کنار SageMaker برای ذخیره داده های آموزشی و مدل سازی مصنوعات و CloudWatch آمازون برای ورود به سیستم آموزشی و خروجی های نقطه پایانی.
راه حل Document Understanding را باز کنید
به راه حل Document Understanding در JumpStart بروید.
اکنون میتوانیم نگاهی دقیقتر به برخی از داراییهای موجود در این راهحل بیندازیم، که از نوتبوک دمو شروع میشود.
نوت بوک نمایشی
میتوانید از نوتبوک آزمایشی برای ارسال دادههای نمونه به نقاط پایانی مدل از قبل مستقر شده برای خلاصهسازی اسناد و وظایف پاسخگویی به سؤال استفاده کنید. نوت بوک نسخه ی نمایشی به سرعت به شما امکان می دهد با جستجو در داده های نمونه، تجربه عملی داشته باشید.
پس از راهاندازی راهحل Document Understanding، نوتبوک آزمایشی را با انتخاب باز کنید از Endpoint در Notebook استفاده کنید.
بیایید به هر یک از پنج نوت بوک اصلی برای این راه حل عمیق تر بپردازیم.
پیش نیازها
In Amazon SageMaker Studio، مطمئن شوید که از آن استفاده می کنید PyTorch 1.10 Python 3.8 CPU Optimized
تصویر/هسته برای باز کردن نوت بوک ها. آموزش از پنج نمونه ml.g4dn.2xlarge استفاده میکند، بنابراین باید a را بالا ببرید درخواست افزایش محدودیت خدمات اگر حساب شما نیاز به افزایش محدودیت برای این نوع دارد.
طبقه بندی متن
طبقه بندی متن به طبقه بندی یک جمله ورودی به یکی از برچسب های کلاس مجموعه داده آموزشی اشاره دارد. این نوت بوک نحوه استفاده از JumpStart API برای طبقه بندی متن
استقرار و اجرای استنتاج بر روی مدل از پیش آموزش دیده
مدل طبقهبندی متنی که ما برای استفاده انتخاب کردهایم بر اساس جاسازی متن ساخته شده است (tensorflow-tc-bert-en-uncased-L-12-H-768-A-12-2
) مدل از تنسورفلو هاب، که در مجموعه داده های ویکی پدیا و BookCorpus از قبل آموزش داده شده است.
مدل موجود برای استقرار با اتصال یک لایه طبقهبندی باینری به خروجی مدل جاسازی متن، و سپس تنظیم دقیق کل مدل بر روی ایجاد میشود. SST-2 مجموعه داده ای که از نقدهای مثبت و منفی فیلم تشکیل شده است.
برای اجرای استنتاج در این مدل، ابتدا باید محفظه استنتاج را دانلود کنیم (deploy_image_uri
) اسکریپت استنتاج (deploy_source_uri
و مدل از پیش آموزش دیده (base_model_uri
). سپس آنها را به عنوان پارامتر برای نمونهسازی یک شی مدل SageMaker ارسال میکنیم، که سپس میتوانیم آن را مستقر کنیم:
کد زیر پاسخ های ما را نشان می دهد:
مدل از پیش آموزش دیده را روی یک مجموعه داده سفارشی تنظیم دقیق کنید
ما به تازگی استنباط دویدن را بر روی یک مدل BERT از پیش آموزش دیده که به خوبی در SST-2
مجموعه داده
در مرحله بعد، نحوه تنظیم دقیق یک مدل بر روی یک مجموعه داده سفارشی با هر تعداد کلاس را مورد بحث قرار می دهیم. مجموعه داده ای که ما برای تنظیم دقیق استفاده می کنیم هنوز هم همین است SST-2
مجموعه داده می توانید این مجموعه داده را با هر مجموعه داده ای که به آن علاقه دارید جایگزین کنید.
ما ظرف Docker آموزشی، منبع الگوریتم آموزشی و مدل از پیش آموزش دیده را بازیابی می کنیم:
برای فراپارامترهای خاص الگوریتم، با واکشی یک فرهنگ لغت پایتون از فراپارامترهای آموزشی که الگوریتم با مقادیر پیشفرض آنها میپذیرد، شروع میکنیم. همانطور که در کد زیر نشان داده شده است، می توانید آنها را با مقادیر سفارشی لغو کنید:
مجموعه داده (SST-2
) به مجموعه های آموزشی، اعتبار سنجی و تست تقسیم می شود، که در آن مجموعه آموزشی برای تناسب با مدل استفاده می شود، مجموعه اعتبارسنجی برای محاسبه معیارهای ارزیابی که می تواند برای HPO استفاده شود، و مجموعه آزمون به عنوان داده های نگهدارنده استفاده می شود. برای ارزیابی عملکرد مدل سپس، مجموعه داده قطار و اعتبارسنجی در آمازون S3 آپلود میشود و برای راهاندازی کار آموزش تنظیم دقیق استفاده میشود:
پس از تکمیل کار تنظیم دقیق، مدل را به کار میگیریم، استنتاج را روی مجموعه دادههای تست نگهدارنده اجرا میکنیم و معیارهای ارزیابی را محاسبه میکنیم. از آنجا که این یک کار طبقه بندی باینری است، ما از آن استفاده می کنیم امتیاز دقت و امتیاز F1 به عنوان معیارهای ارزیابی مقدار بزرگتر نشان دهنده عملکرد بهتر است. تصویر زیر نتایج ما را نشان می دهد.
با تنظیم خودکار مدل SageMaker، عملکرد تنظیم دقیق را بیشتر بهبود بخشید
در این مرحله، نشان میدهیم که چگونه میتوانید با تنظیم دقیق مدل با تنظیم خودکار مدل SageMaker، عملکرد مدل را بیشتر بهبود بخشید. تنظیم خودکار مدل، همچنین به عنوان بهینه سازی هایپرپارامتر (HPO) شناخته می شود، بهترین نسخه یک مدل را با اجرای چندین کار آموزشی روی مجموعه داده شما با طیف وسیعی از فراپارامترهایی که شما مشخص می کنید، پیدا می کند. سپس مقادیر فراپارامتر را انتخاب میکند که منجر به مدلی میشود که بهترین عملکرد را، همانطور که با معیاری که شما انتخاب میکنید، در مجموعه داده اعتبارسنجی اندازهگیری میکند.
ابتدا، هدف را به عنوان امتیاز دقت در داده های اعتبار سنجی (val_accuracy
) و معیارهایی را برای کار تنظیم با تعیین نام متریک هدف و یک عبارت منظم (regex) تعریف کرد. عبارت منظم برای مطابقت با خروجی گزارش الگوریتم و گرفتن مقادیر عددی معیارها استفاده می شود. در مرحله بعد، محدوده هایپرپارامتر را مشخص می کنیم تا بهترین مقادیر هایپرپارامتر را از بین آنها انتخاب کنیم. ما تعداد کل کارهای تنظیم را XNUMX قرار می دهیم و این کارها را روی سه کار مختلف توزیع می کنیم ابر محاسبه الاستیک آمازون نمونه هایی (Amazon EC2) برای اجرای کارهای تنظیم موازی. کد زیر را ببینید:
ما این مقادیر را برای نمونه سازی یک شی SageMaker Estimator، مشابه آنچه در مرحله تنظیم دقیق قبلی انجام دادیم، ارسال می کنیم. به جای تماس با fit
عملکرد Estimator
شی، ما عبور می کنیم Estimator
شی به عنوان پارامتری به HyperparameterTuner سازنده و فراخوانی کنید fit
عملکرد آن برای راه اندازی مشاغل تنظیم:
پس از تکمیل کارهای تنظیم، مدلی را به کار میگیریم که بهترین امتیاز معیار ارزیابی را در مجموعه داده اعتبارسنجی میدهد، استنتاج را بر روی همان مجموعه داده تست نگهدارنده که در بخش قبل انجام دادیم، انجام میدهیم و معیارهای ارزیابی را محاسبه میکنیم.
نتایج نشان می دهد که مدل انتخاب شده با تنظیم خودکار مدل به طور قابل توجهی بهتر از مدل تنظیم شده در بخش قبلی در مجموعه داده آزمایشی نگهدارنده است.
شناسایی موجودیت نامگذاری شده
شناسایی موجودیت نامگذاری شده (NER) فرآیند شناسایی و طبقهبندی موجودیتهای نامگذاریشده به دستههای از پیش تعریفشده، مانند نام افراد، سازمانها، مکانها و مقادیر است. موارد استفاده در دنیای واقعی بسیاری از NER وجود دارد، مانند موتورهای توصیه، دسته بندی و اختصاص بلیط های پشتیبانی مشتری به بخش مناسب، استخراج اطلاعات ضروری از گزارش های بیماران در مراقبت های بهداشتی، و طبقه بندی محتوا از اخبار و وبلاگ ها.
استقرار و اجرای استنتاج بر روی مدل از پیش آموزش دیده
را مستقر می کنیم En_core_web_md مدل از فضایی کتابخانه spaCy یک کتابخانه NLP منبع باز است که می تواند برای کارهای مختلف استفاده شود و دارای روش های داخلی برای NER است. ما از AWS PyTorch Deep Learning Container (DLC) با حالت اسکریپت استفاده می کنیم و کتابخانه spaCy را به عنوان یک وابستگی در بالای کانتینر نصب می کنیم.
بعد، یک نقطه ورودی برای اسکریپت (استدلال entry_point.py
) مشخص شده است که حاوی تمام کدهای دانلود و بارگذاری است En_core_web_md
داده هایی که به نقطه پایانی ارسال می شوند را مدل کرده و استنتاج انجام دهید. در نهایت، ما هنوز باید ارائه دهیم model_data
به عنوان مدل از پیش آموزش دیده برای استنتاج. از آنجا که از قبل آموزش دیده است En_core_web_md
مدل در پرواز دانلود می شود، که در اسکریپت ورودی مشخص شده است، ما یک فایل بایگانی خالی ارائه می دهیم. پس از استقرار نقطه پایانی، می توانید با استفاده از SageMaker Python SDK، نقطه پایانی را مستقیماً از نوت بوک فراخوانی کنید. Predictor
. کد زیر را ببینید:
داده های ورودی برای مدل یک سند متنی است. مدل موجودیت نامگذاری شده، تکههای اسم و موجودیتهای نامگذاریشده را در سند متنی استخراج میکند و آنها را به انواع مختلف (مانند افراد، مکانها و سازمانها) طبقهبندی میکند. نمونه ورودی و خروجی در کد زیر نشان داده شده است. را start_char
پارامتر نشان دهنده افست کاراکتر برای شروع بازه و end_char
پایان دهانه را نشان می دهد.
مدل از پیش آموزش دیده را روی یک مجموعه داده سفارشی تنظیم دقیق کنید
در این مرحله، نحوه تنظیم دقیق مدلهای زبان از پیش آموزشدیده برای NER را در مجموعه دادههای خود نشان میدهیم. مرحله تنظیم دقیق، پارامترهای مدل را بهروزرسانی میکند تا ویژگیهای دادههای خود را ثبت کند و دقت را بهبود بخشد. ما استفاده می کنیم WikiANN مجموعه داده (PAN-X) برای تنظیم دقیق DistilBERT-base-uncased مدل ترانسفورماتور از Hugging Face.
مجموعه داده به مجموعه های آموزشی، اعتبار سنجی و آزمایش تقسیم می شود.
در مرحله بعد، هایپرپارامترهای مدل را مشخص می کنیم و از یک DLC AWS Hugging Face با حالت اسکریپت (آرگومنت) استفاده می کنیم. entry_point
) برای شروع کار تنظیم دقیق:
پس از تکمیل کار تنظیم دقیق، یک نقطه پایانی را مستقر می کنیم و آن نقطه پایانی را با داده های تست نگهدارنده جستجو می کنیم. برای پرس و جو در نقطه پایانی، هر رشته متنی باید به یک یا چند توکن تبدیل شود و به مدل ترانسفورماتور ارسال شود. هر توکن یک تگ موجودیت با نام پیش بینی شده دریافت می کند. از آنجایی که هر رشته متنی را می توان به یک یا چند توکن تبدیل کرد، باید تگ موجودیت به نام حقیقت پایه رشته را به تمام نشانه هایی که به آن مرتبط هستند کپی کنیم. نوت بوک ارائه شده شما را از طریق مراحل رسیدن به این هدف راهنمایی می کند.
در نهایت، ما از معیارهای ارزیابی داخلی Hugging Face استفاده میکنیم seqeval برای محاسبه نمرات ارزیابی بر روی داده های آزمون نگهدارنده. معیارهای ارزیابی مورد استفاده عبارتند از: دقت کلی، فراخوانی کلی، F1 کلی و دقت. تصویر زیر نتایج ما را نشان می دهد.
با تنظیم خودکار مدل SageMaker، عملکرد تنظیم دقیق را بیشتر بهبود بخشید
مشابه طبقهبندی متن، نشان میدهیم که چگونه میتوانید با تنظیم دقیق مدل با تنظیم خودکار مدل SageMaker، عملکرد مدل را بیشتر بهبود بخشید. برای اجرای کار تنظیم، باید یک متریک هدف تعریف کنیم که میخواهیم برای ارزیابی عملکرد مدل روی مجموعه داده اعتبارسنجی (امتیاز F1 در این مورد)، محدودههای فراپارامتر برای انتخاب بهترین مقادیر فراپارامتر و همچنین تنظیمات کار تنظیم مانند حداکثر تعداد کارهای تنظیم و تعداد کارهای موازی برای راه اندازی در یک زمان:
پس از تکمیل کارهای تنظیم، مدلی را به کار میگیریم که بهترین امتیاز معیار ارزیابی را در مجموعه داده اعتبارسنجی میدهد، استنتاج را بر روی همان مجموعه داده تست نگهدارنده که در بخش قبل انجام دادیم، انجام میدهیم و معیارهای ارزیابی را محاسبه میکنیم.
میتوانیم ببینیم که مدل با HPO عملکرد بهتری را در تمام معیارها به دست میآورد.
جواب سوال
پاسخ به سوال زمانی مفید است که می خواهید مقدار زیادی متن را برای اطلاعات خاص جستجو کنید. این به کاربر اجازه می دهد تا یک سوال را به زبان طبیعی بیان کند و یک پاسخ فوری و مختصر دریافت کند. سیستم های پاسخگویی به سوال که توسط NLP ارائه می شوند را می توان در موتورهای جستجو و رابط های مکالمه تلفنی استفاده کرد.
استقرار و اجرای استنتاج بر روی مدل از پیش آموزش دیده
مدل از پیش آموزش دیده ما، مدل پاسخ به سؤال استخراجی (EQA) است برت-بزرگ-بدون حفاظ-کل-کلمه-پوشاندن-جذب-جوخه ساخته شده بر روی یک مدل ترانسفورماتور از Hugging Face. ما از یک DLC AWS PyTorch با حالت اسکریپت استفاده می کنیم و آن را نصب می کنیم ترانسفورماتور کتابخانه به عنوان یک وابستگی در بالای ظرف. مشابه وظیفه NER، یک فایل بایگانی خالی در آرگومان ارائه می کنیم model_data
زیرا مدل از پیش آموزش دیده در پرواز دانلود می شود. پس از استقرار نقطه پایانی، می توانید با استفاده از SageMaker Python SDK، نقطه پایانی را مستقیماً از نوت بوک فراخوانی کنید. Predictor
. کد زیر را ببینید:
تنها کاری که باید انجام دهیم این است که یک شی دیکشنری با دو کلید بسازیم. context
متنی است که می خواهیم اطلاعات را از آن بازیابی کنیم. question
پرس و جوی زبان طبیعی است که مشخص می کند ما علاقه مند به استخراج چه اطلاعاتی هستیم. زنگ میزنیم predict
در پیش بینی ما، و ما باید از نقطه پایانی پاسخی دریافت کنیم که محتمل ترین پاسخ ها را در خود دارد:
ما پاسخ را داریم و میتوانیم محتملترین پاسخهایی را که از متن قبلی استخراج شدهاند چاپ کنیم. هر پاسخ دارای یک امتیاز اطمینان است که برای رتبه بندی استفاده می شود (اما این نمره نباید به عنوان یک احتمال واقعی تفسیر شود). علاوه بر پاسخ کلمه به کلمه، شاخصهای کاراکتر شروع و پایان پاسخ را نیز از متن اصلی دریافت میکنید:
اکنون ما این مدل را با مجموعه داده های سفارشی خود تنظیم می کنیم تا نتایج بهتری به دست آوریم.
مدل از پیش آموزش دیده را روی یک مجموعه داده سفارشی تنظیم دقیق کنید
در این مرحله، ما نشان میدهیم که چگونه یک مدل زبان از پیش آموزشدیده را برای EQA روی مجموعه داده خود تنظیم کنید. مرحله تنظیم دقیق، پارامترهای مدل را بهروزرسانی میکند تا ویژگیهای دادههای خود را ثبت کند و دقت را بهبود بخشد. ما استفاده می کنیم SQUAD2.0 مجموعه داده برای تنظیم دقیق مدل جاسازی متن پایه برت-بدون محفظه از در آغوش گرفتن صورت. مدل موجود برای تنظیم دقیق یک لایه استخراج پاسخ را به مدل جاسازی متن متصل می کند و پارامترهای لایه را به مقادیر تصادفی مقداردهی اولیه می کند. مرحله تنظیم دقیق تمام پارامترهای مدل را برای به حداقل رساندن خطای پیشبینی در دادههای ورودی دقیق تنظیم میکند و مدل دقیق تنظیم شده را برمیگرداند.
مشابه کار طبقه بندی متن، مجموعه داده (SQuAD2.0) به آموزش، اعتبار سنجی و مجموعه تست تقسیم می شود.
در مرحله بعد، ما فراپارامترهای مدل را مشخص کرده و از آن استفاده می کنیم JumpStart API برای راه اندازی یک کار تنظیم دقیق:
پس از تکمیل کار تنظیم دقیق، مدل را به کار میگیریم، استنتاج را روی مجموعه دادههای تست نگهدارنده اجرا میکنیم و معیارهای ارزیابی را محاسبه میکنیم. معیارهای ارزیابی مورد استفاده، میانگین امتیاز تطبیق دقیق و میانگین امتیاز F1 است. تصویر زیر نتایج را نشان می دهد.
با تنظیم خودکار مدل SageMaker، عملکرد تنظیم دقیق را بیشتر بهبود بخشید
مشابه قسمت های قبلی از a استفاده می کنیم HyperparameterTuner
اعتراض به راه اندازی مشاغل تنظیم:
پس از تکمیل کارهای تنظیم، مدلی را به کار میگیریم که بهترین امتیاز معیار ارزیابی را در مجموعه داده اعتبارسنجی میدهد، استنتاج را بر روی همان مجموعه داده تست نگهدارنده که در بخش قبل انجام دادیم، انجام میدهیم و معیارهای ارزیابی را محاسبه میکنیم.
ما می توانیم ببینیم که مدل با HPO عملکرد قابل توجهی بهتری در داده های تست نگهدارنده نشان می دهد.
استخراج رابطه
استخراج رابطه وظیفه استخراج روابط معنایی از متن است که معمولاً بین دو یا چند موجودیت اتفاق می افتد. استخراج رابطه نقش مهمی در استخراج اطلاعات ساختاریافته از منابع بدون ساختار مانند متن خام دارد. در این نوت بوک، دو مورد استفاده از استخراج رابطه را نشان می دهیم.
مدل از پیش آموزش دیده را روی یک مجموعه داده سفارشی تنظیم دقیق کنید
ما از یک مدل استخراج رابطه ساخته شده بر روی a استفاده می کنیم BERT-base-uncased مدل با استفاده از ترانسفورماتور از ترانسفورماتورهای صورت بغل کردن کتابخانه مدل برای تنظیم دقیق یک لایه طبقهبندی خطی را متصل میکند که یک جفت جاسازی توکن را میگیرد که توسط مدل جاسازی متن خروجی میشود و پارامترهای لایه را به مقادیر تصادفی مقداردهی اولیه میکند. مرحله تنظیم دقیق تمام پارامترهای مدل را برای به حداقل رساندن خطای پیشبینی در دادههای ورودی دقیق تنظیم میکند و مدل دقیق تنظیم شده را برمیگرداند.
مجموعه داده ای که ما مدل را به دقت تنظیم می کنیم SemEval-2010 Task 8. مدل بازگشتی با تنظیم دقیق را می توان برای استنتاج بیشتر به کار برد.
مجموعه داده شامل آموزش، اعتبار سنجی و مجموعه تست است.
ما از DLC AWS PyTorch با یک حالت اسکریپت از SageMaker Python SDK استفاده می کنیم، جایی که transformers
کتابخانه به عنوان وابستگی در بالای ظرف نصب می شود. ما SageMaker را تعریف می کنیم PyTorch
برآوردگر و مجموعه ای از فراپارامترها مانند مدل از پیش آموزش دیده، نرخ یادگیری و اعداد دوره برای انجام تنظیم دقیق. کد برای تنظیم دقیق مدل استخراج رابطه در تعریف شده است entry_point.py
. کد زیر را ببینید:
با تنظیم خودکار مدل SageMaker، عملکرد تنظیم دقیق را بیشتر بهبود بخشید
مشابه قسمت های قبلی از a استفاده می کنیم HyperparameterTuner
شی برای تعامل با APIهای تنظیم فراپارامتر SageMaker. ما می توانیم کار تنظیم هایپرپارامتر را با فراخوانی شروع کنیم fit
روش:
هنگامی که کار تنظیم هایپرپارامتر کامل شد، استنتاج انجام می دهیم و امتیاز ارزیابی را بررسی می کنیم.
میتوانیم ببینیم که مدل با HPO عملکرد بهتری را در دادههای تست نگهدارنده نشان میدهد.
خلاصه سند
خلاصهسازی سند یا متن وظیفه متراکم کردن مقادیر زیادی از دادههای متنی در زیرمجموعه کوچکتری از جملات معنادار است که نشاندهنده مهمترین یا مرتبطترین اطلاعات در محتوای اصلی است. خلاصه کردن اسناد یک تکنیک مفید برای تقطیر اطلاعات مهم از مقادیر زیاد داده های متنی به چند جمله است. خلاصه سازی متن در بسیاری از موارد استفاده می شود، مانند پردازش اسناد و استخراج اطلاعات از وبلاگ ها، مقالات و اخبار.
این نوت بوک استقرار مدل خلاصه سازی سند را نشان می دهد پایه T5 از ترانسفورماتورهای صورت بغل کردن کتابخانه ما همچنین نقاط پایانی مستقر شده را با استفاده از یک مقاله متنی آزمایش می کنیم و نتایج را با استفاده از معیار ارزیابی داخلی Hugging Face ارزیابی می کنیم. RED.
مشابه پاسخگویی به سوالات و نوت بوک های NER، ما از PyTorchModel
از SageMaker Python SDK به همراه یک entry_point.py
اسکریپت برای بارگذاری مدل پایه T5 در نقطه پایانی HTTPS. پس از اینکه نقطه پایانی با موفقیت مستقر شد، میتوانیم یک مقاله متنی به نقطه پایانی ارسال کنیم تا یک پاسخ پیشبینی دریافت کنیم:
در مرحله بعد، مقاله متن و نتیجه خلاصه سازی را با استفاده از متریک ROUGE ارزیابی و مقایسه می کنیم. سه معیار ارزیابی محاسبه می شود: rougeN
, rougeL
و rougeLsum
. rougeN
تعداد تطابق را اندازه می گیرد n-grams
بین متن تولید شده توسط مدل (نتیجه خلاصه سازی) و الف reference
(متن ورودی). معیارها rougeL
و rougeLsum
با جستجوی طولانیترین زیررشتههای مشترک در خلاصههای تولید شده و مرجع، طولانیترین دنبالههای تطبیق کلمات را اندازهگیری کنید. برای هر متریک، فواصل اطمینان برای دقت، فراخوانی و امتیاز F1 محاسبه میشود. کد زیر را ببینید:
پاک کردن
منابع ایجاد شده برای این راه حل را می توان با استفاده از آن حذف کرد تمام منابع را حذف کنید دکمه از SageMaker Studio IDE. هر نوت بوک همچنین یک بخش پاکسازی با کد برای حذف نقاط پایانی ارائه می دهد.
نتیجه
در این پست، نحوه استفاده از تکنیکهای پیشرفته ML برای حل پنج کار مختلف NLP را نشان دادیم: خلاصهسازی اسناد، طبقهبندی متن، پرسش و پاسخ، شناسایی موجودیت نامگذاری شده، و استخراج رابطه با استفاده از Jumpstart. اکنون با Jumpstart شروع کنید!
درباره نویسنده
دکتر شین هوانگ یک دانشمند کاربردی برای آمازون SageMaker JumpStart و آمازون SageMaker الگوریتم های داخلی است. او بر روی توسعه الگوریتم های یادگیری ماشینی مقیاس پذیر تمرکز می کند. علایق تحقیقاتی او در زمینه پردازش زبان طبیعی، یادگیری عمیق قابل توضیح بر روی داده های جدولی و تجزیه و تحلیل قوی خوشه بندی ناپارامتریک فضا-زمان است. او مقالات زیادی را در کنفرانسهای ACL، ICDM، KDD و مجله Royal Statistical Society: Series A منتشر کرده است.
ویوک گانگاسانی یک معمار ارشد راه حل های یادگیری ماشین در خدمات وب آمازون است. او به استارتآپها کمک میکند تا اپلیکیشنهای AI/ML را بسازند و عملیاتی کنند. او در حال حاضر بر ترکیب پیشینه خود در Containers و Machine Learning برای ارائه راه حل هایی در MLOps، ML Inference و ML با کد کم متمرکز است. او در اوقات فراغت خود از امتحان رستوران های جدید و کاوش در روندهای نوظهور در هوش مصنوعی و یادگیری عمیق لذت می برد.
گرمی کوهن یک معمار راه حل با AWS است که در آن به مشتریان کمک می کند تا راه حل های پیشرفته و مبتنی بر ابر بسازند. او در اوقات فراغت خود از پیادهروی کوتاه در ساحل، کاوش در منطقه خلیج با خانوادهاش، تعمیر وسایل اطراف خانه، شکستن وسایل اطراف خانه و باربیکیو لذت میبرد.
نیلم کوشیا یک معمار راه حل سازمانی در AWS است. تمرکز فعلی او کمک به مشتریان سازمانی در سفر پذیرش ابری برای نتایج استراتژیک تجاری است. در اوقات فراغت خود از خواندن و بیرون بودن لذت می برد.
- پیشرفته (300)
- AI
- آی هنر
- مولد هنر ai
- ربات ai
- آمازون SageMaker
- Amazon SageMaker JumpStart
- هوش مصنوعی
- گواهی هوش مصنوعی
- هوش مصنوعی در بانکداری
- ربات هوش مصنوعی
- ربات های هوش مصنوعی
- نرم افزار هوش مصنوعی
- آموزش ماشین AWS
- بلاکچین
- کنفرانس بلاک چین ai
- coingenius
- هوش مصنوعی محاوره ای
- کنفرانس کریپتو ai
- دل-ه
- یادگیری عمیق
- کارشناس (400)
- گوگل ai
- فراگیری ماشین
- افلاطون
- افلاطون آی
- هوش داده افلاطون
- بازی افلاطون
- PlatoData
- بازی پلاتو
- مقیاس Ai
- نحو
- زفیرنت