1 / 42

מיפוי סכמות

מיפוי סכמות. עדי לובושיץ זהבית אזולאי. מיפוי סכמות – schema matching. סכמה = קבוצת אלמנטים המקושרים ע"י מבנה מסוים. מיפוי סכמות = schema match פעולה המקבלת כקלט שתי סכמות ומייצרת הקבלה בין אלמנטים של שתי הסכמות שמתאימים מבחינה סמנטית. דוגמה. ייצוג סכמה. מספר דרכים לייצוג סכמה

kina
Download Presentation

מיפוי סכמות

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. מיפוי סכמות עדי לובושיץ זהבית אזולאי

  2. מיפוי סכמות – schema matching • סכמה = קבוצת אלמנטים המקושרים ע"י מבנה מסוים. • מיפוי סכמות =schema matchפעולה המקבלת כקלט שתי סכמות ומייצרת הקבלה בין אלמנטים של שתי הסכמות שמתאימים מבחינה סמנטית.

  3. דוגמה

  4. ייצוג סכמה מספר דרכים לייצוג סכמה • An Entity relationship model )ER( • An Object Oriented Model) OO( • XML • Directed Graph

  5. תחומי יישום שילוב סכמות ( Schema integration) קלט: שתי סכמות מתחומים שונים או שנוצרו ע"י אנשים שונים בעלות טרמינולוגיה ומבנה שונים. מטרה: ליצור מבט(ייצוג) כללי(global view) של שתי הסכמות. מבט זה משלב את השדות של שתי הסכמות הנפרדות. • נעזרים במיפוי הסכמות כדי ליצור חיבור בין השדות השונים בסכמות. • במהלך השילוב או כשלב נפרד נוצרות תוכניות או שאילתות שמאפשרות העברת נתונים מסכמות המקור לייצוג המשולב. • לדוג': יצירת מחסן מידע(data warehouse) הוא סוג של שילוב סכמות.

  6. תחומי יישום מסחר אלקטרוני(E-Commerce) החלפת הודעות בין שותפי מסחר כאשר הפורמט של ההודעות שונה ב syntax(XML,EDA) או הסכמות עצמן שונות. הפתרון: יצירת פורמט קבוע להתקשרות או לחלופין קישור בין הפורמטים השונים ע"י שילוב סכמות. לדוג' : הצעת מחיר של ספק ללקוח.

  7. תחומי יישום עיבוד שאילתא סמנטית קלט: המשתמש מזין שאילתא במילים המוכרות לו מטרה: תרגום השאלה לשאילתת SQL על מסד הנתונים. משתמשים במיפוי סכמות לתרגום השאלה לשדות המתאימים. לדוג' : מערכת שאילתות למנהלים.

  8. מאפייני אופרטור החיבור(Match) • תוצאת המיפוי היא פונקציה מקבוצת האלמנטים של סכמה 1 לקבוצת האלמנטים של סכמה 2. • שיטות המיפוי הן בד"כ היוריסטיות. • כל אלמנט מסכמה 1 יכול לקבל מיפוי ליותר מאלמנט אחד בסכמה 2.

  9. ארכיטקטורה כללית

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

  11. מימוש המיפוי 2 • תוכנות שמבצעות מיפוי סכמות משתמשות במספר ממפים (Matchers). • לכן יש שתי בעיות: • כיצד עובד כל ממפה יחיד(קלט, פלט, אלגוריתם). • כיצד משלבים בין כל הממפים, כדי ליצור מיפוי אחד כולל בין שתי הסכמות. על מנת לאפשר השוואה בין תוצאות המיפוי, תוצאת המיפוי של כל שדה חייבת להיות מספר מנורמל בין 0 ל-1.

  12. קריטריונים למיפוי • נסווג את הממפים האינדיבידואליים עפ"י הקריטריונים הבאים: • Instance vs schema • Element vs structure matching • Language vs constraint • Matching cardinality • Auxiliary information

  13. סיווג גישות מיפוי

  14. Schema level matchers • משתמש במידע המצוי בסכמה ולא במידע עלדוגמאות למילוי ערכים בשדות הסכמה(instances): • תיאור השדה המוצג למשתמש(description) • שם השדה במערכת • סוג המידע(data type) • הגבלות על נתוני השדה(טווח וייחודיות ערכים, שדה אופציונלי?,קרדינליות קשרי הגומלין) • מבנה הסכמה(על המסך) • סוגי קשרים מבניים בין שדות הסכמה.(part of, is a)

  15. Schema level matchersGranularity of Match • ניתן לבצע את מיפוי הסכמה בשתי רמות: • רמת האלמנטים הבודדים Element level • רמת המבנה Structure level

  16. Element level matching • מיפוי האלמנטים ברמה הנמוכה ביותר, השדות של הסכמה. return

  17. Structure level matching • מיפוי קבוצות של אלמנטים הנראים כשייכים למבנה אחד.

  18. Schema level matchersMatchCardinality • יש לזהות את סוג הקשר בין אלמנטים בשתי הסכמות שהממפה מסוגל להגדיר. לדוגמא: אלמנט 1 מסכמה 1 מתחבר מבחינה סמנטית לחיבור של שני אלמנטים מסכמה 2.

  19. Match Cardinalities Example

  20. מיפוי בעזרת שפה מיושם רק ברמת האלמנט. נציג שתי שיטות למיפוי בעזרת שפה. מיפוי לפי שמות(Name matching)Name matching מיפוי לפי תיאורים(Description matching)Description matching Linguistic Approaches

  21. Name matching • מחברת אלמנטים בין הסכמות בעלי שמות שווים או דומים. • דמיון ניתן לבדוק בכמה דרכים: • שמות שדות שווים- במקרה זה יש לבדוק שהשדות נמצאים תחת תווית דומה במסמך(מושג).לדוג':

  22. Name matching • קיצורים של שדות - לדוג' : Cname->Customer Name • מילים נרדפות , מחייב שימוש במילון מילים נרדפות • מילת אב – מילות אב של אלון הן עץ וצמח, מחייב שימוש במילון. • דמיון עפ"י שמיעה,הגייה. • התאמה שסיפק המשתמש.לדוג' : קניין = הוזמן ע"י • הערה: מילים שיש להן משמעות כפולה עלולות להפיל מיפוי עפ"י שמות. לדוג' : line of business,line of an order שורה בהזמנה לעומת תחום עסקים return

  23. Description matching הערות בשפה חופשית המביעות את משמעות השדה, לדוג' : empn // employee Name Name // name of employee

  24. Constraint based matching • שימוש בהגבלות על הנתונים בשדות השונים. • הגבלות הקיימות על שדות: • סוג נתונים(integer , string, date) • טווח ערכים • ייחודיות הערך(uniqueness) • מפתחות(primary,foreign) • אופציונליות שימוש בשיטה זו לא מביא למיפוי יעיל בהכרח אך מצמצם בצורה משמעותית את השדות המיועדים להתאמה.

  25. Constraint Based matching Example

  26. שילוב מספר ממפים בשיטות שונות • כל אחת מהשיטות שהראינו מנצלת רק חלק מהמידע בסכמה, לכן לא תוכל להגיע לבדה למיפוי המוצלח ביותר האפשרי. • שילוב של ממפים בשתי שיטות שונות יכול להביא לתוצאות טובות יותר. • ישנן שתי אפשרויות לשילוב ממפים בשיטות שונות: • Hybrid matcher- הכלאת שיטות • Composite matcher –חיבור שיטות

  27. Hybrid matchers • כדי לבצע מיפוי של אלמנט אחד מסכמה 1 לאלמנט שני מסכמה 2 שיטה זו משתמשת בשילוב הנתונים של שני ממפים שונים. • הכלאת השיטות משפרת את יעילות(דיוק ומהירות) המיפוי ע"י סינון מועמדים למיפוי בעזרת שיטה אחת(מהירה אך פחות מדויקת) ואח"כ ביצוע המיפוי הסופי בעזרת שיטה אחרת(פחות מהירה אך יותר מדויקת).

  28. Hybrid matchersexample לדוגמא: S1 elements S2 elements Books Book- int title – string Books list serial no. – int Book name – string Author – string מיפוי בעזרת name matcher יביא למיפוי בעל ערך דומה של השדה book והשדה title מ- S1 לשדה Book name ב- S2. שילוב של תוצאה זו עם constraint matcher יביא להורדת ציון המיפוי של השדה book לשדה book name.

  29. Composite matchers • הרצה נפרדת של ממפים בשיטות שונות ושילוב התוצאה שנותן כל אחד מהם כדי לקבל את המיפוי המדויק ביותר. • לדוגמא: Ontobuilder – מריץ מספר ממפים ולאחר מכן מאחד את התוצאות עפ"י המשקל שניתן לכל ממפה.

  30. השוואה

  31. Instance level approaches • שימוש בדוגמאות נתונים שהוכנסו לשדות שתי הסכמות כדי למצוא מיפוי אופטימלי. • טוב גם למקרים בהם חסר מידע על הסכמה לדוג' : סכמה מובנית חלקית,מסמך XML לא מובנה(קיימים רק שמות השדות כתגיות והערכים שלהם) • ניתן ליישם את אותן שיטות להשוואת שדות, המשמשות ב- Name & Description matching • לשדות המכילים ערכים מספריים או מחרוזות ניתן להשתמש בהשוואת טווחי הנתונים או תבנית התווים(אורך, אותיות קטנות-גדולות,תווי הפרדה וכו' ), יאפשר זיהוי שדות כמו: מספר טלפון, מיקוד, שמות מדינות.

  32. Instance level approaches • שיטה זאת טובה לשיפור יעילות מיפוי של ממפים בשיטות הקודמות. • ניתן להשתמש בשיטה כממפה יחיד: נבצע למידה של דוגמאות למילוי המושגים בסכמה 1 כדי לאפיין את צורת הנתונים במושגים אלו. לאחר מכן משווים את הערכים שמולאו בכל מושג של סכמה 2 כדי לזהות התאמה בין מושג זה לאחד או יותר מהמושגים בסכמה 1.

  33. דוגמה

  34. Bayesian Learning • מיפוי של דוגמא חדשה לאחד מהמושגים בסכמה 1 שלמדנו נקרא classification. • נסמן: • c – סיווג אפשרי לדוגמה(מושג בסכמה 1) • D – קבוצת הערכים שנכללים בדוגמה • P(c) – ההסתברות שדוגמה תסווג למושג c לפני ידיעת הדוגמה. • P(D) – ההסתברות לקבלת דוגמה D.

  35. Bayesian learning • מיפוי של הדוגמה יעשה למושג שיקיים את התנאי: לכל מושג בסכמה 1. P(c|D) – ההסתברות למיפוי למושג c בהינתן דוגמה D. לפי נוסחת בייס: • בגלל ש – P(D) משותף לכל הסיווגים האפשריים ניתן להשמיט אותו. • דוגמה D מכילה את הערכים ולכן מתקבלת הנוסחה:

  36. Bayesian learning בהנחה שקיימת אי תלות בין הערכים שמולאו בדוגמא D. מתקבלת הנוסחה הבאה: • הנחה זו הנה הנחה מפשטת אך למרות זאת הוכח שביצועי השיטה טובים מביצועי שיטות למידה אחרות. • דוגמה: קיימת תלות בין המוצר ג'ינס לבין צבעו בסכמה שמייצגת הזמנת רכש של חנות בגדים.

  37. כיצד מתבצעת הלמידה? • נסתכל על כל דוגמאות המילוי של סכמה 1. • = מספר הפעמים שהערך הופיע בדוגמאות שסווגו ל- לחלק למספר הערכים שסווגו ל – . • P(c) = מספר המושגים מסכמה 1 שסווגו למושג c לחלק לכלל המושגים בסכמה 1. • נשמור את ההסתברויות P(c|D) לכל המושגים בסכמה 1.

  38. כיצד מתבצע המיפוי? • את ההתאמה בין שני מושגים A ו B מסכמות 1ו-2 בהתאמה נבצע בעזרת פונקצית דמיון. • פונקצית הדמיון תהיה שונה בהתאם למיפוי הנדרש. • דוגמאות:כדי לחפש פרופסור חבר בארה"ב אנו נרצה שההתאמה בין פרופסור חבר למרצה בכיר תקבל את ערך הדמיון הגבוה ביותר.ולכן פונקצית הדמיון תהיה: Jacob-sim(A,B)=

  39. כיצד מתבצע המיפוי? • לעומת זאת אם לא ידוע המעמד באוסטרליה של הפרופסור מארה"ב נרצה שההתאמה בין פרופסור חבר לצוות אקדמי תקבל ערך דמיון גבוה. • כדי לחשב הסתברויות אלו אנו צריכים לדעת את ההסתברויות האלו: P(A,B),P(A,-B),P(-A,B),P(-A,-B) • P(A,B)-הסיכוי שדוגמה תופיע בשדה A וגם בשדה B .

  40. כיצד מחשבים את P(A,B) ? • P(A,B) = מספר הדוגמאות ששייכות גם ל- A וגם ל- B מתוך כלל הדוגמאות . • בהינתן דוגמה D מסכמה 2 השייכת למושג B. אנו יודעים שדוגמה זו שייכת למושג B , לכן נשאר לדעת האם היא שייכת למושג A. • לפי ההסתברויות P(A|D) שחושבו קודם נוכל לקבוע לאיזה מושג לסווג את הדוגמה D לאחד או יותר מהמושגים של סכמה 1. • ע"י מעבר על כל הדוגמאות ששייכות למושג B נמצא את כל הדוגמאות ששייכות גם ל-A וגם B ונעריך את P(A,B) • את ההסתברויות P(A,-B),P(-A,B),P(-A,-B)נעריך באותו אופן.

  41. סיכום • הצגנו את בעיית מיפוי הסכמות • ראינו שימושים שונים למיפוי סכמות • ראינו שיטות שונות לביצוע מיפוי סכמות • הראינו כיצד מתבצע מיפוי בעזרת דוגמאות, ע"י למידה בייסינית (bayesian learning)

More Related