با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.

با استفاده از جعبه ابزار Python، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید

تعمیر و نگهداری پیش‌بینی‌شده می‌تواند با نظارت پیشگیرانه بر وضعیت تجهیزات، راه مؤثری برای جلوگیری از خرابی ماشین‌های صنعتی و خرابی‌های گران‌قیمت باشد، بنابراین می‌توانید قبل از وقوع خرابی تجهیزات، از هرگونه ناهنجاری آگاه شوید. نصب حسگرها و زیرساخت های لازم برای اتصال داده ها، ذخیره سازی، تجزیه و تحلیل و هشدار عناصر اساسی برای فعال کردن راه حل های تعمیر و نگهداری پیش بینی شده است. با این حال، حتی پس از نصب زیرساخت موقت، بسیاری از شرکت‌ها از روش‌های تجزیه و تحلیل داده‌های پایه و مدل‌سازی ساده استفاده می‌کنند که اغلب در تشخیص زودهنگام مسائل برای جلوگیری از خرابی کارآمد نیستند. همچنین، پیاده‌سازی راه‌حل یادگیری ماشین (ML) برای تجهیزات شما می‌تواند دشوار و زمان‌بر باشد.

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

Lookout for Equipment داده‌های حسگرها و سیستم‌های شما را تجزیه و تحلیل می‌کند، مانند فشار، سرعت جریان، دور در دقیقه، دما و توان، تا به طور خودکار یک مدل خاص برای تجهیزات شما را بر اساس داده‌های شما آموزش دهد. از مدل منحصربه‌فرد ML شما برای تجزیه و تحلیل داده‌های حسگر ورودی در زمان واقعی استفاده می‌کند و علائم هشدار اولیه را که می‌تواند منجر به خرابی دستگاه شود، شناسایی می‌کند. برای هر هشدار شناسایی‌شده، Lookout for Equipment مشخص می‌کند که کدام حسگرهای خاص مشکل را نشان می‌دهند، و میزان تأثیر آن بر رویداد شناسایی‌شده.

با ماموریت قرار دادن ML در دست هر توسعه دهنده، ما می خواهیم افزونه دیگری را برای Lookout for Equipment ارائه کنیم: جعبه ابزار پایتون منبع باز که به توسعه دهندگان و دانشمندان داده اجازه می دهد تا مدل های Lookout for Equipment را مشابه آنچه شما به آن عادت کرده اید بسازند، آموزش دهند و به کار گیرند. آمازون SageMaker. این کتابخانه یک بسته بندی در بالای API پایتون boto3 Lookout for Equipment است و برای شروع سفر شما با این سرویس ارائه شده است. اگر پیشنهاد بهبود یا اشکالی برای گزارش دارید، لطفاً مشکلی را در جعبه ابزار ثبت کنید مخزن GitHub.

در این پست، یک راهنمای گام به گام برای استفاده از جعبه ابزار منبع باز Python Lookout for Equipment از داخل یک نوت بوک SageMaker ارائه می دهیم.

تنظیم محیط

برای استفاده از جعبه ابزار منبع باز Lookout for Equipment از یک نوت بوک SageMaker، باید به نوت بوک SageMaker مجوزهای لازم برای فراخوانی Lookout for Equipment API ها را اعطا کنیم. برای این پست، ما فرض می کنیم که شما قبلاً یک نمونه نوت بوک SageMaker ایجاد کرده اید. برای دستورالعمل، مراجعه کنید با نمونه های نوت بوک Amazon SageMaker شروع کنید. نمونه نوت بوک به طور خودکار با یک نقش اجرایی مرتبط می شود.

  1. برای پیدا کردن نقشی که به نمونه متصل است، نمونه را در کنسول SageMaker انتخاب کنید.
    با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.
  2. در صفحه بعدی، به پایین بروید تا آن را پیدا کنید هویت AWS و مدیریت دسترسی (IAM) نقش متصل به نمونه در مجوزها و رمزگذاری بخش.
  3. نقشی را برای باز کردن کنسول IAM انتخاب کنید.
    با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.

در مرحله بعد، یک خط مشی درون خطی را به نقش SageMaker IAM خود متصل می کنیم.

  1. بر ویرایش برگه نقشی را که باز کردید، انتخاب کنید سیاست درون خطی را اضافه کنید.
    با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.
  2. بر JSON تب، کد زیر را وارد کنید. ما از یک اکشن کارت وحشی استفاده می کنیم (lookoutequipment:*) برای این سرویس برای اهداف آزمایشی. برای موارد استفاده واقعی، فقط مجوزهای لازم را برای اجرای فراخوان‌های مناسب SDK API ارائه دهید.
     { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lookoutequipment:*" ], "Resource": "*" } ] }

  3. را انتخاب کنید سیاست را مرور کنید.
  4. یک نام برای خط مشی ارائه دهید و خط مشی را ایجاد کنید.

علاوه بر خط مشی خطی قبلی، در همان نقش IAM، باید یک رابطه اعتماد ایجاد کنیم تا به Lookout for Equipment اجازه دهیم این نقش را بر عهده بگیرد. نقش SageMaker در حال حاضر به داده های مناسب دسترسی دارد سرویس ذخیره سازی ساده آمازون (Amazon S3)؛ اجازه دادن به Lookout for Equipment برای به عهده گرفتن این نقش، اطمینان حاصل می کند که دسترسی مشابهی به داده ها نسبت به نوت بوک شما دارد. در محیط خود، ممکن است قبلاً نقش خاصی داشته باشید تا اطمینان حاصل شود که Lookout for Equipment به داده‌های شما دسترسی دارد، در این صورت نیازی به تنظیم رابطه اعتماد این نقش مشترک ندارید.

  1. در داخل SageMaker نقش IAM ما در روابط اعتماد برگه ، انتخاب کنید رابطه اعتماد را ویرایش کنید.
  2. در سند سیاست، کل خط مشی را با کد زیر جایگزین کنید:
     { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lookoutequipment.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

  3. را انتخاب کنید به روز رسانی خط مشی اعتماد.

اکنون همه ما آماده ایم تا از جعبه ابزار Lookout for Equipment در محیط نوت بوک SageMaker خود استفاده کنیم. جعبه ابزار Lookout for Equipment یک بسته منبع باز پایتون است که به دانشمندان داده و توسعه دهندگان نرم افزار اجازه می دهد تا به راحتی مدل های تشخیص ناهنجاری سری های زمانی را با استفاده از Lookout for Equipment بسازند و مستقر کنند. بیایید ببینیم که به لطف جعبه ابزار می توانید به راحتی به چه چیزی برسید!

وابستگی ها

در زمان نوشتن، جعبه ابزار نیاز به نصب زیر دارد:

پس از ارضای این وابستگی ها، می توانید جعبه ابزار Lookout for Equipment را با دستور زیر از ترمینال Jupyter نصب و راه اندازی کنید:

pip install lookoutequipment

جعبه ابزار اکنون آماده استفاده است. در این پست، نحوه استفاده از جعبه ابزار را با آموزش و استقرار یک مدل تشخیص ناهنجاری نشان می دهیم. یک چرخه عمر توسعه ML معمولی شامل ساخت مجموعه داده برای آموزش، آموزش مدل، استقرار مدل، و انجام استنتاج بر روی مدل است. جعبه ابزار از نظر قابلیت هایی که ارائه می دهد کاملاً جامع است، اما در این پست بر روی قابلیت های زیر تمرکز می کنیم:

  • مجموعه داده را آماده کنید
  • یک مدل تشخیص ناهنجاری را با استفاده از Lookout for Equipment آموزش دهید
  • برای ارزیابی مدل خود تجسمی ایجاد کنید
  • یک زمانبندی استنتاج را پیکربندی و شروع کنید
  • نتایج استنباط زمانبندی را تجسم کنید

بیایید درک کنیم که چگونه می توانیم از جعبه ابزار برای هر یک از این قابلیت ها استفاده کنیم.

مجموعه داده را آماده کنید

Lookout for Equipment نیاز به ایجاد و دریافت مجموعه داده دارد. برای تهیه مجموعه داده، مراحل زیر را انجام دهید:

  1. قبل از ایجاد مجموعه داده، باید یک مجموعه داده نمونه را بارگذاری کنیم و آن را در یک آپلود کنیم سرویس ذخیره سازی ساده آمازون سطل (Amazon S3). در این پست از expander مجموعه داده:
    from lookoutequipment import dataset data = dataset.load_dataset(dataset_name='expander', target_dir='expander-data')
    dataset.upload_dataset('expander-data', bucket, prefix)

بازگشته data شی یک فرهنگ لغت حاوی موارد زیر را نشان می دهد:

    • یک DataFrame داده آموزشی
    • A DataFrame را برچسب گذاری می کند
    • تاریخ شروع و پایان آموزش
    • تاریخ شروع و پایان ارزیابی
    • توضیحات برچسب DataFrame

داده های آموزش و برچسب از فهرست هدف در آمازون S3 در محل سطل/پیوند آپلود می شوند.

  1. پس از آپلود مجموعه داده در S3، یک شی از ایجاد می کنیم LookoutEquipmentDataset کلاسی که مجموعه داده را مدیریت می کند:
    lookout_dataset = dataset.LookoutEquipmentDataset( dataset_name='my_dataset', access_role_arn=role_arn, component_root_dir=f's3://{bucket}/{prefix}training-data'
    ) # creates the dataset
    lookout_dataset.create()

La access_role_arn ارائه شده باید به سطل S3 که در آن داده ها وجود دارد دسترسی داشته باشد. می توانید نقش ARN نمونه نوت بوک SageMaker را از نسخه قبلی بازیابی کنید تنظیم محیط بخش و یک خط مشی IAM اضافه کنید تا به سطل S3 خود دسترسی داشته باشید. برای اطلاعات بیشتر ببین نوشتن خط مشی های IAM: نحوه اعطای دسترسی به سطل آمازون S3.

La component_root_dir پارامتر باید مکانی را در آمازون S3 نشان دهد که داده های آموزشی در آن ذخیره می شود.

پس از راه اندازی API های قبلی، مجموعه داده ما ایجاد شده است.

  1. داده ها را در مجموعه داده وارد کنید:
    response = lookout_dataset.ingest_data(bucket, prefix + 'training-data/')

اکنون که داده‌های شما در آمازون S3 در دسترس است، ایجاد یک مجموعه داده و دریافت داده‌های موجود در آن فقط سه خط کد است. شما نیازی به ساخت یک طرح طولانی JSON به صورت دستی ندارید. جعبه ابزار ساختار فایل شما را تشخیص می دهد و آن را برای شما می سازد. بعد از اینکه داده های شما جذب شد، وقت آن است که به آموزش بروید!

آموزش یک مدل تشخیص ناهنجاری

پس از اینکه داده ها در مجموعه داده وارد شدند، می توانیم فرآیند آموزش مدل را شروع کنیم. کد زیر را ببینید:

from lookoutequipment import model lookout_model = model.LookoutEquipmentModel(model_name='my_model', dataset_name='my_dataset') lookout_model.set_time_periods(data['evaluation_start'],data['evaluation_end'],data['training_start'],data['training_end'])
lookout_model.set_label_data(bucket=bucket,prefix=prefix + 'label-data/',access_role_arn=role_arn)
lookout_model.set_target_sampling_rate(sampling_rate='PT5M') #trigger training job
response = lookout_model.train() #poll every 5 minutes to check the status of the training job
lookout_model.poll_model_training(sleep_time=300)

قبل از راه‌اندازی آموزش، باید دوره‌های آموزش و ارزیابی را در مجموعه داده مشخص کنیم. ما همچنین مکانی را در آمازون S3 که در آن داده‌های برچسب‌گذاری شده ذخیره می‌شود، تنظیم کردیم و نرخ نمونه‌برداری را روی 5 دقیقه تنظیم کردیم. پس از راه اندازی آموزش، poll_model_training وضعیت شغل آموزشی را هر 5 دقیقه یکبار نظرسنجی می کند تا زمانی که آموزش موفقیت آمیز باشد.

ماژول آموزشی جعبه ابزار Lookout for Equipment به شما امکان می دهد مدلی با کمتر از 10 خط کد آموزش دهید. تمام رشته‌های درخواست ایجاد طول مورد نیاز API سطح پایین را از طرف شما ایجاد می‌کند و نیاز شما به ساخت اسناد JSON طولانی و مستعد خطا را از بین می‌برد.

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

یک مدل آموزش دیده را ارزیابی کنید

پس از آموزش یک مدل، DescribeModel API از Lookout for Equipment معیارهای مرتبط با آموزش را ثبت می کند. این API یک سند JSON را با دو فیلد مورد علاقه برای رسم نتایج ارزیابی برمی گرداند: labeled_ranges و predicted_rangesکه به ترتیب حاوی ناهنجاری های شناخته شده و پیش بینی شده در محدوده ارزیابی هستند. جعبه ابزار ابزارهایی را برای بارگیری آنها در Pandas DataFrame به جای آن ارائه می دهد:

from lookoutequipment import evaluation LookoutDiagnostics = evaluation.LookoutEquipmentAnalysis(model_name='my_model', tags_df=data['data']) predicted_ranges = LookoutDiagnostics.get_predictions()
labels_fname = os.path.join('expander-data', 'labels.csv')
labeled_range = LookoutDiagnostics.get_labels(labels_fname)

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

from lookoutequipment import plot TSViz = plot.TimeSeriesVisualization(timeseries_df=data['data'], data_format='tabular')
TSViz.add_signal(['signal-001'])
TSViz.add_labels(labeled_range)
TSViz.add_predictions([predicted_ranges])
TSViz.add_train_test_split(data['evaluation_start'])
TSViz.add_rolling_average(60*24)
TSViz.legend_format = {'loc': 'upper left', 'framealpha': 0.4, 'ncol': 3}
fig, axis = TSViz.plot()

این چند خط کد یک نمودار با ویژگی های زیر ایجاد می کند:

  • نمودار خطی برای سیگنال انتخاب شده. قسمت مورد استفاده برای آموزش مدل به رنگ آبی ظاهر می شود در حالی که قسمت ارزیابی به رنگ خاکستری است
  • میانگین غلتشی به عنوان یک خط قرمز نازک روی سری زمانی ظاهر می شود
  • برچسب ها در یک نوار سبز با برچسب "ناهنجاری های شناخته شده" (به طور پیش فرض) نشان داده شده اند.
  • رویدادهای پیش‌بینی‌شده در یک نوار قرمز با برچسب «رویدادهای شناسایی‌شده» نشان داده می‌شوند.

با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.

جعبه ابزار تمام کارهای سنگین مکان یابی، بارگیری و تجزیه فایل های JSON را انجام می دهد و در عین حال تصاویری آماده برای استفاده ارائه می دهد که زمان دریافت بینش از مدل های تشخیص ناهنجاری شما را کاهش می دهد. در این مرحله، جعبه ابزار به شما امکان می دهد بر تفسیر نتایج و انجام اقداماتی برای ارائه ارزش مستقیم تجاری به کاربران نهایی خود تمرکز کنید. علاوه بر این تجسم‌های سری زمانی، SDK نمودارهای دیگری مانند مقایسه هیستوگرام مقادیر سیگنال‌های شما بین زمان‌های عادی و غیرعادی را ارائه می‌دهد. برای کسب اطلاعات بیشتر در مورد سایر قابلیت‌های تجسم‌سازی که می‌توانید مستقیماً از آن استفاده کنید، به ادامه مطلب مراجعه کنید مواظب اسناد جعبه ابزار تجهیزات باشید.

زمانبندی استنتاج

بیایید ببینیم چگونه می توانیم استنتاج ها را با استفاده از جعبه ابزار زمان بندی کنیم:

from lookout import scheduler #prepare dummy inference data
dataset.prepare_inference_data( root_dir='expander-data', sample_data_dict=data, bucket=bucket, prefix=prefix
) #setup the scheduler
lookout_scheduler = scheduler.LookoutEquipmentScheduler(scheduler_name='my_scheduler',model_name='my_model')
scheduler_params = { 'input_bucket': bucket, 'input_prefix': prefix + 'inference-data/input/', 'output_bucket': bucket, 'output_prefix': prefix + 'inference-data/output/', 'role_arn': role_arn, 'upload_frequency': 'PT5M', 'delay_offset': None, 'timezone_offset': '+00:00', 'component_delimiter': '_', 'timestamp_format': 'yyyyMMddHHmmss' } lookout_scheduler.set_parameters(**scheduler_params)
response = lookout_scheduler.create()

این کد یک زمانبندی ایجاد می کند که هر 5 دقیقه یک فایل را پردازش می کند (مطابق با تنظیم فرکانس آپلود هنگام پیکربندی زمانبندی). بعد از 15 دقیقه یا بیشتر، باید نتایجی در دسترس داشته باشیم. برای دریافت این نتایج از زمان‌بند در یک Pandas DataFrame، فقط باید دستور زیر را اجرا کنیم:

results_df = lookout_scheduler.get_predictions()

از اینجا، می‌توانیم اهمیت ویژگی را برای پیش‌بینی با استفاده از APIهای تجسم جعبه ابزار رسم کنیم:

event_details = pd.DataFrame(results_df.iloc[0, 1:]).reset_index()
fig, ax = plot.plot_event_barh(event_details)

این تجسم اهمیت ویژگی زیر را روی داده های نمونه تولید می کند.

با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.

جعبه ابزار همچنین یک API برای توقف زمانبندی ارائه می دهد. قطعه کد زیر را ببینید:

scheduler.stop()

پاک کردن

برای حذف تمام مصنوعات ایجاد شده قبلی، می‌توانیم آن را فراخوانی کنیم delete_dataset API با نام مجموعه داده ما:

dataset.delete_dataset(dataset_name='my_dataset', delete_children=True, verbose=True)

نتیجه

هنگام صحبت با مشتریان صنعتی و تولیدی، چالش رایجی که در مورد استفاده از هوش مصنوعی و ML می شنویم، مقدار زیاد سفارشی سازی و توسعه خاص و کارهای علم داده مورد نیاز برای به دست آوردن نتایج قابل اعتماد و عملی است. آموزش مدل‌های تشخیص ناهنجاری و دریافت پیش‌اخطار برای بسیاری از ماشین‌آلات صنعتی مختلف، پیش نیازی برای کاهش تلاش تعمیر و نگهداری، کاهش دوباره کاری یا ضایعات، افزایش کیفیت محصول و بهبود کارایی کلی تجهیزات (OEE) یا خطوط تولید است. تا به حال، این نیاز به حجم عظیمی از کار توسعه خاص داشت که مقیاس‌گذاری و نگهداری آن در طول زمان دشوار است.

خدمات هوش مصنوعی کاربردی آمازون مانند Lookout for Equipment به تولیدکنندگان این امکان را می‌دهد تا مدل‌های هوش مصنوعی را بدون دسترسی به یک تیم همه کاره از دانشمندان داده، مهندسان داده و مهندسان فرآیند بسازند. اکنون، با جعبه ابزار Lookout for Equipment، توسعه‌دهندگان شما می‌توانند زمان مورد نیاز برای کاوش بینش در داده‌های سری زمانی شما را کاهش داده و اقدام کنند. این جعبه ابزار یک رابط کاربری آسان و توسعه‌دهنده را برای ساخت سریع مدل‌های تشخیص ناهنجاری با استفاده از Lookout for Equipment فراهم می‌کند. جعبه ابزار منبع باز است و تمام کدهای SDK را می توان در آن یافت amazon-lookout-for-equipment-python-sdk مخزن GitHub. به عنوان یک نیز موجود است بسته PyPi.

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


درباره نویسنده

با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.ویکش پاندی یک معمار راه حل های متخصص متخصص یادگیری ماشین در AWS است که به مشتریان در بریتانیا و منطقه وسیع تر EMEA در طراحی و ساخت راه حل های ML کمک می کند. خارج از محل کار، Vikesh از امتحان کردن غذاهای مختلف و انجام ورزش در فضای باز لذت می برد.

با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.ایوان کاتانا معمار راه حل های متخصص هوش مصنوعی و یادگیری ماشین در AWS است. او به مشتریان کمک می‌کند راه‌حل‌های ML خود را در AWS Cloud توسعه و مقیاس‌بندی کنند. Ioan بیش از 20 سال تجربه، عمدتا در طراحی معماری نرم افزار و مهندسی ابر دارد.

با استفاده از ابزار Python Toolbox PlatoBlockchain Data Intelligence، مدل‌های Amazon Lookout for Equipment را بسازید، آموزش دهید و به کار ببرید. جستجوی عمودی Ai.مایکل هوراو یک معمار راه حل های تخصصی AI/ML در AWS است که بسته به لحظه، بین دانشمند داده و معمار یادگیری ماشین جایگزین می شود. او مشتاق است تا قدرت AI/ML را به فروشگاه های مشتریان صنعتی خود بیاورد و روی طیف گسترده ای از موارد استفاده از ML کار کرده است، از تشخیص ناهنجاری گرفته تا کیفیت پیش بینی کننده محصول یا بهینه سازی تولید. وقتی به مشتریان کمک نمی کند تا بهترین تجربیات یادگیری ماشینی بعدی را ایجاد کنند، از مشاهده ستاره ها، مسافرت یا نواختن پیانو لذت می برد.

تمبر زمان:

بیشتر از آموزش ماشین AWS