|
|
|
חיפוש באינטרנט – חידושים והמצאות
|
|
מאת עופר מרגומינסקי, בחברת Netwise. ספטמבר 2007.
|
|
|
תקציר המאמר:
חיפוש באינטרנט או במאגרי מידע גדולים, הוא אמצעי המאפשר את התפתחות הרשת מצד אחד, ומגביל אותה, מהצד השני. במאמר זה נסקור את התפתחות טכנולוגיות החיפוש ומנועי החיפוש ברשת, נבחן את הטכנולוגיות העיקריות הנמצאות בשימוש כיום, נסביר כיצד השיג google פריצת דרך משמעותית בתחום לפני מספר שנים ונציג את החידושים שצצו בשנתיים האחרונות בתחום, בניסיון להביא לפריצת דרך נוספת, נוסח google.
|
|
|
|
אחד האתגרים הטכנולוגיים הגדולים ביותר שהציבה הרשת מאז הקמתה הוא אתגר החיפוש. איך לאתר בין שפע הדפים והאתרים באינטרנט את המידע שאני מחפש? החיפוש היה אחד האתגרים הטכנולוגים הגדולים ביותר שהציבה הרשת מהקמתה ועד היום. למרות היכולות המרשימות שמציגים google ומנועי חיפוש אחרים, החיפוש אחר המידע הרלוונטי עבורנו והוצאת המירב מהחיפוש באינטרנט עדיין גוזלים זמן רב ודורשים מיומנות וידע. במאמר זה נסקור את הטכנולוגיות והשיטות העיקריות בתחום החיפוש, את החידושים שארעו לאחרונה בתחום.
|
|
|
|
איך מידע מאורגן ברשת?
|
|
כאשר מדברים על חיפוש מידע, מבחינים בין חיפוש מידע בשלושה סוגי מאגרי מידע עיקריים:
|
|
|
מאגר מידע מובנה - מידע המאורגן בצורה מסודרת בטבלאות ובבסיסי נתונים. לכל פריט מידע או רשומה, מספר שדות מוגדרים מראש. טבלת מרשם האוכלוסין במשרד הפנים היא דוגמה מצוינת למאגר מידע מובנה.
|
|
|
מאגר טקסט חופשי - במאגר כזה המידע הינו טקסטואלי, ללא מבנה מוגדר מראש. ניתן לראות את מבנה הרשת והאתרים בה כדוגמה מצוינת למאגר כזה. דוגמאות נוספות יכולות להיות קונקורדנציה ממוחשבת (מאגר התנ"ך) או מאגרים של ספרות מדעית.
|
|
|
מאגר מידע מובנה למחצה (semi-structured data) – מאגר המכיל פריטי מידע שבהם גם שדות של מידע מובנה, וגם שדות טקסט חופשי. קטלוג ספרים הוא דוגמה מצוינת למאגר מידע מובנה למחצה: הוא מכיל מידע מובנה על כל ספר למשל: שם הספר, שנת ההוצאה ושם המחבר, ובמקביל מכיל מידע טקסטואלי חופשי, כמו תמצית הספר, ביקורות שהתפרסמו על הספר. טכנולוגיית XML מתאימה במיוחד לבנייה של מאגרים מסוג זה, אולם עוד נחזור לכך בהמשך המאמר.
|
|
|
|
|
אתגרים בחיפוש במאגרי טקסט חופשי
|
|
האתגר העיקרי בחיפוש במאגר טקסט חופשי הוא להבין, מצד אחד, במה באמת עוסק פריט המידע המדובר, ומצד שני, בהנחה שמילות החיפוש שהקיש המחפש מופיעות בו, עד כמה פריט מידע זה רלבנטי לתחום העניין של המחפש. למשל, האם מי שמחפש "מוהל" באמת מעוניין לקרוא מאמר בעל הכותרת "בית המשפט דחה היום את ערעורו של המוהל והרופא ד"ר צ'צ'קס על חומרת העונש" או שמא בעצם הוא מחפש דווקא את "מאגר מוהלים באתר הרשות הארצית לשרותי דת"? אם כן, הגדרת הרלוונטיות של תוצאת חיפוש וסידור התוצאות לפי סדר רלבנטיות יורד (ranking) חיוניים לחיפוש במאגר טקסט חופשי.
|
|
|
|
קושי נוסף בחיפוש במאגרי טקסט חופשי נובע מהמבנה התחבירי של השפה, או המורפולוגיה שלה. מורפולוגיה הינה תחום העוסק בהטיות הפועל ושם העצם, בשורשים, בניינים, מילות ומיליות יחס ועוד. המורפולוגיה של השפה העברית יכולה ליצור מספר בעיות ייחודיות בחיפוש ברשת. לדוגמה: אדם המחפש אחר "תשלומי מס הכנסה" ודאי יתעניין גם בתוצאות המכילות את הביטוי "לשלם למס הכנסה" או "כיצד תשלם למס הכנסה". אדם המחפש אחר "שוויון נשים" יתעניין בודאי גם בתוצאות הדנות ב"שוויון האישה". תחום בעייתי נוסף הקשור לשפה ותחביר, הינו זיהוי המשמעות של המילה לפי ההקשר בו היא מופיעה. אם נחזור לדוגמת המוהל שהוזכרה קודם, הרי שסביר להניח שהמחפש אינו מתעניין במסמך הדן "בהזרמת המוהל למערכת הביוב בתנאים מסוימים".
|
|
|
|
התמודדות עם האתגרים
|
|
התחום במדעי המחשב העוסק בחיפוש במאגרי טקסט חופשי ומאגרים מובנים למחצה מכונה Information Retrieval (אחזור מידע), ובקיצור IR. תחום זה החל להתפתח בשנות ה-70 וראשית שנות ה-80. הדור הראשון של מנועי החיפוש לטקסט חופשי היו מוגבלים בפעולתם, וידעו אך ורק לאתר מסמכים שהכילו את כל או חלק ממילות החיפוש שהזין המשתמש, בלי יכולת למיין את המסמכים לפי סדר רלבנטיות יורד.
בסוף שנות ה-80 החלו להופיע בארץ (בעיקר בקהיליית המודיעין) מנועי חיפוש בעלי יכולת מורפולוגית. מנועי חיפוש אלו התבססו על אלגוריתם שפותח באוניברסיטת בר-אילן על ידי פרופסור יעקב שויקה כחלק מפרויקט השו"ת (שאלות ותשובות בהלכה), שמטרתו בניית מאגר ממוחשב לספרות הקודש. האלגוריתם של שויקה נתן פתרון מצוין לבעיות המורפולוגיה, אך לא טיפל בבעיות האחרות הנוגעות לרלבנטיות של המסמכים.
|
|
|
|
במקביל, החלו להופיע גם אלגוריתמים שניסו לתת מענה לבעיית הרלבנטיות של המסמכים. אלגוריתמים אלו ניסו לקבוע את הרלבנטיות של מסמך לשאילתת החיפוש, לפי מספר קריטריונים:
|
|
|
מספר המופעים של מילות החיפוש במסמך, ביחס למספר המופעים שלהם בכל המסמכים במאגר. אם בשאילתת החיפוש הוקשה מילת יחסית נדירה, והיא מופיעה פעמים רבות במסמך המדובר, הרי שכנראה שהמסמך הזה עוסק בנושא אותו מציינת מילת החיפוש ולכן רלבנטי עבור המחפש.
|
|
|
מיקום מילות החיפוש בתוך המסמך. באם מילת החיפוש מופיעה למשל בכותרת המסמך, הרי שיש יסוד סביר להניח שהמסמך רלבנטי עבור המחפש.
|
|
|
בהנחה שהוקשו מספר מילות חיפוש, היחס בין מילות החיפוש השונות בתוך המסמך. האם הן מופיעות במסמך אחת ליד השנייה, או במרחקים גדולים זו מזו? באם הן מופיעות אחת ליד השנייה סביר להניח שהמסמך רלבנטי.
|
|
|
|
|
הדור הראשון של מנועי החיפוש באינטרנט (Lycos, AltaVista) התבסס על אלגוריתמים כאלו. כמו שחלקנו זוכרים, התוצאות עדיין היו רחוקות מלספק.
|
|
|
|
ואז הגיע Google
|
|
לתמונה נכנס מתחרה חדש בשם google, שהציע אלגוריתם חדש, ייחודי לרשת, ושאינו מתבסס על טכניקות קלאסיות של IR.
אתר google מסווג את הדפים ברשת לשני סוגים עיקריים – Hubs ו-Authorities.
|
|
|
Hubs – הם דפים שהם בעיקרם דפי תפריט או מדריכים, וכוללים הרבה קישורים לדפים אחרים.
|
|
|
Authorities הם דפים הדנים בפרוט בנושא מסויים. ההנחה של google הינה שדף Authority שהרבה דפים אחרים מקשרים אליו הוא כנראה דף "טוב", שהמידע בו איכותי, ולפיכך יקבל ניקוד גבוה. באופן דומה, דף Hub המצביע על הרבה דפי Authorities טובים הוא כנראה דף איכותי, ועל כן גם הוא יקבל ניקוד גבוה.
|
|
|
|
|
google יצר מנוע חיפוש המשלב את האלגוריתם החדש עם טכניקות ה-IR ה"קלאסיות" והשאר היסטוריה. ללא כל פרסום, וכשהשמועה עוברת מפה לאוזן בלבד, הפך google תוך שנה למנוע החיפוש המוביל באינטרנט, ולמעשה למונופול בתחום.
|
|
|
|
מחפשים את קפיצת המדרגה הבאה
|
|
למרות קפיצת המדרגה שסיפק מנוע החיפוש google, גם תוצאות החיפוש ב- google עדיין רחוקות מלספק, ובשנים האחרונות צצות עוד ועוד חברות המנסות ליישם אלגוריתמים חדשניים שיובילו אל קפיצת המדרגה הבאה בתחום החיפוש באינטרנט. כיוון התפתחות אחד מאוד מבטיח, והתואם גם את רוח הזמנים בעידן ה-Web 2.0, הוא השימוש בקהילה של משתמשים על מנת לטייב את תוצאות החיפוש. אפשרות אחת לשימוש זה היא לעקוב אחר השאילתות שמבצעים המשתמשים, תוצאות החיפוש המתקבלות ומספר ההקלקות על כל תוצאה. ככל שמשתמשים הקליקו יותר על תוצאה מסוימת, כך סביר להניח שהיא רלבנטית יותר. אפשרות שנייה היא להציג, עבור כל תוצאה, את מילות החיפוש הנפוצות בעזרתן הגיעו המשתמשים לתוצאה, ולאפשר למחפש לחפש גם בעזרתן. חברת Velingo הישראלית עושה כיום שימוש בשתי טכניקות אלו, בניסיון לשפר את תוצאות החיפוש וחווית החיפוש במנועי חיפוש קיימים.
|
|
|
|
כיוון התפתחות אחר הינו לנסות ולקבץ את תוצאות החיפוש לקבוצות (clusters) לפי נושא. את הנושא אפשר לקבוע באופן דינמי, או לפי הערכים של שדות שהוגדרו מראש. מנוע חיפוש מסוג זה יעבוד כך שבחיפוש אחר "מס הכנסה" ניתן יהיה לצפות בתוצאות בנושאים "תקנות מס הכנסה", "דע זכויותיך" כמו גם בתוצאות מרשות המיסים, אתר משרד האוצר, אתר שער הממשלה ואתר ביטוח לאומי. חברת Vivisimo האמריקנית היא המובילה בתחום זה, ומפעילה גם מנוע חיפוש לאינטרנט המבצע קיבוץ של התוצאות בשם
clusty.
|
|
|
|
חיפוש בשפה טבעית
|
|
אחד הקשיים העיקריים בהם נתקלים המשתמשים כיום הינו העדר היכולת לשאול שאילתות בשפה טבעית – כלומר, בדיוק כפי שהיית שואל אדם. הקשת שאלה כגון "איך אני יכול לשלם עבור חידוש רשיון הנהיגה באינטרנט", או "מהן שעות הפתיחה של לשכת משרד הפנים בפתח-תקווה", ספק אם תביא לתוצאות המקוות. הקושי נובע מהקושי של מחשבים בהבנת שפה טבעית, כמו גם בהעדר התאמה של האלגוריתמים הקיימים ב-IR לשאילתות שפה טבעית. אחת החברות שפיתחה מענה בתחום זה הינה חברת Cellesense הישראלית. מנוע החיפוש של Cellesense מסוגל לענות על שאילתות בשפה טבעית שמתבצעות לגבי מידע הנמצא בעיקרו במאגרי מידע מובנים, ועבור תחומי ידע שהוגדרו מראש למערכת. לדוגמה, תוכנת Cellesense תוכל לענות על שאלות כגון "מהן שעות הפתיחה של לשכת משרד הפנים בפתח תקווה", אם יספקו לה את הטבלה המכילה את שעות הפתיחה והכתובות של לשכות משרד הפנים בערים השונות.
|
|
|
|
ומה בעתיד? שדות meta-data וחיפוש טקסונומי
|
|
כיום גוברת ההכרה כי יש גבול ליכולת של מנועי החיפוש בטקסט חופשי, ושבכדי להשיג קפיצת מדרגה משמעותית ביכולת החיפוש וטיב התוצאות יש להמיר את מאגרי הטקסט החופשי למאגרים מובנים למחצה. ניתן לעשות זאת על ידי הוספת שדות meta-data - "מידע לגבי מידע", לכל מסמך. הכוונה היא להוסיף לכל מסמך שדות שיתארו את תכולת המסמך, כמו, נושא המסמך ומילות מפתח.
|
|
בכדי שהשימוש והחיפוש לפי מילות מפתח יהיה אפקטיבי, יש לעשות שימוש בחלוקה טקסונומית. טקסונומיה הוא סיווג שיטתי של המונחים בהם נעשה שימוש. כך למשל, טקסונומיה יכולה להגדיר את קבוצת המילים רכבת, מטוס, מכונית, אופנוע ואוטובוס ככלי תחבורה, כמו גם להבחין שאופנוע ומכונית הינם כלי תחבורה פרטית בעוד שאוטובוס ורכבת הינם כלי תחבורה ציבורית. במנוע חיפוש התומך בטקסונומיות ניתן עתה לחפש אחר "תחבורה ציבורית" ולקבל באוסף התוצאות גם מסמכים הדנים ברכבות ואוטובוסים.
|
|
|