در اواخر سال 2019 میلادی و در ادامه ماجراجویی گوگل در فهم زبانهای انسانی، گوگل دست به استفاده از الگوریتمی زد که طبق گفته این شرکت بعد از گذشت 5 سال از الگوریتم رنک برین، مهمترین تغییر گوگل در چندسال اخیر است. الگوریتم برت (BERT) در حقیقت یک متد جدید بر پایه هوش مصنوعی است که به کامپیوترها این امکان را میدهد که هرچه بیشتر و بهتر از گذشته، متوجه منظور کاربران در جستجوهای محاورهای شوند.
در این مقاله از سیر تا پیاز این الگوریتم را بررسی میکنیم و به بررسی این نکته میپردازیم که آیا میتوانیم برای الگوریتم برت هم سایتمان را سئو و بهینه سازی کنیم؟
الگوریتم برت (BERT) چیست و چطور کار میکند؟
اکثر ما وقتی که درباره موضوعی مطمئن نیستیم و یا دوست داریم که اطلاعات بیشتری راجع به موضوعی خاص بدست بیاریم، به سراغ جستجو در گوگل میرویم و اتفاقی که خیلی وقتها برای ما پیش میآید، این است که از بهترین روش جستجویی که ما را به هدفمان میرساند مطمئن نیستم، به همین خاطر حتی ممکن است جستجویمان را همراه با غلط املایی شروع کنیم ویا حتی بدتر اصلا ندانیم که جستجو را چطور باید شروع کنیم.
همین نامطمئن بودنها باعث میشود که به تعداد افراد مختلف روی کره زمین روشهای مختلفی برای بیان آن چیزی که به دنبالش هستیم وجود داشته باشد. مسئلهای که به گفته گوگل بعد از گذشت سالیان سال هنوز که هنوزه باعث میشود که چیزی در حدود 15 درصد از جستجوها جدید باشند.
برای درک بهتر الگوریتم برت، بگذارید با یک مثال شروع کنیم،
یک جستجو عادی ممکن است با عبارتی مثل “چطور گوشی که توی آب افتاده رو تعمیر میشه کرد؟” شروع شود. برای تمام ما فارسی زبانها تبدیل این جمله به یک جمله رسمیتر و جدیتر کار خیلی سادهای است و همین الان حتما میتوانیم آن را به جمله “چطور گوشی که داخل آب افتاده است را میشود تعمیر کرد؟” تبدیل کنیم.
موضوعی که برای کامپیوترها و دنیای صفر و یک هنوز که هنوزه یک چالش است!
همین مثال ساده، دریچهای برای ورود به مبحث جدید و جذابی به نام پردازش زبان طبیعی یا Natural Language Processing است. در حقیقت کامپیوترها به کمک پردازش زبان طبیعی میتوانند جملاتی که در دنیای انسانی ما بکار میروند را همانطوری درک کنند که ما انسانها درک میکنیم.
منظور از پردازش زبان طبیعی یا Natural Language Processing چیست؟
NLP دانشی است که به کامپیوترها این امکان را میدهد که جملات و عبارات را مثل یک انسان واقعی پردازش کنند و بفهمند. بدون دانش NLP اگر جملهای مثل “گوشی من در آب افتاده است، چیکار کنم؟” را به یک کامپیوتر بدهید، هیچ درکی از مشکل شما پیدا نمیکند و در بهترین حالت این جمله برای کامپیوتر ترکیبی است از کلمات “گوشی” ، “من” ، “آب” ، “افتاده” و …
اما اگر همین جمله را به یک انسان بگویید، در مرحله اول متوجه مشکل سوختگی گوشی شما میشود و ممکن است از تجربیاتش در همچنین مواقعی برایتان بگوید.
دانش NLP در حقیقت تلاش میکند که کامپیوترها را به یک مرحله بالاتر ببرد تا جملات و عبارات تنها برای کامپیوتر ترکیبی از کلمات نباشند، بلکه کامپیوترها هم بتوانند مثل انسان جملات و عبارات را درک کنند.
الگوریتم BERT که مخفف شده عبارت Bidirectional Encoder Representations from Transformers است یک مدل جدید در دانش NLP برای فهم و درک هرچه بهتر زبانهای انسانی و طبیعی است. اگر از اسم طولانی این الگوریتم نگران شدید، فقط کافیست یک نفش عمیق بکشید و به خواندن ادامه این مقاله مشغول شوید تا باهم به تمام زوایا این مدل جدید بپردازیم و ببینیم که چه تاثیری بر روی عملکرد موتور جستجو گوگل و سئو سایتها گذاشته است!
مدل برت اولین بار در یک مقاله دانشگاهی مطرح شد
این مدل برای اولین بار در یک مقاله دانشگاهی از تیم محققین هوش مصنوعی گوگل در سال 2018 معرفی شد و آنطور که در این مقاله ادعا شده بود این مدل میتواند در پردازش و درک جملات انسانی با دقت بیشتری نسبت به مدلهای قبلی عمل کند.
بعد از طی شدن مراحل آزمایشی و تحقیقاتی، در نهایت در 30 مهر 1398 (22 اکتبر 2019) گوگل اعلام کرد که در زبان انگلیسی از الگوریتمی به نام B.E.R.T در حال استفاده است. دو ماه بعد از این اعلام عمومی، گوگل مدعی شد که الگوریتم برت در بیش از 70 زبان زنده دنیا که زبان فارسی هم جزو آنهاست در حال استفاده است.
مراحل توسعه و آموزش هوش مصنوعی برت
در این قسمت میخواهیم نگاهی خیلی ساده شده به الگوریتم برت و مراحل توسعه آن داشته باشیم، اگر از آن دسته افرادی هستید که دانستن پشت پرده اتفاقات برایتان حسابی جذاب است، این قسمت مخصوص شماست.
الگوریتم برت علاوه بر اینکه حاصل یک مدل جدید و جذاب به نام برت است، از مقدار زیادی پول، قدرت پردازشی و یک شبکه عصبی آموزش داده شده با متون ویکی پدیا تشکیل شده است!
همانطور که گفتیم، الگوریتم برت، یک مدل NLP است که برای درک زبانهای انسانی ایجاد شده است. اما این مدل برای اینکه به درستی کار کند نیازمند آموزش است.
گوگل برای آموزش مدل برت از متون ویکی پدیا کمک گرفته است.
به این صورت که در اختیار این مدل، متنهای بیشماری از ویکی پدیا قرار داده شده و با تکنیکهای یادگیری ماشینی بدون نظارت مدل برت توانسته که به درک نسبی از زبان انسانی (در مرحله اول زبان انگلیسی برسد) برسد.
البته گوگل برای اینکار از پردازندههای مخصوصی به نام TPU استفاده کرده که عملیات یادگیری را تا حد خیلی زیادی سرعت میبخشند (TPU همانند CPU و GPU یک واحد پردازشگر است با این تفاوت که مخصوص یادگیری ماشینی و عملات ماتریسی طراحی شده است).
الگوریتم برت به بیش از 70 زبان زنده دنیا مسلط است!
یکی دیگر از ویژگیهای جذاب الگوریتم برت که گوگل بارها به آن اشاره کرده، قابلیت انتقال یادگیریهای این الگوریتم به زبانهای دیگر است. یعنی تمام چیزهایی که الگوریتم برت در زبان انگلیسی (یا هر زبان دیگری) یاد میگیرد در سایر زبانها مثل فارسی، عربی، روسی و … هم بکارش میآید.
دلیل این اتفاق هم کاملا واضح است، چرا که در تمام زبانهای دنیا یکسری مفاهیم مشترک هستند، به عنوان مثال اگر در زبان انگلیسی شیر یک گربهسان باشد، در زبان فارسی هم اوضاع به همین منوال است و شیر یکدفعه جزو دسته پرندگان قرار نمیگیرد!
قبل و بعد از آپدیت برت (BERT)
حالا که با الگوریتم BERT آشنا شدیم، بد نیست که نگاهی به تاثیرات این الگوریتم روی دنیای جستجو بیندازیم و ببینیم که این الگوریتم در واقعیت چه تاثیری روی جستجوهای کاربران گذاشته است.
به گفته گوگل، از هر 10 جستجو (کوئری) یکی از آنها تحت تاثیر الگوریتم برت قرار گرفتهاند، البته بیشتر این جستجوها، عباراتی طولانی و یا اصطلاحاتی هستند که برای فهم آنها، ماشینها نیاز به درکی خیلی بالاتر از درک تک به تک کلمات دارند.
برای همین در ابتدا به سراغ مثالهایی رفتیم که گوگل از الگوریتم برت برایمان زده است، بعد از این به سراغ بررسی الگوریتم برت در زبان فارسی هم خواهیم رفت.
توجه بیشتر الگوریتم برت به حروف اضافه
یکی از مهمترین جستجوهایی که تحت تاثیر الگوریتم برت قرار گرفتهاند، جستجوهایی هستند که در آنها، حروف اضافه به جملات معنی و مفهومی متفاوت میبخشند.
به عنوان مثال عبارت “مهاجرت به قاره آمریکا” با عبارت “مهاجرت از قاره آمریکا” در تمام کلمات به جز حروف اضافه “به” و “از” یکسان هستند. اما همین تفاوت در حروف اضافه به کلی معنی و مفهوم این عبارتها را متحول میکند.
تا قبل از الگوریتم برت، یکی از مهمترین نقاط ضعف جستجوی گوگل بیتوجهی به حروف اضافه و معنایی که به جملات میبخشند بود. به گفته گوگل، این الگوریتم حالا توجه بیشتری به حروف اضافه دارد و میتواند با توجه به کلیت جملات متوجه تاثیر حرف اضافه بر روی معنای جمله شود.
به این مثال دقت کنید:
در جستجوی عبارت “2019 brazil traveler to usa need a visa” (مهاجران برزیلی به آمریکا در سال 2019 نیاز به ویزا دارند) اگر به حرف اضافه to دقت نکنیم، نمیتوانیم معنای جمله را به درستی متوجه شویم، اتفاقی که در گوگل قبل از برت کاملا رایج بود، همانطور که میبینید تا قبل از الگوریتم برت، گوگل برای این جستجو نتایجی مربوط به مهاجرت آمریکاییها به برزیل را نشان میداد!
گوگل برت، معنای کلمات را در جمله درک میکند
در ابتدای این مقاله دیدیم الگوریتم BERT مخفف عبارتی طولانی بود که گفتیم نگرانش نباشید، اینجا میخواهیم یک مثال دیگر بزنیم که مربوط به ویژگی Bidirectional این الگوریتم است. به عبارت خیلی خیلی سادهتر، الگوریتم برت، با توجه به کلمات قبل و بعد یک کلمه خاص متوجه معنی و مفهوم کلمه میشود. این ویژگی به خصوص در کلماتی که معانی متفاوتی دارند به خوبی گل میکارد.
برای درک بهتر به این مثال توجه کنید:
تا قبل از الگوریتم برت، تطبیق عینی کلمات برای گوگل اهمیت ویژهای داشت (هم اکنون هم این تطبیق اهمیت زیادی دارد ولی نه به سبک قدیم) به همین خاطر اگر در گوگل جستجو میکردید “do estheticians stand a lot at work” (آیا متخصصان زیبایی در طول کار مدت زمانی زیادی میایستند) گوگل با توجه به همین ویژگی تطابق کلمات، واژه “stand” را به واژه “stand-alone” در نتایج تطبیق میداد و نتایجی را نمایش میداد که بی ربط بودند. اما با الگوریتم برت، گوگل با توجه به کلمات پس و پیش کلمه “stand” مفهوم واقعی این کلمه را در جمله درک میکند.
درک بهتر جملات محاورهای و خارج از دستور زبان
از دیگر ویژگیهای جذاب الگوریتم برت، درک خیلی بهتر این مدل از جملات محاورهای و خارج از دستور زبان است. حتما برایتان پیش آمده که عجلهای یک جمله را در گوگل سرچ کنید و جملهبندیتان چیزی شبیه به این جمله شود “چطور به کمک الگوریتم برت در نتایج گوگل اول شویم راهنما” و منظورتان چیزی شبیه به این بوده “راهنمای اول شدن در نتایج گوگل به کمک الگوریتم برت”!
الگوریتم برت در درک بهتر این گونه جملات هم موثر است، به این مثال نگاه کنید:
همانطور که میبینید، الگوریتم برت حتی جملاتی که کاملا محاورهای و بدون رعایت هیچگونه دستور زبانی هم نوشته میشوند را به خوبی درک میکند. این ویژگی به خصوص در جستجوهای صوتی که آینده موتور جستجو گوگل را رقم میزنند بسیار موثر خواهد بود.
آپدیت برت Featured Snippet ها را هم متحول کرد
تا اینجا بیشتر مثالهایی که زدیم مربوط به فهم سوالات کاربران از گوگل بود، Featured Snippet ها، جوابهای کوتاهی هستند که در جایگاه صفر گوگل (بالاتر از نتیجه اول) ظاهر میشوند و تلاش میکنند پاسخ جستجوی کاربر را در همان صفحه جستجو بدهند.
الگوریتم برت، بر روی نتایج Featured Snippet ها هم تاثیر زیادی گذاشته است، به عنوان مثال،
اگر تا قبل از الگوریتم BERT به زبان انگلیسی جستجو میکردید “parking on a hill with no curb” (پارک کردن در سراشیبیهای بدون جدول) گوگل به واژه “no” هیچ توجهی نمیکرد و نتایجی را نشان میداد که مربوط به پارک در سراشیبیهای جدول دار بود که عملا آن چیزی نبود که احتمالا به دنبال آن باشید!
آیا الگوریتم برت گوگل به زبان فارسی هم رسیده؟
همانطور که گفتیم در ابتدای معرفی الگوریتم برت، این الگوریتم مانند بسیاری از الگوریتمهای دیگر گوگل، کار خود را از زبان انگلیسی شروع کرد، اما سوال مهمی که مطرح میشود این موضوع است که آیا الگوریتم بر روی نتایج زبان فارسی هم تاثیر گذاشته است؟
جواب صریح این سوال مثبت است.
همانطور که گوگل در اواخر سال 2019 میلادی هم اعلام کرد، هم اکنون الگوریتم برت در بیش از 70 زبان زنده دنیا در حال کار است و ترکشهای آن به زبان فارسی هم رسیده است. علاوه بر اینکه یادگیریهای الگوریتم برت در زبان انگلیسی به زبان فارسی هم سرایت میکنند.
به عنوان مثال، جستجوی “راهنمای سفر مشهد به تهران” را در دو زمان قبل و بعد از الگوریتم برت بررسی کردیم.
همانطور که میبینید گوگل تا قبل از تاثیرگذاری الگوریتم برت بر روی زبان فارسی، رابطه کلمه “تهران” و “مشهد” را متوجه نمیشد و حرف اضافه “به” بین این دو را درک نمیکرد. اما امروز اگر شما “راهنمای سفر مشهد به تهران” در گوگل جستجو کنید، نتایجی متفاوت را مشاهده خواهید کرد که نشان دهنده تاثیر الگوریتم برت بر روی جستجوهای فارسی در گوگل است.
چرا برت از نظر گوگل یک جهش تاریخی در دنیای جستجو است؟
گوگل در وبلاگ خود رسما اعلام کرد که الگوریتم برت یک تغییر تاریخ ساز در دنیای جستجو است، اما نه به این معنی که این الگوریتم بلافاصله رتبهبندی سایتها را متحول میکند و با اسپم مبارزه میکند و …
نه اصلا منظور این چیزها نیست، حتی اگر سری به مقالاتی که رتبه بندی سایتها را بعد و قبل از الگوریتم برت مقایسه کردهاند بزنید هم شواهد زیادی برای تغییرات سنگینی که گوگل بخواهد آن را تاریخ ساز نامگذاری کند پیدا نمیکنید!
بلکه منظور گوگل از این تغییر بزرگ، زمینه سازی الگوریتم برت برای تغییرات بزرگ بعدی و دریچه جدیدی است که به روی دنیای پردازش زبان طبیعی یا NLP باز شده است، اگر آینده گوگل را یک اتاق در نظر بگیریم، الگوریتم برت در ورودی به این اتاق است.
الگوریتم برت (BERT) با الگوریتم مرغ مگسخوار (Humming Bird) چه تفاوتی دارد؟
اگر مقاله “الگوریتم مرغ مگسخوار گوگل” را خوانده باشید. حتما خاطرتان هست که آنجا هم بحث پردازش زبان طبیعی یا NLP را وسط کشیدیم و کلی راجع به الگوریتم مرغ مگسخوار که در سال 2013 به این تکنولوژی مسلح شده بود صحبت کردیم.
پس تفاوت الگوریتم برت با الگوریتم مرغ مگس خوار گوگل در چیست؟
پردازش زبانهای انسانی مثل زبان انگلیسی، روسی، آلمانی، فارسی و … هنوز که هنوزه دارای چالشهای زیادی است. الگوریتم برت در حقیقت در ادامه تلاش گوگل در الگوریتم مرغ مگس خوار برای فهم عبارتهایی است که کاربران در باکس جستجو گوگل وارد میکنند.
در الگوریتم مرغ مگسخوار گوگل تا حدودی از دنیای جستجوهای کلمه به کلمه فاصله گرفت و تا حدودی سعی میکرد که بتواند مفاهیم پشت پرده کلمات را متوجه شود. در الگوریتم برت گوگل هم همین اتفاق میافتد، اما با یکسری متد جدید و با قابلیتهای بیشتر.
الگوریتم BERT چاقوی سوئیسی گوگل است
در دنیای NLP، موضوعات مختلفی هستند که به عنوان چالش شناخته میشوند، موضوعاتی مثل
- پاسخ به سوالات
- طبقهبندی کلمات و جملات
- درک احساسات پشت جملات
- و …
دانشمندان حوزه هوش مصنوعی و NLP هم برای هرکدام از این چالشها، مدلهایی را تابحال ایجاد کردهاند که این مدلها میتوانند یک چالش به خصوص را حل کنند و تا حد خوبی به نتیجه برسانند، به همین خاطر ممکن است یک مدل خاص تنها از پس پاسخ به سوالات بربیاید و وقتی بحث طبقه بندی جملات و کلمات به میان میآید، آنچنان عملکردی از خود نشان ندهد!
نکتهای که الگوریتم و مدل BERT را از تمام مدلهای قبلی متمایز میکند این است که این مدل، از پس 11 چالش مختلف در حوزه NLP بر میآید!
به همین خاطر، خیلی بی راه نیست که اگر الگوریتم مرغ مگسخوار را به یک چاقو عادی تشبیه کنیم، الگوریتم برت در مقابل آن مثل یک چاقو سوئیسی 11 کاره است!
اما نباید فراموش کرد که وجود الگوریتم برت باعث از بین رفتن الگوریتمهای قبلی گوگل مثل مرغ مگسخوار و رنک برین نشده و این الگوریتمها در حقیقت مکمل همدیگر هستند.
تفاوت الگوریتم برت (BERT) با الگوریتم رنک برین (RankBrain) در چیست؟
در مقاله مربوط به الگوریتم رنک برین (RankBrain) مربوط به ویژگیها و انقلابی که این الگوریتم در دنیای جستجو ایجاد کرد صحبت کردیم، الگوریتم برت و الگوریتم رنک برین، هر دو برای درک بهتر نیاز کاربران توسعه داده شدهاند و اگرچه مقدار بسیار کمی با همدیگر نقاط اشتراک دارند اما به کلی وظایف متفاوتی را دنبال میکنند، به طور خیلی خلاصه:
- الگوریتم برت یک مدل NLP است که تلاش میکند جملات و زبانهای انسانی را بهتر درک کند
- الگوریتم رنک برین یک مدل مبتنی بر یادگیری ماشینی است که تلاش میکند بین جستجوهای مختلف ارتباط برقرار کند و با جمع آوری اطلاعات از نحوه رفتار کاربران نتایجی بهتری را تولید کند
همانطور که میبینید این دو الگوریتم وظایف متفاوتی دارند و در حقیقت مکمل یکدیگر هستند، بنابراین قرار نیست الگوریتم برت جایگزین الگوریتم رنک برین گوگل باشد.
بهینه سازی و سئو سایت بعد از بروزرسانی گوگل برت (BERT) چگونه است؟
با معرفی هرکدام از الگوریتمهای گوگل اولین سوالی که مطرح میشود این است که حالا چطور از این الگوریتم بیشترین استفاده را کنیم و سایتمان را برای الگوریتم جدید سئو کنیم.
در زمان معرفی الگوریتم برت هم که تب و تاب بهینه سازی برای این الگوریتم در بالاترین حد ممکن بود، از مسئولین مختلف گوگل در این باره سوالات زیادی میشد که آقای دنی سالیوان که از افراد برجسته گوگل است در پاسخ به این پرسشها در اینطور عنوان کرد:
“هیچ روش بهینه سازی برای BERT و کسانی که میخواهند بعد از برت رتبه بهتری داشته باشند، وجود ندارد، مثل همیشه تمام تلاش گوگل اهمیت دادن به محتواهایی عالی است که برای کاربران تولید شدهاند”
بنابراین اگر شما سایتی دارید و در آن تمام تلاش خود را میکنید تا بهترین و با کیفیتترین محتوا را به دست مخاطبان خود برسانید، الگوریتم برت گوگل هم در این مسیر همراه و کمک حال شما خواهد بود.
جمع بندی و سخن پایانی…
اگر تصور میکنید که الگوریتم برت تیر نهایی و آخرین الگوریتم گوگل برای فهم زبانهای انسانی است، سخت در اشتباهید، فهم زبانهای انسانی همانطور که ما انسانها آنها را درک میکنیم برای کامپیوترها هنوز خیلی دور از دسترس است و چالشهای فوق العاده زیادی در این زمینه هنوز حل نشده باقی ماندهاند.
اما چیزی که کاملا مشخص است، در آینده گوگل همچنان به ماجراجویی خود برای فهم بهتر ارتباطات انسانی ادامه میدهد و ماشینها این قدرت را پیدا میکنند که واقعا همانند یک انسان، محتواهای مختلف را بفهمند و درک کنند.
اگر به موضوع پردازش زبانهای طبیعی و الگوریتم برت علاقهمند شدید، حتما در اینترنت “تست تورینگ” را جستجو کنید تا دقیقا متوجه شوید که هنوز چقدر جای کار برای فهم زبانهای انسانی وجود دارد و الگوریتم برت تنها یک قدم کوچک در این زمینه است.
حالا نوبت شماست که نظرتان در خصوص این الگوریتم و تجربه خودتان در خصوص اتفاقاتی که بعد از الگوریتم برت برایتان افتاده است را با بقیه به اشتراک بگذارید، همچنین اگر از این مقاله خوشتان آمده حتما آن را برای دوستانتان هم ارسال کنید.
مثل همیشه سوالات شما هم در کمتر از 24 ساعت توسط همکاران ما در دگردیسی پاسخ داده خواهد شد.
2 پاسخ
یعنی یجورایی میشه گفت با این الگوریتم برت دیگه گوگل قشنگ متوجه منظور ما از سرچ میشه و شاید تو آینده بتونه احساسای بعدی و جستجوهای بعدیمونو حدس بزنه :))
رسما دیگه فقط باید محتوا رو واسه کاربر تولید کرد چون این وظیفه گوگله که متوجه محتواها بشه نه ما یجوری بنویسیم که گوگل بفهمه
سلام،
دقیقا با نظرتون موافقیم، تمام تلاش گوگل در این سالها این بوده که هرچه بیشتر بتونه به انسانها نزدیک بشه و کلمات و مفاهیم رو دقیقا مثل یک انسان درک کنه