الگوریتم برت (Google BERT) چیست؟
گوگل برت درک موتور جستجو از زبان انسانها را افزایش میدهد. در واقع برت برای رفع نیاز جستجوگران ساخته شده است. هر کسی موقع سرچ مطلب مورد نظر خود، با زبان خودش موضوع را عنوان میکند و گوگل با کمک این الگوریتم تطابق بین عبارت درخواست شدهی کاربر و محتوایی که واقعا نیاز دارد را ایجاد میکند.
BERT مخفف عبارت Representations Encoder Bidirectional from Transformers است.
“برت یک شبکه عصبی اینترنتی است که باعث میشود گوگل بافت کلمات را بشناسد و زبان سرچ کاربران را به درستی تحلیل کند.“
شبکه عصبی یا Neural networks چیست؟
شبکهی عصبی مجموعهای از دستورات و کدهایی است که برای تشخیص الگوهای سرچ و زبان طراحی شدهاند. دستهبندی محتوای تصاویر، تشخیص دستخط و حتی پیشبینی ترندهای بازارهای مالی، برنامههای رایج در دنیای واقعی برای شبکههای عصبی هستند. البته برنامههای کاربردی سرچ مثل مدلهای کلیکی در گروه شبکه عصبی قرار نمیگیرند.
NLP چیست؟
الگوریتم برت، مدلی از پردازش زبان طبیعی NLP است. NLP یکی از حوزهای هوش مصنوعی است که هنگام مطالعات تعاملات انسانی و زبانهای محاسباتی با زبانشناسی همگرا میشود. هدف آن هم از بین بردن شکافهای بین یک زبان با زبانی دیگر است تا تمام افراد بتوانند با هم ارتباط برقرار کنند. این سیستم از زمان کار آلن تورینگ در دهه 1950 میلادی برای مدت زیادی وجود داشته است.
اما در دهه 1980 بود که دستنوشتههای مدلهای NLP وارد حوزه کاری هوش مصنوعی شدند. از آن زمان، کامپیوترها حجم زیادی از دادهها را پردازش میکنند که همین آنالیز داده، باعث برپا شدن یک انقلاب بزرگ در روابط انسانی و ماشینها شده است.
شاید در زندگی روزمره خود متوجه آن نباشیم، اما بیان کلامی ما بسیار پیچیده و متنوع است. زبانها، قواعد، روابط معنایی، عامیانهها، نقلقولها، اختصارات و اشتباهات روزانه آنقدر زیاد است که حتی در برخی موارد خود ما انسانها هم یکدیگر را درک نمیکنیم.
در این شرایط قطعا کار کامپیوترها سختتر میشود، چون عملا زبان ما ساختاری ندارد که آنها بتوانند کلمات و عبارات ما را درک کنند. بنابراین نیاز دارند تا از سیستمهایی برای درک آن کمک بگیرند. یکی از این سیستمها که کارآیی فوقالعادهای هم دارد، NLP است که از تکنیکهایی مثل تفکیک مطالب نامربوط در متن، تصحیح غلطهای املایی، کاهش کلمات ریشهای یا مصدرها استفاده میکند.
از طریق این هوش مصنوعی میتوانیم محتوا را ساختار، بخشبندی و دستهبندی کنیم تا بفهمیم چطور بخشهای مختلف با هم ارتباط دارند. سپس پاسخی را به زبان طبیعی برای تعامل با کاربر تولید میکند که تا حد زیادی جواب کاربر را شرح میدهد.
NLPای مثل الگوریتم برت به شما اجازه میدهد که مثلا به دستگاه هوشمندی مثل الکسا بگویید: ((الکسا! موسیقی همهی اون روزا گذشت رضا صادقی رو پخش کن.)) و الکسا هم همان موسیقی را برای شما پخش کند.
NLP در حال حاضر در منابع متعددی مثل تعامل با چت باتها، ترجمه خودکار متنها، تجزیه و تحلیل احساسات در نظارت بر سوشال مدیا و حتی سیستم سرچ گوگل استفاده میشود.
نحوه عملکرد الگوریتم برت
یکی از تفاوتهای بزرگ گوگل با سایر سیستمهای پردازش زبان، ویژگی دو طرفه بودن آن است. بقیه سیستمها فقط یک طرفه هستند. یعنی فقط میتوانند کلمات را با کمک عباراتی که در سمت چپ یا راست آنها در متن قرار دارند، توصیف کنند.
گوگل برت در هر دو قطب کار میکند: متن سمت راست و چپ کلمه را تجزیه و تحلیل میکند. همین مسئله باعث میشود درک بسیار عمیقتری از روابط بین اصطلاحات و جملات به وجود بیاید.
تفاوت بعدی این است که Google BERT با بررسی یک مجموعه متن کوچک، یک مدل زبان را میسازد.
اما مدلهای دیگر برای این کار نیاز به مقادیر زیادی داده برای آموزش یادگیری رباتها دارد. رویکرد دو قطبی برت به شما کمک میکند با دادههای بسیار کمتر و دقت بیشتر الگوریتم و سیستم را به راه بیاندازید.
بنابراین زمانی که مدل الگوریتم برت نظر در یک مجموعه متنی منبع، مثل ویکی پدیا آموزش داده شد، از طریق ” fine tuning” به کار میافتد.
در این مرحله، برت با توجه ورودیها و خروجیهای الگوریتم، به سمت فرآیند پیدا کردن محتوای مناسب میرود.
“الگوریتم برت در بسیاری از برنامهها قابل استفاده است، پس کاربرد آن به طور گسترده در سیستم موتورهای جستجو تعریف میشود.”