Forwarded from Tensorflow(@CVision) (Hassan Yousefzade)
"Meta releases the biggest and best open-source AI model yet: Llama 3.1 outperforms OpenAI and other rivals on certain benchmarks. Now, Mark Zuckerberg expects Meta’s AI assistant to surpass ChatGPT’s usage in the coming months."
link
link
👍9❤1
خانواده مدلهای زبانی اوپن-سورس Llama 3.1 توسط Meta معرفی شد.
بزرگترین مدل این خانواده، ۴۰۵ میلیارد پارامتر دارد!
مدل به بزرگی ۴۰۵ میلیارد پارامتر اون هم بهصورت اوپنسورس خودش میتونه انقلابی بهحساب بیاد!
معماری، کد و وزنهای آموزشدادهشده، بهصورت اوپن-سورس منتشر شدهاند و میتوان مدل را بهصورت لوکال اجرا یا فاینتیون کرد.
اما بهدلیل مسايل مربوط به کپیرایت و امنیت اطلاعات، دادههای آموزشی و هایپرپارامترهای استفادهشده هنگام آموزش، عمومی نشدهاند.
همچنین این مدل تحت یک لیسانس پژوهشی غیرتجاری منتشر شدهست. بهعبارت دیگه، فقط برای کارهای پژوهشی (نه محصولات تجاری) قابل استفادهست.
بلاگپست معرفی
https://ai.meta.com/blog/meta-llama-3-1/
مقاله
https://scontent-fra3-2.xx.fbcdn.net/v/t39.2365-6/452387774_1036916434819166_4173978747091533306_n.pdf?_nc_cat=104&ccb=1-7&_nc_sid=3c67a6&_nc_ohc=t6egZJ8QdI4Q7kNvgHrQvZO&_nc_ht=scontent-fra3-2.xx&oh=00_AYDMw5kHFSclnw1cdHaYK8x2ASMvaKkuC5-MCGlyimnRUg&oe=66A60A8D
دانلود از هاگینگفیس
https://huggingface.co/collections/meta-llama/llama-31-669fc079a0c406a149a5738f
بزرگترین مدل این خانواده، ۴۰۵ میلیارد پارامتر دارد!
مدل به بزرگی ۴۰۵ میلیارد پارامتر اون هم بهصورت اوپنسورس خودش میتونه انقلابی بهحساب بیاد!
معماری، کد و وزنهای آموزشدادهشده، بهصورت اوپن-سورس منتشر شدهاند و میتوان مدل را بهصورت لوکال اجرا یا فاینتیون کرد.
اما بهدلیل مسايل مربوط به کپیرایت و امنیت اطلاعات، دادههای آموزشی و هایپرپارامترهای استفادهشده هنگام آموزش، عمومی نشدهاند.
همچنین این مدل تحت یک لیسانس پژوهشی غیرتجاری منتشر شدهست. بهعبارت دیگه، فقط برای کارهای پژوهشی (نه محصولات تجاری) قابل استفادهست.
بلاگپست معرفی
https://ai.meta.com/blog/meta-llama-3-1/
مقاله
https://scontent-fra3-2.xx.fbcdn.net/v/t39.2365-6/452387774_1036916434819166_4173978747091533306_n.pdf?_nc_cat=104&ccb=1-7&_nc_sid=3c67a6&_nc_ohc=t6egZJ8QdI4Q7kNvgHrQvZO&_nc_ht=scontent-fra3-2.xx&oh=00_AYDMw5kHFSclnw1cdHaYK8x2ASMvaKkuC5-MCGlyimnRUg&oe=66A60A8D
دانلود از هاگینگفیس
https://huggingface.co/collections/meta-llama/llama-31-669fc079a0c406a149a5738f
❤17👍11🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
در این ویدئوی آموزشی، دوست عزیزمون، Ahmad Byagowi دانشمند پژوهشی تیم Meta، قدمبهقدم و بهسادهترین روش ممکن (استفاده از پلتفرم Ollama) سایزهای مختلف مدل Llama 3.1 (۸ میلیاردی، ۷۰ میلیاردی و ۴۰۵ میلیاردی) را بهصورت لوکال و روی یک ماشین از نوع Grand Teton با ۲ ترابایت رم اجرا و سرعت و عملکرد آنها را مقایسه میکند.
👍16❤9
مخزن Git زیر، شامل نوتبوکها و راهنماهای لازم برای فاینتیونکردن و موارداستفاده از Llama 3.1 است:
https://go.fb.me/wy18hm
https://go.fb.me/wy18hm
GitHub
Meta Llama
Meta Llama has 12 repositories available. Follow their code on GitHub.
👍14🔥1
School of AI
خانواده مدلهای زبانی اوپن-سورس Llama 3.1 توسط Meta معرفی شد. بزرگترین مدل این خانواده، ۴۰۵ میلیارد پارامتر دارد! مدل به بزرگی ۴۰۵ میلیارد پارامتر اون هم بهصورت اوپنسورس خودش میتونه انقلابی بهحساب بیاد! معماری، کد و وزنهای آموزشدادهشده، بهصورت…
اصلاحیه
در پُست معرفی مدل Llama 3.1 گفتیم که این مدل تحت یک لیسانس پژوهشی غیرتجاری منتشر شده.
پس از مطالعهی دقیق لیسانس این مدل، متوجه شدیم که این یک اشتباه بود.
استفاده از مدل Llama 3.1 در هر محصول تجاریای که همین الان کمتر از ۷۰۰ میلیون کاربر فعال در ماه دارد، بیمانعست.
برای محصولاتی که ماهانه بیش از ۷۰۰ میلیون کاربر فعال دارند، نیاز به اخذ مجوز از Meta است.
https://github.com/meta-llama/llama-models/blob/main/models/llama3_1/LICENSE
در پُست معرفی مدل Llama 3.1 گفتیم که این مدل تحت یک لیسانس پژوهشی غیرتجاری منتشر شده.
پس از مطالعهی دقیق لیسانس این مدل، متوجه شدیم که این یک اشتباه بود.
استفاده از مدل Llama 3.1 در هر محصول تجاریای که همین الان کمتر از ۷۰۰ میلیون کاربر فعال در ماه دارد، بیمانعست.
برای محصولاتی که ماهانه بیش از ۷۰۰ میلیون کاربر فعال دارند، نیاز به اخذ مجوز از Meta است.
https://github.com/meta-llama/llama-models/blob/main/models/llama3_1/LICENSE
GitHub
llama-models/models/llama3_1/LICENSE at main · meta-llama/llama-models
Utilities intended for use with Llama models. Contribute to meta-llama/llama-models development by creating an account on GitHub.
👍17
School of AI
🔔خبر جذاب برای علاقهمندان به کار پژوهشی🔔 با فرارسیدن تابستان، و بنابر درخواست عدهی زیادی از دوستانِ علاقهمند، تصمیم گرفتیم چند پروژهی پژوهشی داغ در حوزههای مختلف هوش مصنوعی تعریف کرده و طی یک همکاری تیمی منسجم، فشرده و برنامهریزیشده، تا انتهای تابستان،…
دوستان عزیز
درود بر شما
پیش از هرچیز از عزیزانی که برای شرکت در دور نخست طرح پژوهشی مدرسهی هوش مصنوعی ابراز علاقه کردند، سپاسگزاریم.
میزان تقاضا بیش از حد انتظار بود و البته ظرفیت، بسیار محدود.
تا امروز، همهی تیمها تشکیل شدهاند. بنابراین، اگر تا امروز ایمیلی در رابطه با پذیرش یا عدمپذیرش دریافت نکردهاید، ازطریق ایمیل hamidreza@hosseinkhani.me پیگیری بفرمایید.
درود بر شما
پیش از هرچیز از عزیزانی که برای شرکت در دور نخست طرح پژوهشی مدرسهی هوش مصنوعی ابراز علاقه کردند، سپاسگزاریم.
میزان تقاضا بیش از حد انتظار بود و البته ظرفیت، بسیار محدود.
تا امروز، همهی تیمها تشکیل شدهاند. بنابراین، اگر تا امروز ایمیلی در رابطه با پذیرش یا عدمپذیرش دریافت نکردهاید، ازطریق ایمیل hamidreza@hosseinkhani.me پیگیری بفرمایید.
❤27👍2
مدل بنیادین Microsoft Florence-2 در مدت کوتاهی که معرفی شده، توانسته بهعلت سبکبودن، دقت مناسب و اوپن-سورس بودن، توجه بسیاری را بهسمت خود جلب کند.
در یکی از تازهترین کارها بهنام TFT-ID، مدل Florence-2 برای تسک Layout Detection روی بیش از ۳۶۰۰۰ مقالهی علمی فاینتیون شدهست. این مدل، در ورودی تصویر یک صفحه از مقاله را گرفته و در خروجی، بهکمک Bounding Box هایی، نوشتار، تصویر، نمودار و جدول را با نرخ موفقیت ۹۸/۸۴ درصد از هم جدا میکند.
خروجی این مدل میتواند برای OCR یا RAG مورداستفاده قرار گیرد.
پیشتر نیز اپل یک VLM سبک بهنام Ferret-UI را برای استفاده در آیفون معرفی کرده بود که علاوه بر Layout Detection روی اسکرینشات موبایل، تفسیر سادهای نیز برای هر بخش ارائه میداد. باتوجه به قدرت Florence -2، مدل TFT-ID نیز شاید میتوانست پتانسیل لازم برای تفسیر تصاویر و نمودارها و جداول و ... را داشته باشد. :)
گیتهاب:
https://github.com/ai8hyf/TF-ID
هاگینگفیس:
https://huggingface.co/yifeihu/TFT-ID-1.0
در یکی از تازهترین کارها بهنام TFT-ID، مدل Florence-2 برای تسک Layout Detection روی بیش از ۳۶۰۰۰ مقالهی علمی فاینتیون شدهست. این مدل، در ورودی تصویر یک صفحه از مقاله را گرفته و در خروجی، بهکمک Bounding Box هایی، نوشتار، تصویر، نمودار و جدول را با نرخ موفقیت ۹۸/۸۴ درصد از هم جدا میکند.
خروجی این مدل میتواند برای OCR یا RAG مورداستفاده قرار گیرد.
پیشتر نیز اپل یک VLM سبک بهنام Ferret-UI را برای استفاده در آیفون معرفی کرده بود که علاوه بر Layout Detection روی اسکرینشات موبایل، تفسیر سادهای نیز برای هر بخش ارائه میداد. باتوجه به قدرت Florence -2، مدل TFT-ID نیز شاید میتوانست پتانسیل لازم برای تفسیر تصاویر و نمودارها و جداول و ... را داشته باشد. :)
گیتهاب:
https://github.com/ai8hyf/TF-ID
هاگینگفیس:
https://huggingface.co/yifeihu/TFT-ID-1.0
❤10👍5
This media is not supported in your browser
VIEW IN TELEGRAM
پای OpenAI در کفش Google
شرکت OpenAI موتور جستوجوی مبتنی-بر-هوشمصنوعی خود را معرفی کرد.
در پی این معرفی، سهام گروه آلفابت با ۳ درصد کاهش روبهرو شد.
https://openai.com/index/searchgpt-prototype/
شرکت OpenAI موتور جستوجوی مبتنی-بر-هوشمصنوعی خود را معرفی کرد.
در پی این معرفی، سهام گروه آلفابت با ۳ درصد کاهش روبهرو شد.
https://openai.com/index/searchgpt-prototype/
👍26❤1🔥1
بهترین کورسهای آموزشی برای بینایی رایانه (Computer Vision) کدامهااند؟!
معمولا بیشتر افراد ابتدا مفاهیم پایهی یادگیری ماشین و یادگیری ژرف رو از روی دورههای Adrew Ng دنبال کرده و بعد به دنبال کورسهایی برای عمیقترشدن در زمینهی بینایی رایانه میگردند.
برای بیشتر افراد، قدم بعد، کورس CS231n دانشگاه استنفورد بهسرپرستی Fei Fei Li است. این کورس درحال حاضر توسط دکتر احسان عادلی تدریس میشه اما ویدئوهای اون در دسترس عموم نیست. بنابراین اکثرا از ویدئوهای سال ۲۰۱۶ که توسط Andrej Karpathy تدریس شده استفاده میکنند.
https://youtube.com/playlist?list=PLkt2uSq6rBVctENoVBg1TpCC7OQi31AlC&si=DOTA00h5bfMHkpXT
اما چون این کورس قدیمیست، برای مطالب جدیدتر میتوانید این کورسها رو نیز دنبال کنید:
دانشگاه MIT
https://youtube.com/playlist?list=PLtBw6njQRU-rwp5__7C0oIVt26ZgjG9NI&si=mUXWYRAa12CFQZEx
دانشگاه برکلی
https://youtube.com/playlist?list=PLzWRmD0Vi2KVsrCqA4VnztE4t71KnTnP5&si=BehKB33rafYEG5rM
دانشگاه نیویورک
https://youtube.com/playlist?list=PLLHTzKZzVU9d_3TcHbyiAjl5qCbpJR-o0&si=zGmfW99l-5uS1VuO
دانشگاه فلوریدا (ViT)
https://www.crcv.ucf.edu/courses/cap6412-spring-2022/schedule/
اگر شما هم کورس خوبی میشناسید در کامنتها با دوستان بهاشتراک بذارید 😊
معمولا بیشتر افراد ابتدا مفاهیم پایهی یادگیری ماشین و یادگیری ژرف رو از روی دورههای Adrew Ng دنبال کرده و بعد به دنبال کورسهایی برای عمیقترشدن در زمینهی بینایی رایانه میگردند.
برای بیشتر افراد، قدم بعد، کورس CS231n دانشگاه استنفورد بهسرپرستی Fei Fei Li است. این کورس درحال حاضر توسط دکتر احسان عادلی تدریس میشه اما ویدئوهای اون در دسترس عموم نیست. بنابراین اکثرا از ویدئوهای سال ۲۰۱۶ که توسط Andrej Karpathy تدریس شده استفاده میکنند.
https://youtube.com/playlist?list=PLkt2uSq6rBVctENoVBg1TpCC7OQi31AlC&si=DOTA00h5bfMHkpXT
اما چون این کورس قدیمیست، برای مطالب جدیدتر میتوانید این کورسها رو نیز دنبال کنید:
دانشگاه MIT
https://youtube.com/playlist?list=PLtBw6njQRU-rwp5__7C0oIVt26ZgjG9NI&si=mUXWYRAa12CFQZEx
دانشگاه برکلی
https://youtube.com/playlist?list=PLzWRmD0Vi2KVsrCqA4VnztE4t71KnTnP5&si=BehKB33rafYEG5rM
دانشگاه نیویورک
https://youtube.com/playlist?list=PLLHTzKZzVU9d_3TcHbyiAjl5qCbpJR-o0&si=zGmfW99l-5uS1VuO
دانشگاه فلوریدا (ViT)
https://www.crcv.ucf.edu/courses/cap6412-spring-2022/schedule/
اگر شما هم کورس خوبی میشناسید در کامنتها با دوستان بهاشتراک بذارید 😊
👍24❤8
Forwarded from Tensorflow(@CVision) (Alister ☄️)
This media is not supported in your browser
VIEW IN TELEGRAM
نمایی بصری و تحلیل گامبهگام از الگوریتم (LLM) که مدل زبانی ChatGPT شرکت OpenAI بر پایه آن ساخته شده است. این تحلیل، تمامی جزئیات الگوریتم از جمله عملیات جمع و ضرب را بهصورت عملی و گامبهگام به نمایش میگذارد
https://bbycroft.net/llm
https://bbycroft.net/llm
👍18❤4
This media is not supported in your browser
VIEW IN TELEGRAM
پژوهشگران گوگل و دانشگاه MIT با استفاده از یک Diffusion Model توانستند ویژگیهای مادی مربوط به جنس اشیا مثل شفافیت (Trasparency)، زبری (Roughness)، فلزی بودن (Metalic) و سپیدایی (Alpedo) را در تصاویر تغییر دهند.
اطلاعات فنی:
www.prafullsharma.net/alchemist/
مقاله:
arxiv.org/pdf/2312.02970
اطلاعات فنی:
www.prafullsharma.net/alchemist/
مقاله:
arxiv.org/pdf/2312.02970
👍25👏13
This media is not supported in your browser
VIEW IN TELEGRAM
دومین نسخه از مدل Segment Anything یا SAM 2 توسط متا منتشر شد!
مدل SAM یک مدل بنیادین برای بخشبندی (Segmentation) تصاویرست که میتواند با دریافت یک پرامپت به صورت نقطه یا Bounding Box هر موجودیتی را در تصویر، سگمنت کند.
نسخهی دوم علاوه بر تصویر، از ویدئو هم با سرعت ۶ برابر (۴۴ فریم-بر-ثانیه - مناسب کاربردهای بیدرنگ) و عملکردی حیرتانگیز پشتیبانی میکند.
وزنهای مدل، کد و مجموعهدادهی SA-V، بهصورت کاملا اوپنسورس و تحت یک لیسانس Apache 2 permissive منتشر شدهاند.
بلاگپست معرفی:
https://ai.meta.com/blog/segment-anything-2/
دمو:
https://sam2.metademolab.com/
https://huggingface.co/spaces/SkalskiP/segment-anything-model-2
نوتبوک:
https://colab.research.google.com/github/roboflow-ai/notebooks/blob/main/notebooks/how-to-segment-images-with-sam-2.ipynb
مدل SAM یک مدل بنیادین برای بخشبندی (Segmentation) تصاویرست که میتواند با دریافت یک پرامپت به صورت نقطه یا Bounding Box هر موجودیتی را در تصویر، سگمنت کند.
نسخهی دوم علاوه بر تصویر، از ویدئو هم با سرعت ۶ برابر (۴۴ فریم-بر-ثانیه - مناسب کاربردهای بیدرنگ) و عملکردی حیرتانگیز پشتیبانی میکند.
وزنهای مدل، کد و مجموعهدادهی SA-V، بهصورت کاملا اوپنسورس و تحت یک لیسانس Apache 2 permissive منتشر شدهاند.
بلاگپست معرفی:
https://ai.meta.com/blog/segment-anything-2/
دمو:
https://sam2.metademolab.com/
https://huggingface.co/spaces/SkalskiP/segment-anything-model-2
نوتبوک:
https://colab.research.google.com/github/roboflow-ai/notebooks/blob/main/notebooks/how-to-segment-images-with-sam-2.ipynb
👍28❤7
پدیدهی Double Descent
در یادگیری ماشین، میدانید که اگر مدل خیلی سادهتر از حد نیاز باشد، آموزش نمیبیند و درنهایت، پس از چند تلاش، کمبرازش (Underfit) خواهد شد. هرچه مدل را پیچدهتر کنیم (مثلا تعداد پارامترها را بیشتر کنیم)، بیشتر آموزش میبیند و قابلیت تعمیم (Generalization) آن بهتر میشود. این بهترشدن قابلت تعمیم، از روی کاهش مقدار خطا بهازای دادههای ارزیابی مشخصست.
اما این خطا تا کجا کاهش مییابد؟ آیا هرچهقدر مدل پیچیدهتر شود، خطای ارزیابی آن کمتر و قابلیت تعمیم آن بیشتر میشود؟!
در مدلهای سادهتر و سنتیتر یادگری ماشین، هرچه مدل پیچیدهتر میشد، نیاز به دادهی آموزشی بیشتری هم داشت. بنابراین با ثابت بودن سایز مجموعه داده، افزایش پیچیدگی از یکجا به بعد باعث بیشبرازش (Overfitting) مدل و حفظکردن دادهها و نویزها میشد و قابلیت تعمیم مدل از بین میرفت.
اما در دنیای مدلهای جدید (مثلا مدلهای زبانی بزرگ) شاهد آنیم که مدل هرچه بزرگتر و پیچیدهتر میشود قدرتمندتر و قابل تعمیمتر میشود! این تناقض ناشی از چیست؟!
از پدیدهی جالبی بهنام Double Descent که در شبکههای عصبی بسیار بزرگ دیده میشود. نوعی Regularization ضمنی که ظاهرا بهعلت رویهی آموزش (مثلا الگوریتم کاهش گرادیان) اتفاق میافتد. در این حالت، با پیچیدهتر شدن مدل (مثلا بیشترشدن تعداد پارامترها)، ابتدا خطای ارزیابی کاهش یافته، پس از آن در جایی با پدیدهی بیشبرازش روبهرو شده و خطای ارزیابی افزایش مییابد، اما با پیچیدهترشدن مدل، از جایی به بعد، برای بار دوم خطای ارزیابی کاهشی شده و عمومیت مدل بهتر میشود!
تصویر زیر را ببینید 👇👇👇
در یادگیری ماشین، میدانید که اگر مدل خیلی سادهتر از حد نیاز باشد، آموزش نمیبیند و درنهایت، پس از چند تلاش، کمبرازش (Underfit) خواهد شد. هرچه مدل را پیچدهتر کنیم (مثلا تعداد پارامترها را بیشتر کنیم)، بیشتر آموزش میبیند و قابلیت تعمیم (Generalization) آن بهتر میشود. این بهترشدن قابلت تعمیم، از روی کاهش مقدار خطا بهازای دادههای ارزیابی مشخصست.
اما این خطا تا کجا کاهش مییابد؟ آیا هرچهقدر مدل پیچیدهتر شود، خطای ارزیابی آن کمتر و قابلیت تعمیم آن بیشتر میشود؟!
در مدلهای سادهتر و سنتیتر یادگری ماشین، هرچه مدل پیچیدهتر میشد، نیاز به دادهی آموزشی بیشتری هم داشت. بنابراین با ثابت بودن سایز مجموعه داده، افزایش پیچیدگی از یکجا به بعد باعث بیشبرازش (Overfitting) مدل و حفظکردن دادهها و نویزها میشد و قابلیت تعمیم مدل از بین میرفت.
اما در دنیای مدلهای جدید (مثلا مدلهای زبانی بزرگ) شاهد آنیم که مدل هرچه بزرگتر و پیچیدهتر میشود قدرتمندتر و قابل تعمیمتر میشود! این تناقض ناشی از چیست؟!
از پدیدهی جالبی بهنام Double Descent که در شبکههای عصبی بسیار بزرگ دیده میشود. نوعی Regularization ضمنی که ظاهرا بهعلت رویهی آموزش (مثلا الگوریتم کاهش گرادیان) اتفاق میافتد. در این حالت، با پیچیدهتر شدن مدل (مثلا بیشترشدن تعداد پارامترها)، ابتدا خطای ارزیابی کاهش یافته، پس از آن در جایی با پدیدهی بیشبرازش روبهرو شده و خطای ارزیابی افزایش مییابد، اما با پیچیدهترشدن مدل، از جایی به بعد، برای بار دوم خطای ارزیابی کاهشی شده و عمومیت مدل بهتر میشود!
تصویر زیر را ببینید 👇👇👇
👍31
پدیدهی Double Descent
مرجع:
https://medium.com/@LightOnIO/beyond-overfitting-and-beyond-silicon-the-double-descent-curve-18b6d9810e1b
مرجع:
https://medium.com/@LightOnIO/beyond-overfitting-and-beyond-silicon-the-double-descent-curve-18b6d9810e1b
👍25🔥4👏2
Forwarded from Recommender system (MehriMah Amiri)
This media is not supported in your browser
VIEW IN TELEGRAM
استودیو LangGraph: اولین محیط یکپارچه توسعه هوش مصنوعي
استودیو LangGraph یک IDE تخصصی برای Visualization، Interaction و Debugging کردن برنامههای پیچیده Agentic فراهم میکند.
با استفاده از استودیو LangGraph، میتوانید به راحتی برنامههای Agentic خود را روی دسکتاپ مشاهده و با آنها تعامل کنید و همچنین مشکلات موجود در آنها را برطرف کنید.
اگر به دنبال ابزاری قدرتمند برای مدیریت و بهبود برنامههای Agentic خود هستید، استودیو LangGraph راهحلی مناسب برای شماست و همچين ميتواند كار شما را براي كاركردن با مدل هاي زباني بزرگ راحت كند.
لينك
استودیو LangGraph یک IDE تخصصی برای Visualization، Interaction و Debugging کردن برنامههای پیچیده Agentic فراهم میکند.
با استفاده از استودیو LangGraph، میتوانید به راحتی برنامههای Agentic خود را روی دسکتاپ مشاهده و با آنها تعامل کنید و همچنین مشکلات موجود در آنها را برطرف کنید.
اگر به دنبال ابزاری قدرتمند برای مدیریت و بهبود برنامههای Agentic خود هستید، استودیو LangGraph راهحلی مناسب برای شماست و همچين ميتواند كار شما را براي كاركردن با مدل هاي زباني بزرگ راحت كند.
لينك
👍27
در لینک زیر میتوانید مدلهای اوپن-سورس جدید و محبوب مثل Llama 3.1-405b و stable-video-diffusion رو که توسط NVIDIA NIM سرو میشه، امتحان کنید.
https://build.nvidia.com/explore/discover
https://build.nvidia.com/explore/discover
😍10👍6🙏2
شبکههای عصبی کولموگروف-آرنولد (KANs)
درشبکههای عصبی، ما معمولا بهدنبال تخمینزدن یک تابع چندمتغیرهی پیوستهی بسیار پیچیده هستیم!
در شبکههای عصبی سنتی (MLP ها)، هر سیگنال ورودی بهصورت خطی، در یک پارامتر (وزن یالها) ضرب شده، حاصل این ضربها وارد node های لایههای بعدی شده و آنجا با هم تجمیع (+) میشوند و حاصلجمع از یک تابع غیرخطیِ ثابت (Activation Function) مثل ReLU یا Sigmoid عبور میکند. قضیهی Universal Approximation میگه، از نگاه تئوری، یک MLP با فقط با یک لایهی پنهان (شامل تعداد نورون متناهی اما گاها خیلی زیاد) قادرست هر تابع چندمتغیرهی پیوسته، با هر میزان پیچیدگی را با هر دقتی که مدنظر ما باشد، تخمین بزند.
شبکههای KAN اما براساس قضیهی Kolmogorov-Arnold Representation شکل گرفتهاند که میگه، هر تابع چندمتغیرهی پیوسته (هرچند پیچیده) رو میشه بهصورت جمع تعداد متناهی (اما گاها بسیار زیاد) تابع تک متغیرهی پیوسته نوشت (بهصورت دقیق!) بنابراین، در شبکههای KAN، هر سیگنال ورودی بهجای ضرب ساده و خطی در یک پارامتر ثابت (وزن یال)، از یک تابع تکمتغیرهی پیوسته (آموزش دیدهشده) میگذرد و هر نورون فقط مسئول تجمیع (+) خروجی این توابعست. درواقع، بهجای هر وزن روی هر یال، یک تابع آموزش داده میشود و بنابراین هر نورون میتواند فقط شامل یک جمع ساده باشد.
توابعی که روی هر یال، آموزش میبینند، از نوع Spline اند. توابع اسپلاین، در بازههای مختلف و متفاوت از دامنهی خود بهشکل چندجملهایهای مجزا تعریف شده و قادرند هر منحنی (هرچند پیچیده) را تخمین بزنند. ازین رو گزینهی مناسبی برای توابع آموزشپذیر در KAN ها اند.
یکی از مشکلات شبکههای عصبی سنتی، فراموشی ناگوار (Catastrophic Forgetting) است. وقتی یک دادهی جدید را به شبکه آموزش میدهیم، تعداد بسیار زیادی پارامتر تغییر میکنند (به علت تاثیر هر تابع فعالسازی بر تعداد بسیار زیادی پارامتر روی یالهای ورودی به نورون) و ممکنست دانشی که از دادههای قبلی بهدست آمده، فراموش شود. اما در KAN ها به علت محلی بودن هر تابع اسپلاین، تعداد بسیار کمتری پارامتر تغییر کرده و فراموشی ناگوار در این شبکهها بهمراتب کمترست و این شبکهها نسبت به نویز مقاومترند.
باتوجه به قدرت بالای توابع اسپلاین در یادگیری توابع غیر خطی، و همینطور مشخصبودن یالهای بیاهمیت و قابل هرس (Pruning) از روی تابع تخمینزدهشده، تعداد لایههای مورد نیاز در کل شبکه و تعداد نورونهای هر لایه، میتوانند بهمراتب کمتر بوده و با تعداد پارامتر آموزشپذیر کمتر به Generalization بیشتر و سریعتر رسید. ازطرفی مدلهای KAN بسیار تفسیرپذیرتر بوده و میتوانند ضابطهی ریاضی تابع تخمینزدهشدهی نهایی را نیز معرفی کنند! (شکل زیر)
با این همه خوبی، آیا قراره شبکههای KAN جایگزین شبکههای فعلی در هوش مصنوعی شن؟! معلومه که نه! اساس پیشرفت شبکههای عصبی در سالهای اخیر، استفاده از GPU برای ضرب بهینهی همین ماتریسهای وزنیست که در KAN حذف شده 😀 بنابراین (تا جایی که فعلا میدونیم) این شبکهها برای کاربردهای علمی و مهندسی مناسباند نه پردازش الگوهای پیچیده مثل بینایی ماشین و مدلسازی زبان.
درشبکههای عصبی، ما معمولا بهدنبال تخمینزدن یک تابع چندمتغیرهی پیوستهی بسیار پیچیده هستیم!
در شبکههای عصبی سنتی (MLP ها)، هر سیگنال ورودی بهصورت خطی، در یک پارامتر (وزن یالها) ضرب شده، حاصل این ضربها وارد node های لایههای بعدی شده و آنجا با هم تجمیع (+) میشوند و حاصلجمع از یک تابع غیرخطیِ ثابت (Activation Function) مثل ReLU یا Sigmoid عبور میکند. قضیهی Universal Approximation میگه، از نگاه تئوری، یک MLP با فقط با یک لایهی پنهان (شامل تعداد نورون متناهی اما گاها خیلی زیاد) قادرست هر تابع چندمتغیرهی پیوسته، با هر میزان پیچیدگی را با هر دقتی که مدنظر ما باشد، تخمین بزند.
شبکههای KAN اما براساس قضیهی Kolmogorov-Arnold Representation شکل گرفتهاند که میگه، هر تابع چندمتغیرهی پیوسته (هرچند پیچیده) رو میشه بهصورت جمع تعداد متناهی (اما گاها بسیار زیاد) تابع تک متغیرهی پیوسته نوشت (بهصورت دقیق!) بنابراین، در شبکههای KAN، هر سیگنال ورودی بهجای ضرب ساده و خطی در یک پارامتر ثابت (وزن یال)، از یک تابع تکمتغیرهی پیوسته (آموزش دیدهشده) میگذرد و هر نورون فقط مسئول تجمیع (+) خروجی این توابعست. درواقع، بهجای هر وزن روی هر یال، یک تابع آموزش داده میشود و بنابراین هر نورون میتواند فقط شامل یک جمع ساده باشد.
توابعی که روی هر یال، آموزش میبینند، از نوع Spline اند. توابع اسپلاین، در بازههای مختلف و متفاوت از دامنهی خود بهشکل چندجملهایهای مجزا تعریف شده و قادرند هر منحنی (هرچند پیچیده) را تخمین بزنند. ازین رو گزینهی مناسبی برای توابع آموزشپذیر در KAN ها اند.
یکی از مشکلات شبکههای عصبی سنتی، فراموشی ناگوار (Catastrophic Forgetting) است. وقتی یک دادهی جدید را به شبکه آموزش میدهیم، تعداد بسیار زیادی پارامتر تغییر میکنند (به علت تاثیر هر تابع فعالسازی بر تعداد بسیار زیادی پارامتر روی یالهای ورودی به نورون) و ممکنست دانشی که از دادههای قبلی بهدست آمده، فراموش شود. اما در KAN ها به علت محلی بودن هر تابع اسپلاین، تعداد بسیار کمتری پارامتر تغییر کرده و فراموشی ناگوار در این شبکهها بهمراتب کمترست و این شبکهها نسبت به نویز مقاومترند.
باتوجه به قدرت بالای توابع اسپلاین در یادگیری توابع غیر خطی، و همینطور مشخصبودن یالهای بیاهمیت و قابل هرس (Pruning) از روی تابع تخمینزدهشده، تعداد لایههای مورد نیاز در کل شبکه و تعداد نورونهای هر لایه، میتوانند بهمراتب کمتر بوده و با تعداد پارامتر آموزشپذیر کمتر به Generalization بیشتر و سریعتر رسید. ازطرفی مدلهای KAN بسیار تفسیرپذیرتر بوده و میتوانند ضابطهی ریاضی تابع تخمینزدهشدهی نهایی را نیز معرفی کنند! (شکل زیر)
با این همه خوبی، آیا قراره شبکههای KAN جایگزین شبکههای فعلی در هوش مصنوعی شن؟! معلومه که نه! اساس پیشرفت شبکههای عصبی در سالهای اخیر، استفاده از GPU برای ضرب بهینهی همین ماتریسهای وزنیست که در KAN حذف شده 😀 بنابراین (تا جایی که فعلا میدونیم) این شبکهها برای کاربردهای علمی و مهندسی مناسباند نه پردازش الگوهای پیچیده مثل بینایی ماشین و مدلسازی زبان.
👍24❤10
School of AI
شبکههای عصبی کولموگروف-آرنولد (KANs) درشبکههای عصبی، ما معمولا بهدنبال تخمینزدن یک تابع چندمتغیرهی پیوستهی بسیار پیچیده هستیم! در شبکههای عصبی سنتی (MLP ها)، هر سیگنال ورودی بهصورت خطی، در یک پارامتر (وزن یالها) ضرب شده، حاصل این ضربها وارد node…
استخراج ضابطهی تابع تخمینزدهشده از روی داده در شبکههای کولموگروف-آرنولد
👍13❤5
سامانههای RAG چگونه ارزیابی میشوند؟
سامانههای RAG، دانش دقیق و بهروز که هنگام آموزش LLM دردسترس نبوده رو در یک پایگاه دانش (Knowledge Base) ذخیره کرده و براساس درخواست (پرسش) کاربر، آنرا بازیابی کرده و بهشکل In-context Learning به LLM میدهند.
پیادهسازی این سامانهها بهویژه بهکمک چارچوبهایی مثل LangChain سادهست اما ارزیابی عملکرد این سامانهها به این سادگی نیست.
چارچوب Ragas یا RAG Assessment یکی از ابزارهاییست که برای ارزیابی عملکرد سامانههای RAG بهکار میرود و میتوان آن را با پایپلاین CI/CD و همچنین LangSmith نیز یکپارچه کرد.
این ابزار بهکمک یه مدل زبانی، خروجیِ دو مرحلهی retrieval و generation رو بررسی کرده و امتیازهایی مثل faithfullness و relevancy را گزارش میدهد.
مقاله:
https://arxiv.org/pdf/2309.15217
سایت رسمی:
https://docs.ragas.io/en/stable/
پست آموزشی:
https://docs.smith.langchain.com/old/cookbook/testing-examples/ragas
https://cobusgreyling.medium.com/rag-evaluation-9813a931b3d4
https://towardsdatascience.com/rag-evaluation-using-ragas-4645a4c6c477
سامانههای RAG، دانش دقیق و بهروز که هنگام آموزش LLM دردسترس نبوده رو در یک پایگاه دانش (Knowledge Base) ذخیره کرده و براساس درخواست (پرسش) کاربر، آنرا بازیابی کرده و بهشکل In-context Learning به LLM میدهند.
پیادهسازی این سامانهها بهویژه بهکمک چارچوبهایی مثل LangChain سادهست اما ارزیابی عملکرد این سامانهها به این سادگی نیست.
چارچوب Ragas یا RAG Assessment یکی از ابزارهاییست که برای ارزیابی عملکرد سامانههای RAG بهکار میرود و میتوان آن را با پایپلاین CI/CD و همچنین LangSmith نیز یکپارچه کرد.
این ابزار بهکمک یه مدل زبانی، خروجیِ دو مرحلهی retrieval و generation رو بررسی کرده و امتیازهایی مثل faithfullness و relevancy را گزارش میدهد.
مقاله:
https://arxiv.org/pdf/2309.15217
سایت رسمی:
https://docs.ragas.io/en/stable/
پست آموزشی:
https://docs.smith.langchain.com/old/cookbook/testing-examples/ragas
https://cobusgreyling.medium.com/rag-evaluation-9813a931b3d4
https://towardsdatascience.com/rag-evaluation-using-ragas-4645a4c6c477
👍16❤10
مدل یا سامانه؟!
در پیادهسازی اپلیکیشنهای مبتنی بر هوش مصنوعی دو رویکرد کلی وجود دارد:
۱. ساخت یک مدلِ End-to-End که صفر تا صد کار را از روی دادهی آموزشی، یادگرفته و در قالب یک مدلِ یکپارچه به انجام کار (Task) میپردازد.
۲. ساخت یک سامانهی Compound AI که از اجزای مختلف از جمله مدلها و ماژولها و ابزارهای نرمافزاری مختلف تشکیل شده و در قالب یک سامانهی ترکیبی، به انجام کار میپردازد. این سامانه در حین انجام کار ممکنست چندین بار، یک مدل مشخص را بهشکلهای مختلف فراخوانی کند.
روش اول سادهتر و تاحدی سریعترست. پژوهشی موسوم به Scaling Laws هم نشان میدهد که با افزایش پیچیدگی محاسباتی مدل میتوان به نتایج بهتری رسید. ازطرفی بهینهسازی کلیِ این روش سادهست چون برخلافِ یک سامانهی AI متشکل از اجرایی مثل موتور جستجو، همهی اجزای یک مدل End-to-End مشتقپذیر و قابلبهینهسازیاند.
بااینحال، روندها نشاندهندهی ایناند که علاقهمندی بیشتر بهسمت طراحی سامانهها (System Design) و بهرهگیری از ابزارها و روشهای موجود در مهندسیست. در زیر، شش دلیل برای این علاقهمندی آمدهست.
- وقتی از مدلها استفاده میکنیم، هزینهی تمامشده و دقت، مشخص و ثابتست اما اپلیکیشنها و بخشهای مختلف آنها، بسته به کاربرد، نیاز به دقت و هزینهی متفاوت دارند. مثلا وقتی قرارست یک متن حقوقی دقیق نوشته شود، هزینهی GPT-4o اصلا برای کاربر دغدغه نیست اما زمانی که اپلیکیشنی مثل GitHub Copilot قصد کمک به تکمیل کد برنامهنویس در هر خط را دارد، احتمالا استفاده از یک مدل سادهتر و ارزانتر مطلوبترست.
- در بعضی از تسکها (مثلا حل مسابقات برنامهنویسی)، افزایش جدی هزینهی آموزش مدل (مثلا افزایش سهبرابری)، باعث بهبود عملکرد مدل میشود ولی نه زیاد (مثلا دقت ۳۰ درصد میشه ۳۵ درصد) اما فقط با مهندسیِ یک سامانهی Compound AI ممکنست بهبود بسیاری حاصل شود (مثلا ۸۰ درصد) - منبع
- مدلهای ML (با وجود قابلیت Generalization) محدود به دادههای آموزشیاند ولی اپلیکیشنهای AI نیاز به پویایی دارند. استفاده از یک سامانه بهجای یک مدل، امکان استفادهی لحظهای از جستجو و بازیابی بهمنظور دریافت اطلاعت جدید و دقیق را به اپلیکیشن اضافه میکند. با دسترسی مستقیم به مراجع خارجی در کنار دانش داخلیِ مدل، اپلیکیشن قابلیت شفافیت (Transparency) و تفسیرپذیری (Interpretability) بیشتری پیدا میکند که این قدم مهمی در راستای Trustworthy AI است.
- خیلی از دادهها را بهعلت رعایت مسايل مربوط به privacy و copyright و safety نمیتوان موقع آموزش به مدل نشان داد. استفاده از سامانههای Compound AI به ما اجازهی کنترل دادهها باتوجه به سطح دسترسی افراد (ACL) را میدهد. بهاین شکل اپلیکیشن در هنگام استفادهی کودک به دادههای مشخصتر و امنتری دسترسی دارد، فایلهای شخصی افراد فقط براستفادهی خودشان قابل بازیابیاند، برای دسترسی به بعضی از دادهها میتوان حقوق مولف را درنظر گرفت و …
- مدلها پتانسیل بالایی در تولید توهم (Hullucination) دارند. استفاده از ابزارهایی مثل Guardrails و Outlines و LMQL و SGLang در سامانههای AI، به ما اجازهی ارزیابی، پایش و پالایش خروجی مدل را میدهند. این موضوع میتواند در کنترل سوگیریهای اجتماعی (Social Bias) ازجمل سوگیریهای سیاسی، نژادی، مذهبی و … کمککننده باشد. پژوهش جدیدی نشان میدهد که بیشتر مدلهای زبانی موجود (بهعلت سوگیری در دادههای جمعآوریشده از رسانهها) ازنظر سیاسی چپ-گرااند.
- با اینکه همهی اجزای یک سامانهی AI مشتقپذیر نیستند اما ابزارهایی مانند DSPy معرفی شدهاند که بهروشهایی سعی در بهینهکردن کل پایپلاین سامانه بهصورت End-to-End دارند.
مرجع: بخشهای از نوشتار بالا از این بلاگپست برداشت شدهست.
در پیادهسازی اپلیکیشنهای مبتنی بر هوش مصنوعی دو رویکرد کلی وجود دارد:
۱. ساخت یک مدلِ End-to-End که صفر تا صد کار را از روی دادهی آموزشی، یادگرفته و در قالب یک مدلِ یکپارچه به انجام کار (Task) میپردازد.
۲. ساخت یک سامانهی Compound AI که از اجزای مختلف از جمله مدلها و ماژولها و ابزارهای نرمافزاری مختلف تشکیل شده و در قالب یک سامانهی ترکیبی، به انجام کار میپردازد. این سامانه در حین انجام کار ممکنست چندین بار، یک مدل مشخص را بهشکلهای مختلف فراخوانی کند.
روش اول سادهتر و تاحدی سریعترست. پژوهشی موسوم به Scaling Laws هم نشان میدهد که با افزایش پیچیدگی محاسباتی مدل میتوان به نتایج بهتری رسید. ازطرفی بهینهسازی کلیِ این روش سادهست چون برخلافِ یک سامانهی AI متشکل از اجرایی مثل موتور جستجو، همهی اجزای یک مدل End-to-End مشتقپذیر و قابلبهینهسازیاند.
بااینحال، روندها نشاندهندهی ایناند که علاقهمندی بیشتر بهسمت طراحی سامانهها (System Design) و بهرهگیری از ابزارها و روشهای موجود در مهندسیست. در زیر، شش دلیل برای این علاقهمندی آمدهست.
- وقتی از مدلها استفاده میکنیم، هزینهی تمامشده و دقت، مشخص و ثابتست اما اپلیکیشنها و بخشهای مختلف آنها، بسته به کاربرد، نیاز به دقت و هزینهی متفاوت دارند. مثلا وقتی قرارست یک متن حقوقی دقیق نوشته شود، هزینهی GPT-4o اصلا برای کاربر دغدغه نیست اما زمانی که اپلیکیشنی مثل GitHub Copilot قصد کمک به تکمیل کد برنامهنویس در هر خط را دارد، احتمالا استفاده از یک مدل سادهتر و ارزانتر مطلوبترست.
- در بعضی از تسکها (مثلا حل مسابقات برنامهنویسی)، افزایش جدی هزینهی آموزش مدل (مثلا افزایش سهبرابری)، باعث بهبود عملکرد مدل میشود ولی نه زیاد (مثلا دقت ۳۰ درصد میشه ۳۵ درصد) اما فقط با مهندسیِ یک سامانهی Compound AI ممکنست بهبود بسیاری حاصل شود (مثلا ۸۰ درصد) - منبع
- مدلهای ML (با وجود قابلیت Generalization) محدود به دادههای آموزشیاند ولی اپلیکیشنهای AI نیاز به پویایی دارند. استفاده از یک سامانه بهجای یک مدل، امکان استفادهی لحظهای از جستجو و بازیابی بهمنظور دریافت اطلاعت جدید و دقیق را به اپلیکیشن اضافه میکند. با دسترسی مستقیم به مراجع خارجی در کنار دانش داخلیِ مدل، اپلیکیشن قابلیت شفافیت (Transparency) و تفسیرپذیری (Interpretability) بیشتری پیدا میکند که این قدم مهمی در راستای Trustworthy AI است.
- خیلی از دادهها را بهعلت رعایت مسايل مربوط به privacy و copyright و safety نمیتوان موقع آموزش به مدل نشان داد. استفاده از سامانههای Compound AI به ما اجازهی کنترل دادهها باتوجه به سطح دسترسی افراد (ACL) را میدهد. بهاین شکل اپلیکیشن در هنگام استفادهی کودک به دادههای مشخصتر و امنتری دسترسی دارد، فایلهای شخصی افراد فقط براستفادهی خودشان قابل بازیابیاند، برای دسترسی به بعضی از دادهها میتوان حقوق مولف را درنظر گرفت و …
- مدلها پتانسیل بالایی در تولید توهم (Hullucination) دارند. استفاده از ابزارهایی مثل Guardrails و Outlines و LMQL و SGLang در سامانههای AI، به ما اجازهی ارزیابی، پایش و پالایش خروجی مدل را میدهند. این موضوع میتواند در کنترل سوگیریهای اجتماعی (Social Bias) ازجمل سوگیریهای سیاسی، نژادی، مذهبی و … کمککننده باشد. پژوهش جدیدی نشان میدهد که بیشتر مدلهای زبانی موجود (بهعلت سوگیری در دادههای جمعآوریشده از رسانهها) ازنظر سیاسی چپ-گرااند.
- با اینکه همهی اجزای یک سامانهی AI مشتقپذیر نیستند اما ابزارهایی مانند DSPy معرفی شدهاند که بهروشهایی سعی در بهینهکردن کل پایپلاین سامانه بهصورت End-to-End دارند.
مرجع: بخشهای از نوشتار بالا از این بلاگپست برداشت شدهست.
👍16❤7
پژوهشگران، یک AI Agent مبتنی بر LLM را معرفی کردند که قادرست مقالههای علمی هوش مصنوعی در سطح کنفرانس را نوشته و ارزیابی کند!
https://arxiv.org/pdf/2408.06292
https://arxiv.org/pdf/2408.06292
👍19