|
תודה.
ועכשיו אנכס את השאלה למטרותי הנלוזות: למה אמרתי שאולי חיפוש מספר מילים בודדות עשוי להיות יותר מהיר? כי בעצם לא מדובר כאן במנוע "חיפוש" אלא במנוע "פסילה". די ברור שרוב החיפושים אינם על צירוף שכיח ( למשל "פושעי אוסלו לדין" או "בונובו") אלא על רצפים יותר נדירים כמו "טל כהן שולת!!!". הנה רעיון שחשבתי שהוא נורא מקורי, עד שהתברר לי שכבר הומצא (בבנקי דם):
נניח שמחפשים באוכלוסיה גדולה מחלה יחסית נדירה, (כמו איידס, או סמים ) ויש הרבה מאוד דגימות לבדוק. האם לא עדיף לקחת (נניח) חמישית מבחנה מכל בדיקה, ולערבב יחד, ולבדוק את הערבובים? תוצאה שלילית על התערובת תשלול את התופעה על כמות גדולה של מבחנות. נניח ש"קיט" לבדיקת סמים הוא רגיש לחלק אחד מתוך מליון של סם בדם, אבל דמו של מסומם מכיל פי מאה יותר. אזי ניתן לערבב ללא חשש כמאה דגימות ביחד ובבדיקה אחת *לשלול* את כולם. כמובן שבמקרה של תוצאה חיובית יש לבדוק באופן פרטני את כל מאה המבחנות, אבל מכיוון שמדברים על תופעה נדירה, רוב הזמן אנחנו מורווחים.
איך זה מתקשר למנועי חיפוש? אין לי מושג איך הדברים האלו עובדים באמת, אבל אני יכול לתאר לי מנוע שבונה רשימות מילים של קבוצות של הודעות, וכאשר יש חיפוש על "ראובן זייטק זכה בפרס נובל בכלכלה" מחפשים בכל קבוצה את המילים, ורק אם מוצאים בקבוצה את כל המילים, ממשיכים באופן פרטני הודעה הודעה. השאלה מה גודל קבוצת ההודעות היא שאלה אחרת, היא צריכה להיות מספיק גדולה כדי שיהיה חיסכון בחיפוש ( כי מספר המילים ה*שונות* ב100 הודעות הוא פחות מ100 פעמים מספר המילים השונות בהודעה אחת) אבל לא כל כך גדולה כך שמילים נדירות מכמה הודעות יהיות מוכלות בקבוצה. למשל, אם הסיכוי ש"ראובן" מופיע בהודעה כלשהי היא אחד ל100 ו "כלכלה" גם 1 ל 100, אם נחזיק בסביבות 100 הודעות בקבוצה, יש סיכוי טוב שברוב הקבוצות לא יימצא "ראובן" +"כלכלה" .
אבל אולי עם קצת ניסוי וטעיה ( והתפלגות זיפף של מילים) אפשר למצוא גודל סביר. אתם מוזמנים לשלוח את התמלוגים לדוא"ל שלי.
|
|