یادگیری قلقهای ریسرچ هوش با کورس CS197 هاروارد
عموما اگر هم صنعت و هم آکادمی را تجربه کرده باشید این تفاوت را مشاهده کردهاید که به نظر فضای صنعت فضای سرراستتری است و روند آغاز تا انجام یک تسک یا پروژه بسیار شفافتر و آشناتر است تا روند اجرای یک پژوهش در آکادمی. به علاوه در فضای صنعت نیروها به علت پیشزمینه مهندسی که دارند آشنا به رعایت یکسری قواعد و الگووارههایی هستند، حال آن که این قواعد و الگوها در سمت ریسرچ به صورت مدونی وجود ندارد. حال آقای Rajpurkar استادیار دانشگاه هاروارد آمده و یک کتاب الکترونیکی از درسی که تحت عنوان "تجربیات پژوهشی هوش مصنوعی"در هاروارد ارائه کرده، منتشر کرده است. در این کتاب راجع به مباحثی همچون استفاده درست و موثر از python و pytorch و lightning و HF و streamlite و vscode و git و ... توضیحات خوبی داده شده است. اما این کل ماجرا نیست، بلکه کتاب در ادامه صحبت کرده که چگونه میتوان به صورت سیستماتیک مقالات را خواند، ایدههای جدید زد، یک مقاله را ساختاربندی و منتشر کرد و اسلایدهای باکیفیتی ساخت. اما باز هم این تمام ماجرا نیست و راجپورکار برایمان راجع به نحوه مدیریت زمان و انرژیمان و همچنین نحوه مدیریت تعاملاتمان با استاد راهنما و یا سایر اعضای تیم نیز توضیح داده است. این منبع عالی را از دست نباید داد.
لینک کتاب:
https://docs.google.com/document/d/1uvAbEhbgS_M-uDMTzmOWRlYxqCkogKRXdbKYYT98ooc
#link
#coach
#course
@nlp_stuff
عموما اگر هم صنعت و هم آکادمی را تجربه کرده باشید این تفاوت را مشاهده کردهاید که به نظر فضای صنعت فضای سرراستتری است و روند آغاز تا انجام یک تسک یا پروژه بسیار شفافتر و آشناتر است تا روند اجرای یک پژوهش در آکادمی. به علاوه در فضای صنعت نیروها به علت پیشزمینه مهندسی که دارند آشنا به رعایت یکسری قواعد و الگووارههایی هستند، حال آن که این قواعد و الگوها در سمت ریسرچ به صورت مدونی وجود ندارد. حال آقای Rajpurkar استادیار دانشگاه هاروارد آمده و یک کتاب الکترونیکی از درسی که تحت عنوان "تجربیات پژوهشی هوش مصنوعی"در هاروارد ارائه کرده، منتشر کرده است. در این کتاب راجع به مباحثی همچون استفاده درست و موثر از python و pytorch و lightning و HF و streamlite و vscode و git و ... توضیحات خوبی داده شده است. اما این کل ماجرا نیست، بلکه کتاب در ادامه صحبت کرده که چگونه میتوان به صورت سیستماتیک مقالات را خواند، ایدههای جدید زد، یک مقاله را ساختاربندی و منتشر کرد و اسلایدهای باکیفیتی ساخت. اما باز هم این تمام ماجرا نیست و راجپورکار برایمان راجع به نحوه مدیریت زمان و انرژیمان و همچنین نحوه مدیریت تعاملاتمان با استاد راهنما و یا سایر اعضای تیم نیز توضیح داده است. این منبع عالی را از دست نباید داد.
لینک کتاب:
https://docs.google.com/document/d/1uvAbEhbgS_M-uDMTzmOWRlYxqCkogKRXdbKYYT98ooc
#link
#coach
#course
@nlp_stuff
Google Docs
Harvard CS197: AI Research Experiences – The Course Book
The Course Book Harvard CS197 AI Research Experiences GPT-3 · Large Language Models · VSCode · Git · Conda · Debugging · Linting · Reading AI papers · Literature Search · Hugging Face · Lightning · Vision Transformer · PyTorch · Autograd · Experiment Organization…
دورزدن تحریم Open-AI با نامبرلند
در چند هفتهای که گذشت فضای شبکههای مجازی پر شد از چتهایی که ملت با chat-gpt داشتند. با این که chat-gpt فعلا رایگانه اما دوستمون open-ai اجازه ساختن اکانت با شماره ایران رو نمیده و شما برای ساخت اکانت نیاز به شماره خارجی دارید. خوشبختانه سایت نامبرلند هم اومده و سرویس شماره مجازی یکبار مصرف رو برای open-ai اضافه کرده. میتونید تو نامبرلند شماره مجازی open-ai رو بخرید (ارزونترینش مال اندونزیه با ۶۵۰۰ فعلا) و بعد با همین شماره تو سایت open-ai ثبت نام کنید و با chat-gpt معاشرت کنید بعدش. البته به علت بار سنگینی که روی chat-gpt اومده تو چند وقت اخیر هر از گاهی میگه الان تحت فشارم بعدا بیاید سراغم. فقط حواستون باشه از سایت open-ai بعد ثبت نام لاگ اوت نکنید و ترجیحا هم با vpn بازش کنید (ما امتحان نکردیم ولی عقل سلیم همچین چیزی میگه )
اگر هم حال و حوصله پول دادن رو ندارید میتونید با youchat که رایگانه معاشرت کنید. شبیه chat-gpt هست و ارزش امتحان کردن رو داره.
پینوشت: این پست رپرتاژ و تبلیغی نیست. منتها این قدر سوال پرسیده شد که شما چطور به chat-gpt دسترسی دارید، گفتیم نحوه دسترسی رو به اشتراک بگذاریم.
آدرس نامبرلند:
numberland.ir
آدرس youChat:
https://you.com/search?q=who+are+you&tbm=youchat
@nlp_stuff
در چند هفتهای که گذشت فضای شبکههای مجازی پر شد از چتهایی که ملت با chat-gpt داشتند. با این که chat-gpt فعلا رایگانه اما دوستمون open-ai اجازه ساختن اکانت با شماره ایران رو نمیده و شما برای ساخت اکانت نیاز به شماره خارجی دارید. خوشبختانه سایت نامبرلند هم اومده و سرویس شماره مجازی یکبار مصرف رو برای open-ai اضافه کرده. میتونید تو نامبرلند شماره مجازی open-ai رو بخرید (ارزونترینش مال اندونزیه با ۶۵۰۰ فعلا) و بعد با همین شماره تو سایت open-ai ثبت نام کنید و با chat-gpt معاشرت کنید بعدش. البته به علت بار سنگینی که روی chat-gpt اومده تو چند وقت اخیر هر از گاهی میگه الان تحت فشارم بعدا بیاید سراغم. فقط حواستون باشه از سایت open-ai بعد ثبت نام لاگ اوت نکنید و ترجیحا هم با vpn بازش کنید (ما امتحان نکردیم ولی عقل سلیم همچین چیزی میگه )
اگر هم حال و حوصله پول دادن رو ندارید میتونید با youchat که رایگانه معاشرت کنید. شبیه chat-gpt هست و ارزش امتحان کردن رو داره.
پینوشت: این پست رپرتاژ و تبلیغی نیست. منتها این قدر سوال پرسیده شد که شما چطور به chat-gpt دسترسی دارید، گفتیم نحوه دسترسی رو به اشتراک بگذاریم.
آدرس نامبرلند:
numberland.ir
آدرس youChat:
https://you.com/search?q=who+are+you&tbm=youchat
@nlp_stuff
You
who are you 🔎 You.com | AI for workplace productivity
Leverage a personal AI search agent & customized recommendations with You.com's AI chatbot. Converse naturally and discover the power of AI. Chat now!
حس پیادهسازی GPT را ندارید؟ حق دارید، آموزش ندیدهاید.
نقل قولی منتسب به کنفوسیوس هست که میگه میشنوم و فراموش میکنم، میبینم و یادم میماند، انجام میدهم و میفهمم. در همین راستا، بارها پرسیده شده که ما فلان مقالات دیپ لرنینگی رو خوندیم ولی اون قدر که باید تاثیر این خوندن رو حس نمیکنیم و باید چه کنیم؟ پاسخ اینه که باید کد زد، پیادهسازی کرد و پروژه دستگرمی انجام داد تا رو ریل افتاد. اما اینجا یک مساله مرغ و تخممرغی به وجود میاد که آدم از کجا میتونه بفهمه اصلا چی رو باید بزنه و این زدنش درست بوده یا نه و اصلا چه جوری از همین کد زدنش یاد بگیره؟
آقامون آندره کارپثی از غولهای هوش مصنوعی، پس از جدایی از تسلا، در ایام فراغت خودش زده تو کار آموزش. از اونجایی که در چند وقت اخیر هم ترند ChatGPT در میون طیف وسیعتری از مردم (و نه صرفا هوشمصنوعیکارا) داغ شده ایشون ویدئویی دو ساعته ضبط کرده و در اون به آموختن پیادهسازی مدل GPT (البته از سایز کوچیکش در حدی که قابل آموزشدادن روی کولب باشه) و آموزشش روی دیتاست نوشتههای شکسپیر پرداخته. این ویدیو بسیار ارزشمنده و کارپثی از ب بسم الله که توکنایزیشن باشه تا اجزای معماری ترنسفورمر رو جز به جز با زبان شیوا و بیان جزییات لازم و حکمت وجودیشون توضیح داده و همزمان پیادهسازی هم میکنه و تازه در انتها هم گریزی به ChatGPT زده و در مورد اون هم صحبت کرده. دیدن این ویدیو رو حتما در اولویتهاتون قرار بدین و قطعا از صرف زمان برای اون ضرر نخواهید کرد.
در ضمن اقای کارپثی قبل از این هم یک سری ویدیو تحت عنوان Neural Networks: Zero to Hero تدارک دیده و در اون به توضیح و پیادهسازی چیزای پایهایتر مثل توابع فعالسازی و BackPropagation پرداخته و این ویدیو ساخت GPT اش هم به جزیی از همین پلی لیسته. حالا که تا اینجا اومدید این پلیلیست نابش رو هم از دست ندید.
ویدیو ساختن GPT از صفر با کارپثی:
https://www.youtube.com/watch?v=kCc8FmEb1nY
پلیلیست Neural Networks: Zero to Hero از کارپثی:
https://www.youtube.com/playlist?list=PLAqhIrjkxbuWI23v9cThsA9GvCAUhRvKZ
#coach
#watch
@nlp_stuff
نقل قولی منتسب به کنفوسیوس هست که میگه میشنوم و فراموش میکنم، میبینم و یادم میماند، انجام میدهم و میفهمم. در همین راستا، بارها پرسیده شده که ما فلان مقالات دیپ لرنینگی رو خوندیم ولی اون قدر که باید تاثیر این خوندن رو حس نمیکنیم و باید چه کنیم؟ پاسخ اینه که باید کد زد، پیادهسازی کرد و پروژه دستگرمی انجام داد تا رو ریل افتاد. اما اینجا یک مساله مرغ و تخممرغی به وجود میاد که آدم از کجا میتونه بفهمه اصلا چی رو باید بزنه و این زدنش درست بوده یا نه و اصلا چه جوری از همین کد زدنش یاد بگیره؟
آقامون آندره کارپثی از غولهای هوش مصنوعی، پس از جدایی از تسلا، در ایام فراغت خودش زده تو کار آموزش. از اونجایی که در چند وقت اخیر هم ترند ChatGPT در میون طیف وسیعتری از مردم (و نه صرفا هوشمصنوعیکارا) داغ شده ایشون ویدئویی دو ساعته ضبط کرده و در اون به آموختن پیادهسازی مدل GPT (البته از سایز کوچیکش در حدی که قابل آموزشدادن روی کولب باشه) و آموزشش روی دیتاست نوشتههای شکسپیر پرداخته. این ویدیو بسیار ارزشمنده و کارپثی از ب بسم الله که توکنایزیشن باشه تا اجزای معماری ترنسفورمر رو جز به جز با زبان شیوا و بیان جزییات لازم و حکمت وجودیشون توضیح داده و همزمان پیادهسازی هم میکنه و تازه در انتها هم گریزی به ChatGPT زده و در مورد اون هم صحبت کرده. دیدن این ویدیو رو حتما در اولویتهاتون قرار بدین و قطعا از صرف زمان برای اون ضرر نخواهید کرد.
در ضمن اقای کارپثی قبل از این هم یک سری ویدیو تحت عنوان Neural Networks: Zero to Hero تدارک دیده و در اون به توضیح و پیادهسازی چیزای پایهایتر مثل توابع فعالسازی و BackPropagation پرداخته و این ویدیو ساخت GPT اش هم به جزیی از همین پلی لیسته. حالا که تا اینجا اومدید این پلیلیست نابش رو هم از دست ندید.
ویدیو ساختن GPT از صفر با کارپثی:
https://www.youtube.com/watch?v=kCc8FmEb1nY
پلیلیست Neural Networks: Zero to Hero از کارپثی:
https://www.youtube.com/playlist?list=PLAqhIrjkxbuWI23v9cThsA9GvCAUhRvKZ
#coach
#watch
@nlp_stuff
YouTube
Let's build GPT: from scratch, in code, spelled out.
We build a Generatively Pretrained Transformer (GPT), following the paper "Attention is All You Need" and OpenAI's GPT-2 / GPT-3. We talk about connections to ChatGPT, which has taken the world by storm. We watch GitHub Copilot, itself a GPT, help us write…
مرا به بکاند چه حاجت که مست روی تو باشم
تا حالا بحث داغ این بود که در آینده نزدیک میشه برنامهنویسها رو دور ریخت و جاشون از هوش مصنوعی برای تولید کد استفاده کرد و ظهور ابزارهایی مثل copilot و gpt هم این اتفاق رو ممکن نشون میدادند. اما حالا این ایده یک لول جلوتر رفته، به این صورت که آقا اصلا چه نیازی به backend داریم بیاید جاش از مدلهای زبانی استفاده کنیم. در همین راستا یک عده اومدن در هکاتون Scale AI در این هفته ایده زدن و یک اپ ساده todo رو بدون پیادهسازی apiهای بکاندیاش و در واقع با جایگزین کردن GPT به جای بکاند پیادهسازی کردند و اتفاقا برنده جایزه اول این هکاتون هم شدند. در واقع مدلزبانی GPT در این پروژه به طور کامل جایگزین قسمت بکاند ماجرا شده و هم قسمت منطق و هم قسمت داده رو تونسته حل کنه و تازه هیچگونه training ای هم در کار نبوده. به صورت جزییتر اگر بخوایم توضیح بدیم ابتدا به GPT گفتند که مثلا This is a todo list app و بعد هم یک تیکه json رو به عنوان وضعیت دیتابیس به GPT ورودی دادند تا بفهمه که قالب دیتا چه شکلیه. در مرحله بعدی هر وقت نیاز به یک API Call بوده وضعیت فعلی و همچنین درخواست کاربر رو به GPT دادند و پاسخ GPT رو گرفتند. خوبی این اتفاق اینه که GPT که در حکم بکاند قرار گرفته هم در نحوه ذخیرهسازی داده و هم انجام اعمال منطقی بسیار منعطفه و میتونه طیف گستردهای از api call هایی که حتی بهشون فکر نشده رو هم انجام بده.
این پروژه با این که فعلا صرفا روی نیازمندی ساده todo اجرا گرفته شده ولی میتونه آغازی بر یک روند جالب برای آینده باشه. آیندهای که توش نیاز به دیتابیس و بکاند و حتی شاید زبانهای برنامهنویسی مثل پایتون نیست و یک مدل زبانی قدرتمند مثل GPT میتونه در حکم یک مغز متفکر تمامی نیازمندیهای درخواستی رو انجام بده.
لینک رپو:
https://github.com/TheAppleTucker/backend-GPT
لینک توییت توضیحات:
https://twitter.com/DYtweetshere/status/1617471632909676544
#link
@nlp_stuff
تا حالا بحث داغ این بود که در آینده نزدیک میشه برنامهنویسها رو دور ریخت و جاشون از هوش مصنوعی برای تولید کد استفاده کرد و ظهور ابزارهایی مثل copilot و gpt هم این اتفاق رو ممکن نشون میدادند. اما حالا این ایده یک لول جلوتر رفته، به این صورت که آقا اصلا چه نیازی به backend داریم بیاید جاش از مدلهای زبانی استفاده کنیم. در همین راستا یک عده اومدن در هکاتون Scale AI در این هفته ایده زدن و یک اپ ساده todo رو بدون پیادهسازی apiهای بکاندیاش و در واقع با جایگزین کردن GPT به جای بکاند پیادهسازی کردند و اتفاقا برنده جایزه اول این هکاتون هم شدند. در واقع مدلزبانی GPT در این پروژه به طور کامل جایگزین قسمت بکاند ماجرا شده و هم قسمت منطق و هم قسمت داده رو تونسته حل کنه و تازه هیچگونه training ای هم در کار نبوده. به صورت جزییتر اگر بخوایم توضیح بدیم ابتدا به GPT گفتند که مثلا This is a todo list app و بعد هم یک تیکه json رو به عنوان وضعیت دیتابیس به GPT ورودی دادند تا بفهمه که قالب دیتا چه شکلیه. در مرحله بعدی هر وقت نیاز به یک API Call بوده وضعیت فعلی و همچنین درخواست کاربر رو به GPT دادند و پاسخ GPT رو گرفتند. خوبی این اتفاق اینه که GPT که در حکم بکاند قرار گرفته هم در نحوه ذخیرهسازی داده و هم انجام اعمال منطقی بسیار منعطفه و میتونه طیف گستردهای از api call هایی که حتی بهشون فکر نشده رو هم انجام بده.
این پروژه با این که فعلا صرفا روی نیازمندی ساده todo اجرا گرفته شده ولی میتونه آغازی بر یک روند جالب برای آینده باشه. آیندهای که توش نیاز به دیتابیس و بکاند و حتی شاید زبانهای برنامهنویسی مثل پایتون نیست و یک مدل زبانی قدرتمند مثل GPT میتونه در حکم یک مغز متفکر تمامی نیازمندیهای درخواستی رو انجام بده.
لینک رپو:
https://github.com/TheAppleTucker/backend-GPT
لینک توییت توضیحات:
https://twitter.com/DYtweetshere/status/1617471632909676544
#link
@nlp_stuff
Telegram
stuff
مسابقهی رتبهبندی نتایج جستجوی ترب
این روزها یک مسابقهی درست و درمون رو شرکت ترب داره برگزار میکنه: «بهبود رنکینگ جستجو در ترب با استفاده از دیتای جستجوی کاربرها». اصطلاحا به این مسئله learning to rank گفته میشه. در این مسئله، اطلاعات سرچ کاربرها شامل عبارت جست و جو شده، نتایج نشان داده شده به اونها، کلیک کاربرها و همچنین نام و قیمت محصولات به شما داده شده و از شما خواسته شده که در ازای یک عبارت جست و جو و تعدادی محصول کاندید، رتبهبندی بهینه رو پیشنهاد بدید. بنابراین علاوه بر مسئله learning to rank با روشهای مختلف استخراج ویژگیهای متنی از محصولات سرو کار دارید.
شروع مسابقه از ۱۵ بهمن اتفاق افتاده و تا ۱۵ اسفند برای ثبتنام وقت دارید. یه سری جایزهی تپل هم گذاشتند. پس توصیه میکنیم این مسابقه رو شرکت کنید و خودتون رو به چالش بکشید!
لینک ثبت نام و توضیحات رویداد:
https://tdc.torob.com
پ.ن. اگر رویداد جوندار دیتایی مثل همین رویداد دارید، ندا بدید که روی کانال بگذاریم تا ملت بهره ببرند.
#other
@nlp_stuff
این روزها یک مسابقهی درست و درمون رو شرکت ترب داره برگزار میکنه: «بهبود رنکینگ جستجو در ترب با استفاده از دیتای جستجوی کاربرها». اصطلاحا به این مسئله learning to rank گفته میشه. در این مسئله، اطلاعات سرچ کاربرها شامل عبارت جست و جو شده، نتایج نشان داده شده به اونها، کلیک کاربرها و همچنین نام و قیمت محصولات به شما داده شده و از شما خواسته شده که در ازای یک عبارت جست و جو و تعدادی محصول کاندید، رتبهبندی بهینه رو پیشنهاد بدید. بنابراین علاوه بر مسئله learning to rank با روشهای مختلف استخراج ویژگیهای متنی از محصولات سرو کار دارید.
شروع مسابقه از ۱۵ بهمن اتفاق افتاده و تا ۱۵ اسفند برای ثبتنام وقت دارید. یه سری جایزهی تپل هم گذاشتند. پس توصیه میکنیم این مسابقه رو شرکت کنید و خودتون رو به چالش بکشید!
لینک ثبت نام و توضیحات رویداد:
https://tdc.torob.com
پ.ن. اگر رویداد جوندار دیتایی مثل همین رویداد دارید، ندا بدید که روی کانال بگذاریم تا ملت بهره ببرند.
#other
@nlp_stuff
همه ممکن است نشت کنند!
یکی از مهمترین بخشهای پایپلاین دیتا، نحوه صحیح تقسیمبندی دیتا به دادهی train و test است. نکات زیادی داره که مهمتریناش اینه که نباید نشتی داشته باشید؛ یعنی از دادهی آموزش نباید توی دادهی ولیدیشن و تست داشته باشید وگرنه میبینید متریکتون به شکل غیرواقعی خوب میشه. باز یکی دیگه از نکاتش اینه که قرار نیست توزیع داده آموزش و تست تفاوت زیادی کنند وگرنه میبینید که روی داده تست نتایجتون خیلی ضعیف میشه. یا اینکه قرار نیست هر جور که دوست دارید دادتون رو تقسیم کنید و گاهی مثلا اگر مساله با سری زمانی در ارتباطه، لازمه روی خط زمانی تقسیم کنید و گاهی لازمه شافل کنید و رندوم تقسیم کنید. نکات بیشتر و دقیقتری رو در فصل یک و دو کتاب hands on ml میتونید پیدا کنید.
شاید با خودتون فکر کنید خب اینکه خیلی راحته؛ ولی اینطور نیست. استاد پوروطنِ ما همیشه این مثل معروف رو میگفت که: شیطان در جزئیاته.
سال ۲۰۱۷ اندرو انگِ گولاخ و شرکا یک مقاله با عنوان CheXNet: Radiologist-Level Pneumonia Detection on Chest X-Rays with Deep Learning دادند (تریلی اسم مقاله رو نمیکشه). اونجا یه مدل CNNای ارائه دادند و روی صد هزار تا تصویر رادیولوژی از ۳۰ هزار تا بیمار آموزش دادند تا بتونند بیماری ذات الریه رو تشخیص بدن (اولا عظمت دیتا رو داشته باشید. ثانیا دقت کردید که چند تا تصویر برای یک بیمار وجود داشته). بعد اومدند این دیتا رو ۸۰ به ۲۰ بین آموزش و تست به صورت رندوم تقسیم کردند. چشمتون مشکل رو دید؟ اگر شما بیاید دیتا رو به صورت رندوم تقسیم کنید تصاویر یک بیمار میتونه توی هر دو تا دادهی ترین و تست باشه و مدل میتونه از فیچرهای مربوط به بیمار کلی استفاده کنه؛ حتی اگر این فیچرها مستقیما مربوط به خود بیماری ذات الریه نباشه. مثلا یک زخمی از عمل رو توی یه عکس آموزش میبینه و یاد میگیره این مربوط به کلاس اوله. بعد دیگه هر جا عین همون زخم رو ببینه زرتی میگه کلاس اوله و دیگه فکر نمیکنه. یعنی یه میانبر پیدا کرد. بعد از ۱۱ روز فهمیدند مشکل داره و اومدند این رو درست کردند و دوباره مقاله رو منتشر کردند. در عکس دوم ضمیمهشده به پست میتونید ببینید که جملهی there was 𝗻𝗼 𝗽𝗮𝘁𝗶𝗲𝗻𝘁 𝗼𝘃𝗲𝗿𝗹𝗮𝗽 between the sets رو در تصویر راست (نسخه اصلاح شده) نسبت به تصویر چپ (نسخه اولیه) اضافه کردند و نحوه تقسیم رو تغییر دادند.
حداقل دو تا درس از این موضوع میتونیم یاد بگیریم: اول. حواسمون به نشتی باشه چون همه ممکنه نشت کنیم. دوم. همه حتی اندرو انگ و شرکا هم ممکنه اشتباه کنند. پس فقط سعی کنیم یاد بگیریم، درستش کنیم و تکرار نکنیم. خجالت هم نداره.
لینک مقاله نسخه اول:
https://arxiv.org/abs/1711.05225v1
لینک مقاله نسخه اصلاح شده:
https://arxiv.org/abs/1711.05225
لینک توئیت توضیح این داستان:
https://twitter.com/svpino/status/1592140348905517056
پ.ن. شما هم اگر پست خوبی داشتید بفرستید تا به اسم خودتون توی کانال بذاریم.
#tweet
#handson
@nlp_stuff
یکی از مهمترین بخشهای پایپلاین دیتا، نحوه صحیح تقسیمبندی دیتا به دادهی train و test است. نکات زیادی داره که مهمتریناش اینه که نباید نشتی داشته باشید؛ یعنی از دادهی آموزش نباید توی دادهی ولیدیشن و تست داشته باشید وگرنه میبینید متریکتون به شکل غیرواقعی خوب میشه. باز یکی دیگه از نکاتش اینه که قرار نیست توزیع داده آموزش و تست تفاوت زیادی کنند وگرنه میبینید که روی داده تست نتایجتون خیلی ضعیف میشه. یا اینکه قرار نیست هر جور که دوست دارید دادتون رو تقسیم کنید و گاهی مثلا اگر مساله با سری زمانی در ارتباطه، لازمه روی خط زمانی تقسیم کنید و گاهی لازمه شافل کنید و رندوم تقسیم کنید. نکات بیشتر و دقیقتری رو در فصل یک و دو کتاب hands on ml میتونید پیدا کنید.
شاید با خودتون فکر کنید خب اینکه خیلی راحته؛ ولی اینطور نیست. استاد پوروطنِ ما همیشه این مثل معروف رو میگفت که: شیطان در جزئیاته.
سال ۲۰۱۷ اندرو انگِ گولاخ و شرکا یک مقاله با عنوان CheXNet: Radiologist-Level Pneumonia Detection on Chest X-Rays with Deep Learning دادند (تریلی اسم مقاله رو نمیکشه). اونجا یه مدل CNNای ارائه دادند و روی صد هزار تا تصویر رادیولوژی از ۳۰ هزار تا بیمار آموزش دادند تا بتونند بیماری ذات الریه رو تشخیص بدن (اولا عظمت دیتا رو داشته باشید. ثانیا دقت کردید که چند تا تصویر برای یک بیمار وجود داشته). بعد اومدند این دیتا رو ۸۰ به ۲۰ بین آموزش و تست به صورت رندوم تقسیم کردند. چشمتون مشکل رو دید؟ اگر شما بیاید دیتا رو به صورت رندوم تقسیم کنید تصاویر یک بیمار میتونه توی هر دو تا دادهی ترین و تست باشه و مدل میتونه از فیچرهای مربوط به بیمار کلی استفاده کنه؛ حتی اگر این فیچرها مستقیما مربوط به خود بیماری ذات الریه نباشه. مثلا یک زخمی از عمل رو توی یه عکس آموزش میبینه و یاد میگیره این مربوط به کلاس اوله. بعد دیگه هر جا عین همون زخم رو ببینه زرتی میگه کلاس اوله و دیگه فکر نمیکنه. یعنی یه میانبر پیدا کرد. بعد از ۱۱ روز فهمیدند مشکل داره و اومدند این رو درست کردند و دوباره مقاله رو منتشر کردند. در عکس دوم ضمیمهشده به پست میتونید ببینید که جملهی there was 𝗻𝗼 𝗽𝗮𝘁𝗶𝗲𝗻𝘁 𝗼𝘃𝗲𝗿𝗹𝗮𝗽 between the sets رو در تصویر راست (نسخه اصلاح شده) نسبت به تصویر چپ (نسخه اولیه) اضافه کردند و نحوه تقسیم رو تغییر دادند.
حداقل دو تا درس از این موضوع میتونیم یاد بگیریم: اول. حواسمون به نشتی باشه چون همه ممکنه نشت کنیم. دوم. همه حتی اندرو انگ و شرکا هم ممکنه اشتباه کنند. پس فقط سعی کنیم یاد بگیریم، درستش کنیم و تکرار نکنیم. خجالت هم نداره.
لینک مقاله نسخه اول:
https://arxiv.org/abs/1711.05225v1
لینک مقاله نسخه اصلاح شده:
https://arxiv.org/abs/1711.05225
لینک توئیت توضیح این داستان:
https://twitter.com/svpino/status/1592140348905517056
پ.ن. شما هم اگر پست خوبی داشتید بفرستید تا به اسم خودتون توی کانال بذاریم.
#tweet
#handson
@nlp_stuff
Telegram
stuff
و اکنون GPT-4
و سرانجام لحظاتی پیش Open-AI رسما انتشار مدل GPT-4 را تایید کرد. فعلا تحولات اخیر در رابطه با این مدل به صورت خلاصه وار اینه که:
- در تسکهای تستهای انسانی آکادمیک (مثل GRE) از مدلهای قبلی مثل GPT-3 بهتره و در خیلی از تسکها در صدکهای بالایی قرار داره که یعنی از بیش از نیمی از انسانها هم برتره. این رو به این معنا تفسیر کردند که این مدل تواناییهای Reasoning قابل توجهی داره.
- مولتی مداله، یعنی میتونه تصویر رو هم در کنار prompt ورودی بگیره و با توجه به اون پرامپت روی اون تصویر توضیحی بده. مثلا بهش میگید تو این عکس چه میبینی و میاد براتون توضیح میده. در خیلی از تسکای پرسش و پاسخ تصویری با این که دقتش به حد SOTA نمیرسه اما باز هم قابل قبوله و از مدلهای مولتی مدال قبلی بهتر داره نتیجه میگیره (وقتی میتونید ارزش این کار رو درک کنید که دقت کنید که به صورت Zero-Shot داره این کار رو انجام میده!)
- قابلیت شخصیسازی و فرمانپذیری سبک پاسخ دادن داره! در واقع این امکان وجود داره که شما با پیامهاتون به GPT بفهمونید که دوست دارید با چه سبکی بهتون پاسخ بده. یک مثال جالب خود Open-AI تو دموش گذاشته که به طرف میگه فرض کن سقراط هستی و در نقش معلم و هیچ وقت به دانش آموزات پاسخ رو نمیدی بلکه سعی میکنی با سوال پرسیدن اونها رو به جواب برسونی و بعد به طرز جالبی سعی کردن که باهاش یک معادله دو مجهولی رو حل کنند!
- همچنان با همون تسک ساده پیشبینی کلمه بعدی آموزش دیده اما با تاثیرپذیری از Chat-GPT اینجا هم اومدن و از RHLF برای فاینتیونکردن GPT-4 استفاده کردند.
برای توضیحات بیشتر اینجا را ببینید:
https://openai.com/research/gpt-4
@nlp_stuff
و سرانجام لحظاتی پیش Open-AI رسما انتشار مدل GPT-4 را تایید کرد. فعلا تحولات اخیر در رابطه با این مدل به صورت خلاصه وار اینه که:
- در تسکهای تستهای انسانی آکادمیک (مثل GRE) از مدلهای قبلی مثل GPT-3 بهتره و در خیلی از تسکها در صدکهای بالایی قرار داره که یعنی از بیش از نیمی از انسانها هم برتره. این رو به این معنا تفسیر کردند که این مدل تواناییهای Reasoning قابل توجهی داره.
- مولتی مداله، یعنی میتونه تصویر رو هم در کنار prompt ورودی بگیره و با توجه به اون پرامپت روی اون تصویر توضیحی بده. مثلا بهش میگید تو این عکس چه میبینی و میاد براتون توضیح میده. در خیلی از تسکای پرسش و پاسخ تصویری با این که دقتش به حد SOTA نمیرسه اما باز هم قابل قبوله و از مدلهای مولتی مدال قبلی بهتر داره نتیجه میگیره (وقتی میتونید ارزش این کار رو درک کنید که دقت کنید که به صورت Zero-Shot داره این کار رو انجام میده!)
- قابلیت شخصیسازی و فرمانپذیری سبک پاسخ دادن داره! در واقع این امکان وجود داره که شما با پیامهاتون به GPT بفهمونید که دوست دارید با چه سبکی بهتون پاسخ بده. یک مثال جالب خود Open-AI تو دموش گذاشته که به طرف میگه فرض کن سقراط هستی و در نقش معلم و هیچ وقت به دانش آموزات پاسخ رو نمیدی بلکه سعی میکنی با سوال پرسیدن اونها رو به جواب برسونی و بعد به طرز جالبی سعی کردن که باهاش یک معادله دو مجهولی رو حل کنند!
- همچنان با همون تسک ساده پیشبینی کلمه بعدی آموزش دیده اما با تاثیرپذیری از Chat-GPT اینجا هم اومدن و از RHLF برای فاینتیونکردن GPT-4 استفاده کردند.
برای توضیحات بیشتر اینجا را ببینید:
https://openai.com/research/gpt-4
@nlp_stuff
Openai
GPT-4
We’ve created GPT-4, the latest milestone in OpenAI’s effort in scaling up deep learning. GPT-4 is a large multimodal model (accepting image and text inputs, emitting text outputs) that, while less capable than humans in many real-world scenarios, exhibits…
پَچپَچ کردن تمام آن چیزی است که نیاز دارید.
اگر در این چند سال همراه ما بوده باشید یادتون هست که معماریهای ViT و MLP-Mixer سعی داشتند نشون بدن که برای به دست آوردن یک بازنمایی خوب از تصویر، لازم نیست که به کانولوشن مقید باشیم. ViT نشون داد که میشه با پچپچ کردن (یعنی این که تصویر رو به تکههای کوچیکتر تقسیم کردن) و بعد اعمال اتشنن و MLP پچمحور این بازنمایی خوب رو به دست آورد و MLP-Mixer هم گفت که به همون اتنشن هم نیازی نیست و میشه بعد از پچپچکردن با دو تا MLP که یکیشون Depth-wise و دیگری Patch-wise هست بازنمایی خوبی را یاد گرفت. (قبلا در https://t.iss.one/nlp_stuff/81 و https://t.iss.one/nlp_stuff/168 این دو معماری رو معرفی کرده بودیم)
حالا یک مقاله که در TMLR چاپ شده اومده و نویسندگانش گفتن که اصلا بحث اتنشن و MLP نیست. اون چیزی که باعث یادگیری بازنمایی خوب میشه خود patch کردن و استفاده از یک الگوی متقارن (یا به قول خودش isotropic) بین این پچهای مختلف هست. بر همین ایده، خودشون اومدن و یک مدل به نام Conv-Mixer ارائه دادن. ساختار و نحوه عملکرد این مدل این شکلیه که تصویر ورودی رو مثل ViT و MLP-Mixer میاد و پچپچ میکنه و روی هر پچی هم patch-embedding رو اعمال میکنه (اینجا برای این که ژانگولربازی دربیاره بگه من تو مدلم از هیچ MLP استفاده نکردم اومده و این فرآیند Patch Embedding رو هم با کانولوشن با استراید اندازه سایز پچ انجام داده). سپس در مرحله بعدی میاد و لایهای به نام Conv-Mixer رو به تعداد عمق d روی این پچها اعمال میکنه. اما هر کدوم از این لایههای ConvMixer چه شکلی هستند؟ هر لایه ConvMixer در واقع از دو کانولوشن تشکیل شده. یک کانولوشن که صرفا به صورت depth-wise روی فیچرهای حاضر در یک عمق مشخص کانال و در مکانهای مختلف اون عمق اعمال میشه و یک کانولوشن دیگه که اون هم به صورت صرفا spatial-wise بر روی فیچرهای حاضر در یک مکان مشخص و در عمقهای مختلف اون مکان اعمال میشه. در نهایت هم بعد از اعمال d تا از این لایهها میاد و با میانگینگیری از بازنمایی پچهای مختلف یک بازنمایی کلی برای تصویر به دست میاره. عکس کد این مدل رو پیوست کردیم که بسیار هم ساده است و اگر ببینیدش یحتمل بهتر بتونید بفهمید ماجرا رو.
بعد مقاله اومده و مدل Conv-Mixer و بقیه رقبا نظیر Resnet و ViT و MLP-Mixer رو روی دیتاست ImageNet-1k آموزش داده و نشون داده که Conv-Mixer نسبت به بقیه رقبا دقت بالاتری گرفته و البته تعداد پارامتر کمتر و سرعت Throughput بیشتری هم داره. نکته جالب این مقاله به نظر اینه که نشون داده که برای انتقال بازنمایی بین پچها لازم نیست که از فرآیند Self-Attention یا MLP-Mixer که هر دو فرآیندهای سنگینی به لحاظ حافظهای هستند و استفاده کنیم و به صورت global اطلاعات بین پچها رو انتقال بدیم. بلکه میشه با خود کانولوشن این فرآیند انتقال اطلاعات رو به صورت لوکال پیادهسازی کنیم. یحتمل این پایان کار نیست و باز هم در آینده مدلهای بیشتری خواهیم دید که سعی دارن با تغییر در معماری با معماریهای سابق نظیر ResNet و ViT و MLP-Mixer و البته Conv-Mixer رقابت کنند.
لینک مقاله:
https://openreview.net/pdf?id=rAnB7JSMXL
#read
#paper
@nlp_stuff
اگر در این چند سال همراه ما بوده باشید یادتون هست که معماریهای ViT و MLP-Mixer سعی داشتند نشون بدن که برای به دست آوردن یک بازنمایی خوب از تصویر، لازم نیست که به کانولوشن مقید باشیم. ViT نشون داد که میشه با پچپچ کردن (یعنی این که تصویر رو به تکههای کوچیکتر تقسیم کردن) و بعد اعمال اتشنن و MLP پچمحور این بازنمایی خوب رو به دست آورد و MLP-Mixer هم گفت که به همون اتنشن هم نیازی نیست و میشه بعد از پچپچکردن با دو تا MLP که یکیشون Depth-wise و دیگری Patch-wise هست بازنمایی خوبی را یاد گرفت. (قبلا در https://t.iss.one/nlp_stuff/81 و https://t.iss.one/nlp_stuff/168 این دو معماری رو معرفی کرده بودیم)
حالا یک مقاله که در TMLR چاپ شده اومده و نویسندگانش گفتن که اصلا بحث اتنشن و MLP نیست. اون چیزی که باعث یادگیری بازنمایی خوب میشه خود patch کردن و استفاده از یک الگوی متقارن (یا به قول خودش isotropic) بین این پچهای مختلف هست. بر همین ایده، خودشون اومدن و یک مدل به نام Conv-Mixer ارائه دادن. ساختار و نحوه عملکرد این مدل این شکلیه که تصویر ورودی رو مثل ViT و MLP-Mixer میاد و پچپچ میکنه و روی هر پچی هم patch-embedding رو اعمال میکنه (اینجا برای این که ژانگولربازی دربیاره بگه من تو مدلم از هیچ MLP استفاده نکردم اومده و این فرآیند Patch Embedding رو هم با کانولوشن با استراید اندازه سایز پچ انجام داده). سپس در مرحله بعدی میاد و لایهای به نام Conv-Mixer رو به تعداد عمق d روی این پچها اعمال میکنه. اما هر کدوم از این لایههای ConvMixer چه شکلی هستند؟ هر لایه ConvMixer در واقع از دو کانولوشن تشکیل شده. یک کانولوشن که صرفا به صورت depth-wise روی فیچرهای حاضر در یک عمق مشخص کانال و در مکانهای مختلف اون عمق اعمال میشه و یک کانولوشن دیگه که اون هم به صورت صرفا spatial-wise بر روی فیچرهای حاضر در یک مکان مشخص و در عمقهای مختلف اون مکان اعمال میشه. در نهایت هم بعد از اعمال d تا از این لایهها میاد و با میانگینگیری از بازنمایی پچهای مختلف یک بازنمایی کلی برای تصویر به دست میاره. عکس کد این مدل رو پیوست کردیم که بسیار هم ساده است و اگر ببینیدش یحتمل بهتر بتونید بفهمید ماجرا رو.
بعد مقاله اومده و مدل Conv-Mixer و بقیه رقبا نظیر Resnet و ViT و MLP-Mixer رو روی دیتاست ImageNet-1k آموزش داده و نشون داده که Conv-Mixer نسبت به بقیه رقبا دقت بالاتری گرفته و البته تعداد پارامتر کمتر و سرعت Throughput بیشتری هم داره. نکته جالب این مقاله به نظر اینه که نشون داده که برای انتقال بازنمایی بین پچها لازم نیست که از فرآیند Self-Attention یا MLP-Mixer که هر دو فرآیندهای سنگینی به لحاظ حافظهای هستند و استفاده کنیم و به صورت global اطلاعات بین پچها رو انتقال بدیم. بلکه میشه با خود کانولوشن این فرآیند انتقال اطلاعات رو به صورت لوکال پیادهسازی کنیم. یحتمل این پایان کار نیست و باز هم در آینده مدلهای بیشتری خواهیم دید که سعی دارن با تغییر در معماری با معماریهای سابق نظیر ResNet و ViT و MLP-Mixer و البته Conv-Mixer رقابت کنند.
لینک مقاله:
https://openreview.net/pdf?id=rAnB7JSMXL
#read
#paper
@nlp_stuff
Telegram
stuff
اسپارک؛ سهل و ممتنع!
اگر در حوزه تحلیل دیتا کار کرده باشید قطعا با ابزارهای data manipulation مانند pandas یا spark کار کردید. در این پست قصد داریم رشته بلاگی رو به شما معرفی کنیم که مفاهیم پایهای spark رو به شما یاد میده. فهم این مفاهیم کمک میکنه که کوعریهای بهتری در اسپارک بزنید و یا علت کند اجرا شدن برخی از کوعریها رو بفهمید. همونطور که میدونید spark در دوحالت cluster mode و client mode اجرا میشه که معمولا برای کارهای تحلیلی که خیلی پروداکشنی نیست از همین حالت client mode استفاده میکنیم که در واقع تنها کاری که برای بهره بردن از اسپارک باید انجام بدید نصب پکیج pyspark بر روی سیستمتون هست (درست مثل pandas). حسن بزرگ اسپارک اینه که محاسبات بر روی دیتای حجیم رو میتونه بین چندین executor بشکونه و محاسبات هر executor توی ram اجرا میشه و executorها نتایج کارشون رو با استفاده از ارتباط با driver به اشتراک میذارن تا نتیجه نهایی بدست بیاد (همونطور که متوجه شدید معماری کل اسپارک حالت master/slave داره) این وسط با کانفیگهایی که روی اسپارک انجام میدید میتونید حداکثر استفاده از ram رو تعیین کنید تا خیالتون راحت باشه که همه ram سیستم شما مورد استفاده قرار نگیره. این رشته بلاگ ابتدا مفاهیمی مانند driver و executor و scheduler رو توضیح داده و سپس به سراغ توضیح پارتیشنها رفته. پارتیشنها بخشهایی از دیتا هستند که میتونند به صورت توزیعشده باشند و یا به صورت موازی پردازش بر روی اونها انجام بگیره. در واقع هر executor در لحظه میتونه فقط یک پارتیشن از دیتا رو پردازش کنه ولی driver میتونه چندین executor رو به کار بگیره برای اینکه پردازش دیتا همزمان روی چندین پارتیشن انجام بشه.
این رشته بلاگ توضیح داده که برخی از transformationها یا کوعری ها حالت narrow دارند که به این معنیه که انجام اونها منجر به repartition شدن دیتا نمیشه مانند map یا filter ولی برخی دیگه wide transformation هستند که منجر به repartition شدن دیتا میشه مانند groupby که wide transformationها میتونند کوعریهای سنگینتری باشند. (همونطور که میدونید کوعریها در اسپارک lazy هستند به این معنی که در لحظه اجرا نمیشند بلکه مواقع خاصی مانند تبدیل نتایج به list و یا ذخیره کردن داده اجرا میشند که این به اسپارک اجازه میده از زنجیره کوعریها یک گراف محاسباتی بسازه و اون رو قبل از اجرا بهینه کنه)
در نهایت اومده و memory management در اسپارک رو توضیح داده که یکی از مهمترین و البته پیچیدهترین قسمتهای فهم اسپارک هست و گفته که memory management در سطوح مختلف قابل تعریفه مثل driver memory و یا executor memory و ...
توصیه میکنیم حتما این رشته بلاگ رو بخونید و سعی کنید از این به بعد به جای pandas از spark استفاده کنید که وقتی دیتای حجیم دیدید هول نکنید!
لینک رشته بلاگ:
https://luminousmen.com/post/hadoop-yarn-spark
#handsOn
#read
#blog
@nlp_stuff
اگر در حوزه تحلیل دیتا کار کرده باشید قطعا با ابزارهای data manipulation مانند pandas یا spark کار کردید. در این پست قصد داریم رشته بلاگی رو به شما معرفی کنیم که مفاهیم پایهای spark رو به شما یاد میده. فهم این مفاهیم کمک میکنه که کوعریهای بهتری در اسپارک بزنید و یا علت کند اجرا شدن برخی از کوعریها رو بفهمید. همونطور که میدونید spark در دوحالت cluster mode و client mode اجرا میشه که معمولا برای کارهای تحلیلی که خیلی پروداکشنی نیست از همین حالت client mode استفاده میکنیم که در واقع تنها کاری که برای بهره بردن از اسپارک باید انجام بدید نصب پکیج pyspark بر روی سیستمتون هست (درست مثل pandas). حسن بزرگ اسپارک اینه که محاسبات بر روی دیتای حجیم رو میتونه بین چندین executor بشکونه و محاسبات هر executor توی ram اجرا میشه و executorها نتایج کارشون رو با استفاده از ارتباط با driver به اشتراک میذارن تا نتیجه نهایی بدست بیاد (همونطور که متوجه شدید معماری کل اسپارک حالت master/slave داره) این وسط با کانفیگهایی که روی اسپارک انجام میدید میتونید حداکثر استفاده از ram رو تعیین کنید تا خیالتون راحت باشه که همه ram سیستم شما مورد استفاده قرار نگیره. این رشته بلاگ ابتدا مفاهیمی مانند driver و executor و scheduler رو توضیح داده و سپس به سراغ توضیح پارتیشنها رفته. پارتیشنها بخشهایی از دیتا هستند که میتونند به صورت توزیعشده باشند و یا به صورت موازی پردازش بر روی اونها انجام بگیره. در واقع هر executor در لحظه میتونه فقط یک پارتیشن از دیتا رو پردازش کنه ولی driver میتونه چندین executor رو به کار بگیره برای اینکه پردازش دیتا همزمان روی چندین پارتیشن انجام بشه.
این رشته بلاگ توضیح داده که برخی از transformationها یا کوعری ها حالت narrow دارند که به این معنیه که انجام اونها منجر به repartition شدن دیتا نمیشه مانند map یا filter ولی برخی دیگه wide transformation هستند که منجر به repartition شدن دیتا میشه مانند groupby که wide transformationها میتونند کوعریهای سنگینتری باشند. (همونطور که میدونید کوعریها در اسپارک lazy هستند به این معنی که در لحظه اجرا نمیشند بلکه مواقع خاصی مانند تبدیل نتایج به list و یا ذخیره کردن داده اجرا میشند که این به اسپارک اجازه میده از زنجیره کوعریها یک گراف محاسباتی بسازه و اون رو قبل از اجرا بهینه کنه)
در نهایت اومده و memory management در اسپارک رو توضیح داده که یکی از مهمترین و البته پیچیدهترین قسمتهای فهم اسپارک هست و گفته که memory management در سطوح مختلف قابل تعریفه مثل driver memory و یا executor memory و ...
توصیه میکنیم حتما این رشته بلاگ رو بخونید و سعی کنید از این به بعد به جای pandas از spark استفاده کنید که وقتی دیتای حجیم دیدید هول نکنید!
لینک رشته بلاگ:
https://luminousmen.com/post/hadoop-yarn-spark
#handsOn
#read
#blog
@nlp_stuff
Blog | iamluminousmen
Cluster Managers for Apache Spark: from YARN to Kubernetes
Uncover the mechanics of Apache Spark's cluster managers, from YARN to Kubernetes. Learn how to optimize data processing with this in-depth exploration.
پیشرفت بس است، متوقفش کنید!
خبر جدید این که جمعی از دانشمندان، صاحبان فناوری و علاقهمندان به هوش مصنوعی (از بنجیو گرفته تا ایلان ماسک و گری مارکوس و حتی بنیانگذار stable-diffusion) با انتشار نامهای سرگشاده با ابراز نگرانی از بابت پیشرفت سریع هوش مصنوعی، از آزمایشگاههای هوش مصنوعی دنیا خواستهاند که آموزش دادن مدلهای هوش مصنوعی قویتر از GPT-4 را به مدت حداقل ۶ ماه متوقف کنند. این دوستان در این نامه گفتهاند که با این که هوش مصنوعی میتونه بشر رو وارد دوره جدیدی از تاریخ تمدنش کنه اما در صورتی که برنامهریزی صحیحی برای نحوه مدیریت هوش مصنوعی صورت نگیره این پدیده به عکس میتونه موجب بروز رخدادهای سیاهی بشه. همونطور که در طی چند وقت اخیر شاهد رقابتی دیوانهکننده میان شرکتهای غول بزرگ برای آموزش مدلهای بزرگ و بهتر هستیم و البته حاصل این رقابت ظهور مدلهای بسیار هوشمندی نظیر GPT هست که حتی سازندگان اون هم نمیتونن نحوه بروز هوشمندیش رو درک، پیشبینی و یا کنترلش کنند.
در بخش دیگهای از این نامه سوالهای جالبی مطرح شده. آیا ما باید تمامی مشاغل را اتومات و ماشینی کنیم؟ آیا باید کورکورانه به سمت ایجاد هوش مصنوعیهایی حرکت کنیم که در نهایت ممکن است جایگزین تمدن انسانی ما شوند؟ این دوستان نوشتهاند که توسعه هوش مصنوعی مسالهای نیست که فقط مربوط به توسعهدهندگان این حوزه باشد و کل جامعه بشری را در بر میگیرد. بنابراین از آزمایشگاههای هوش مصنوعی دنیا خواستهاند که آموزش مدلی قدرتمندتر از GPT-4 را به مدت حداقل ۶ ماه متوقف کنند و نکته جالب این که گفتهاند اگر این توقف امکانپذیر نباشد در این صورت دولتها باید وارد عمل شده و این توقف را اعمال کنند.
این دوستان سپس نوشتهاند که بعد از اعمال توقف، از این مکث برای طراحی و اجرای مجموعهای از پروتکلهای ایمنی مشترک برای توسعه هوش مصنوعی استفاده کرد. در ادامه تحقیق و توسعه هوش مصنوعی باید بر ساختن سیستمهای دقیقتر، ایمنتر، قابلتفسیرپذیرتر، شفافتر و همسوتر متمرکز شود. همچنین به صورت موازی، توسعهدهندگان هوش مصنوعی بایستی که به دنبال ایجاد رگولاتوریهایی برای حل بعضی چالشهای استفاده از هوش مصنوعی باشند. برای مثال وضع یک واترمارکینگ مشخص برای تشخیص آثار هوش مصنوعی از هوش واقعی، نظارت و ردیابی سیستمهای هوش مصنوعی و همچنین تلاش برای مقابله با اخلالات ناشی از سواستفادههای هوش مصنوعی در مسائل اقتصای و سیاسی از جمله این مسائلند.
این که چرا در این بحبوحه افراد بزرگ و معروفی این نامه عجیب را منتشر کردهاند خود سوال بزرگی است اما هر کدام از این افراد احتمالا با انگیزههای متفاوتی از محتوای این نامه حمایت کردهاند. بعضی انگیزههای محتمل این موارد هستند:
- نزدیکشدن به نقطه عطف هوش مصنوعی صنعتی: همانطور که شاهد هستیم اگر قبل از این در هوش مصنوعی آکادمی سعی میکرد تا با صنعت رقابت کند اما سطح رقابت اکنون به حدی رسیده است که گوگل نیز توانایی رقابت با Open-AI را ندارد. همچنین شایعاتی وجود دارد که Open-AI در حال آموزش دادن مدل GPT-5 است. با توجه به سیاستهای مخفیانه این شرکت این امکان وجود دارد که روند تحولات هوش مصنوعی از دست سایر بازیگران خارج شده و به یک مونوپلی ترسناک تبدیل شود. (حال آن که ما الان هم واقعا نمیدانیم آیا Open-AI مدلی هوشمندتر از GPT را آموزش داده یا خیر!)
- نگرانیهای واقعی بابت ریسکها و احتمال بروز فاجعههای اجتماعی: ما اکنون با تعداد زیادی مدلهای هوش مصنوعی در مودالهای مختلف نظیر تصویر و متن و ... مواجه هستیم. عدم توجه به خطرات و ریسکهای آن میتواند منجر به شرایط پیشبینینشده ناخواسته شود. از تولید محتواهای مستهجن گرفته تا احتمال جانشینی عوامل انسانی با عوامل هوش مصنوعی و بروز موج بیکاری میتواند تنها بخشی از این خطرات پیشبینیناشده باشد.
- خوابیدن هایپ هوش مصنوعی یا حتی تغییر مسیر رشد آن: هوش مصنوعی تا به امروز به صورت چراغ خاموش مشغول حرکت و رشد بوده است، اما در چند سال اخیر و مخصوصا بعد از انتشار chat-gpt توجه طیف زیادی از مردم عامه به آن جلب شد (خودتان در توییتر فارسی شاهد آن هستید!) در این بیان بسیاری از مردم بدون داشتن دانش خاصی از هوش مصنوعی توانستند چالشهای chat-gpt را کشف کنند. ادامه وضع فعلی در مسیر پیشرفت هوش مصنوعی یا میتواند منجر به بدبینشدن جامعه نسبت به آن و خوابیدن هایپ آن و واردشدن هوش به زمستانی دیگر شود یا این که توسعه کورکورانه با نیت آموزش مدل بزرگتر میتواند باعث خارج شدن مسیر تحقیقات دانشمندان هوش مصنوعی از چالشهای اصلیتر و واردشدن تمرکز و انرژی آنها بر رقابت بیهوده برای مدلهای بزرگتر و بزرگتر شود.
لینک نامه:
https://futureoflife.org/open-letter/pause-giant-ai-experiments/
#read
#news
@nlp_stuff
خبر جدید این که جمعی از دانشمندان، صاحبان فناوری و علاقهمندان به هوش مصنوعی (از بنجیو گرفته تا ایلان ماسک و گری مارکوس و حتی بنیانگذار stable-diffusion) با انتشار نامهای سرگشاده با ابراز نگرانی از بابت پیشرفت سریع هوش مصنوعی، از آزمایشگاههای هوش مصنوعی دنیا خواستهاند که آموزش دادن مدلهای هوش مصنوعی قویتر از GPT-4 را به مدت حداقل ۶ ماه متوقف کنند. این دوستان در این نامه گفتهاند که با این که هوش مصنوعی میتونه بشر رو وارد دوره جدیدی از تاریخ تمدنش کنه اما در صورتی که برنامهریزی صحیحی برای نحوه مدیریت هوش مصنوعی صورت نگیره این پدیده به عکس میتونه موجب بروز رخدادهای سیاهی بشه. همونطور که در طی چند وقت اخیر شاهد رقابتی دیوانهکننده میان شرکتهای غول بزرگ برای آموزش مدلهای بزرگ و بهتر هستیم و البته حاصل این رقابت ظهور مدلهای بسیار هوشمندی نظیر GPT هست که حتی سازندگان اون هم نمیتونن نحوه بروز هوشمندیش رو درک، پیشبینی و یا کنترلش کنند.
در بخش دیگهای از این نامه سوالهای جالبی مطرح شده. آیا ما باید تمامی مشاغل را اتومات و ماشینی کنیم؟ آیا باید کورکورانه به سمت ایجاد هوش مصنوعیهایی حرکت کنیم که در نهایت ممکن است جایگزین تمدن انسانی ما شوند؟ این دوستان نوشتهاند که توسعه هوش مصنوعی مسالهای نیست که فقط مربوط به توسعهدهندگان این حوزه باشد و کل جامعه بشری را در بر میگیرد. بنابراین از آزمایشگاههای هوش مصنوعی دنیا خواستهاند که آموزش مدلی قدرتمندتر از GPT-4 را به مدت حداقل ۶ ماه متوقف کنند و نکته جالب این که گفتهاند اگر این توقف امکانپذیر نباشد در این صورت دولتها باید وارد عمل شده و این توقف را اعمال کنند.
این دوستان سپس نوشتهاند که بعد از اعمال توقف، از این مکث برای طراحی و اجرای مجموعهای از پروتکلهای ایمنی مشترک برای توسعه هوش مصنوعی استفاده کرد. در ادامه تحقیق و توسعه هوش مصنوعی باید بر ساختن سیستمهای دقیقتر، ایمنتر، قابلتفسیرپذیرتر، شفافتر و همسوتر متمرکز شود. همچنین به صورت موازی، توسعهدهندگان هوش مصنوعی بایستی که به دنبال ایجاد رگولاتوریهایی برای حل بعضی چالشهای استفاده از هوش مصنوعی باشند. برای مثال وضع یک واترمارکینگ مشخص برای تشخیص آثار هوش مصنوعی از هوش واقعی، نظارت و ردیابی سیستمهای هوش مصنوعی و همچنین تلاش برای مقابله با اخلالات ناشی از سواستفادههای هوش مصنوعی در مسائل اقتصای و سیاسی از جمله این مسائلند.
این که چرا در این بحبوحه افراد بزرگ و معروفی این نامه عجیب را منتشر کردهاند خود سوال بزرگی است اما هر کدام از این افراد احتمالا با انگیزههای متفاوتی از محتوای این نامه حمایت کردهاند. بعضی انگیزههای محتمل این موارد هستند:
- نزدیکشدن به نقطه عطف هوش مصنوعی صنعتی: همانطور که شاهد هستیم اگر قبل از این در هوش مصنوعی آکادمی سعی میکرد تا با صنعت رقابت کند اما سطح رقابت اکنون به حدی رسیده است که گوگل نیز توانایی رقابت با Open-AI را ندارد. همچنین شایعاتی وجود دارد که Open-AI در حال آموزش دادن مدل GPT-5 است. با توجه به سیاستهای مخفیانه این شرکت این امکان وجود دارد که روند تحولات هوش مصنوعی از دست سایر بازیگران خارج شده و به یک مونوپلی ترسناک تبدیل شود. (حال آن که ما الان هم واقعا نمیدانیم آیا Open-AI مدلی هوشمندتر از GPT را آموزش داده یا خیر!)
- نگرانیهای واقعی بابت ریسکها و احتمال بروز فاجعههای اجتماعی: ما اکنون با تعداد زیادی مدلهای هوش مصنوعی در مودالهای مختلف نظیر تصویر و متن و ... مواجه هستیم. عدم توجه به خطرات و ریسکهای آن میتواند منجر به شرایط پیشبینینشده ناخواسته شود. از تولید محتواهای مستهجن گرفته تا احتمال جانشینی عوامل انسانی با عوامل هوش مصنوعی و بروز موج بیکاری میتواند تنها بخشی از این خطرات پیشبینیناشده باشد.
- خوابیدن هایپ هوش مصنوعی یا حتی تغییر مسیر رشد آن: هوش مصنوعی تا به امروز به صورت چراغ خاموش مشغول حرکت و رشد بوده است، اما در چند سال اخیر و مخصوصا بعد از انتشار chat-gpt توجه طیف زیادی از مردم عامه به آن جلب شد (خودتان در توییتر فارسی شاهد آن هستید!) در این بیان بسیاری از مردم بدون داشتن دانش خاصی از هوش مصنوعی توانستند چالشهای chat-gpt را کشف کنند. ادامه وضع فعلی در مسیر پیشرفت هوش مصنوعی یا میتواند منجر به بدبینشدن جامعه نسبت به آن و خوابیدن هایپ آن و واردشدن هوش به زمستانی دیگر شود یا این که توسعه کورکورانه با نیت آموزش مدل بزرگتر میتواند باعث خارج شدن مسیر تحقیقات دانشمندان هوش مصنوعی از چالشهای اصلیتر و واردشدن تمرکز و انرژی آنها بر رقابت بیهوده برای مدلهای بزرگتر و بزرگتر شود.
لینک نامه:
https://futureoflife.org/open-letter/pause-giant-ai-experiments/
#read
#news
@nlp_stuff
Future of Life Institute
Pause Giant AI Experiments: An Open Letter - Future of Life Institute
We call on all AI labs to immediately pause for at least 6 months the training of AI systems more powerful than GPT-4.
قلب چت جیپیتی: هوش مصنوعی با فیدبکهای واقعی
قبلا در این پست (https://t.iss.one/nlp_stuff/313) به توضیح مختصری از داستان ChatGPT پرداخته بودیم.
حالا در یک بلاگ پست قصد داریم قلب آموزش این مدل یعنی Reinforcement Learning from Human Preferences رو توضیح بدیم.
لطفا با بقیه هم به اشتراک بذارید.
لینک پست ویرگول:
https://virgool.io/overfit/rlhf-vkpgfist80nt
لینک مقاله:
https://arxiv.org/abs/1706.03741
#read
#blog
@nlp_stuff
قبلا در این پست (https://t.iss.one/nlp_stuff/313) به توضیح مختصری از داستان ChatGPT پرداخته بودیم.
حالا در یک بلاگ پست قصد داریم قلب آموزش این مدل یعنی Reinforcement Learning from Human Preferences رو توضیح بدیم.
لطفا با بقیه هم به اشتراک بذارید.
لینک پست ویرگول:
https://virgool.io/overfit/rlhf-vkpgfist80nt
لینک مقاله:
https://arxiv.org/abs/1706.03741
#read
#blog
@nlp_stuff
Telegram
stuff
مدل HuggingGPT، مدلی با مغز GPT و بازوی HuggingFace
همانطور که خودتون هم میبینید و میشنوید ChatGPT همه جا رو در نوردیده و طیف مختلف و وسیعی از وظایف مختلف رو میتونه بهتر از انسان انجام بده. با وجود این همه قدرت مدلهای زبانی، اما این مدلها محدودیتهایی هم دارند. مثلا صرفا به مسائلی که ورودی و خروجیشون متنی هستند محدود هستند (ممکنه بگید GPT4 مدل مولتی موداله بله اما GPT4 اولا فقط میتونه در ورودی تصویر بگیره و ثانیا اگر بخواد تصویر خروجی بده باید تحت کدی مثل tikz این کار رو بکنه که کیفیت عکسهاش اصلا اون چیزی که در نظر هست نیست). محدودیت دیگه این که در سناریوهای دنیای واقعی که نیازمند شکستن وظیفه به چندزیروظیفه هست هم عملکرد کاملی ندارند و البته در بعضی مسائل خاص متنی هم حتی نسبت به مدلهای اکسپرت عملکرد پایینتری دارند. حالا یک عده چینی از دانشگاه zhejiang ایدهای برای حل این محدودیتها به سرشون زده و اون رو با نام HuggingGPT پیاده کردند. شهود این ایده این شکلیه که بیایم از chat-gpt به عنوان مغز و یک جور کنترلگر و از مدلهای حاضر در هاب هاگینگفیس در حکم بازوان اجرایی متخصص استفاده کنیم. در این صورت میتونیم هم از قدرت منطقی gpt استفاده کنیم و هم این که تسکهایی که gpt نمیتونه اجراشون کنه (مثل تسکهای تصویری و صوتی) رو با استفاده از مدلهای متخصص حاضر بر روی HuggingFace بتونیم انجام بدیم.
این مدل به صورت کلی چهار بخش Task Planning و Model Selection و Task Execution و Response Generation دارد. روال کار هم به این صورته که کاربر درخواستش رو به مدل میده و مدل طی یک پایپلاین با کمک این چهار بخش درخواست کاربر رو انجام میده. در Task Planning درخواست کاربر ورودی گرفته میشه و به ChatGPT داده میشه. در این جا chatgpt وظیفه داره منظور این درخواست کاربر رو بفهمه و اون رو به زیروظایف کوچکتر بشکنه و همچنین ترتیب اجرای این زیروظایف و ورودی و خروجی اونها رو مشخص کنه. در گام بعدی یا Model Selection سپس هر کدوم از این زیروظایف و مشخصات مدلهای حاضر بر روی هاب هاگینگفیس به chatgpt داده میشن و chatgpt تصمیم میگیره که برای هر یک از این زیروظایف از چه مدلی میشه استفاده کرد. سپس در مرحله سوم یا Task Execution، هر یک از این زیروظایف توسط مدلهای مشخص شده اجرا میشن و البته تحت ترتیبی که تو مرحله یک مشخص شده به هم وصل میشن و ورودی و خروجیهای همدیگر رو فراهم میکنند. در گام آخر یا Repsonse Generation هم دوباره خروجیهای مرحله سوم به ChatGPT داده میشن و ChatGPT با جمعبندی این خروجیها، خروجی نهایی مدل رو آماده میکنه. برای فهم بهتر میتونید تصاویر پیوست شده رو مشاهده کنید. یک سری آزمایش هم اومدند و روی این مدل انجام دادند و نشون دادند که میتونه وظایف خیلی پیچیدهای که نیازمند ترکیب تواناییهای تصویری و صوتی و متنی هست رو انجام بده. نکته واجب به ذکر اینه که برای این که ChatGPT بفهمه هر یک از مراحل بالا رو باید انجام بده هم از In-context Learning استفاده کردند، یعنی این که نمونه ورودیها و خروجیها رو در prompt ورودی به ChatGPT میدن و GPT خودش میفهمه باید چه جوری اوستا کنه قضیه رو.
قبلا در این پست (https://t.iss.one/nlp_stuff/318) هم راجع به یک کیس جالب دیگه که از LLM به عنوان حتی بکاند استفاده کرده بود صحبت کرده بودیم. به نظر میرسه با قدرتگیری LLMها در آینده نزدیک شاهد خیزش ترندی خواهیم بود که سعی میشه تا از اونها در حکم LLM as App یا حتی LLM as Everything استفاده بشه. آینده جذابی پیش روی محصولات این حوزه است. کسی چه میداند، شاید دنیای مهندسی نرمافزار بعد از LLM ها به شدت تکانده شود.
لینک مقاله:
https://arxiv.org/abs/2303.17580
پینوشت: با به اشتراکگذاری مطالبی که از آنها لذت میبرید، به بقیه هم این لذت رو هدیه بدید.
#read
#paper
@nlp_stuff
همانطور که خودتون هم میبینید و میشنوید ChatGPT همه جا رو در نوردیده و طیف مختلف و وسیعی از وظایف مختلف رو میتونه بهتر از انسان انجام بده. با وجود این همه قدرت مدلهای زبانی، اما این مدلها محدودیتهایی هم دارند. مثلا صرفا به مسائلی که ورودی و خروجیشون متنی هستند محدود هستند (ممکنه بگید GPT4 مدل مولتی موداله بله اما GPT4 اولا فقط میتونه در ورودی تصویر بگیره و ثانیا اگر بخواد تصویر خروجی بده باید تحت کدی مثل tikz این کار رو بکنه که کیفیت عکسهاش اصلا اون چیزی که در نظر هست نیست). محدودیت دیگه این که در سناریوهای دنیای واقعی که نیازمند شکستن وظیفه به چندزیروظیفه هست هم عملکرد کاملی ندارند و البته در بعضی مسائل خاص متنی هم حتی نسبت به مدلهای اکسپرت عملکرد پایینتری دارند. حالا یک عده چینی از دانشگاه zhejiang ایدهای برای حل این محدودیتها به سرشون زده و اون رو با نام HuggingGPT پیاده کردند. شهود این ایده این شکلیه که بیایم از chat-gpt به عنوان مغز و یک جور کنترلگر و از مدلهای حاضر در هاب هاگینگفیس در حکم بازوان اجرایی متخصص استفاده کنیم. در این صورت میتونیم هم از قدرت منطقی gpt استفاده کنیم و هم این که تسکهایی که gpt نمیتونه اجراشون کنه (مثل تسکهای تصویری و صوتی) رو با استفاده از مدلهای متخصص حاضر بر روی HuggingFace بتونیم انجام بدیم.
این مدل به صورت کلی چهار بخش Task Planning و Model Selection و Task Execution و Response Generation دارد. روال کار هم به این صورته که کاربر درخواستش رو به مدل میده و مدل طی یک پایپلاین با کمک این چهار بخش درخواست کاربر رو انجام میده. در Task Planning درخواست کاربر ورودی گرفته میشه و به ChatGPT داده میشه. در این جا chatgpt وظیفه داره منظور این درخواست کاربر رو بفهمه و اون رو به زیروظایف کوچکتر بشکنه و همچنین ترتیب اجرای این زیروظایف و ورودی و خروجی اونها رو مشخص کنه. در گام بعدی یا Model Selection سپس هر کدوم از این زیروظایف و مشخصات مدلهای حاضر بر روی هاب هاگینگفیس به chatgpt داده میشن و chatgpt تصمیم میگیره که برای هر یک از این زیروظایف از چه مدلی میشه استفاده کرد. سپس در مرحله سوم یا Task Execution، هر یک از این زیروظایف توسط مدلهای مشخص شده اجرا میشن و البته تحت ترتیبی که تو مرحله یک مشخص شده به هم وصل میشن و ورودی و خروجیهای همدیگر رو فراهم میکنند. در گام آخر یا Repsonse Generation هم دوباره خروجیهای مرحله سوم به ChatGPT داده میشن و ChatGPT با جمعبندی این خروجیها، خروجی نهایی مدل رو آماده میکنه. برای فهم بهتر میتونید تصاویر پیوست شده رو مشاهده کنید. یک سری آزمایش هم اومدند و روی این مدل انجام دادند و نشون دادند که میتونه وظایف خیلی پیچیدهای که نیازمند ترکیب تواناییهای تصویری و صوتی و متنی هست رو انجام بده. نکته واجب به ذکر اینه که برای این که ChatGPT بفهمه هر یک از مراحل بالا رو باید انجام بده هم از In-context Learning استفاده کردند، یعنی این که نمونه ورودیها و خروجیها رو در prompt ورودی به ChatGPT میدن و GPT خودش میفهمه باید چه جوری اوستا کنه قضیه رو.
قبلا در این پست (https://t.iss.one/nlp_stuff/318) هم راجع به یک کیس جالب دیگه که از LLM به عنوان حتی بکاند استفاده کرده بود صحبت کرده بودیم. به نظر میرسه با قدرتگیری LLMها در آینده نزدیک شاهد خیزش ترندی خواهیم بود که سعی میشه تا از اونها در حکم LLM as App یا حتی LLM as Everything استفاده بشه. آینده جذابی پیش روی محصولات این حوزه است. کسی چه میداند، شاید دنیای مهندسی نرمافزار بعد از LLM ها به شدت تکانده شود.
لینک مقاله:
https://arxiv.org/abs/2303.17580
پینوشت: با به اشتراکگذاری مطالبی که از آنها لذت میبرید، به بقیه هم این لذت رو هدیه بدید.
#read
#paper
@nlp_stuff
Telegram
stuff
معرفی Toolformer
مدلهای زبانی، در حل وظایف جدید با تنها چند مثال یا دستورالعمل متنی تواناییهای قابل توجهی دارند، به ویژه در مقیاس بزرگ. در عین حال، برای عملکردهای پایهای مثل محاسبات یا جستجوی factها دچار مشکل هستند، جایی که مدلهای سادهتر و کوچکتر بسیار عالی عمل میکنند. این مقاله با معرفی Toolformer، نشون میده که مدلهای زبانی چطوری میتونند خودشون رو با استفاده از APIهای ساده، آموزش بدن تا بهترین راهکار رو داشته باشند. مدل Toolformer، آموزش میبینه که تصمیم بگیره کدام API رو فراخوانی کنه، چه زمانی اونها رو فراخوانی کنه، چه آرگومانهایی رو منتقل کنه و چطوری به بهترین شکل از ترکیب نتایج برای پیشبینی توکن بعدی استفاده کنه.
این APIهای گنجانده شده در Toolformer شامل ماشین حساب، سیستم پرسش و پاسخ، موتور جستجو، سیستم ترجمه و یک تقویمه. آموزش این مدل به صورت خودبخودی و خودآموزه، که تنها به چند تا نمونه برای هر API نیاز داره. یعنی با استفاده از تعداد انگشت شماری نمونههای نوشته شده توسط انسان از فراخوانی یک API، به مدل این امکان داده میشه که برای یک مجموعه دادهی زبانی بزرگ، کاندیدهای فرخوانی API رو مرتبط با محتوای متن ایجاد کند (in-context learning). سپس با استفاده از یک تابع self-supervised loss مشخص میشه کدام فراخوانی APIها واقعا به مدل برای پیشبینی توکن بعدی کمک میکنه. در نهایت مدل روی فراخوانهای API ای که مفیدند finetune میشه.
مدل Toolformer، عملکرد zero-shot رو برای مدل GPT-J با 6.7B پارامتر به طور قابل توجهی بهبود می بخشه و باعث میشه حتی از مدل بسیار بزرگتر GPT-3 در طیف وسیعی از وظایف مختلف پاییندستی (یا همان downstream tasks) بهتر عمل کنه، بدون اینکه تواناهایی مدل سازی زبان اصلی را ازدست بده.
لینک مقاله:
https://arxiv.org/abs/2302.04761
پ.ن. این پست را خانم وحیدی درست کردند و به کانال فرستادند. شما هم اگر پست خوبی دارید بگید تا به اسم و با لینک به لینکداین خودتون منتشر کنیم.
#read
#paper
@nlp_stuff
مدلهای زبانی، در حل وظایف جدید با تنها چند مثال یا دستورالعمل متنی تواناییهای قابل توجهی دارند، به ویژه در مقیاس بزرگ. در عین حال، برای عملکردهای پایهای مثل محاسبات یا جستجوی factها دچار مشکل هستند، جایی که مدلهای سادهتر و کوچکتر بسیار عالی عمل میکنند. این مقاله با معرفی Toolformer، نشون میده که مدلهای زبانی چطوری میتونند خودشون رو با استفاده از APIهای ساده، آموزش بدن تا بهترین راهکار رو داشته باشند. مدل Toolformer، آموزش میبینه که تصمیم بگیره کدام API رو فراخوانی کنه، چه زمانی اونها رو فراخوانی کنه، چه آرگومانهایی رو منتقل کنه و چطوری به بهترین شکل از ترکیب نتایج برای پیشبینی توکن بعدی استفاده کنه.
این APIهای گنجانده شده در Toolformer شامل ماشین حساب، سیستم پرسش و پاسخ، موتور جستجو، سیستم ترجمه و یک تقویمه. آموزش این مدل به صورت خودبخودی و خودآموزه، که تنها به چند تا نمونه برای هر API نیاز داره. یعنی با استفاده از تعداد انگشت شماری نمونههای نوشته شده توسط انسان از فراخوانی یک API، به مدل این امکان داده میشه که برای یک مجموعه دادهی زبانی بزرگ، کاندیدهای فرخوانی API رو مرتبط با محتوای متن ایجاد کند (in-context learning). سپس با استفاده از یک تابع self-supervised loss مشخص میشه کدام فراخوانی APIها واقعا به مدل برای پیشبینی توکن بعدی کمک میکنه. در نهایت مدل روی فراخوانهای API ای که مفیدند finetune میشه.
مدل Toolformer، عملکرد zero-shot رو برای مدل GPT-J با 6.7B پارامتر به طور قابل توجهی بهبود می بخشه و باعث میشه حتی از مدل بسیار بزرگتر GPT-3 در طیف وسیعی از وظایف مختلف پاییندستی (یا همان downstream tasks) بهتر عمل کنه، بدون اینکه تواناهایی مدل سازی زبان اصلی را ازدست بده.
لینک مقاله:
https://arxiv.org/abs/2302.04761
پ.ن. این پست را خانم وحیدی درست کردند و به کانال فرستادند. شما هم اگر پست خوبی دارید بگید تا به اسم و با لینک به لینکداین خودتون منتشر کنیم.
#read
#paper
@nlp_stuff
Telegram
stuff
اندر حکایت GPT-4 و چالهچولههای آن!
اندکی از انتشار GPT-4 میگذره و حالا در این پست ویرگول قصد داریم بر اساس مقاله اخیری که تیم microsoft منتشر کرده به نقاط کور و چالشهای این مدل بپردازیم. در این مقاله به صورت هنرمندانه promptهایی تهیه شده که این نقاط ضعف رو نشون میده و دیدنش خالی از لطف نیست.
پ.ن. اینا نشستند ۱۵۰ صفحه مقاله نوشتند خداوکیلی ظلم در حقشون هست که شما مقاله شون رو حتی یه تورق هم نکنید! حداقل تصاویرش رو ببینید D:
لینک پست ویرگول:
https://virgool.io/overfit/gpt-4-b35cyw5oxi4t
لینک مقاله:
https://arxiv.org/abs/2303.12712
#read
#paper
#overfit
@nlp_stuff
اندکی از انتشار GPT-4 میگذره و حالا در این پست ویرگول قصد داریم بر اساس مقاله اخیری که تیم microsoft منتشر کرده به نقاط کور و چالشهای این مدل بپردازیم. در این مقاله به صورت هنرمندانه promptهایی تهیه شده که این نقاط ضعف رو نشون میده و دیدنش خالی از لطف نیست.
پ.ن. اینا نشستند ۱۵۰ صفحه مقاله نوشتند خداوکیلی ظلم در حقشون هست که شما مقاله شون رو حتی یه تورق هم نکنید! حداقل تصاویرش رو ببینید D:
لینک پست ویرگول:
https://virgool.io/overfit/gpt-4-b35cyw5oxi4t
لینک مقاله:
https://arxiv.org/abs/2303.12712
#read
#paper
#overfit
@nlp_stuff
مخزنی از مقالات کلیدی هوش/یادگیریماشین به ترتیب سال
آقای آمان چادها، اومدن و در این لینک لیستی کامل و جامع از مقالات کلیدی در حوزههای بینایی کامپیوتر و پردازش متن و صوت و سیستمهای توصیهگر و یادگیری مولتی مودال و ... رو به ترتیب سال گذاشتند. اما تمام هنر آمان آقا به این جا خلاصه نمیشه و ایشون چیزهای دیگه رو هم تو سایتشون قرار دادند که شامل یکسری لکچرنوتهای نیکو از کورسهای معروف، لکچرنوتهای راجع به کتابخانههای مربوط به کارهای هوش مصنوعی، لیستی از بلاگها و کورسها و یوتیوبهای دیدنی و خلاصه هر چیزی که مربوط به هوش میشه و باید خوند و دید، رو قرار دادند. قشنگ استفاده کنید و حظش رو ببرید.
لینک لیست مقالات:
aman.ai/papers
لینک سایت:
aman.ai
پینوشت: با دنبالکردن #coach میتونید منابع آموزشی معرفیشده رو بیابید.
#coach
#link
@nlp_stuff
آقای آمان چادها، اومدن و در این لینک لیستی کامل و جامع از مقالات کلیدی در حوزههای بینایی کامپیوتر و پردازش متن و صوت و سیستمهای توصیهگر و یادگیری مولتی مودال و ... رو به ترتیب سال گذاشتند. اما تمام هنر آمان آقا به این جا خلاصه نمیشه و ایشون چیزهای دیگه رو هم تو سایتشون قرار دادند که شامل یکسری لکچرنوتهای نیکو از کورسهای معروف، لکچرنوتهای راجع به کتابخانههای مربوط به کارهای هوش مصنوعی، لیستی از بلاگها و کورسها و یوتیوبهای دیدنی و خلاصه هر چیزی که مربوط به هوش میشه و باید خوند و دید، رو قرار دادند. قشنگ استفاده کنید و حظش رو ببرید.
لینک لیست مقالات:
aman.ai/papers
لینک سایت:
aman.ai
پینوشت: با دنبالکردن #coach میتونید منابع آموزشی معرفیشده رو بیابید.
#coach
#link
@nlp_stuff
ویدیوهای کارگاه آشنایی با HF و میزگرد آیا زمستان هوش مصنوعی در پیش است؟
مهدیمون در دو برنامه از WSS امسال حضور داشت.
اولی ورکشاپی بود با عنوان آHugging Face: A Platform to Democratize Open-Source AI که در اون سعی کرده به شکل متفاوتی از ابتدای تایملاین دیپ لرنینگ شروع کنه به توضیح دادن تا به این برسه که هاگینگفیس چجوری داره به دموکراتایز کردن هوش مصنوعی کمک میکنه. دیدنش دید خیلی خوبی از بالا بهتون میده.
دومی هم میزگردی بود که زمستان هوش مصنوعی را بررسی میکنند. آقای دکتر ربیعی، آقای دکتر رهبان و محمدرضا صمصامی (از محققین موسسه میلا) هم در این میزگرد حضور داشتند و راجع به این موضوع صحبت میکردند که آیا این مسیر به AGI ختم میشه یا به زمستان بعدی هوش مصنوعی خواهیم رسید.
لینک ویدیوی ورکشاپ:
https://aparat.com/v/PC952
لینک ویدیوی میزگرد:
https://aparat.com/v/nUVJR
#overfit
#coach
@nlp_stuff
مهدیمون در دو برنامه از WSS امسال حضور داشت.
اولی ورکشاپی بود با عنوان آHugging Face: A Platform to Democratize Open-Source AI که در اون سعی کرده به شکل متفاوتی از ابتدای تایملاین دیپ لرنینگ شروع کنه به توضیح دادن تا به این برسه که هاگینگفیس چجوری داره به دموکراتایز کردن هوش مصنوعی کمک میکنه. دیدنش دید خیلی خوبی از بالا بهتون میده.
دومی هم میزگردی بود که زمستان هوش مصنوعی را بررسی میکنند. آقای دکتر ربیعی، آقای دکتر رهبان و محمدرضا صمصامی (از محققین موسسه میلا) هم در این میزگرد حضور داشتند و راجع به این موضوع صحبت میکردند که آیا این مسیر به AGI ختم میشه یا به زمستان بعدی هوش مصنوعی خواهیم رسید.
لینک ویدیوی ورکشاپ:
https://aparat.com/v/PC952
لینک ویدیوی میزگرد:
https://aparat.com/v/nUVJR
#overfit
#coach
@nlp_stuff
ایجاد optical illusion با مدلهای دیفوژنی
در چند روز گذشته، ترند ایجاد تصاویر دارای خطای دید با مدلهای دیفوژنی تبدیل متن به تصویر بالا گرفته. تو این مساله، مدل با ورودی گرفتن یک پرامپت (مثل مثلا درختها تو پاییز) و البته یک تصویر پایه دیگه (مثل تصویر مریم میرزاخانی)، مدل میاد و جوری تصویر تولید میکنه که اصلش همون پرامپت اصلی (یعنی درختهای پاییزی) هست ولی وقتی که چشماتون رو اندکی چپ میکنید یا از دور به تصویر نگاه میکنید اون تصویر پایه (مثل مریم میرزاخانی) رو میتونید ببینید. ما هم چند نمونه جالب و البته نمونههایی که خودمون تولید کردیم رو اینجا گذاشتیم. اگه خواستید خودتون هم امتحانش کنید میتونید از اینجا امتحان کنید:
https://huggingface.co/spaces/pngwn/IllusionDiffusion
#link
@nlp_stuff
در چند روز گذشته، ترند ایجاد تصاویر دارای خطای دید با مدلهای دیفوژنی تبدیل متن به تصویر بالا گرفته. تو این مساله، مدل با ورودی گرفتن یک پرامپت (مثل مثلا درختها تو پاییز) و البته یک تصویر پایه دیگه (مثل تصویر مریم میرزاخانی)، مدل میاد و جوری تصویر تولید میکنه که اصلش همون پرامپت اصلی (یعنی درختهای پاییزی) هست ولی وقتی که چشماتون رو اندکی چپ میکنید یا از دور به تصویر نگاه میکنید اون تصویر پایه (مثل مریم میرزاخانی) رو میتونید ببینید. ما هم چند نمونه جالب و البته نمونههایی که خودمون تولید کردیم رو اینجا گذاشتیم. اگه خواستید خودتون هم امتحانش کنید میتونید از اینجا امتحان کنید:
https://huggingface.co/spaces/pngwn/IllusionDiffusion
#link
@nlp_stuff