اگه سئوکار هستین یا حداقل دوست دارین که تو این زمینه کار کنین، خیلی مهمه که بدونین این فیلد تا حد قابل توجهی بر پایهی عدم قطعیت بنا شده. اما چرا؟ چون گوگل دائما در حال بهبود الگوریتم موتور جستوجو شه و خب طبیعیه که این باعث بشه هرزگاهی جایگاه نمایش سایتها در صفحه نتایج عوض بشه.
به صفحه نتایج نتایج Search Engine Result Page میگن، که به اختصار SERP نامیده میشه.
هفته قبل متوجه شدیم که جایگاه نمایش سایت «همراه کارت» تو تعدادی از کلمات کلیدی اصلیمون داره به صورت روزانه تغییر میکنه. این مشاهده خیلی با شناختی که از الگوی گوگل داشتیم همخونی نداشت، چون این تغییر جایگاه معمولاً در فواصل زمانی طولانیتری اتفاق میافتاد.
همین شد که تصمیم گرفتیم سیستم رو به صورت روزانه مانیتور کنیم، در کنارش منابع مختلف در مورد تغییرات جدید گوگل رو هم خوندیم تا ببینیم ماجرا از چه قراره. در نهایت قطعات مختلف پازل رو کنار هم چیدیم، تا پاسخ سوالمون رو پیدا کنیم. تو این پست هم در مورد این که ماجرا از چه قرار بود، توضیح دادیم.
پیدا کردن اولین سرنخ
سایت Moz معمولاً یکی از ابزارهای وبمسترهاست، سایتی که امکانات مختلفی رو در اختیار شما قرار میده، از جمله امکان پیدا کردن کلمات کلیدی. یکی از بخشهای این سایت هم به گزارش آپدیتهای موتور جستوجوی گوگل اختصاص داره و میشه پیشینه آپدیتهای گوگل از سال 2000 تا الان رو توش دید و خوند.
بنابراین طبیعی بود که در اولین قدم بریم ماز رو چک کنیم، اما نکته اینجا بود که آخرین به روزرسانی برای 22 اکتبر (هفته آخر مهر) و مربوط به الگوریتم BERT(که در ادامه توضیح میدیم چیه) بود. و خب این از نظر زمانی خیلی ارتباطی به مشاهدات ما در هفته اخیر نداشت.
همین شد که رفتیم سراغ گوگل و از خودش در مورد تغییر رفتار عجیبش پرسیدیم. و اینطوری بود که رسیدیم به تعداد زیادی سایت که داشتن در مورد شرایطی مشابه با شرایط ما صحبت میکردن. و غریب به اتفاق به آپدیت BERT اشاره کرده بودن، که ظاهراً منشا تغییر و تحولات اخیره.
بنابراین در ادامه با یکسری پرسش و پاسخ توضیح میدیم که موتورهای جستوجو بر چه مبنایی کار میکنن، برت چیه و چرا مهمه، چرا ما تغییرات برت رو تازه دو ماه پس از انتشارش حس کردیم و نهایتاً این که چه کنیم تا برت درک بهتری از محتوای سایت ما داشته باشه؟
موتور جستوجوی گوگل چهطوری کار میکنه؟
به طور کلی کار موتورهای جستوجو، از جمله گوگل، فهمیدن زبانه! تا بتونن یه جواب مرتبط برای عبارت یا سوالی که سرچ کردیم، پیدا کنن. در واقع این موتورها هر چی بتونن تحلیل درستتری از «زبانها» داشته باشن، میتونن نتایج مرتبطتری رو نشون بدن، اما نکته اینجاس که ما بعضی وقتها دنبال یاد گرفتن مطلبی هستیم که هیچ دانشی در موردش نداریم، بنابراین ممکنه عبارت مورد نظرمون رو درست ننویسیم و این وظیفهی موتور جستوجوس که بتونه بفهمه منظور ما چی بوده.
به همینخاطر موتورهای جستوجو برپایهی یادگیری ماشین (Machine Learning) کار میکنن. تو بحث یادگیری ماشین هم اول هوش مصنوعی رو با یک سری داده ترتیب میکنن و بعد میذارن کارش رو انجام بده. حالا پارسال گوگل اومد و برای فاز یادگیری در پردازش زبانهای طبیعی (Natural Language Processing-NLP)، یه پروژه اوپنسورس (Open-Source) و مبتنی بر تکنیک شبکههای عصبی (Neural Networks) به اسم Bidirectional Encoder Representations from Transformersمعرفی کرد، که به اختصار BERT نامگذاری شد.
در واقع برت بر پایهی تحقیقات پژوهشگرهای گوگل روی مبدلها (Transformers) توسعه پیدا کرده. ترنسفرمرها یه نوع معماری شبکه عصبی مبتنی بر تکنیک Self-Attention (توجه به خود) هستن، که کمک میکنن موتورهای جستوجو بتونن درک بهتری از زبانها داشته باشن.
البته داخل پرانتز شاید بد نباشه به این موضوع اشاره کنیم که برت صرفاً یه تغییر نرمافزاری نبوده، بلکه برای محقق شدن دستاوردی که این الگوریتم به دنبالشه، نیاز بوده تا از سختافزارهای جدیدی هم استفاده بشه. در نتیجه از Cloud TPU استفاده شده تا امکان انجام پردازشهای مربوطه وجود داشته باشه.
بنابراین تو قسمت بعد به زبان سادهتر توضیح میدیم که برت چیه و چهطوری کار میکنه، چون توضیحات انتزاعی و تخصصی قسمت قبل شاید خیلی اهمیتی نداشته باشه.
الگوریتم BERT چطور کار میکنه و چرا اینقدر مهمه؟
پاندو نایاک (معاون دپارتمان جستوجوی شرکت گوگل) برت رو مهمترین و بزرگترین پیشرفت موتور جستوجوی گوگل طی پنج سال گذشته معرفی کرده. اما چرا برت اینقدر مهمه؟
در گذشته شما وقتی یه عبارت رو توی گوگل سرچ میکردین، معنی هر کلمه به طور مستقل بررسی میشد. اما برت کارش اینه که ارتباط معنایی بین کلمات عبارت سرچ شده هم در نظر بگیره، تا موتور جستوجو بتونه بهتر بفهمه که ما چی ازش پرسیدم. به عنوان مثال فرض کنین عبارت جستوجو شده به زبان انگلیسی «I Arrived at the bank after crossing river» باشه. در حالت عادی موتور جستوجو کلمهی «بانک» رو به تعریف عادی اون، که یه مرکز اقتصادیه، در نظر میگیره. اما برت معنی «بانک» رو در قیاس با مابقی کلمات جمله بررسی میکنه و متوجه میشه که بانک اشاره به محلی در حاشیه رودخونهس
این باعث میشه گوگل بتونه درک بهتری از عبارات طولانی و یا محاورهای داشته باشه. و یا معنی حروف اضافه رو هم به تناسب مابقی اجزای جمله بهتر متوجه بشه. مثلاً To و For هر دو معنی «برای» میدن، اما بسته به جمعه ممکنه معنیشون متفاوت باشه و این میتونه نتیجه سرچ رو کلاً تغییر بده. در همین راستا گوگل تستهای متعددی انجام داده و مدعی شده که بعد از استفاده از برت، تونسته به ازای هر 10 جستوجو به زبان انگلیسی در کشور آمریکا، یک نتیجه رو بهتر کنه. و این یعنی بهبود 10 درصدینتایج که رشد قابل توجهیه.
برای اینکه موضوع کمی شفافتر بشه لازمه که یه مثال بزنیم. فرض کنین کاربر انگلیسی زبان عبارت زیر رو سرچ کنه:
2019 brazil traveler to usa need visa
تو این جمله نقش حرف اضافهی to بسیار مهمه، چون کلیت این عبارت در مورد نیاز/عدم نیاز ویزا برای برزیلیهاییه که قصد سفر به آمریکا رو دارن. حالا ببینیم قبل و بعد برت نتایج چهجوری نمایش داده میشدن:
همون طور که تو عکس هم مشخصه، تا قبل برت، گوگل درک درستی از این عبارت نداشته و اولین نتیجهش در مورد آمریکاییهایی بوده که میخواستن به برزیل سفر کنن. اما حالا ظاهراً وضعیت کمی فرق کرده!
چرا تغییرات برت رو با تاخیر داریم احساس میکنیم؟
تو شروع صحبتمون گفتیم که گوگل از اواخر اکتبر داره از الگوریتم جدیدش برای نشون دادن نتایج جستوجو استفاده میکنه، اما دلیل این که ما (تو سایتهای فارسی زبان) و یه عده دیگه داریم تازه تغییراتش رو حس میکنیم، اینه که این آپدیت در ابتدا فقط برای «زبان انگلیسی» در کشور آمریکا فعال شده و حالا به مرور داره روی زبانهای بیشتری هم اجرا میشه.
برت حالا به طور رسمی داره روی بیش از 70 زبان در دنیا اجرا میشه. و توییت رسمی اکانت Google SearchLiaison نشون میده که از 10 دسامبر (19 آذر) برت روی زبان فارسی هم فعال شده و خب حالا شاید بهتر متوجه بشیم که چرا تو مدت اخیر جایگاه سایتمون تو تعدادی از کلمات کلیدی متغییر بوده و به صورت روزانه تغییر کرده. چون احتمالاً گوگل در فاز یادگیری برای زبان فارسیه، تا نهایتاً به یه فرم باثبات برسه.
چه کنیم که BERT بهتر مارو ببینه؟
احتمالاً بعد خوندن قسمتهای قبلی حالا براتون این سوال ایجاد شده که چه کنیم تا برت بتونه محتوای مارو بهتر ببینه و جایگاهمون در کلمات کلیدی افت نکنه؟
پاسخ این سوال مشخصه، سعی کنید محتوای مرتبط و کاربردی تولید کنید. در گذشته هم همیشه تاکید بر این بوده که محتوا رو برای آدمها تولید کنید، نه موتورهای جستوجو، چون گوگل دائما تغییر میکنه و تلاش میکنه تا نتایج بهتری رو نشون بده و اگر محتوای شما مرتبط با نیازهای کاربر باشه، احتمال این که در تغییر و تحولات گوگل آسیب ببینین کمتره.
و حالا که گوگل داره از برت استفاده میکنه، این موضوع که محتوا رو برای آدمها تولید کنین و نه موتور جستوجو، به مراتب مهمتر هم میشه.
شما هم اگر طی هفتههای اخیر تجربهای در برخورد با برت داشتین، خوشحال میشم تو کامنتها بنویسین.