الگوریتم موتورهای جستجو از انبوهی از الگوریتمهای مختلف ساخته شده که هرکدام از این الگوریتمها، وظایف خاصی برعهده دارند. ما در این مقاله سعی کردهایم شما را با نحوه کار این الگوریتمها و چگونگی آنها آشنا کنیم. هرچند بهتر است قبل از خواندن این مقاله، به این موضوع دقت کنید که ساختاری که موجب میشود این الگوریتمها کنارهم کار کنند، از این که هر الگوریتم به تنهایی چه وظیفهای دارد، مهمتر است. حال بهتر است که در ابتدا به مفاهیم پایهای نحوه کار الگوریتم موتورهای جستجو بپردازیم.
الگوریتم چیست؟
اگر در موتور جستجوگر گوگل، به دنبال معنی کلمه الگوریتم بگردیم، تعریفی که از این کلمه پیدا میکنیم، تعریف زیر است:
«فرایند یا مجموعهای از قوانین که در محاسبات یا سایر عملیات حل مسئله، بهویژه بهوسیله رایانه مورداستفاده قرار میگیرد.»
امکان دارد خیلیها تفاوتی بین مفهوم الگوریتم و فرمول قائل نشوند. اما دقت کنید که این معنی این دوکلمه، کاملاً باهم متفاوت است. برای اینکه بهتر با مفهوم الگوریتم آشنا شوید، بهتر است به مثال زیر دقت کنید.
فرض کنید که چند ماده اولیه مثل گوشت و سیبزمینی و ادویهجات در اختیار شما قرار دارد و شما میخواهید برای خانوادهتان شام بپزید. باید در نظر بگیرید که به چه مقدار گوشت و پیاز و غیره برای پخت غذا نیاز دارید. همچنین مدتزمان پخت هرکدام هم مهم است.
بهطورکلی برای هرکدام از موادی که در اختیار شما قرار داده شده است، ۳ فرمول نیاز دارید. ۲ فرمول که ذکر شد، فرمول سوم هم بررسی علاقه شما به هرکدام از مواد اولیه است. حال اگر این فرمولها را برای هریک از اعضای خانواده شخصیسازی کنیم، به یک الگوریتم برای پختن شام رسیدهایم.
الگوریتمی از الگوریتمها
حال ممکن است از خود بپرسید که چه چیز مشترکی بین الگوریتم موتورهای جستجوگر و الگوریتم پختن شام وجود دارد.
بهتر است برای بیان شباهت این دو مفهوم، به محتویاتی که یک وبسایت را تشکیل میدهند دقت کنیم. یک وبسایت هم مانند شامی که ما قصد پختنش را داشتیم، از مواد اولیهای ساخته شده است. هرکدام از این مواد، مانند مواد اولیه در پختن شام، از چند فرمول پیروی میکنند که این موضوع این معنی را میرساند که الگوریتم نهایی ما، در واقع متشکل از چند فرمول یا الگوریتمهای فرعی است.
درواقع یک الگوریتم در جایگاه بالاتری نسبت به بقیه الگوریتمها و فرمولها قرار دارد و وظیفه آن، جهتدادن الگوریتمهای فرعی و فرمولها، برای تولید نتیجه نهایی است.
حال به طور مثال، وقتی از «الگوریتم گوگل» حرف میزنیم، آنچه در واقع به آن اشاره داریم مجموعه عظیمی از الگوریتمها و فرمولهاست که هرکدام برای انجام یک عملکرد خاص ساخته شدهاند و بهوسیله یک الگوریتم کنار هم قرار گرفته اند.
در لیست زیر تعدادی از الگوریتمهایی که موتور جستجوگر گوگل را تشکیل دادهاند، معرفی شده است.
- الگوریتم پاندا برای بررسی، فیلترینگ، مجازات و پاداش محتوا بر اساس ویژگیهای خاصی ایجاد شده است که این الگوریتم هم خود از تعداد بیشماری از الگوریتمهای دیگر به وجود آمده است.
- الگوریتم پنگوئن برای بررسی پیوندها و مشخصکردن هرزنامههاست. درون این الگوریتم نیز، الگوریتمهای زیادی برای ارزیابی پیوندها و یافتن ویژگیهای مشترک هرزنامه، قرار دارد.
- الگوریتمهای دیگری نیز وجود دارند که مسئولیت سازماندهی بر دوش آنهاست.
Entity یا نهاد و نقش آن در الگوریتم موتورهای جستجو
یکی از مباحثی که بهتازگی به آن اشاره میشود اما همچنان بهاندازه بایدوشاید به آن بها داده نمیشود، مبحث Entity یا نهاد یا موجودیت است.
اگر بخواهیم تعریفی از این کلمه بیان کنیم، بهترین تعریف این است: «یک چیز یا یک مفهوم منحصربهفرد، یگانه، بهخوبی تعریف شده و قابل تشخیص»
حال اگر بخواهیم موجودیت یا Entity رو در قالب مثالی که در ابتدای مقاله بیان کردیم، تعریف کنیم، هرکدام از اعضای خانواده که بر سر میز شام مینشینند، خود یک نهاد بهحساب میآیند. همچنین هر کدام از مواد اولیه نیز خود نهاد هستند. حتی کل اعضای خانواده، بهعنوان یک مجموعه، یک نهاد جدا به شمار میآید.
پس طبق این استدلال اگر کل اعضای خانواده را چهار نفر در نظر بگیریم، در میز شام، چهار نهاد منفرد وجود دارد که مشغول غذا خوردن هستند و تعداد زیادی از نهادها نیز وجود دارند که مورد استفاده قرار میگیرند. طبقهبندی همه افراد از این طریق، مزایای زیادی برای گوگل جهت ارزیابی فعالیتهای کاربران بهعنوان یک سری کلمات دارد.
چگونه الگوریتم موتورهای جستجو از نهادها استفاده میکنند؟
اگر به هر نهاد بهعنوان یک وبسایت نگاه کنیم، متوجه میشویم که گوگل میتواند از این طبقهبندی برای بررسی و قضاوت وبسایتها و صفحات خود استفاده کند. بهاینترتیب، گوگل میتواند بهراحتی ارتباط وبسایتها و جهان را طبقهبندی و بررسی کند. اساساً الگوریتم موتورهای جستجو به این صورت طراحی شده است که آنها مسئول قضاوت در مورد یک وبسایت نیستند، آنها باید همه صفحات و سایتها را رتبهبندی کنند.
قبل از اینکه ایده موجودیتها در جستجو وارد شود، موتورهای جستجو ارتباط لینکها و صفحات را بر اساس مجاورت کلمات، تراکم و سایر عناصری که به راحتی قابل سوءاستفاده و تحریف است، تعیین می کنند. اما دستکاری نهادها بسیار دشوارتر است.
بهطورکلی، نهادها نقش مهمی در الگوریتمهای جستجو ایفا میکنند. همچنین از الگوریتمها و فرمولهای خاص خود نیز برخوردارند و بدون شک باگذشت زمان، نقش آنها در الگوریتم موتورهای جستجو افزایش خواهد یافت. بدیهی است که آشنایی شما با مفهوم نهاد، به شما کمک میکند تا نهتنها بدانید چه محتوایی باارزش است بلکه همچنین کدام پیوندها احتمال دارند که بیشتر به چشم بیایند.
اهمیت متن و محتوا در الگوریتم موتورهای جستجو
درک نحوه عملکرد الگوریتمها برای اعمال محتوای مناسب برای آنچه شما سعی در یافتنش دارید، بسیار مهم است. چون اگر شما به آشنایی بالایی از نحوه کار الگوریتمها و نقش متن و محتوا در آنها دست یابید، بدیهی است که استفاده از موتورهای جستجو، کار شما را به مراتب آسانتر خواهد کرد.
اهمیت رابط کاربری در الگوریتمها
همانطور که بیان کردیم الگوریتم های جستجو از مجموعهای بزرگ از الگوریتمها و فرمولهای مختلف تشکیل شدهاند که هرکدام هدف و وظیفه خاص خود را دارند. اما هدف اصلی الگوریتم موتورهای جستجو این است که نتیجهای که از طریق کنار هم قرارگرفتن فرمولها و الگوریتمهای فرعی به دست میآید، مورد رضایت کاربر قرار بگیرد.
در حقیقت، الگوریتمهایی برای نظارت بر این جنبه از نتایج وجود دارند و وظیفه آنها این است که درصورتیکه از نحوه تعامل کاربر، از نارضایتی او نسبت به نتایج جستجو آگاه شدند، تغییرات و تنظیماتی را در صفحه مربوطه ایجاد کنند.