درود به همه کسایی که دارن این رو میخونند.
احتمالا همه ما حداقل یک بار با واژه هوش مصنوعی برخورد کردیم و یه ایده هایی از این واژه رو داریم. اینجا قرار نیست بیایم راجع به هوش مصنوعی بحث کنیم، اینجا با یه اشاره ی کوچکی به یادگیری ماشین (Machine Learning) وارد بحث اصلی میشیم.
یادگیری ماشین کلا چیه؟ اگه تا حالا برنامه نویسی کرده باشین یا آشنا باشید با روند برنامه نوشتن حتی در حد خیلی مبتدی متوجه این موضوع شدین که برنامه شما یک منطقی رو اجرا میکنه و یک کاری رو انجام میده. معمولا اینطوریه که یک ورودی رو از اون منطق رد میکنه و به یک خروجی میرسه، حالا تو یادگیری ماشین اتفاقی که میافته اینطوریه که ما یه منطق رو معمولا دنبالش هستیم که دقییق نمیدونیم چیه یا انقدر پیچیده هستش که هزینه زیادی از ما میگیره، ولی از اونطرف ما هم ورودی و هم خروجی رو برای کلی چیز میدونیم چیه. یعنی چی اینی که گفتم؟ فرض کنیم ما میدونیم که این تصویری که داریم داخلش ماشین هست یا هواپیما یا مبل و خونه (این کلاس شی داخل تصویر رو ما میدونیم) ولی نحوه تشخیص دادن اینکه این چرا هواپیماست و چرا ماشینه، اگر بخواد به صورت سنتی پیاده سازی بشه هم خیلی زمان بر و هم خیلی هزینه بر هستش.
با منطق پشت یادگیری ماشین که ما از داده به منطق میرسیم و میتونیم باهاش مسائل رو حل کنیم رو باهاش اندکی آشنا شدیم.
این عکس زیر رو ببینید:
این تصویر سعی میکنه به ما مفهومی به اسم deep learning که به یادگیری عمیق یا یادگیری ژرف در فارسی ترجمه شده است رو برسونه. تو ماشین لرنینگ کلاسیک، کار استخراج ویژگی ها به عهده یک اوپراتور جدا بود، چندین سال قبل یه عده اومدن گفتن بذار یک شبکه عصبی رو برداریم و کلیییی داده بهش بدیم و همینطوری کلی توان محاسباتی در اختیارش بذاریم ببینیم چی میشه، خب نتیجه عالی شد و تقریبا این روز ها هر چیزی که از یادگیری ماشین به گوش ما میخوره (در سطح اپلیکیشن هایی که میبینیم) تقریبا پشتش یادگیری عمیق هستش.
** اگر با مفهوم شبکه عصبی و مدل ها آشنا نیستین، یا هر چیزی از این مباحث گفته شده در بخش بالا براتون گنگ بود سوال کنید یا یه طوری بهم بگین که مفصل توضیح بدمشون.
حالا میریم سراغ یه بحثی که اکثر کسایی که اینجا هستند باهاش آشنا هستن و بیشتر از من میدونند قطعا
کلی سال پیش ساتوشی اومد و یه چی ساخت به اسم بیتکوین و به همراه اون یک ساز و کاری رو معرفی کرد که به دو شخص بدون نیاز به رابط سومی(که معمولا به عنوان بانک شناخته میشه و یا یک رابطی مثل اسنپ و تپسی حتی) اجازه میداد که به صورت آنلاین دارایی انتقال بدن و باهم در ارتباط باشند با حضور ماینر هایی اون وسط که دیگه دست کمپانی و یه ارگان نبود و هر کسی میتونست با یک مقدار توان پردازشی این نقش رو به عهده بگیره.
این چیزها رو خیلییی زیاد بهتر از من میدونین و به این اعتقاد دارین احتمالا که بلاکچین یک چیز عجیب و شگفت انگیزیه و wow :)) من هم از اینطرف معتقدم که AI همچین ویژگی ای داره و چقدر چیز خفن و شگفتن انگیزیه واقعا و wow :)) و وقتی از دید کلان تری بهش نگاه میکنیم میبینیم که واقعا هم همینطوره و هم نظر شما درسته و هم نظر من و هیچ صنعتی تقریبا نیست که بلاکچین روش نتونه اثر بگذاره و با ویژگی هایی که داره درهای زیادی که تا حالا دیده هم نمیشدند رو به رومون باز کنه. یه پیشنهاد، چرا این دو تا رو با هم ترکیب نکنیم؟ خب میگین چطوری؟ خب راستش من نمیدونم چون دیدی از سمت بلاکچین ندارم به موضوع ولی امیدوارم جلوتر که میریم باهم به ایده های بهتری برسیم، حالا بیاین اندکی به صورت ابسترکت به این مفهوم نگاه کنیم، ترکیبشون چی میشه مثلا ؟
تو BLOCKCHAIN INNOVATION CONFERENCE 2019 ، شخصDavid Birch یک تاکی داشت که در اون به این نکته اشاره میکنه که نوشتن کد خوب واقعا سخته و تقریبا کسی نیست که کد درست و حسابی بتونه بزنه (با کمی اغراق احتمالا) و ارجاع داده شده بود به یک سری مقالات از ۲۰۱۷ و ۲۰۱۸ که در اون بررسی میکنه و به این نتیجه میرسه که آلردی هوش مصنوعی های تولید شده برای نوشتن کد بهتر از خود اون نویسنده ها میتونن کد ماشین لرنینگ تولید کنند، و تو یه جای دیگه اشاره شده بود که هوش مصنوعی خیلیی بهتر میتونه api بنویسه و به این همه مشکلاتی که ما داریم با نوشتن کد برنخوره، ایده چیه اینجا ؟؟ ایده ای که مطرح میشه اینه که بیایم و smart contract ها رو بدیم به هوش مصنوعی هایی که یاد گرفتند، بنویسند.
ممنون که خوندین این متن رو.
پ.ن. من واقعا تخصص زیادی تو زمینه بلاکچین و حوزه های مربوطه ندارم، من یک ریسرچر تو زمینه ماشین و دیپ لرینینگ هستم که دوست دارم از این دید به این دنیا نگاه کنم.
چاکر همتون هم هستم.