דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. כללי - עזרה הדדית
  3. הסבר | איתור מראי מקומות באמצעות חיפוש מטושטש

הסבר | איתור מראי מקומות באמצעות חיפוש מטושטש

מתוזמן נעוץ נעול הועבר כללי - עזרה הדדית
8 פוסטים 4 כותבים 324 צפיות 5 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • sivan22S מנותק
    sivan22S מנותק
    sivan22
    כתב ב נערך לאחרונה על ידי sivan22
    #1

    שלום לכולם,

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

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

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

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

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

    הפתרון שמצאתי הוא לחלק את החיפוש לשניים: קודם כל לחפש רק ברשימת הספרים, שכוללת סה"כ כ8000 אפשרויות (ל5800 ספרים), ולאחר שמצאנו את הספרים הכי קרובים, לחפש רק בהם. הדבר מקצר מאד את משך החיפוש, על חשבון הדיוק. כך לחפש רק ב3 הספרים הכי קרובים לקח 0.4 שניות ולחפש ב10 הספרים הכי קרובים לקח כ2 שניות, אך דיוק החיפוש יורד.

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

    5e7bbeab-ed28-47dd-acb5-e13b4e7e6dc4-image.png

    @pcinfogmach ו @לא-מתייאש אני חושב שזה יעניין אתכם.

    צ P 2 תגובות תגובה אחרונה
    17
    • sivan22S sivan22

      שלום לכולם,

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

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

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

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

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

      הפתרון שמצאתי הוא לחלק את החיפוש לשניים: קודם כל לחפש רק ברשימת הספרים, שכוללת סה"כ כ8000 אפשרויות (ל5800 ספרים), ולאחר שמצאנו את הספרים הכי קרובים, לחפש רק בהם. הדבר מקצר מאד את משך החיפוש, על חשבון הדיוק. כך לחפש רק ב3 הספרים הכי קרובים לקח 0.4 שניות ולחפש ב10 הספרים הכי קרובים לקח כ2 שניות, אך דיוק החיפוש יורד.

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

      5e7bbeab-ed28-47dd-acb5-e13b4e7e6dc4-image.png

      @pcinfogmach ו @לא-מתייאש אני חושב שזה יעניין אתכם.

      צ מנותק
      צ מנותק
      צדיק וטוב לו 0
      כתב ב נערך לאחרונה על ידי
      #2

      @sivan22
      😯
      גדול!

      תגובה 1 תגובה אחרונה
      2
      • sivan22S sivan22

        שלום לכולם,

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

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

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

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

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

        הפתרון שמצאתי הוא לחלק את החיפוש לשניים: קודם כל לחפש רק ברשימת הספרים, שכוללת סה"כ כ8000 אפשרויות (ל5800 ספרים), ולאחר שמצאנו את הספרים הכי קרובים, לחפש רק בהם. הדבר מקצר מאד את משך החיפוש, על חשבון הדיוק. כך לחפש רק ב3 הספרים הכי קרובים לקח 0.4 שניות ולחפש ב10 הספרים הכי קרובים לקח כ2 שניות, אך דיוק החיפוש יורד.

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

        5e7bbeab-ed28-47dd-acb5-e13b4e7e6dc4-image.png

        @pcinfogmach ו @לא-מתייאש אני חושב שזה יעניין אתכם.

        P מנותק
        P מנותק
        pcinfogmach
        מדריכים
        כתב ב נערך לאחרונה על ידי
        #3

        @sivan22
        מרתק
        כמדומני שמאוד ישפר את הקוד אם יינתן ניקוד גבוה יותר על פי חלוקה של מילים.

        כלומר
        אם חיפשתי
        רש באשת ב ד
        התוצאה הייתה שמואל ב ב
        בזמן שציפיתי שיהיה רש"י בראשית ב ד
        וזה מה שהיה קורה אם ההתאמה הייתה לפי מילים

        גמ"ח עזרה וייעוץ בנושאי מחשבים

        sivan22S תגובה 1 תגובה אחרונה
        3
        • P pcinfogmach

          @sivan22
          מרתק
          כמדומני שמאוד ישפר את הקוד אם יינתן ניקוד גבוה יותר על פי חלוקה של מילים.

          כלומר
          אם חיפשתי
          רש באשת ב ד
          התוצאה הייתה שמואל ב ב
          בזמן שציפיתי שיהיה רש"י בראשית ב ד
          וזה מה שהיה קורה אם ההתאמה הייתה לפי מילים

          sivan22S מנותק
          sivan22S מנותק
          sivan22
          כתב ב נערך לאחרונה על ידי
          #4

          @pcinfogmach כתב בהסבר | איתור מראי מקומות באמצעות חיפוש מטושטש:

          @sivan22
          מרתק
          כמדומני שמאוד ישפר את הקוד אם יינתן ניקוד גבוה יותר על פי חלוקה של מילים.

          כלומר
          אם חיפשתי
          רש באשת ב ד
          התוצאה הייתה שמואל ב ב
          בזמן שציפיתי שיהיה רש"י בראשית ב ד
          וזה מה שהיה קורה אם ההתאמה הייתה לפי מילים

          עדכנתי את הקוד, נתתי אפשרות לכמה אלגוריתמים שונים. אלגוריתם ברירת המחדל כרגע מחלק לפי מילים, אשמח לשמוע עוד פידבק:
          42d157fa-f5d3-46ce-ad5f-74b1d86c161a-image.png

          P sivan22S 2 תגובות תגובה אחרונה
          4
          • sivan22S sivan22

            @pcinfogmach כתב בהסבר | איתור מראי מקומות באמצעות חיפוש מטושטש:

            @sivan22
            מרתק
            כמדומני שמאוד ישפר את הקוד אם יינתן ניקוד גבוה יותר על פי חלוקה של מילים.

            כלומר
            אם חיפשתי
            רש באשת ב ד
            התוצאה הייתה שמואל ב ב
            בזמן שציפיתי שיהיה רש"י בראשית ב ד
            וזה מה שהיה קורה אם ההתאמה הייתה לפי מילים

            עדכנתי את הקוד, נתתי אפשרות לכמה אלגוריתמים שונים. אלגוריתם ברירת המחדל כרגע מחלק לפי מילים, אשמח לשמוע עוד פידבק:
            42d157fa-f5d3-46ce-ad5f-74b1d86c161a-image.png

            P מנותק
            P מנותק
            pcinfogmach
            מדריכים
            כתב ב נערך לאחרונה על ידי
            #5

            @sivan22
            אפשר לראות את הקוד בבקשה?

            גמ"ח עזרה וייעוץ בנושאי מחשבים

            צדיק תמיםצ תגובה 1 תגובה אחרונה
            0
            • P pcinfogmach

              @sivan22
              אפשר לראות את הקוד בבקשה?

              צדיק תמיםצ מנותק
              צדיק תמיםצ מנותק
              צדיק תמים
              מדריכים
              כתב ב נערך לאחרונה על ידי
              #6

              @pcinfogmach
              https://huggingface.co/sivan22/sefaria-ref-finder/tree/main

              רוצה לזכור קריאת שמע בזמן? לחץ כאן! || אתר שכולו מדריכים

              תגובה 1 תגובה אחרונה
              2
              • sivan22S sivan22

                @pcinfogmach כתב בהסבר | איתור מראי מקומות באמצעות חיפוש מטושטש:

                @sivan22
                מרתק
                כמדומני שמאוד ישפר את הקוד אם יינתן ניקוד גבוה יותר על פי חלוקה של מילים.

                כלומר
                אם חיפשתי
                רש באשת ב ד
                התוצאה הייתה שמואל ב ב
                בזמן שציפיתי שיהיה רש"י בראשית ב ד
                וזה מה שהיה קורה אם ההתאמה הייתה לפי מילים

                עדכנתי את הקוד, נתתי אפשרות לכמה אלגוריתמים שונים. אלגוריתם ברירת המחדל כרגע מחלק לפי מילים, אשמח לשמוע עוד פידבק:
                42d157fa-f5d3-46ce-ad5f-74b1d86c161a-image.png

                sivan22S מנותק
                sivan22S מנותק
                sivan22
                כתב ב נערך לאחרונה על ידי
                #7

                @sivan22 הוספתי גם עיבוד מקדים לטקסט שמוחק כל מיני דברים שמפריעים לחיפוש, כמו גרשיים " והמילים "חידושי" "פרק" "דף" וכדומה.

                sivan22S תגובה 1 תגובה אחרונה
                2
                • sivan22S sivan22

                  @sivan22 הוספתי גם עיבוד מקדים לטקסט שמוחק כל מיני דברים שמפריעים לחיפוש, כמו גרשיים " והמילים "חידושי" "פרק" "דף" וכדומה.

                  sivan22S מנותק
                  sivan22S מנותק
                  sivan22
                  כתב ב נערך לאחרונה על ידי
                  #8

                  @sivan22 כעת הוספתי גם אפשרות להציג את המקור (בכתב קטן ולא מאד נח, אבל בכל זאת...) וזה כבר מתחיל להזכיר (בקושי;) מאגר תורני:
                  ffe25b8d-fb52-447e-81ae-f6522ca7575b-image.png

                  תגובה 1 תגובה אחרונה
                  5

                  • התחברות

                  • אין לך חשבון עדיין? הרשמה

                  • התחברו או הירשמו כדי לחפש.
                  • פוסט ראשון
                    פוסט אחרון
                  0
                  • חוקי הפורום
                  • פופולרי
                  • לא נפתר
                  • משתמשים
                  • חיפוש גוגל בפורום
                  • צור קשר