בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

בנו גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics

כיום, זיהום אוויר הוא נושא סביבתי מוכר היוצר מצבי נשימה ולב קשים, המהווים סכנות בריאותיות חמורות. גשם חומצי, דלדול שכבת האוזון והתחממות כדור הארץ הם גם השלכות שליליות של זיהום אוויר. יש צורך בניטור ואוטומציה מושכלים על מנת למנוע בעיות בריאות קשות ובמקרים קיצוניים מצבים מסכני חיים. איכות האוויר נמדדת באמצעות ריכוז המזהמים באוויר. זיהוי תסמינים מוקדם ושליטה ברמת המזהמים לפני שהוא מסוכן הוא חיוני. תהליך זיהוי איכות האוויר והחריגה במשקל המזהמים, ואבחון מהיר של הגורם השורשי, הוא קשה, יקר ונוטה לטעויות.

התהליך של יישום פתרונות מבוססי בינה מלאכותית ולמידת מכונה (ML) למציאת חריגות בנתונים כרוך במורכבות רבה בהטמעה, איסוף והכנת נתונים בפורמט הנכון ולאחר מכן אופטימיזציה ותחזוקה של היעילות של מודלים ML אלה לאורך תקופות ארוכות של זְמַן. זה היה אחד החסמים ליישום מהיר וקנה מידה של אימוץ יכולות ML.

פוסט זה מראה לך כיצד להשתמש בפתרון משולב עם תצפית אמזון למדדים ו צינור אש נתונים של אמזון קינסי לשבור את המחסומים הללו על ידי קליטה מהירה וקלה של נתונים זורמים, ובהמשך לזהות חריגות במדדים העיקריים של הביצועים המעניינים אותך.

Lookout for Metrics מזהה ומאבחן באופן אוטומטי חריגות (חריגות מהנורמה) בנתונים עסקיים ותפעוליים. זהו שירות ML מנוהל במלואו המשתמש במודלים מיוחדים של ML כדי לזהות חריגות על סמך מאפייני הנתונים שלך. לדוגמה, מגמות ועונתיות הן שני מאפיינים של מדדי סדרות זמן שבהם זיהוי חריגות מבוסס סף לא עובד. מגמות הן שינויים מתמשכים (עליות או ירידות) בערך של מדד. מצד שני, עונתיות היא דפוסים תקופתיים המתרחשים במערכת, בדרך כלל עולים מעל קו הבסיס ואז יורדים שוב. אתה לא צריך ניסיון ב-ML כדי להשתמש ב-Lookout for Metrics.

אנו מדגימים תרחיש נפוץ של ניטור איכות אוויר, בו אנו מזהים חריגות בריכוז המזהמים באוויר. בסוף פוסט זה, תלמד כיצד להשתמש בשירותים המנוהלים הללו של AWS כדי לסייע במניעת בעיות בריאות והתחממות כדור הארץ. אתה יכול ליישם את הפתרון הזה על מקרי שימוש אחרים לניהול סביבה טוב יותר, כגון זיהוי חריגות באיכות המים, איכות הקרקע ודפוסי צריכת החשמל, כדי לציין כמה.

סקירת פתרונות

הארכיטקטורה מורכבת משלושה בלוקים פונקציונליים:

  • חיישנים אלחוטיים הממוקמים במקומות אסטרטגיים כדי לחוש את רמת הריכוז של פחמן חד חמצני (CO), דו תחמוצת הגופרית (SO2) וחנקן דו חמצני (NO2) באוויר
  • הזרמת נתונים ואחסון
  • זיהוי חריגות והתראה

הפתרון מספק נתיב נתונים אוטומטי לחלוטין מהחיישנים ועד להעלאת הודעה למשתמש. אתה יכול גם ליצור אינטראקציה עם הפתרון באמצעות ממשק המשתמש של Lookout for Metrics כדי לנתח את החריגות שזוהו.

התרשים הבא ממחיש את ארכיטקטורת הפתרונות שלנו.

תנאים מוקדמים

אתה צריך את התנאים המוקדמים הבאים לפני שתוכל להמשיך עם הפתרון. עבור פוסט זה, אנו משתמשים באזור us-east-1.

  1. הורד את הסקריפט של Python (publish.py) וקובץ נתונים מה- GitHub ריפו.
  2. פתח את live_data.csv קובץ בעורך המועדף עליך והחלף את התאריכים להיות התאריך של היום ומחר. לדוגמה, אם התאריך של היום הוא 8 ביולי 2022, החלף 2022-03-25 עם 2022-07-08. השאר את הפורמט זהה. זה נדרש כדי לדמות נתוני חיישנים עבור התאריך הנוכחי באמצעות סקריפט סימולטור IoT.
  3. צור שירות אחסון פשוט של אמזון (Amazon S3) דלי ותיקיה בשם air-quality. צור תיקיית משנה בפנים air-quality בשם historical. להוראות ראה יצירת תיקיה.
  4. העלה את ה- live_data.csv קובץ בדלי S3 השורש ו historical_data.json בתיקייה ההיסטורית.
  5. צור AWS Cloud9 סביבת פיתוח, שבה אנו משתמשים כדי להפעיל את תוכנית סימולטור Python ליצירת נתוני חיישנים עבור פתרון זה.

הטמעה והמרת נתונים באמצעות AWS IoT Core ו- Kinesis Data Firehose

אנו משתמשים בזרם אספקה ​​של Kinesis Data Firehose כדי להטמיע את נתוני הסטרימינג מהם ליבת IoT של AWS ומעבירים אותו לאמזון S3. השלם את השלבים הבאים:

  1. במסוף Kinesis Data Firehose, בחר צור זרם מסירה.
  2. בעד מָקוֹר, בחר PUT ישיר.
  3. בעד יַעַד, בחר אמזון S3.
  4. בעד שם זרם המשלוח, הזן שם לזרם המסירה שלך.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  5. בעד דלי S3, הזן את הדלי שיצרת כתנאי מוקדם.
  6. הזן ערכים עבור קידומת דלי S3 ו קידומת פלט של שגיאת דלי S3.אחת מנקודות המפתח שיש לשים לב אליה היא התצורה של הקידומת המותאמת אישית המוגדרת עבור יעד Amazon S3. דפוס קידומת זה מוודא שהנתונים נוצרים בדלי S3 לפי היררכיית הקידומת הצפויה על ידי Lookout for Metrics. (עוד על כך בהמשך פוסט זה.) למידע נוסף על קידומות מותאמות אישית, ראה קידומות מותאמות אישית עבור אובייקטי Amazon S3.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  7. בעד מרווח חוצץ, להיכנס 60.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  8. בחרו צור או עדכן תפקיד IAM.
  9. בחרו צור זרם מסירה.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
    כעת אנו מגדירים את AWS IoT Core ומפעילים את תוכנית סימולטור איכות האוויר.
  10. בקונסולת AWS IoT Core, ליצור מדיניות IoT של AWS נקרא אדמין.
  11. בחלונית הניווט מתחת ניתוב הודעות, בחר חוקי.
  12. בחרו צור כלל.
  13. צור כלל עם ה Kinesis Data פעולת Firehose(Firehose)..
    זה שולח נתונים מהודעת MQTT לזרם מסירה של Kinesis Data Firehose.
  14. בחרו צור.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  15. צור דבר IoT של AWS עם שם Test-Thing וצרף את הפוליסה שיצרת.
  16. הורד את האישור, המפתח הציבורי, המפתח הפרטי, אישור ההתקן ו-CA שורש עבור AWS IoT Core.
  17. שמור כל אחד מהקבצים שהורדת ב- certificates ספריית משנה שיצרת קודם לכן.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  18. העלה את publish.py ל- iot-test-publish תיקייה.
  19. במסוף IoT Core של AWS, בחלונית הניווט, בחר הגדרות.
  20. תַחַת נקודת קצה מותאמת אישית, העתק את נקודת הקצה.
    כתובת האתר של נקודת הקצה המותאמת אישית הזו של AWS IoT Core היא אישית לחשבון ה-AWS ולאזור שלך.
  21. חלף customEndpointUrl עם כתובת האתר של נקודת הקצה המותאמת אישית של AWS IoT Core, אישורים עם שם האישור ו Your_S3_Bucket_Name עם שם הדלי שלך S3.
    לאחר מכן, אתה מתקין את pip ואת AWS IoT SDK עבור Python.
  22. היכנס ל-AWS Cloud9 וצור ספריית עבודה בסביבת הפיתוח שלך. לדוגמה: aq-iot-publish.
  23. צור ספריית משנה לאישורים בספריית העבודה החדשה שלך. לדוגמה: certificates.
  24. התקן את AWS IoT SDK עבור Python v2 על ידי הפעלת הפריטים הבאים משורת הפקודה.
    pip install awsiotsdk

  25. כדי לבדוק את צינור הנתונים, הפעל את הפקודה הבאה:
    python3 publish.py

אתה יכול לראות את המטען בצילום המסך הבא.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

לבסוף, הנתונים מועברים לדלי S3 שצוין במבנה הקידומת.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

הנתונים של הקבצים הם כדלקמן:

  • {"TIMESTAMP":"2022-03-20 00:00","LOCATION_ID":"B-101","CO":2.6,"SO2":62,"NO2":57}
  • {"TIMESTAMP":"2022-03-20 00:05","LOCATION_ID":"B-101","CO":3.9,"SO2":60,"NO2":73}

חותמות הזמן מראות שכל קובץ מכיל נתונים במרווחים של 5 דקות.

עם קוד מינימלי, בלענו כעת את נתוני החיישנים, יצרנו זרם קלט מהנתונים שנקלטו, ואחסנו את הנתונים בדלי S3 בהתבסס על הדרישות עבור Lookout for Metrics.

בסעיפים הבאים, אנו מסתכלים לעומק על המבנים בתוך Lookout for Metrics, וכמה קל להגדיר את המושגים הללו באמצעות מסוף Lookout for Metrics.

צור גלאי

גלאי הוא משאב Lookout for Metrics שמנטר מערך נתונים ומזהה חריגות בתדירות מוגדרת מראש. גלאים משתמשים ב-ML כדי למצוא דפוסים בנתונים ולהבחין בין שינויים צפויים בנתונים לבין חריגות לגיטימיות. כדי לשפר את הביצועים שלו, גלאי לומד יותר על הנתונים שלך לאורך זמן.

במקרה השימוש שלנו, הגלאי מנתח נתונים מהחיישן כל 5 דקות.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

כדי ליצור את הגלאי, נווט אל מסוף Lookout for Metrics ובחר צור גלאי. ספק את השם והתיאור (אופציונלי) עבור הגלאי, יחד עם מרווח של 5 דקות.

הנתונים שלך מוצפנים כברירת מחדל עם מפתח שבבעלות AWS ומנהלת עבורך. אתה יכול גם להגדיר אם ברצונך להשתמש במפתח הצפנה שונה מזה שבו נעשה שימוש כברירת מחדל.

כעת בוא נכוון את הגלאי הזה לנתונים שאתה רוצה שהוא יפעיל עליהם זיהוי חריגות.

צור מערך נתונים

מערך נתונים אומר לגלאי היכן למצוא את הנתונים שלך ואילו מדדים לנתח עבור חריגות. כדי ליצור מערך נתונים, בצע את השלבים הבאים:

  1. במסוף Amazon Lookout for Metrics, נווט אל הגלאי שלך.
  2. בחרו הוסף מערך נתונים.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  3. בעד שם, הזן שם (לדוגמה, air-quality-dataset).
  4. בעד מקור מידע, בחר את מקור הנתונים שלך (עבור פוסט זה, Amazon S3).
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.
  5. בעד מצב גלאי, בחר את המצב שלך (עבור פוסט זה, רציף).

עם Amazon S3, אתה יכול ליצור גלאי בשני מצבים:

    • Backtest - מצב זה משמש לאיתור חריגות בנתונים היסטוריים. זה צריך לאחד את כל הרשומות בקובץ אחד.
    • רציף - מצב זה משמש לאיתור חריגות בנתונים חיים. אנו משתמשים במצב זה עם מקרה השימוש שלנו מכיוון שאנו רוצים לזהות חריגות כאשר אנו מקבלים נתוני מזהמי אוויר מחיישן ניטור האוויר.
  1. הזן את נתיב S3 עבור תיקיית S3 ודפוס הנתיב.
  2. בעד מרווח של מקור נתונים, בחר מרווחים של דקה.אם יש לך נתונים היסטוריים שמהם הגלאי יכול ללמוד דפוסים, תוכל לספק אותם במהלך תצורה זו. הנתונים צפויים להיות באותו פורמט שבו אתה משתמש לביצוע בדיקת אחורי. אספקת נתונים היסטוריים מזרזת את תהליך האימון של מודל ML. אם זה לא זמין, הגלאי הרציף ממתין עד שיהיו מספיק נתונים זמינים לפני שמסיקים מסקנות.
  3. עבור פוסט זה, יש לנו כבר נתונים היסטוריים, אז בחר השתמש בנתונים היסטוריים.
  4. היכנס לנתיב S3 של historical_data.json.
  5. בעד פורמט קובץ, בחר קווי JSON.
    בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

בשלב זה, Lookout for Metrics ניגש למקור הנתונים ומאמת אם הוא יכול לנתח את הנתונים. אם הניתוח הצליח, הוא נותן לך הודעת "אימות מוצלח" ומעביר אותך לדף הבא, שבו אתה מגדיר מדדים, מידות וחותמות זמן.

הגדר מדדים, מידות וחותמות זמן

אמצעים הגדר מדדי KPI שברצונך לעקוב אחר חריגות עבורם. ניתן להוסיף עד חמישה מדדים לכל גלאי. השדות המשמשים ליצירת KPI מנתוני המקור שלך חייבים להיות בפורמט מספרי. ניתן להגדיר את מדדי ה-KPI כעת על ידי צבירת רשומות בתוך מרווח הזמן על ידי ביצוע סכום או ממוצע.

מידות נותן לך את היכולת לחתוך ולחתוך את הנתונים שלך על ידי הגדרת קטגוריות או פלחים. זה מאפשר לך לעקוב אחר חריגות עבור תת-קבוצה של כל סט הנתונים שעבורם מדד מסוים חל.

במקרה השימוש שלנו, אנו מוסיפים שלושה מדדים, אשר מחשבים את ה-AVG של העצמים הנראים במרווח של 5 דקות, ויש להם רק ממד אחד, עבורו נמדד ריכוז המזהמים.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

לכל רשומה במערך הנתונים חייבת להיות חותמת זמן. התצורה הבאה מאפשרת לך לבחור את השדה שמייצג את ערך חותמת הזמן וגם את הפורמט של חותמת הזמן.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

העמוד הבא מאפשר לעיין בכל הפרטים שהוספת ולאחר מכן לשמור ולהפעיל את הגלאי.

לאחר מכן, הגלאי מתחיל ללמוד את הנתונים המוזרים אל מקור הנתונים. בשלב זה, מצב הגלאי משתנה ל Initializing.

חשוב לציין את כמות הנתונים המינימלית הנדרשת לפני ש- Lookout for Metrics יכול להתחיל לזהות חריגות. למידע נוסף על דרישות ומגבלות, ראה חפש מכסות מדדים.

עם תצורה מינימלית, יצרת את הגלאי שלך, הצבעת אותו על מערך נתונים והגדרת את המדדים שבהם אתה רוצה ש- Lookout for Metrics ימצא חריגות.

דמיינו חריגות

Lookout for Metrics מספקת חווית ממשק משתמש עשירה למשתמשים שרוצים להשתמש ב- קונסולת הניהול של AWS לנתח את החריגות המתגלות. זה גם מספק את היכולת לשאול את החריגות באמצעות ממשקי API.

בואו נסתכל על אנומליה לדוגמה שזוהתה ממקרה השימוש בנתוני איכות האוויר שלנו. צילום המסך הבא מציג אנומליה שזוהתה בריכוז CO באוויר בשעה ובתאריך המיועדים עם ציון חומרה של 93. הוא גם מציג את אחוז התרומה של הממד לאנומליה. במקרה זה, 100% תרומה מגיעה מהמאפיין מזהה מיקום B-101.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

צור התראות

Lookout for Metrics מאפשר לך לשלוח התראות באמצעות מגוון ערוצים. אתה יכול להגדיר את סף ציון חומרת החריגות שבו יש להפעיל את ההתראות.

במקרה השימוש שלנו, אנו מגדירים התראות להישלח אל שירות התראה פשוט של אמזון ערוץ (Amazon SNS), שבתורו שולח הודעת SMS. צילומי המסך הבאים מציגים את פרטי התצורה.

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

אתה יכול גם להשתמש בהתראה כדי להפעיל אוטומציות באמצעות AWS למבדה פונקציות על מנת להניע פעולות מונעות API על AWS IoT Core.

סיכום

בפוסט זה, הראינו לכם כמה קל להשתמש ב- Lookout for Metrics וב- Kinesis Data Firehose כדי להסיר את ההרמה הכבדה הבלתי מובנת הכרוכה בניהול מחזור החיים מקצה לקצה של בניית יישומי זיהוי אנומליות המופעלים על ידי ML. פתרון זה יכול לעזור לך להאיץ את היכולת שלך למצוא חריגות במדדים עסקיים מרכזיים ולאפשר לך למקד את המאמצים שלך בצמיחה ושיפור העסק שלך.

אנו ממליצים לך ללמוד עוד על ידי ביקור ב- מדריך למפתחי מדדים של אמזון ונסה את הפתרון מקצה לקצה שמאפשרים שירותים אלה עם מערך נתונים רלוונטי ל-KPI העסקי שלך.


על הסופר

בנה גלאי חריגות באיכות אוויר באמצעות Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.Dhirj Thakur הוא אדריכל פתרונות עם שירותי האינטרנט של אמזון. הוא עובד עם לקוחות AWS ושותפים בכדי לספק הנחיות בנושא אימוץ ענן ארגוני, הגירה ואסטרטגיה. הוא נלהב מהטכנולוגיה ונהנה לבנות ולהתנסות בתחום הניתוח וה- AI / ML.

בול זמן:

עוד מ למידת מכונות AWS