יום שבת, 7 בינואר 2012

תוכנת חקר טקסט SEO (חזרת ביטויים)

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

אפשר להגדיר כמה מילים שבא בביטויים , אבל בטקסטים ממש גדולים תהיה איטיות
הרצתי את התוכנה על טקסט של 6000 מילים כשהיא בודקת את כל הביטויים מ6 מילים ומטה וזה לקח 1.8 שניות (הרבה בזמן מחשב, למי שמעוניין לדעת I3 4G-RAM)

הלינק לתוכנה שכתבתי:
https://github.com/solekiller/Programming/blob/master/ruby/ngrams.rb

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

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

אין תגובות:

הוסף רשומת תגובה