The Debugging Diaries
88 subscribers
63 photos
47 videos
33 files
73 links
گوشه‌ای برای یادداشت و ثبت مطالب مربوط به پایتون، یادگیری عمیق و هوش و هر چی که مربوط به تکنولوژی باشه.
加入频道
Forwarded from School of AI
واچکانش دانش (Knowledge Distillation) در یادگیری ماشین چیست و چه کاربردی دارد؟

در شرایطی که محدودیت در توان پردازشی داریم (مثلا هنگام توسعه‌ی یک اپلیکیشن موبایل)، دانش موجود در یک مدل یادگیری ماشینِ نسبتا بزرگ، پیچیده و کند (Base Model) را به‌صورت چکیده به یک مدل بسیار ساده‌تر، کوچک‌تر و سریع‌تر (Target Model) منتقل می‌کنیم به‌نحوی که عمل‌کردی مشابه با مدل اصلی را با هزینه‌ی پردازشی بسیار پایین‌تر داشته باشد. به این کار، واچکانش دانش گفته می‌شود.

مثلا فرض کنید در حال توسعه‌ی یک مدل تشخیص شیء (Object Detection) برای پیداکردن ره‌گذرهای پیاده و همچنین خودرو‌های موجود در تصویر یک خیابان هستید. قدیم‌تر، برای انجام این تسک، نیاز به آموزش یک مدل Object Detection برروی یک مجموعه‌داده‌ی برچسب‌خورده داشتیم. امروز اما به‌طورمعمول، از مدل‌های بنیادین (Foundation Models) ازپیش‌آموزش‌دیده استفاده می‌شود که به‌صورت Zero-shot (بدون مشاهده‌ی داده‌ی آموزشی جدید) قابل بهره‌برداری‌اند. مثلا مدل Groundig DINO یا مدل YOLO-World (که به آن‌ها مدل‌های Open Vocabulary Detection هم گفته می‌شود) یک پرامپت متنی از شما دریافت کرده و شیء(های) متناظر با آن را در تصویر شناسایی می‌کند. مثلا کافی‌ست واژه‌هایی هم‌چون vehicle یا sedan car یا bike یا human یا … را به‌عنوان متن ورودی به آن بدهیم و مدل اشیای مورد نظر را تشخیص می‌دهد.
مشکل این‌جاست که مدل‌های Open Vocabulary Detection، دانش نهفته‌ی زیادی در مورد اشیای مختلف (مثلا اسب و هواپیما و …) دارند که در مسئله‌ی ما بی‌اهمیت‌اند. بنابراین، می‌توانیم با ارائه‌ی پرامپت مناسب به مدل Grounding DINO یک مجموعه تصویر را به‌صورت خودکار برچسب زده و از این مجموعه‌داده‌ی حاصل برای آموزش یک مدل شناسایی شیء ساده‌تر مانند YOLO-NAS یا YOLOv8 استفاده کنیم. در این حالت، بخش مور نیاز ما از دانش موجود در Grounding DINO به‌صورت چکیده به مدل YOLO-NAS منتقل (واچکانی) می‌شود و می‌توانیم ازین مدل ساده‌تر در پروژه استفاده کنیم.

برای این کار می‌توانید از پکیج autodistill در پایتون استفاده کنید.


pip install autodistill autodistill-grounding-dino autodistill-yolonas supervision



from autodistill_grounding_dino import GroundingDINO
from autodistill.detection import CaptionOntology
from autodistill_yolonas import YOLONAS


PROMPT = “any vehicle”
CLASS = “vehicle”

IMAGES_DIR_PATH = “path/to/images/dir”
DATASET_PATH = ”path/to/store/dataset”

base_model = GroundingDINO(ontology=CaptionOntology({“PROMPT: CLASS}))
target_model = YOLONAS("yolo_nas_s.pt")

base_model.label(input_folder=IMAGES_DIR_PATH, output_folder=DATASET_PATH")
target_model.train(DATASET_PATH, epochs=20)
pred = target_model.predict(DATASET_PATH+”/train/images/image.jpg", confidence=0.5)
Forwarded from School of AI
یکی دیگه از VLM ها که به‌تازگی توسط HuggingFace معرفی شده، Idefics2 است.

این مدل نیز مانند PaliGemma هشت میلیارد پارامتر دارد.

قابلیت دریافت دنباله‌ای از تصاویر (مثلا تکه‌ای از یک ویدئو) را دارد.

تصاویر با رزولوشن و aspect ratio خودشان پردازش می‌شوند.

قابلیت OCR بسیار خوبی دارد.

تحت مجوز Apache 2.0 منتشر شده و استفاده از آن برای هر منظوری بلامانع‌ست.


بلاگ‌پست معرفی:
https://huggingface.co/blog/idefics2

مقاله:
https://arxiv.org/pdf/2405.02246

مستندات:
https://huggingface.co/docs/transformers/main/en/model_doc/idefics2

فاین‌تیون کردن برای استخراج اطلاعات از قبض:
https://github.com/NielsRogge/Transformers-Tutorials/blob/master/Idefics2/Fine_tune_Idefics2_for_JSON_extraction_use_cases_(PyTorch_Lightning).ipynb
Forwarded from School of AI
شاید شنیده باشید که در هنگام آموزش شبکه‌های عصبی، وقتی اندازه‌ی batch ها را x برابر می‌کنید، به‌تر‌ست نرخ آموزش را نیز x برابر (اگر الگوریتم آموزش SGD است) و یا x√ برابر (اگر الگوریتم آموزش Adam است) کنید.

مثلا در LLM ها که بیش‌تر از الگوریتم آموزشی Adam استفاده می‌شود، اندازه‌ی batch ها را تا حدی که GPU شما خطای Out_Of_Memory نمی‌دهد (به صورت توانی از ۲) افزایش دهید. هر بار که اندازه batch را ۲ برابر می‌کنید، نرخ آموزش را ۱/۴ برابر کنید.

این مقاله‌ی جالب از دانشگاه پرینستون، به کمک معادلات دیفرانسیل تصادفی، الگوی کارایی برای تغییر هایپرپارامترها (مثل learning rate) با افزایش batch size ارائه می‌دهد.

https://www.cs.princeton.edu/~smalladi/blog/2024/01/22/SDEs-ScalingRules/

پی‌نوشت:
معمولا در عمل، نرخ آموزش هرچقدر هم که باشد، در طی epoch ها، ابتدا از 0.1 نرخ آموزش شروع کرده و در ده درصد ابتدایی مسیر آموزش، این نرخ را به‌صورت خطی زیاد کرده تا وقتی ده درصد epoch ها طی شد، به نرخ اصلی رسیده باشیم. از آن‌جا به بعد (۹۰ درصد باقی epoch ها) نرخ آموزش به‌صورت کسینوسی کم می‌شود.
مدل Qwen2 منتشر شد، قبلا راجب مدل اولش گفتم و واقعاً عملکرد خوبی داشت

اما چندتا نکته قابل توجه داره این مدل:
1- عملکرد بهتر از Llama3
2- سایز بزرگتر برای Context-length
3- انتشار مدل در ۵ سایز از 0.5B تا 72B پارامتر
4- و البته از همه مهمتر پشتیبانی از 29 زبان

اما چیزی که بسیار توجه جلب می‌کنه؛ امتیازش روی تست
MMLU-Pro
هست که :
ChatGpt4o : 72.2
Claude 3 Opus : 68.4
Qwen2 : 64.4
Llama3 : 56.2



Blog Post

مدل ۷۲ میلیارد پارامتری دمو هم داره در حال حاضر.


اضافه کنم :
فراموش نکنید Phi3 فقط زبان انگلیسی رو پشتیبانی می‌کنه.
برای همین توی این لیست راجبش چیزی نگفتم.
Forwarded from DLeX: AI Python (NaviD DariYa)
Forwarded from School of AI (Hamidreza Hosseinkhani)
⚠️⚠️ توجه: مطمئنا این پست همون چیزیه که خیلی از عزیزان دنبالش‌اند ⚠️⚠️

هوش مصنوعی خیلی سریع داره رشد می‌کنه جوری که:
خیلی‌ها نمی‌دونن از کجا شروع کنن و در کدوم مسیر ادامه بدن!
نمی‌دونن کدوم کورس/کتاب قدیمیه و دیگه به درد نمی‌خوره و کدوم رو باید ببینن!
نمی‌دونن کدوم مقاله مهمه که بخونن و کدوم مقاله دیگه به‌روز نیست!

حالا Ilya Sutskever که یکی از به‌ترین و پرکارترین پژوهش‌گرهای هوش مصنوعی‌ست، یک لیست ۲۷تایی از کورس‌ها، کتاب‌ها، پست‌ها و مقاله‌های مهم آماده کرده که به اعتقاد ایشان (که از ستون‌های AI اند) مسلط‌شدن به این ۲۷ مورد، باعث می‌شه شما به ۹۰ درصد چیزهایی که در AI امروز مهم‌اند، مسلط شوید.

این یک مسیر شفاف و عالی به‌خصوص برای دانشجویانی‌ست که تازه وارد این مسیر شده‌اند.

https://arc.net/folder/D0472A20-9C20-4D3F-B145-D2865C0A9FEE
Forwarded from Deep Time
یک نفر در Stackoverflow سوال کرده بود "چطور میشه گپ بین دقت داده train و test رو در مدل‌های Machine Learning حل کرد"؟ سوال برای یک مسئله سری زمانی بود. اول با خودم گفتم آقا خسته نباشی ملت صبح و شب در تلاش برای همین کار هستن تا هوش مصنوعی بهتر یاد بگیره. اما خوب تصمیم گرفتم به سوالش جواب بدم و حتی vote منفی سوالش رو که بقیه داده بودن خنثی کردم. روند توسعه مدل Machine Learning خیلی اوقات خوب انجام نمیشه و موارد پایه‌ای دیتاساینس و ماشین لرن رعایت نمیشه. مواردی مثل مانیتور کردن bias variance، شروع با مدل ساده و ارتقا با توجه به بایاس واریانس، experiment tracking و بعضی روش‌های Advanced رو در 8 مورد نوشتم.
Link
پ.ن: تمامی LLM ها و چت جی پی تی از منابعی مثل Stackoverflow کار و ریزه کاری کدزنی رو یاد گرفتن و باهوش شدن. پس مشارکت در Stackoverflow فراموش نشه.

@deeptimeai
اگر شما هم مثل ما توی پروداکشن مشکل context دارید (با مدل‌های بزرگ که امکان ترین و ... نیست)
حتما به این مقاله نگاه کنید

Arxiv Link

16K —> 256K

ادعای بزرگ و جذابی هست
Forwarded from مرجع دیتاست فارسی (محمد)
دیتاست مربوط به instructهای فارسی مناسب برای فاین تیون کردن مدل های زبانی

📱 GitHub Repo
Forwarded from مرجع دیتاست فارسی (محمد)
اگر به حوزه پردازش زبان طبیعی (NLP) و مدل‌های زبانی هوش مصنوعی علاقه‌مندید، این مجموعه داده برای شماست! این پروژه با هدف ارزیابی عملکرد ChatGPT برای زبان فارسی ایجاد شده است. شامل مجموعه‌ای متنوع از سوالات و پاسخ‌ها به زبان فارسی می‌باشد که می‌تواند در پروژه‌های مرتبط با توسعه مدل‌های AI و NLP بسیار کاربردی باشد. می‌توانید از این دیتاست برای ارزیابی و بهبود مدل‌های زبان فارسی در اپلیکیشن‌های چت‌بوت، ترجمه ماشینی و سایر کاربردهای مشابه استفاده کنید.

📱 GitHub Repo
Forwarded from Python4Finance
معرفی ماژول PyCaret یک ماژول بی نظیر برای یادگیری ماشین
یکی از ویژگی های بسیار جالب و هیجان انگیز پایتون ماژول های بسیار فراوانی است که دست ما را برای توسعه نرم افزارها باز می کند. PyCaret یک ماژول متن باز برای انجام کارهای یادگیری ماشین است که با حداقل ترین حالت کد نویسی، نیازهای شما را برای اجرای مدلها برآورده می کند.
یکی از ویژگی های جذاب این ماژول، مقایسه مدلها با یکدیگر در یک جدول مقایسه ای است.
این ماژول برای دانشجویان کارشناسی ارشد و دکتری که دنبال انجام سریع مدلها و مقایسه آنها با یکدیگر هستند بسیار کاربردی و مفید خواهد بود.

🌐 لینک گیت هاب ماژول

#یادگیری_ماشین
#Machine_Learning
#PyCaret

پایتون برای مالی

🆔 t.me/python4finance
🆔 ble.ir/python4finance
https://focker.ir/

راهنمای برای دور زدن تحریم داکر
این تصویر به دسته‌بندی و توضیح حوزه‌های مختلف هوش مصنوعی (AI) می‌پردازد:

🤖 هوش مصنوعی (AI): ساخت ماشین‌هایی با رفتار هوشمند (Intelligent Behavior).

یادگیری ماشین (ML):

🏷 نظارت‌شده (Supervised Learning): آموزش با داده‌های برچسب‌دار.

🔍 بدون نظارت (Unsupervised Learning): شناسایی الگوها در داده‌های بدون برچسب.

🏆 تقویتی (Reinforcement Learning): یادگیری از طریق پاداش و مجازات.

🌐 یادگیری عمیق (Deep Learning): استفاده از شبکه‌های چندلایه (Multi-layered Networks) برای مدل‌سازی الگوهای پیچیده.

🧠 شبکه‌های عصبی عمیق (DNNs): شبکه‌های چندلایه‌ای ضروری برای یادگیری عمیق

🔬 شبکه‌های عصبی (Neural Networks): مدل‌های الهام گرفته از مغز برای تشخیص الگوها.

📷 شبکه‌های عصبی پیچشی (CNNs): شبکه‌هایی برای شناسایی تصاویر.

🖼 هوش مصنوعی تولیدی (Generative AI): ایجاد داده‌های جدید مشابه با داده‌های آموزشی، با استفاده از GANs و VAEs.

📝 مدل‌های زبان مبتنی بر ترنسفورمر: معماری‌های تخصصی برای پردازش زبان طبیعی مثل ChatGPT.


برای آموزش علم داده به جمع ما بپیوندید: 👇

📊👨‍🏫 @DataPlusScience | @DataScience
Forwarded from DeepMind AI Expert (Farzad)
◾️ List of SQL Data Science Interview Questions


1️⃣ Amazon company SQL interview question

📎 Link: Amazon SQL Interview

2️⃣ Airbnb SQL interview question

📎 Link: Airbnb SQL Interview Question

3️⃣ Adobe SQL Interview Question

📎 Link: Adobe SQL Interview Question

4️⃣ Spotify SQL Interview Question

📎 Link: Spotify SQL Interview Question

5️⃣ L&T Company SQL Interview Question

📎 Link: L&T SQL Interview Question

6️⃣ Ameriprise LLC SQL query

📎 Link: Ameriprise LLC SQL Interview

7️⃣ SQL query from Tiger Analytics

📎 Link: Tiger Analytics SQL Interview

8️⃣ PWC SQL Interview Question

📎 Link: PWC SQL Interview Question

9️⃣ Honeywell SQL Interview Question

📎 Link: Honeywell SQL Interview

1️⃣ Angel One Company SQL Interview Question

📎 Link: Angel One SQL Interview

1️⃣ SQL interview questions of FAANG companies

📎 Link: FAANG SQL Interview Question

1️⃣ Accenture SQL Interview Question

📎 Link: Accenture SQL Interview

#مصاحبه #منابع

🔸 مطالب بیشتر 👇👇

@AI_DeepMind
🔸 @AI_Person
@DataPlusScience__STATISTICS QUESTIONS FOR DATA SCIENCE.pdf
2.5 MB
۱۰۹ سوال آمار برای علم داده

این فایل شامل ۱۰۹ سوال مهم آماری برای مصاحبه‌های شغلی در زمینه علم داده (Data Science) است. با مطالعه این سوالات می‌توانید آمادگی لازم برای سوالات رایج در مصاحبه‌های شغلی را به دست آورید.

📑 سرفصل‌های مطالب:

📊 مفاهیم آماری مهم:
اندازه‌گیری گرایش مرکزی (Measure of Central Tendency)
اندازه‌گیری پراکندگی (Measure of Dispersion)
کوواریانس و همبستگی (Covariance and Correlation)
تابع توزیع احتمالی (Probability Distribution Function)
قضیه حد مرکزی (Central Limit Theorem)
آزمون فرضیه (Hypothesis Testing)

🔍 تحلیل اکتشافی داده (EDA):
تحلیل بصری و آماری داده‌ها
شناسایی الگوها

📈 انواع داده‌ها:
داده‌های کمی (Quantitative Data)
داده‌های کیفی (Qualitative Data)

🧮 تحلیل داده‌ها:
تک‌متغیره، دومتغیره و چندمتغیره

⚠️ پرکردن داده‌های گمشده:
روش‌های ساده و پیچیده

🧑‍🏫 آمار توصیفی و استنباطی:
خلاصه‌سازی ویژگی‌های داده‌ها




برای آموزش علم داده به جمع ما بپیوندید: 👇

📊👨‍🏫 @DataPlusScience | @DataScience
@DataPlusScince__A visual Intoroduction to Deep Learning.pdf
5.3 MB
🌟آموزش بصری یادگیری عمیق

📘 این کتاب به شما کمک می‌کند تا به صورت بصری و بدون استفاده از فرمول‌های پیچیده ریاضی و کدنویسی، مفاهیم یادگیری عمیق را درک کنید.

🔍 مباحث شامل: شبکه‌های عصبی، رگرسیون خطی و غیرخطی، طبقه‌بندی دودویی و چندکلاسه، و...

👨‍💻 نویسنده: معر عامر، دانش‌آموخته‌ی امپریال کالج لندن و متخصص یادگیری عمیق.


#یادگیری_عمیق #کتاب_الکترونیک #یادگیری_ماشین #هوش_مصنوعی #آموزش


برای آموزش علم داده به جمع ما بپیوندید: 👇

📊👨‍🏫 @DataPlusScience | @DataScience