Amazon Comprehend מכריזה על מגבלות נמוכות יותר של הערות עבור זיהוי ישויות מותאמות אישית PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.

Amazon Comprehend מכריזה על מגבלות נמוכות יותר של הערות לזיהוי ישויות מותאמות אישית

אמזון להתבונן הוא שירות עיבוד שפה טבעית (NLP) שבו אתה יכול להשתמש כדי לחלץ אוטומטית ישויות, ביטויי מפתח, שפה, סנטימנטים ותובנות אחרות ממסמכים. לדוגמה, אתה יכול להתחיל מיידית לזהות ישויות כגון אנשים, מקומות, פריטים מסחריים, תאריכים וכמויות באמצעות קונסולת Comprehend של אמזון, ממשק שורת הפקודה של AWS, או ממשקי API של Amazon Comprehend. בנוסף, אם אתה צריך לחלץ ישויות שאינן חלק מה- Amazon Comprehend סוגי ישויות מובנים, תוכל ליצור מודל זיהוי ישויות מותאם אישית (הידוע גם בשם ישות מותאמת אישית מזהה) כדי לחלץ מונחים שרלוונטיים יותר למקרה השימוש הספציפי שלך, כמו שמות של פריטים מקטלוג מוצרים, מזהים ספציפיים לדומיין וכן הלאה. יצירת מזהה ישויות מדויק בעצמך באמצעות ספריות ומסגרות למידת מכונה עשויה להיות תהליך מורכב וגוזל זמן. Amazon Comprehend מפשטת את עבודת אימון המודל שלך באופן משמעותי. כל מה שאתה צריך לעשות הוא לטעון את מערך הנתונים שלך של מסמכים והערות, ולהשתמש בקונסולת Amazon Comprehend, AWS CLI או APIs כדי ליצור את המודל.

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

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

עד היום, כדי להתחיל להכשיר מזהה ישויות מותאם אישית של Amazon Comprehend, היה עליך לספק אוסף של לפחות 250 מסמכים ומינימום של 100 הערות לכל סוג ישות. היום, אנו מכריזים כי הודות לשיפורים האחרונים במודלים שבבסיס Amazon Comprehend, צמצמנו את דרישות המינימום להכשרת מזהה עם קבצי הערות CSV בטקסט רגיל. כעת תוכל לבנות מודל זיהוי ישויות מותאם אישית עם שלושה מסמכים ו-25 הערות לכל סוג ישות. תוכל למצוא פרטים נוספים על מגבלות שירות חדשות ב הנחיות ומכסות.

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

הכנת מערך נתונים

בפוסט זה, אנו מסבירים כיצד אימנו מזהה ישויות מותאם אישית של Amazon Comprehend באמצעות מסמכים מוערים. באופן כללי, ניתן לספק הערות בתור א קובץ CSV, קובץ מניפסט מוגדל שנוצר על ידי Ground Truth, או קובץ PDF. ההתמקדות שלנו היא בהערות CSV בטקסט רגיל, מכיוון שזהו סוג ההערה המושפע מדרישות המינימום החדשות. קבצי CSV צריכים להיות בעלי המבנה הבא:

File, Line, Begin Offset, End Offset, Type
documents.txt, 0, 0, 13, ENTITY_TYPE_1
documents.txt, 1, 0, 7, ENTITY_TYPE_2

השדות הרלוונטיים הם כדלקמן:

  • שלח – שם התיק המכיל את המסמכים
  • קו – מספר השורה המכילה את הישות, החל בשורה 0
  • להתחיל לקזז – היסט התו בטקסט הקלט (ביחס לתחילת השורה) המראה היכן מתחילה הישות, בהתחשב בכך שהתו הראשון נמצא במיקום 0
  • קיזוז סוף – היסט התווים בטקסט הקלט המראה היכן מסתיימת הישות
  • סוּג – שם סוג הישות שברצונך להגדיר

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

עבור הבדיקות שלנו, השתמשנו ב- מדד SNIPS להבנת השפה הטבעית, מערך של התבטאויות במיקור המונים המופץ בין שבע כוונות משתמש (AddToPlaylist, BookRestaurant, GetWeather, PlayMusic, RateBook, SearchCreativeWork, SearchScreeningEvent). מערך הנתונים פורסם בשנת 2018 בהקשר של המאמר Snips Voice Platform: מערכת משובצת להבנת שפה מדוברת עבור ממשקים קוליים בעיצוב פרטי מאת Coucke, et al.

מערך הנתונים של SNIPS מורכב מאוסף של קובצי JSON המעבים הן הערות והן קובצי טקסט גולמיים. להלן קטע מתוך מערך הנתונים:

{
   "annotations":{
      "named_entity":[
         {
            "start":16,
            "end":36,
            "extent":"within the same area",
            "tag":"spatial_relation"
         },
         {
            "start":40,
            "end":51,
            "extent":"Lawrence St",
            "tag":"poi"
         },
         {
            "start":67,
            "end":70,
            "extent":"one",
            "tag":"party_size_number"
         }
      ],
      "intent":"BookRestaurant"
   },
   "raw_text":"I'd like to eat within the same area of Lawrence St for a party of one"
}

לפני שיצרנו את מזהה הישויות שלנו, הפכנו את הערות SNIPS וקובצי טקסט גולמיים לקובץ הערות CSV וקובץ מסמכי txt.

להלן קטע מתוך שלנו annotations.csv קובץ:

File, Line, Begin Offset, End Offset, Type
documents.txt, 0, 16, 36, spatial_relation
documents.txt, 0, 40, 51, poi
documents.txt, 0, 67, 70, party_size_number

להלן קטע מתוך שלנו documents.txt קובץ:

I'd like to eat within the same area of Lawrence St for a party of one
Please book me a table for three at an american gastropub 
I would like to book a restaurant in Niagara Falls for 8 on June nineteenth
Can you book a table for a party of 6 close to DeKalb Av

תצורת דגימה ותהליך השוואת ביצועים

עבור הניסויים שלנו, התמקדנו בתת-קבוצה של סוגי ישויות ממערך הנתונים של SNIPS:

  • מסעדת ספרים - סוגי ישויות: spatial_relation, poi, party_size_number, restaurant_name, city, timeRange, restaurant_type, served_dish, party_size_description, country, facility, state, sort, cuisine
  • GetWeather - סוגי ישויות: condition_temperature, current_location, geographic_poi, timeRange, state, spatial_relation, condition_description, city, country
  • נגן מוסיקה - סוגי ישויות: track, artist, music_item, service, genre, sort, playlist, album, year

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

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

שם מערך הנתונים בדגימת משנה מספר המסמכים שנדגמו להדרכה מספר המסמכים שנדגמו לבדיקה מספר ממוצע של הערות לכל סוג ישות (צילומים)
snips-BookRestaurant-subsample-A 132 17 33
snips-BookRestaurant-subsample-B 257 33 64
snips-BookRestaurant-subsample-C 508 64 128
snips-GetWeather-subsample-A 91 12 25
snips-GetWeather-subsample-B 185 24 49
snips-GetWeather-subsample-C 361 46 95
snips-PlayMusic-subsample-A 130 17 30
snips-PlayMusic-subsample-B 254 32 60
snips-PlayMusic-subsample-C 505 64 119

כדי למדוד את הדיוק של המודלים שלנו, אספנו מדדי הערכה ש-Amazon Comprehend מחשבת אוטומטית בעת הכשרה של מזהה ישויות:

  • דיוק – זה מציין את חלק הישויות שזוהה על ידי המזהה ומזוהות כהלכה ומתויגות. מנקודת מבט אחרת, ניתן להגדיר דיוק כ tp / (tp + fp), שם tp הוא מספר החיובי האמיתי (זיהויים נכונים) ו fp הוא מספר התוצאות הכוזבות (זיהויים שגויים).
  • להיזכר - זה מציין את חלק הישויות הקיימות במסמכים המזוהות ומתויגות כהלכה. זה מחושב כ tp / (tp + fn), שם tp הוא מספר החיובי האמיתי ו fn הוא מספר השליליות הכוזבות (זיהויים שהוחמצו).
  • ציון F1 – זהו שילוב של מדדי הדיוק והזכירה, המודד את הדיוק הכולל של המודל. ציון F1 הוא הממוצע ההרמוני של מדדי הדיוק והזכירה, והוא מחושב כ 2 * דיוק * ריקול / (דיוק + ריקול).

לצורך השוואת הביצועים של מזהי הישויות שלנו, אנו מתמקדים בציוני F1.

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

תוצאות

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

שם מערך הנתונים בדגימת משנה ציון F1 ממוצע של מזהה ישויות (%)
snips-BookRestaurant-subsample-A 86.89
snips-BookRestaurant-subsample-B 90.18
snips-BookRestaurant-subsample-C 92.84
snips-GetWeather-subsample-A 84.73
snips-GetWeather-subsample-B 93.27
snips-GetWeather-subsample-C 93.43
snips-PlayMusic-subsample-A 80.61
snips-PlayMusic-subsample-B 81.80
snips-PlayMusic-subsample-C 85.04

תרשים העמודות הבא מציג את התפלגות ציוני F1 עבור תשע התצורות שאימנו כפי שתואר בסעיף הקודם.

אנו יכולים לראות שהצלחנו לאמן בהצלחה מודלים מותאמים אישית של זיהוי ישויות אפילו עם 25 הערות לכל סוג של ישות. אם נתמקד בשלושת מערכי הנתונים הקטנים ביותר שנדגמו משנה (snips-BookRestaurant-subsample-A, snips-GetWeather-subsample-A, ו snips-PlayMusic-subsample-A), אנו רואים שבממוצע הצלחנו להשיג ציון F1 של 84%, וזו תוצאה טובה למדי בהתחשב במספר המסמכים והביאורים המצומצם שהשתמשנו בהם. אם ברצוננו לשפר את הביצועים של המודל שלנו, נוכל לאסוף מסמכים והערות נוספים ולהכשיר מודל חדש עם יותר נתונים. לדוגמה, עם תת-דגימות בגודל בינוני (snips-BookRestaurant-subsample-B, snips-GetWeather-subsample-B, ו snips-PlayMusic-subsample-B), המכילים פי שניים יותר מסמכים והערות, השגנו בממוצע ציון F1 של 88% (שיפור של 5% ביחס ל- subsample-A מערכי נתונים). לבסוף, מערכי נתונים גדולים יותר שנדגמו משנה (snips-BookRestaurant-subsample-C, snips-GetWeather-subsample-C, ו snips-PlayMusic-subsample-C), המכילים אפילו יותר נתונים מוערים (כפי ארבע ממספר המסמכים והביאורים המשמשים עבור subsample-A מערכי נתונים), סיפקו שיפור נוסף של 2%, והעלו את ציון ה-F1 הממוצע ל-90%.

סיכום

בפוסט זה, הכרזנו על הפחתה של דרישות המינימום להכשרת מזהה ישויות מותאם אישית עם Amazon Comprehend, והרצנו כמה מדדים על מערכי נתונים בקוד פתוח כדי להראות כיצד ההפחתה הזו יכולה לעזור לך להתחיל. החל מהיום, תוכל ליצור מודל זיהוי ישויות עם 25 הערות לכל סוג ישות (במקום 100), ולפחות שלושה מסמכים (במקום 250). עם הכרזה זו, אנו מורידים את מחסום הכניסה למשתמשים המעוניינים להשתמש בטכנולוגיית זיהוי ישויות מותאמת אישית של Amazon Comprehend. כעת תוכל להתחיל להריץ את הניסויים שלך עם אוסף קטן מאוד של מסמכים מוערים, לנתח תוצאות ראשוניות ולחזור על ידי הכללת הערות ומסמכים נוספים אם אתה צריך מודל זיהוי ישויות מדויק יותר עבור מקרה השימוש שלך.

למידע נוסף ולהתחיל עם מזהה ישויות מותאם אישית, עיין ב זיהוי ישויות מותאמות אישית.

תודה מיוחדת לעמיתיי Jyoti Bansal ו- Jie Ma על עזרתם היקרה בהכנת נתונים ובנצ'מרקינג.


על הסופר

Amazon Comprehend מכריזה על מגבלות נמוכות יותר של הערות עבור זיהוי ישויות מותאמות אישית PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.לוקה גוידה הוא אדריכל פתרונות ב-AWS; הוא מבוסס במילאנו ותומך ב-ISV איטלקיים במסע הענן שלהם. עם רקע אקדמי במדעי המחשב והנדסה, הוא התחיל לפתח את התשוקה שלו ל-AI/ML באוניברסיטה. כחבר בקהילת עיבוד השפה הטבעית (NLP) בתוך AWS, Luca עוזר ללקוחות להצליח תוך אימוץ שירותי AI/ML.

בול זמן:

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