من فی نفسه چیزی در برابر نمایش ندارم. من همانقدر برای هری پاتر و کودک نفرین شده بسیار هیجان زده هستم که هزاره بعدی که شبها از پنجره بیرون خیره شده بود و منتظر نامه آنها از هاگوارتز بود ، بسیار هیجان زده شد ، اما با آنچه می توان تصور کرد تحویل جغد ناکارآمد است گمراه شد. سرویس. فقط چیزی در مورد جادوی کتاب ها وجود دارد که دست نیافتنی به نظر می رسد - غیر قابل تکرار.
با توجه به گفته های من ، به افتخار نمایشنامه آینده ، سعی می کنم کمی از این جادو را بازسازی کنم.
مدل های زبانی جنبه ای اساسی در پردازش زبان طبیعی (NLP) هستند که سعی می کنند توزیع احتمالی را در دنباله های کلمات بیاموزند ، به گونه ای که - با توجه به سابقه متن قبلی - بتوانند جملات جدید ، یک کلمه در یک زمان ایجاد کنند. ، کاملا از ابتدا در دنیای واقعی ، آنها در همه چیز از تشخیص گفتار گرفته تا بازیابی اطلاعات استفاده می شوند. در دنیای ما ، آنها به ما در بازنویسی هری پاتر کمک می کنند.
بخش بعدی به بررسی اجمالی جادوی پشت شبکه های عصبی ، LSTM و جاسازی کلمات که ما را تشکیل می دهند ، می پردازد. مدل زبان ، و پس از آن ما مستقیماً وارد The Good Stuff می شویم.
من سعی می کنم این توضیحات را در سطح بالا و تا آنجا که ممکن است غیر فنی باشد ، بنابراین هرکسی که از قبل با این نظریه آشنایی دارد (یا علاقه ای به آن ندارد) می تواند با خیال راحت از این بخش صرف نظر کند.
یادگیری ماشینی 90 درصد از معجزات تکنولوژیکی را که در اطراف می بینید و می شنوید ، تقویت می کند. هر روز ، از جمله اتومبیل های خودران ، Siri ، تشخیص تقلب در کارت اعتباری ، موتورهای توصیه آمازون و Netflix ، و اخیراً حتی خود گوگل را نیز جستجو کنید. البته ، تقریباً 100٪ از این سیستم ها شامل مواردی فراتر از یادگیری ماشین می شود ، اما بعداً به آن می پردازیم. الگوریتمی که در اصل برای تقلید از مغز انسان طراحی شده است: سیگنال های ورودی ، سلول های عصبی که به این سیگنال ها واکنش نشان می دهند و خروجی هایی که اطلاعات را به سایر نورون ها منتقل می کند.
یک شبکه عصبی وانیلی. منبع: http: //cs231n.github.io،/neural-networks-1/در علوم کامپیوتر ، این به مجموعه ای از مقادیر ورودی ، یک یا چند لایه مخفی برای نگهداری محاسبات متوسط ، ترجمه می شود ، لایه خروجی و یک سری وزنه که هر نورون را از یک لایه به لایه دیگر متصل می کند. این وزنه ها ، که از داده ها توسط رایانه "آموخته می شود" (در فرایند آن وارد نمی شوم ، اما در اصل نسخه ای از حدس و بررسی + حساب است) ، قرار است اهمیت هر نورون را با احترام نشان دهد. تا در نهایت تصمیم درست را اعلام کند یادگیری عمیق ، که اخیراً با عنوان "آینده هوش مصنوعی" مورد توجه قرار گرفته است ، واقعاً شامل انواع مختلف شبکه عصبی اساسی با چندین لایه پنهان است.
بله ، می دانم. عمیق به معنای عمیق است - بسیاری از لایه های پنهان. خودشه. هر دوی ما می توانیم خودروهای خودران خود را بسازیم.تعدادی از محدودیت های مهم به عنوان مثال ، فقط می تواند با ورودی و خروجی با طول ثابت کار کند. با این حال ، تعداد زیادی از وظایف را نمی توان با آن محدودیت ها بیان کرد. برای مثال ترجمه ماشینی را در نظر بگیرید-چگونه باید جملات ورودی و خروجی با طول متغیر را به دو زبان مختلف در نظر بگیریم و آنها را در یک شبکه عصبی معمولی قرار دهیم؟
پاسخ: ما اینطور نیستیم. اینجاست که RNN وارد شده است.
RNN یا شبکه های عصبی مکرر برای رفع این نقص دقیق طراحی شده اند. توالی مدل RNN در اساسی ترین سطح خود: مجموعه ای از تصاویر ، صداها ، کلمات و غیره ، جایی که (1) ترتیب نمایش هر عنصر در سری اهمیت دارد و (2) محاسبه یکسان روی هر عنصر انجام می شود .
در نتیجه ، RNN دقیقاً شبیه یک شبکه عصبی معمولی است ، مگر با یک "حلقه" مستقل در لایه مخفی که محاسبه را برای هر عنصر تکرار می کند.
شبکه عصبی مکرر ، در طول زمان باز می شود (راست). X منبع: http://colah.github.io/posts/2015-08-Understanding-LSTMs/محاسبه نورون در هر مرحله نه تنها ورودی ها و وزنهای فوری را در نظر می گیرد ، بلکه تاریخچه ورودی ها و محاسبات گذشته ، به منظور تعیین مرحله منطقی بعدی. (اگر علاقمند هستید ، این دانشمندان MIT را که با پیشگیری از نظریه بیگ بنگ و دفتر ، مدل پیش بینی رفتار انسان را آموزش داده اند ، بررسی کنید. و فکر می کنید بعد از کار حوصله تان سر رفته است.)
با استفاده از RNN ، که می تواند در طول زمان "محو" شود تا محاسبات را در هر تکرار لایه (های) پنهان انجام دهد ، در نهایت می توانیم ساخت مدل زبانی خود را آغاز کنیم. آنچه من در واقع از آن استفاده کردم یک LSTM (حافظه کوتاه مدت بلند) RNN بود ، نوعی از مدل اصلی RNN که برخی از کاستی های اساسی آن را در برخورد با توالی های طولانی (به عنوان مثال شیب ناپدید شدن و انفجار) برطرف می کند. من قصد ندارم در اینجا به آنها بپردازم ، اما پست وبلاگ colah در مورد آنها کاملاً فوق العاده است. در اصل ، هر واحد توسط مجموعه ای از دروازه های "ورودی" ، "فراموش کردن" و "به روز رسانی" تنظیم می شود که به شبکه اجازه می دهد جریان اطلاعات را کنترل کند.
قبل از پرداختن به برخی از متن های سرگرم کننده که مدل زبان هری پاتر ایجاد کرده است ، می خواهم به طور مختصر در مورد یکی از بخشهای جالب پروژه صحبت کنم: جاسازی کلمات.
ایده ساده است. جمله ای را که می خواهیم به مدل خود وارد کنیم ، در نظر بگیرید: "هری از تخت بلند شد." برای اینکه دستگاه آن را به عنوان ورودی پردازش کند ، هر کلمه باید به نوعی معادل عددی منحصر به فرد کدگذاری شود. یک رویکرد ساده لوحانه این است که به سادگی تمام کلمات موجود در واژگان منبع را یک به یک شمارش کنید ، یعنی "هری" = 1 ، "got" = 2 و غیره. با این حال ، همانطور که می توانید تصور کنید ، این امر بسیاری از اطلاعات نحوی را حذف می کند. در مورد کلمات و روابط بین آنها با این رویکرد ، "هری" به همان اندازه از "رون" متمایز است که "هری" برای "پرواز" است.
راه حل؟ هر کلمه را در یک فضای بردار آموخته و با ابعاد بالا قرار دهید ، جایی که کلمات از نظر معنی به هم نزدیک هستند ، به همین ترتیب در فضای بردار نزدیک هستند. به عبارت دیگر ، کامپیوتر را آموزش دهید تا به طور محاسباتی معنی کلمات را درک کند.
این جاسازی ها عبارتند ازهمچنین توسط یک شبکه عصبی ، با استفاده از معماری CBOW (کیسه پیوسته کلمات) یا پرش از گرامر ، آموخته شده است و در هر صورت نتایج بسیار شگفت انگیزی به ما می دهند. به عنوان مثال ، حتی یک فرد ابتدایی قادر است معناشناسی روابط و کثرت جنسیت را به تصویر بکشد:
جاسازی کلمه در فضای بردار همانطور که در یک فضای کم بعدی تجسم شده است. منبع: http://datascientistdiary.blogspot.com/در مدل زبانی زیر ، هر کلمه از هفت رمان هری پاتر به یک جاسازی با ابعاد بالا تبدیل شد که به موازات پارامترها آموخته شد- یا وزنه - در حین تمرین.
اگر قسمت قبلی را رد کرده اید (یا به احتمال زیاد خواندن آن را شروع کرده اید و حوصله تان سر رفته است) ، در اینجا دوباره خواندن را شروع می کنید.
دو ویژگی خاص این قطعه از متن وجود داشت که یادگیری آن را بسیار مشکل می کرد:
… و…
بنابراین ... بله. همانطور که گفتم ، جی کی رولینگ به این زودی جایگزین نمی شود.
با توجه به مشکلاتی که در بالا ذکر کردم ، چند مورد وجود دارد که مدل بسیار خوب انجام داد:
(+) این سبک کلی نگارش را انتخاب کرد (البته بدون اینکه بتوانم واقعاً بنویسم). توزیع طول جمله ، طول پاراگراف ، ساختارهای گفتگو ، موجودیت ها و حتی نحوه معرفی و بسته شدن دیالوگ ("هرمیون با صراحت گفت" یا "با عصبی از هری پرسید") همه به درستی تکرار شده است.
(+) گرامر (نوعی) آموخته است. به طور خاص ، جملات-در حالی که غالباً از نظر معنایی مضحک هستند-به طور کلی بسیار نزدیک به نحو درست هستند (به عنوان مثال انتخاب کلمه اشتباه اما بخش صحیح گفتار). به به طور خاص ، این قسمت ایجاد شده را بررسی کنید:
به احساس عمومی و لحن پشت گذر توجه کنید ، و به کلماتی که به آن کمک می کنند توجه کنید. "صورت سرد و کم رنگ" ، "صدای خشن" ، "لرز" ، "صدای تکان دهنده" ، "وحشتناک" ، "دوست نداشتن زیاد" ، - همه آنها بسیار شوم ، درست است؟ به عبارت دیگر ، دستگاه یاد گرفته است که لحن خاصی از کلمات را حداقل تا حدی تفسیر کرده و حفظ کند.
البته از سوی دیگر ، مدل دارای چندین اشکال آشکار است: /p>
(-) بیشتر آن معنی ندارد. *Shrug*
(-) مدل حافظه بلند مدت قابل تشخیص ندارد. به این معنا که حتی وقتی جملات معنا پیدا می کنند ، برای تشکیل یک داستان دور هم جمع نمی شوند. در حالی که RNN ها از لحاظ نظری قادر به ساختن توالی هایی با هر طول هستند (اگرچه این مدل خاص در طول ورودی پنجاه کلمه محدود شده بود) ، حتی نوع LSTM نمی تواند حس طولانی مدت کافی برای ساختن "رویدادها" را به شیوه ای منسجم به تصویر بکشد. .
(-) مدل ضمایر و مقدمات را نمی فهمد. بسیاری از مسائل مربوط به "خود ارجاع" وجود دارد ، مانند:
داستان کوتاه: تولید خودکار متن سخت است.
جدا از دریافتاین پروژه برای تولید برخی از متن های بسیار خنده دار به سبک نویسندگان مشهور (به عنوان مثال وقتی در شکسپیر آموزش دیده بود ، همان مدل لورد ویلوبی را از لوسنتیو به عنوان "آقا ، الاغ مهربان من" یاد می کرد) ، این پروژه به عنوان یک مطالعه موردی خوب عمل می کند. برای برخی از موانع اساسی در هوش مصنوعی مدرن امیدوارم در پست بعدی با آنها آشنا شوم ، اما در عین حال ، کد این پروژه در اختیار شما قرار می گیرد ، که می توانید از آن برای تکرار مقدار بی نهایت متن نامفهوم هری پاتر در اوقات فراغت خود استفاده کنید.
تشکر فراوان از پست اصلی وبلاگ شرجیلوزیر و آندره کارپاتی در مورد این موضوع به عنوان الهام. برنامه نویسی مبارک و درود بر J. K. Rowling.
از خواندن آن لذت بردید؟ روی ❤ زیر کلیک کنید تا آن را به سایر خوانندگان علاقه مند توصیه کنید! > img src = "https://cdn-images-1.medium.com/max/426/1*Mro-phkgJv4rZQ223OYosA.jpeg">