@برلیانفردبرلیان فردوس
یک مهندس نرم افزار مستقر در اندونزی.
تایپو چیزی است که اغلب اتفاق می افتد و می تواند تجربه کاربر را کاهش دهد ، خوشبختانه Elasticsearch می تواند با استفاده از Fuzzy Query به راحتی از پس آن برآید.
اگر در حال ساخت یک سیستم تکمیل خودکار پیشرفته با Elasticsearch هستید ، مدیریت اشتباهات اشتباه ضروری است.
اگر می خواهید به جای آن یک مقاله ساده ایجاد کنید ، می توانید سایر مقالات من را بخوانید “با Elasticsearch یک تکمیل خودکار ساده ایجاد کنید“
منطق فازی چیست
منطق فازی یک منطق ریاضی است که در آن حقیقت متغیرها ممکن است هر عدد بین 0 تا 1 باشد. این با منطق بولی متفاوت است که فقط دارای مقادیر صدق یا 0 است.
در Elasticsearch ، پرس و جو فازی به معنای آن است که اصطلاحات موجود در پرس و جو دقیقاً مطابق با عبارات موجود در فهرست معکوس نیستند.
برای محاسبه فاصله بین پرس و جو ، Elasticsearch از الگوریتم فاصله Levenshtein استفاده می کند.
نحوه محاسبه فاصله با استفاده از الگوریتم فاصله Levenshtein
محاسبه فاصله با الگوریتم فاصله Levenshtein آسان است.
شما فقط باید حرف اول و دوم شخصیت را با شخصیت مقایسه کنید.
اگر شخصیت متفاوت است ، پس می توانید فاصله بین کلمات را یک به یک اضافه کنید.
بیایید مثالی ببینیم ، نحوه محاسبه فاصله بین کلمه تایپی رایج “Gppgle” با کلمه صحیح “Google”.
بعد از ما…