شرکت ها اغلب با حجم زیادی از درخواست های خدمات فناوری اطلاعات سروکار دارند. به طور سنتی، باری بر دوش درخواست کننده گذاشته می شود تا برای هر موضوع، دسته بندی صحیح را انتخاب کند. خطای دستی یا طبقه بندی اشتباه بلیط معمولاً به معنای تاخیر در حل درخواست خدمات فناوری اطلاعات است. این می تواند منجر به کاهش بهره وری، کاهش رضایت مشتری، تأثیر بر قراردادهای سطح خدمات (SLA) و تأثیرات عملیاتی گسترده تر شود. همانطور که شرکت شما رشد می کند، مشکل دریافت خدمات مناسب به تیم مناسب مهم تر می شود. استفاده از رویکردی مبتنی بر یادگیری ماشینی (ML) و هوش مصنوعی میتواند به نیازهای در حال تکامل شرکت شما کمک کند.
ML نظارت شده فرآیندی است که از مجموعه داده ها و خروجی های برچسب گذاری شده برای آموزش الگوریتم های یادگیری در مورد نحوه طبقه بندی داده ها یا پیش بینی یک نتیجه استفاده می کند. درک آمازون یک سرویس پردازش زبان طبیعی (NLP) است که از ML برای کشف بینش ها و ارتباطات ارزشمند در متن استفاده می کند. این APIهایی را ارائه می دهد که توسط ML پشتیبانی می شوند تا عبارات کلیدی، موجودیت ها، تجزیه و تحلیل احساسات و موارد دیگر را استخراج کنند.
در این پست، ما به شما نشان می دهیم که چگونه یک مدل ML نظارت شده را پیاده سازی کنید که می تواند به طبقه بندی درخواست های خدمات فناوری اطلاعات به طور خودکار با استفاده از آن کمک کند. Amazon Comprehend طبقه بندی سفارشی. طبقهبندی سفارشی Amazon Comprehend به شما کمک میکند Amazon Comprehend را برای نیازهای خاص خود سفارشی کنید، بدون اینکه مهارت لازم برای ساخت راهحلهای NLP مبتنی بر ML را داشته باشید. با ML خودکار یا AutoML، طبقهبندی سفارشی Amazon Comprehend مدلهای NLP سفارشیسازی شده را از طرف شما با استفاده از دادههای آموزشی که ارائه میدهید ایجاد میکند.
بررسی اجمالی راه حل
برای نشان دادن طبقه بندی درخواست خدمات فناوری اطلاعات، این راه حل از مجموعه داده SEOSS. این مجموعه داده یک مجموعه داده بازیابی شده سیستماتیک متشکل از 33 پروژه نرم افزاری منبع باز است که حاوی تعداد زیادی مصنوعات تایپ شده و پیوندهای ردیابی بین آنهاست. این راه حل از داده های مربوط به این 33 پروژه منبع باز، خلاصه ها و توضیحاتی که توسط کاربران نهایی گزارش شده است برای ساخت یک مدل طبقه بندی کننده سفارشی با استفاده از Amazon Comprehend استفاده می کند.
این پست نحوه پیاده سازی و استقرار راه حل را با استفاده از کیت توسعه ابری AWS (AWS CDK) در ایزوله ابر خصوصی مجازی آمازون محیط (Amazon VPC) که فقط از زیرشبکه های خصوصی تشکیل شده است. ما همچنین از کد برای نشان دادن نحوه استفاده از AWS CDK استفاده می کنیم چارچوب ارائه دهنده، یک مینی فریمورک برای پیاده سازی ارائه دهنده برای AWS CloudFormation منابع سفارشی برای ایجاد، به روز رسانی یا حذف یک منبع سفارشی، مانند نقطه پایانی آمازون Comprehend. نقطه پایانی آمازون Comprehend شامل منابع مدیریت شده ای است که مدل سفارشی شما را برای استنتاج بلادرنگ در دستگاه مشتری یا برنامه های شخص ثالث در دسترس قرار می دهد. را کد این راه حل در Github موجود است.
شما از CDK AWS برای استقرار زیرساخت، کد برنامه و پیکربندی راه حل استفاده می کنید. شما همچنین به یک حساب AWS و توانایی ایجاد منابع AWS نیاز دارید. شما از CDK AWS برای ایجاد منابع AWS مانند VPC با زیرشبکه های خصوصی استفاده می کنید. نقاط پایانی آمازون VPC, سیستم فایل الاستیک آمازون (Amazon EFS)، an سرویس اطلاع رسانی ساده آمازون (Amazon SNS) موضوع، an سرویس ذخیره سازی ساده آمازون سطل (Amazon S3)، اطلاعیه های رویداد Amazon S3و AWS لامبدا کارکرد. در مجموع، این منابع AWS پشته آموزشی را تشکیل می دهند که از آن برای ساخت و آموزش مدل طبقه بندی کننده سفارشی استفاده می کنید.
پس از ایجاد این منابع AWS، مجموعه داده SEOSS را دانلود کرده و مجموعه داده را در سطل S3 ایجاد شده توسط راه حل آپلود می کنید. اگر این راه حل را در AWS Region us-east-2 استقرار می دهید، فرمت نام سطل S3 به این صورت است. comprehendcustom--us-east-2-s3stack
. این راه حل از ماشه بارگذاری چند قسمتی Amazon S3 برای فراخوانی یک تابع Lambda استفاده می کند که پیش پردازش داده های ورودی را شروع می کند و از داده های از پیش پردازش شده برای آموزش طبقه بندی کننده سفارشی Amazon Comprehend برای ایجاد مدل طبقه بندی کننده سفارشی استفاده می کند. سپس از نام منبع آمازون (ARN) مدل طبقهبندیکننده سفارشی برای ایجاد پشته استنتاج استفاده میکنید که با استفاده از AWS CDK یک نقطه پایانی آمازون Comprehend ایجاد میکند. چارچوب ارائه دهنده، که سپس می توانید برای استنباط از یک برنامه شخص ثالث یا ماشین مشتری استفاده کنید.
نمودار زیر معماری پشته آموزشی را نشان می دهد.
مراحل گردش کار به شرح زیر است:
- مجموعه داده SEOSS را در سطل S3 ایجاد شده به عنوان بخشی از فرآیند استقرار پشته آموزشی آپلود کنید. این یک تریگر رویداد ایجاد می کند که آن را فراخوانی می کند
etl_lambda
تابع. - La
etl_lambda
تابع مجموعه داده های خام را از Amazon S3 به Amazon EFS دانلود می کند. - La
etl_lambda
تابع وظیفه پیش پردازش داده مجموعه داده SEOSS را انجام می دهد. - هنگامی که اجرای تابع کامل شد، داده های تبدیل شده را با آن آپلود می کند
prepped_data
پیشوند سطل S3. - پس از اتمام آپلود داده های تبدیل شده، پیام تکمیل موفقیت آمیز ETL به Amazon SNS ارسال می شود.
- در Amazon Comprehend، می توانید اسناد خود را با استفاده از دو حالت طبقه بندی کنید: چند کلاسه یا چند برچسب. حالت چند کلاسه یک و تنها یک کلاس را برای هر سند مشخص می کند و حالت چند برچسبی یک یا چند برچسب را برای هر سند مشخص می کند. از آنجایی که میخواهیم یک کلاس را برای هر سند شناسایی کنیم، مدل طبقهبندیکننده سفارشی را در حالت چند کلاسه آموزش میدهیم. آمازون SNS باعث می شود
train_classifier_lambda
تابع، که آموزش طبقه بندی کننده آمازون Comprehend را در حالت چند کلاسه آغاز می کند. - La
train_classifier_lambda
تابع آموزش طبقه بندی کننده سفارشی Amazon Comprehend را آغاز می کند. - Amazon Comprehend داده های تبدیل شده را از
prepped_data
پیشوند در آمازون S3 برای آموزش مدل طبقه بندی کننده سفارشی. - وقتی آموزش مدل کامل شد، Amazon Comprehend آن را آپلود می کند
model.tar.gz
فایل بهoutput_data
پیشوند سطل S3. میانگین زمان تکمیل آموزش این مدل طبقهبندیکننده سفارشی تقریباً 10 ساعت است. - ماشه آپلود آمازون S3 را فراخوانی می کند
extract_comprehend_model_name_lambda
تابع، که مدل طبقهبندیکننده سفارشی ARN را بازیابی میکند. - این تابع مدل طبقهبندیکننده سفارشی ARN را از بار رویداد S3 و پاسخ آن استخراج میکند
list-document-classifiers
زنگ زدن. - این تابع، مدل طبقهبندیکننده سفارشی ARN را به آدرس ایمیلی که قبلاً مشترک شده بودید، به عنوان بخشی از فرآیند ایجاد پشته آموزشی ارسال میکند. سپس از این ARN برای استقرار پشته استنتاج استفاده می کنید.
این استقرار پشته استنتاج را همانطور که در شکل زیر نشان داده شده است ایجاد می کند. پشته استنتاج یک API REST به شما ارائه می دهد که توسط یک ایمن شده است هویت AWS و مدیریت دسترسی مجوز دهنده (IAM)، که سپس می توانید از آن برای ایجاد امتیاز اطمینان برچسب ها بر اساس متن ورودی ارائه شده از یک برنامه شخص ثالث یا ماشین مشتری استفاده کنید.
پیش نیازها
برای این دمو، شما باید پیش نیازهای زیر را داشته باشید:
- An حساب AWS.
- پایتون 3.7 یا بالاتر, Node.js وو رفتن در ماشین توسعه CDK AWS از نسخه های خاصی از Node.js استفاده می کند (>=10.13.0، به جز نسخه 13.0.0 – 13.6.0). نسخه ای با پشتیبانی طولانی مدت فعال (LTS) توصیه می شود.
برای نصب نسخه فعال LTS Node.js می توانید از موارد زیر استفاده کنید نصب اسکریپت برایnvm
و استفاده کنیدnvm
به نصب نسخه Node.js LTS. همچنین می توانید LTS Node.js فعال فعلی را از طریق مدیریت بسته بسته به سیستم عامل انتخابی خود نصب کنید.برای macOS، می توانید Node.js را از طریق مدیریت بسته با استفاده از موارد زیر نصب کنید دستورالعمل.
برای ویندوز، می توانید Node.js را از طریق مدیریت بسته با استفاده از موارد زیر نصب کنید دستورالعمل.
- اگر از یک AWS CDK v2 استفاده می کنید، از قبل نصب شده است AWS Cloud9 IDE. اگر از AWS Cloud9 IDE استفاده میکنید، میتوانید از این مرحله صرفنظر کنید. اگر CDK AWS را در دستگاه توسعه نصب نکردهاید، AWS CDK v2 را به صورت سراسری با استفاده از دستور Node Package Manager نصب کنید.
npm install -g aws-cdk
. این مرحله نیاز به نصب Node.js در ماشین توسعه دارد. - اعتبارنامه AWS خود را برای دسترسی و ایجاد منابع AWS با استفاده از AWS CDK پیکربندی کنید. برای دستورالعمل، مراجعه کنید مشخص کردن اعتبار و منطقه.
- دانلود مجموعه داده SEOSS شامل نیازمندیها، گزارشهای باگ، تاریخچه کد و پیوندهای ردیابی 33 پروژه نرمافزاری منبع باز است. فایل را ذخیره کنید
dataverse_files.zip
در ماشین محلی شما
پشته آموزشی AWS CDK را مستقر کنید
برای استقرار AWS CDK، ما با پشته آموزشی شروع می کنیم. مراحل زیر را کامل کنید:
- مخزن GitHub را شبیه سازی کنید:
- حرکت به
amazon-comprehend-custom-automate-classification-it-service-request
پوشه:
تمام دستورات زیر در داخل اجرا می شوند amazon-comprehend-custom-automate-classification-it-service-request
دایرکتوری.
- در دایرکتوری amazon-comprehend-custom-automate-classification-it-service-request، محیط مجازی Python را مقداردهی اولیه کنید و requires.txt را با pip نصب کنید:
- اگر برای اولین بار از CDK AWS در یک حساب و منطقه خاص AWS استفاده می کنید، دستورالعمل های مربوط به بوت استرپ کردن محیط AWS CDK شما:
- الگوهای CloudFormation را برای این راه حل با استفاده از آن ترکیب کنید
cdk synth
و استفاده کنیدcdk deploy
برای ایجاد منابع AWS که قبلا ذکر شد:
بعد از اینکه وارد شدی cdk deploy
، AWS CDK از شما می خواهد که آیا می خواهید تغییراتی را برای هر یک از پشته هایی که در فرمان استقرار cdk فراخوانی شده است اجرا کنید یا خیر.
- وارد
y
برای هر یک از درخواست های ایجاد پشته، مرحله استقرار cdk این پشته ها را ایجاد می کند. آدرس ایمیل ارائه شده توسط شما را در موضوع SNS ایجاد شده به عنوان بخشی از استقرار cdk مشترک کنید. - پس از اجرای موفقیت آمیز cdk، پوشه ای به نام ایجاد کنید
raw_data
در سطل S3comprehendcustom---s3stack
. - مجموعه داده SEOSS را آپلود کنید
dataverse_files.zip
که قبلا در این پوشه دانلود کردید.
پس از اتمام آپلود، راه حل مورد نظر را فراخوانی می کند etl_lambda
برای شروع فرآیند استخراج، تبدیل و بارگذاری (ETL) از یک تریگر رویداد Amazon S3 استفاده کنید. پس از اتمام موفقیت آمیز فرآیند ETL، پیامی به موضوع SNS ارسال می شود که این پیام را فراخوانی می کند train_classifier_lambda
عملکرد. این تابع آموزش مدل طبقهبندیکننده سفارشی Amazon Comprehend را راهاندازی میکند. بسته به اینکه آیا مدل خود را بر روی مجموعه داده کامل SEOSS آموزش می دهید، آموزش می تواند تا 10 ساعت طول بکشد. هنگامی که فرآیند آموزش کامل شد، Amazon Comprehend آن را آپلود می کند model.tar.gz
فایل به output_data
پیشوند در سطل S3.
این آپلود باعث می شود extract_comprehend_model_name_lambda
با استفاده از یک تریگر رویداد S3 که مدل طبقهبندیکننده سفارشی ARN را استخراج میکند و آن را به آدرس ایمیلی که قبلاً مشترک شده بودید ارسال میکند. سپس از این مدل طبقهبندیکننده سفارشی ARN برای ایجاد پشته استنتاج استفاده میشود. هنگامی که آموزش مدل کامل شد، می توانید با رفتن به بخش جزئیات نسخه در کنسول آمازون Comprehend (به تصویر زیر مراجعه کنید)، یا با استفاده از Amazon Comprehend، معیارهای عملکرد مدل طبقه بندی کننده سفارشی را مشاهده کنید. Boto3 SDK.
پشته استنتاج AWS CDK را مستقر کنید
اکنون شما آماده استقرار پشته استنتاج هستید.
- طبقهبندیکننده سفارشی مدل ARN را از ایمیلی که دریافت کردهاید کپی کنید و از موارد زیر استفاده کنید
cdk deploy
دستور ایجاد پشته استنتاج.
این دستور یک API Gateway REST API را مستقر می کند که توسط یک مجوز IAM ایمن شده است، که شما از آن برای استنباط با شناسه کاربر AWS یا نقش IAM استفاده می کنید که فقط دارای امتیاز execute-api:Invoke IAM است. دستور cdk deploy زیر پشته استنتاج را مستقر می کند. این پشته از CDK AWS استفاده می کند چارچوب ارائه دهنده برای ایجاد نقطه پایانی Amazon Comprehend به عنوان یک منبع سفارشی، به طوری که ایجاد، حذف و به روز رسانی نقطه پایانی Amazon Comprehend را می توان به عنوان بخشی از چرخه عمر پشته استنتاج با استفاده از دستورات cdk deploy و cdk انجام داد.
از آنجایی که باید پس از اتمام آموزش مدل، دستور زیر را اجرا کنید، که ممکن است تا 10 ساعت طول بکشد، مطمئن شوید که در محیط مجازی پایتون هستید که در مرحله قبلی مقداردهی اولیه کرده اید و در amazon-comprehend-custom-automate-classification-it-service-request
دایرکتوری:
مثلا:
- بعد از
cdk deploy
دستور با موفقیت کامل شد، آن را کپی کنیدAPIGWInferenceStack.ComprehendCustomClassfierInvokeAPI
مقدار را از خروجی کنسول، و از این API REST برای ایجاد استنتاج از یک ماشین مشتری یا یک برنامه شخص ثالث که دارایexecute-api:Invoke
امتیاز IAM. اگر این راه حل را در us-east-2 اجرا می کنید، فرمت این REST API استhttps://.execute-api.us-east-2.amazonaws.com/prod/invokecomprehendV1
.
از طرف دیگر، می توانید از مشتری تست استفاده کنید apiclientinvoke.py
از مخزن GitHub برای ارسال درخواست به مدل طبقه بندی کننده سفارشی. قبل از استفاده از apiclientinvoke.py، مطمئن شوید که پیش نیازهای زیر وجود دارد:
- شما دارید
boto3
وrequests
بسته پایتون با استفاده از پیپ روی ماشین کلاینت نصب شده است. - شما اعتبار Boto3 را پیکربندی کرده اید. به طور پیشفرض، کلاینت تست فرض میکند که نمایهای به نام پیشفرض وجود دارد و آن را دارد
execute-api:Invoke
امتیاز IAM در REST API. - SigV4Auth به منطقه ای که REST API در آن مستقر شده است اشاره می کند. را به روز کنید
ارزش به
us-east-2
inapiclientinvoke.py
اگر REST API شما در us-east-2 مستقر است. - شما اختصاص داده اید
raw_data
متغیر با متنی که میخواهید پیشبینی کلاس یا درخواست طبقهبندی را روی آن انجام دهید:
- شما اختصاص داده اید
restapi
متغیر با REST API که قبلاً کپی شده است:
restapi="https://.execute-api.us-east-2.amazonaws.com/prod/invokecomprehendV1"
- اجرا کن
apiclientinvoke.py
پس از به روز رسانی های قبلی:
پاسخ زیر را از مدل طبقهبندیکننده سفارشی دریافت میکنید:
Amazon Comprehend امتیازات اطمینان را برای هر برچسبی که به درستی نسبت داده است برمی گرداند. اگر سرویس در مورد برچسب بسیار مطمئن باشد، امتیاز به 1 نزدیکتر خواهد شد. بنابراین، برای مدل طبقهبندیکننده سفارشی Amazon Comprehend که با استفاده از مجموعه داده SEOSS آموزش داده شده است، مدل طبقهبندیکننده سفارشی پیشبینی میکند که متن متعلق به کلاس SPARK است. این طبقهبندی که توسط مدل طبقهبندیکننده سفارشی آمازون Comprehend برگردانده میشود، سپس میتواند برای طبقهبندی درخواستهای خدمات فناوری اطلاعات یا پیشبینی دستهبندی صحیح درخواستهای خدمات فناوری اطلاعات استفاده شود، در نتیجه خطاهای دستی یا طبقهبندی اشتباه درخواستهای خدمات را کاهش میدهد.
پاک کردن
برای پاک کردن تمام منابع ایجاد شده در این پست که به عنوان بخشی از پشته آموزشی و استک استنتاج ایجاد شده اند، از دستور زیر استفاده کنید. این دستور تمام منابع AWS ایجاد شده به عنوان بخشی از دستورات قبلی cdk را حذف می کند:
نتیجه
در این پست، ما به شما نشان دادیم که چگونه شرکتها میتوانند یک مدل ML نظارت شده را با استفاده از طبقهبندی سفارشی Amazon Comprehend برای پیشبینی دسته درخواستهای خدمات فناوری اطلاعات بر اساس موضوع یا شرح درخواست ارسال شده توسط کاربر نهایی، پیادهسازی کنند. پس از ساخت و آموزش یک مدل طبقهبندیکننده سفارشی، میتوانید با ایجاد نقطه پایانی، تجزیه و تحلیل بلادرنگ را برای طبقهبندی سفارشی اجرا کنید. پس از استقرار این مدل در نقطه پایانی Amazon Comprehend، میتوان از آن برای اجرای استنتاج بلادرنگ توسط برنامههای شخص ثالث یا سایر ماشینهای مشتری، از جمله ابزارهای مدیریت خدمات فناوری اطلاعات، استفاده کرد. سپس می توانید از این استنتاج برای پیش بینی دسته نقص و کاهش خطاهای دستی یا طبقه بندی اشتباه بلیط ها استفاده کنید. این امر به کاهش تاخیر برای حل بلیط کمک می کند و دقت وضوح و بهره وری مشتری را افزایش می دهد که در نهایت منجر به افزایش رضایت مشتری می شود.
می توانید مفاهیم موجود در این پست را به موارد استفاده دیگر مانند مسیریابی کسب و کار یا بلیط های IT به تیم های داخلی مختلف مانند بخش های تجاری، نمایندگی های خدمات مشتری و پشتیبانی IT سطح 2/3، که توسط کاربران نهایی یا از طریق خودکار ایجاد شده است، گسترش دهید. به معنای.
منابع
- راث، مایکل؛ Mäder، Patrick، 2019، "مجموعه داده SEOSS - الزامات، گزارش های اشکال، تاریخچه کد، و پیوندهای ردیابی برای کل پروژه ها"، https://doi.org/10.7910/DVN/PDDZ4Q، هاروارد دیتاورس، V1
درباره نویسنده
ارناب چاکرابورتی یک معمار Sr. Solutions در AWS مستقر در سینسیناتی، اوهایو است. او به موضوعاتی در معماری سازمانی و راه حل، تجزیه و تحلیل داده، بدون سرور و یادگیری ماشین علاقه دارد. او در اوقات فراغت خود از تماشای فیلم، برنامه های سفر و ورزش لذت می برد.
ویروسی دسای یک معمار اصلی راه حل در AWS است. با بیش از 25 سال تجربه در فناوری اطلاعات، او به مشتریان کمک می کند تا AWS را بپذیرند و معماری خود را مدرن کنند. او پیاده روی را دوست دارد و از غواصی عمیق با مشتریان در همه چیز AWS لذت می برد.
- پیشرفته (300)
- AI
- آی هنر
- مولد هنر ai
- ربات ai
- درک آمازون
- هوش مصنوعی
- گواهی هوش مصنوعی
- هوش مصنوعی در بانکداری
- ربات هوش مصنوعی
- ربات های هوش مصنوعی
- نرم افزار هوش مصنوعی
- آموزش ماشین AWS
- بلاکچین
- کنفرانس بلاک چین ai
- coingenius
- هوش مصنوعی محاوره ای
- کنفرانس کریپتو ai
- دل-ه
- یادگیری عمیق
- گوگل ai
- متوسط (200)
- فراگیری ماشین
- افلاطون
- افلاطون آی
- هوش داده افلاطون
- بازی افلاطون
- PlatoData
- بازی پلاتو
- مقیاس Ai
- نحو
- نحوه فنی
- زفیرنت