جستوجوی اسنادی چیست؟
جستوجوی اسنادی نوعی جستوجوست که بیشتر روی متنهای آزاد و غیرساختیافته کار میکند. چه بهدنبال صفحهای در وب باشید، چه محصولی را جستوجو کنید یا با محتوای گزینششده سروکار داشته باشید، در هر صورت از موتور جستوجو استفاده میکنید. وارد صفحهای میشوید، متنی را در کادر جستوجو مینویسید، روی دکمه «جستوجو» کلیک میکنید و نتایج مرتبطی دریافت میکنید که نیاز شما را برطرف میکنند.
ریشه موتورهای جستوجو در فناوری پایگاهداده قرار دارد. آنها دادهها را ذخیره میکنند و بر اساس آن، درخواستها را پردازش میکنند. پایگاهدادههای سنتی بیشتر با محتوای ساختاریافته کار میکنند؛ دادهها بهصورت جدول و ستون، با طرح و ساختار مشخص، سازماندهی شدهاند. کار پایگاهداده این است که بر اساس تطابق مقدار ستونها، ردیفهای مربوط را بازیابی کند. موتورهای جستوجو اما با دادههای ساختاریافتهای کار میکنند که شامل هم متادیتا هستند و هم بخشهای بزرگی از متن غیرساختاریافته. این موتورها با استفاده از قواعد زبانی، متنهای طولانی را به واژههای قابل جستوجو تبدیل میکنند. همچنین قابلیت رتبهبندی درونی دارند تا نتایج بهتر را بالاتر نمایش دهند. در حالی که پایگاهدادههای رابطهای و NoSQL همه نتایج منطبق را نمایش میدهند، موتورهای جستوجو بهترین نتایج را برمیگردانند.
کاربردهای موتور جستوجو را میتوان به سه دسته اصلی تقسیم کرد: جستوجوی اسنادی (که عمدتاً روی متن آزاد و غیرساختیافته کار میکند)، جستوجوی تجارت الکترونیک (ترکیبی از دادههای ساختاریافته و غیرساختاریافته)، و انتقال بار درخواست (که بیشتر با دادههای ساختاریافته سروکار دارد).
آیا جستوجوی اسنادی با متادیتا کار میکند؟
در جستوجوی اسنادی، سند اصلی جستوجو میشود که میتواند به کوچکی یک پاراگراف یا به بزرگی هزاران صفحه باشد. اسناد معمولاً شامل انواع مختلفی از فیلدها هستند: فیلدهای متنی غیرساختاریافته مانند عنوان و خلاصه، فیلدهای نیمهساختاریافته مانند نویسنده، و فیلدهای ساختاریافته مانند تاریخ انتشار، گروه منتشرکننده و دستهبندی — که همه اینها را متادیتا مینامند. موتور جستوجو در درخواستهای کاربر، ترکیبی از متن و متادیتا را پردازش میکند.
چالشهای اصلی جستوجوی اسنادی چیست؟
چالشهای اصلی جستوجوی اسنادی به دو دسته تقسیم میشوند:
- آمادهسازی و درک داده
- مرتبطسازی نتایج جستوجو.
در کاربردهای جستوجوی اسنادی، بدنه اسناد (corpus) معمولاً از محتوای تولیدشده توسط کاربران یا منابع نامرتب و بدون نظارت تشکیل شده است. این محتوا اغلب شامل اشتباهات تایپی، تکرار، یا دادههای بیمعناست. پیش از بارگذاری این دادهها در موتور جستوجو، باید آنها را پالایش، تصحیح و نرمالسازی کرد. سپس داده آمادهشده از طریق واسطهای بارگذاری وارد موتور جستوجو میشود. همچنین باید فرایندی برای بهروزرسانی اسناد هنگام تغییر آنها در نظر گرفته شود.
ارزش اصلی جستوجوی اسنادی، بازیابی اسنادی است که با درخواست کاربر بیشترین ارتباط را دارند؛ یعنی مرتبطسازی نتایج. هنگام بازیابی، موتور جستوجو همه اسناد منطبق را بر اساس معیار آماری BM25 امتیازدهی و مرتب میکند. این معیار بر اساس میزان منحصربهفرد بودن واژههای جستوجوشده و تعداد تکرار آنها در اسناد عمل میکند. هرچه تعداد واژههای منحصربهفرد تطبیقیافته بیشتر باشد، امتیاز آن سند بالاتر است. باید تابع امتیازدهی را متناسب با دادههای خود تنظیم کنید. استفاده از روشهای یادگیری ماشینی (ML) میتواند به بهبود رتبهبندی کمک کند. کیفیت جستوجو به میزان ارتباط نتایج بستگی دارد. هرچه مرتبطتر، بهتر.
موارد استفاده دیگر از جستوجو چیست؟
جستوجوی تجارت الکترونیک
در جستوجوی تجارت الکترونیک، کاربر بهدنبال یافتن و خرید محصولات از میان فهرستی از کالاهای موجود است. این محصولات شامل فیلدهای فراوانی هستند: سایز، رنگ، برند و غیره؛ در کنار فیلدهای متنی طولانیتری مانند عنوان، توضیح محصول و نظرات کاربران. وظیفه اصلی موتور جستوجو در اینجا، یافتن نتایج مرتبطتر است که به افزایش فروش منجر شود. طراحان سایت از ابزارهای متنوعی برای ساخت تابع مرتبطسازی خوب استفاده میکنند: از مقادیر عددی داخلی گرفته تا مدلهای یادگیری ماشینی بر پایه رفتار کاربران.
برای بهبود تجربه کاربری، سایتهای تجارت الکترونیک اغلب از جستوجوی دستهبندیشده استفاده میکنند. موتور جستوجو تعداد نتایج هر دسته (مثل رنگ یا اندازه) را ارائه میدهد و رابط کاربری فهرستی قابل کلیک به کاربر نمایش میدهد تا نتایج را محدود کند.
برخی از انواع جستوجوی تجارت الکترونیک بهشدت به شخصیسازی و پیشنهاد وابستهاند. مثلاً اگر کاربر «پیراهن» جستوجو کند، موتور باید پیراهنهایی را پیدا کند که احتمال دارد برای آن مشتری خاص جذاب باشند، حتی اگر درخواست کلی باشد. معیارهای شباهت مانند k-NN در این زمینه مؤثر هستند.
جستوجو در مجموعه داده گزینششده
در این نوع جستوجو، دادهها در یک مجموعه منظم و سازمانیافته مانند مخزن اسناد سازمانی (مثلاً دادههای کارآزمایی بالینی، اسناد حقوقی، املاک و مستغلات و…) قرار دارند. موتورهای جستوجو دارای قواعد زبانی و ویژگیهای خاص زبانی هستند که به آنها کمک میکند متنهای بلند را به واژهها یا عبارات قابل جستوجو تبدیل کنند. زبان پرسوجوی پیشرفته موتور جستوجو امکان جستوجوی ترکیبهای خاصی از واژهها را میدهد، مثل «پیراهن آستینحلقهای بلند». اما موتور، همه نتایج منطبق را بازنمیگرداند؛ بلکه از سیستم امتیازدهی مرتبطسازی استفاده میکند تا اسناد را رتبهبندی و مرتب کند و بهترین آنها را نمایش دهد.
انتقال بار پرسوجو (Query offload)
موتورهای جستوجو دارای ساختارهای دادهای خاصی هستند که امکان جستوجوی سریع و با حجم بالا را فراهم میکنند. مهمترین این ساختارها، فهرست معکوس (inverted index) است که هر واژه را به فهرستی از اسنادی که آن واژه را دارند، پیوند میدهد. بهدلیل همین ساختارها، موتورهای جستوجو در پردازش درخواستها از پایگاهدادههای رابطهای سریعتر عمل میکنند. اما در عوض، رابطهمحور نیستند. معمولاً ترکیبی از پایگاهداده رابطهای و موتور جستوجو بهکار میرود: پایگاهداده برای ارائه دادههای اصلی اپلیکیشن و موتور جستوجو برای جستوجوی سریع و مرتبط روی همان دادهها.
چه کسانی جستوجوی اسنادی را میسازند؟
ساخت یک تجربه جستوجوی کارآمد و لذتبخش نیازمند نقشهای مختلفی است. توسعهدهندگان، راهحل جستوجو را پیادهسازی کرده، رابط کاربری جستوجو را طراحی میکنند و نحوه ساختاردهی دادهها را برای بهترین نتیجه درک میکنند. مدیران محصول نیازهای مربوط به ساختار فراداده و تجربه کاربری را تعریف میکنند. دانشمندان داده، دادههای منبع را پالایش کرده و رفتار کاربران را ردیابی و تحلیل میکنند. مدیران ارشد نیز شاخصهای کلیدی عملکرد (KPI) را تعیین میکنند که مسیر حرکت تیمهای محصول و توسعه را برای رسیدن به اهداف تجاری مشخص میسازد.
آینده جستوجوی اسنادی چیست؟
موتورهای جستوجو تاکنون برای تطبیق واژهها بهینه شدهاند. مثلاً اگر کسی «مبل دو متری» جستوجو کند، موتور نتایجی شامل «۲»، «متر»، و «مبل» را بازیابی میکند — این همان جستوجوی کلیدواژهای است. اما در بسیاری از موارد، کاربران دقیقاً نمیدانند دنبال چه واژههایی هستند و ترجیح میدهند بر اساس معنا جستوجو کنند. اینجا جستوجوی معنایی مطرح میشود که در مرز فناوریهای جستوجو و یادگیری ماشینی قرار دارد. در جستوجوی معنایی، میتوان پرسوجویی مانند «جای راحتی برای نشستن کنار شومینه» نوشت و نتایجی مانند «مبل دو متری» دریافت کرد.
جستوجوی معنایی به روشهای یادگیری ماشین وابسته است. باید فضای برداری (vector space) برای پرسوجوها و اسناد ایجاد کرد و از شباهت برداری برای یافتن نزدیکترین گزینهها استفاده کرد. در این روش، سند برای مرتبط بودن لزوماً نباید هیچ واژه یا مترادفی با پرسوجو مشترک داشته باشد. مثلاً اگر کسی «نگهداری دوچرخه» جستوجو کند، سندی درباره «روغنکاری دنده عقب» میتواند مرتبط شناخته شود، چون الگوریتم یادگیری ماشین میداند که این دو مفهوم معمولاً در کنار هم ظاهر میشوند.
چطور میتوان نتایج جستوجو را بهتر کرد؟
کلید جستوجوی موفق در اسناد و تجارت الکترونیک، «ارتباط» است: آیا نتایج جستوجو نیاز کاربر را برآورده میکنند؟ موتورهای جستوجو با استفاده از روشهای مختلف تلاش میکنند بهترین نتایج را در بالای فهرست نمایش دهند؛ این فرایند رتبهبندی مرتبطسازی نام دارد. پایگاهدادهها همه نتایج منطبق را نشان میدهند، اما موتورهای جستوجو برای اولویتبندی موارد مرتبط طراحی شدهاند.
- جستوجو میتواند چندین فیلد را شامل شود و به هر فیلد وزن متفاوتی داده شود. مثلاً در یک پایگاهداده فیلم، ممکن است بخواهید در عنوان، کارگردان و بازیگر جستوجو کنید، ولی برای تطبیق عنوان، وزن بیشتری نسبت به بازیگر در نظر بگیرید.
- تازگی محتوا را هم در نظر بگیرید. میتوانید به نمایه خود فیلد تاریخ انتشار اضافه کرده و در تابع امتیازدهی، از تابع کاهش نمایی بر اساس آن تاریخ استفاده کنید تا نتایج تازهتر بالاتر نمایش داده شوند.
- فیلتر یا دستهبندی به نتایج اضافه کنید تا کاربران بتوانند راحتتر گزینههای موردنظرشان را پیدا کنند. بیشتر سیستمهای جستوجوی اسنادی از دستهبندی بر اساس متادیتا پشتیبانی میکنند، معمولاً بهصورت فهرستی در سمت راست صفحه نتایج.
- در نظر گرفتن مترادفها نیز میتواند مؤثر باشد. کاربران باید بتوانند با هرکدام واژههای هممعنا به نتایج مشابه دست یابند. افزودن مترادفها به سیستم جستوجو این امکان را فراهم میکند.
مشتریان چگونه از جستوجوی اسنادی استفاده میکنند؟
جستوجوی اسنادی در کاربردهای متنوعی بهکار میرود.
- سایتهای تجارت الکترونیک از جستوجوی اسنادی برای یافتن محصولاتی استفاده میکنند که کاربران قصد خرید آنها را دارند.
- سایتهای عکس از آن برای جستوجوی تصاویر بر اساس متادیتاهایی مثل عنوان و توضیح، یا حتی براساس بردارهای تصویری استفاده میکنند.
- کاربران حقوقی از آن برای یافتن احکام و پروندههای مرتبط استفاده میکنند.
- پزشکان برای یافتن داروهای مناسب شرایط بیماران از آن بهره میبرند.
- راهحلهای مدیریت ارتباط با مشتری از این نوع جستوجو برای بازیابی یادداشتها، تعاملات و یافتن مشتریان هدف استفاده میکنند.