کتابخانه مهندسی کامپیوتر و پایتون
30.7K subscribers
729 photos
21 videos
426 files
443 links
@alloadv تبلیغات


ادمین : @maryam3771
Download Telegram
MIT Courses for Comp Sc & Machine Learning

❯ 6.042J - Mathematics for Computer Science
❯ 6.100L - Programming in Python
❯ 6.006 - Introduction to Algorithms
❯ 6.036 - Introduction to ML
❯ 6.S191 - Introduction to DL
❯ 6.034 - AI
❯ 6.5830 - DBMS
❯ 6.1810 - OS
❯ 14.15J - Networking

❯ 18.01 - Single Variable Calculus
❯ 18.02 - Multi Variable Calculus
❯ 18.05 - Introduction to Probability and Statistics
❯ 18.06 - Linear Algebra
❯ 6.092 - Programming in Java
❯ 6.S096 - C and C++
❯ 6.867 - Advanced ML
❯ 6.875 - Cryptography
❯ 6.045J - Automata Theory
❯ 6.046J - Design and Analysis of Algorithms
❯ 6.851 - Advanced Data Structures
❯ 6.852J - Distributed Algorithms
❯ 6.854J - Advanced Algorithms
❯ 18.657 - Mathematics of Machine Learning
❯ 18.S191 - Introduction to Computational Thinking
❯ 18.S096 - Matrix Calculus for ML

🔗Browse all free courses from here:

https://ocw.mit.edu/search/



#یادگیری_ماشین #Machine_Learning
دانشکده مهندسی کامپیوتر 👇👇

🆔 @programmers_street
یه pdf عالی برای یادگیری ماشین لرنینگ از Andrew Ng
Machine Learning yearning”

An introductory FREE book about developing ML algorithms by Andrew Ng.

🔗https://home-wordpress.deeplearning.ai/wp-content/uploads/2022/03/andrew-ng-machine-learning-yearning.pdf



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

🆔 @programmers_street
6👍1
Stanford’s CS229 - Machine Learning

A complete lecture notes by Andrew Ng (227 pages).

https://cs229.stanford.edu/main_notes.pdf



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

🆔 @programmers_street
👍2
🔗 Basics of Machine Learning 👇👇

Machine learning is a branch of artificial intelligence where computers learn from data to make decisions without explicit programming. There are three main types:


1. Supervised Learning: The algorithm is trained on a labeled datasets, learning to map input to output. For example, it can predict housing prices based on features like size and location.

2. Unsupervised Learning: The algorithm explores data patterns without explicit labels. Clustering is a common task, grouping similar data points. An example is customer segmentation for targeted marketing.

3. Reinforcement Learning: The algorithm learns by interacting with an environment. It receives feedback in the form of rewards or penalties, improving its actions over time. Gaming AI and robotic control are applications.

📖 Key concepts include:

- Features and Labels: Features are input variables, and labels are the desired output. The model learns to map features to labels during training.

- Training and Testing: The model is trained on a subset of data and then tested on unseen data to evaluate its performance.

- Overfitting and Underfitting: Overfitting occurs when a model is too complex and fits the training data too closely, performing poorly on new data. Underfitting happens when the model is too simple and fails to capture the underlying patterns.

- Algorithms: Different algorithms suit various tasks. Common ones include linear regression for predicting numerical values, and decision trees for classification tasks.

In summary, machine learning involves training models on data to make predictions or decisions. Supervised learning uses labeled data, unsupervised learning finds patterns in unlabeled data, and reinforcement learning learns through interaction with an environment. Key considerations include features, labels, overfitting, underfitting, and choosing the right algorithm for the task.



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

🆔 @programmers_street
👍2
اگه میخواهید به مبحث آمار و احتمال برای ورود به حوزه یادگیری ماشین مسلط شوید پیشنهاد میکنم از این پلی لیست استفاده کنید

https://www.youtube.com/playlist?list=PLBh2i93oe2qswFOC98oSFc37-0f4S3D4z



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

🆔 @programmers_street
3
Linear Algebra was taught using Sheldon Axler's book for Mtech AI at IISc.
The book's author has made a course on Linear Algebra and released it for free!

https://www.youtube.com/playlist?list=PLGAnmvB9m7zOBVCZBUUmSinFV0wEir2Vw



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

🆔 @programmers_street
1
دوره رایگان یادگیری ماشین به زبان فارسی

این لیست شامل جلسات دوره آموزش یادگیری ماشین تدریس شده توسط دکتر پروین رزاقی است.

این دوره مفاهیم پایه و پیشرفته یادگیری ماشین را با استفاده از اسلایدهای آموزشی و مثالهای کاربردی پوشش میدهد.

مناسب برای دانشجویان دانشگاهی و علاقه مندان به یادگیری ماشين.

https://www.youtube.com/playlist?list=PL54UOH4SJnPmCTApj5JGgUcsVPYytf2zw

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

🆔 @programmers_street
دوره های یادگیری ماشین از دانشگاه Stanford

❯ CS221 - Artificial Intelligence
❯ CS229 - Machine Learning
❯ CS230 - Deep Learning
❯ CS234 - Reinforcement Learning
❯ CS224U - NL Understanding
❯ CS224N - NLP with Deep Learning

مشاهده در یوتیوب 👇


1. CS229 - Machine Learning
     - By Andrew Ng :
link

2. CS230 - Deep Learning
     - By Andrew Ng :
link

3. CS229M - Machine Learning Theory: limk

4. CS234 - Reinforcement Learning : link

5. CS224U - Natural Language Understanding :
link

6. CS224N - NLP with Deep Learning: link

7. CS221 - Artificial Intelligence :
link


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

🆔 @programmers_street
👍1
"Foundations of Machine Learning" - from MIT

This 505-pages book for beginners is 💯 FREE.

https://cs.nyu.edu/~mohri/mlbook/


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

🆔 @programmers_street
یکی از دوستانم که اصلاً تو خط تکنولوژی نیست، ازم می‌پرسید ChatGPT چطوری کار می‌کنه. منم سعی کردم یه توضیح ساده و سریع بدم. گفتم اینجا هم بذارمش که بعداً به کار بقیه هم بیاد!
البته جزییات فنی‌ش خیلی بیشتر از اینه، ولی این یه خلاصه TL;DR بود که امیدوارم به دردتون بخوره :))

How LLMs works ?

فرض کن می‌خوایم از صفر شروع کنیم. LLM در اصل یه جور سیستم خیلی پیشرفته‌ست که با متن (و گاهی چیزای دیگه) کار می‌کنه. اول کار، هر متنی که بهش می‌دیم رو به یه زبون عددی تبدیل می‌کنه که خودش بفهمه. به این کار می‌گن tokenization. یعنی متن رو به تکه‌های کوچیک (مثل کلمه یا بخشی از کلمه) تبدیل می‌کنه و به هر تکه یه شماره می‌ده که بهش می‌گن token. مثلاً کلمه "سلام" ممکنه یه token بشه، یا یه کلمه پیچیده‌تر مثل "ناباورانه" بشکنه به "نا" و "باورانه". این کار با الگوریتم‌هایی مثل Byte Pair Encoding (BPE) انجام می‌شه و یه دایره لغات درست می‌کنه که مثلاً تو GPT-4 حدود 100 هزار token داره. حالا متن ما به یه رشته عدد تبدیل شده که مدل می‌تونه باهاش کار کنه.

بعدش می‌رسیم به اصل ماجرا: LLMs از یه neural network به اسم Transformer استفاده می‌کنن. این شبکه یه سری عدد (همون token‌ها) رو می‌گیره و حدس می‌زنه که بعدش چه token‌ای باید بیاد. این حدس زدن بر اساس احتمالاتیه که مدل تو مرحله pre-training یاد گرفته. تو این مرحله، مدل رو با مقدار عظیمی داده (مثلاً 15 تریلیون token از اینترنت) تمرین می‌دن که بتونه الگوهای زبون رو بفهمه. کارش اینه که ببینه تو این داده‌ها، بعد از یه جمله یا یه کلمه، معمولاً چی میاد. اینجوری میلیاردها parameter (وزن‌های داخل شبکه) رو تنظیم می‌کنه تا پیش‌بینی‌هاش دقیق‌تر بشه.

وقتی مدل آموزشش تموم شد، می‌تونی ازش استفاده کنی. به این کار می‌گن inference. یه متن اولیه (مثلاً یه سوال) بهش می‌دی، اون شروع می‌کنه به پیش‌بینی token بعدی، یه نمونه از احتمالات انتخاب می‌کنه، به متن اضافه می‌کنه و همین‌جوری ادامه می‌ده. مثل یه سیستم autocomplete خیلی باهوشه که جمله‌به‌جمله می‌سازه. چون انتخاب token‌ها یه مقدار تصادفیه، هر بار که اجرا می‌کنی ممکنه جواب یه کم فرق کنه.

تا اینجا، این یه base model‌ه، یعنی فقط می‌تونه متنایی شبیه چیزایی که تو اینترنت دیده تولید کنه. ولی برای اینکه واقعاً به‌دردبخور بشه (مثلاً جواب سوال بده)، باید یه مرحله دیگه بره که بهش می‌گن post-training. اینجا دو تا تکنیک اصلی داره:
اولی : Supervised Fine-Tuning (SFT) به مدل یاد می‌دن که چجوری مثل یه دستیار جواب بده، مثلاً با تمرین روی مکالمه‌ها یا سوال‌وجواب‌ها.

دومی : Reinforcement Learning (RL)مدل رو با پاداش دادن به جواب‌های درست (مثلاً تو ریاضی یا کدزنی) بهتر می‌کنن تا بتونه استدلال کنه و مثلاً مسائل رو قدم‌به‌قدم حل کنه.

تا اینجا، تقریبا کل داستان LLMs خلاصه گفتیم: متن رو به token تبدیل می‌کنه، با Transformer پیش‌بینی می‌کنه چی باید بیاد، و با post-training به بلوغ میرسه:))

مدل‌های multimodalهم بدونی بد نیست . اینا همون LLMs‌ن، ولی یه قدم جلوتر. اینجا دیگه فقط با متن کار نمی‌کنن، بلکه با چیزای دیگه مثل عکس، صدا یا حتی ویدئو هم کار می‌کنن. چجوری؟
مثل قبل، همه‌چیز با tokenization شروع می‌شه. ولی حالا فقط متن نیست. مثلاً یه عکس رو به تکه‌های کوچیک (مثل پچ‌های تصویر) تقسیم می‌کنن و بهشون token می‌دن. یا یه فایل صوتی رو به شکل موج صوتی (مثل spectrogram) درمی‌آرن و به token تبدیل می‌کنن.
بعدش، همون Transformer که برای متن بود، این token‌های جدید رو هم می‌فهمه. فرقی نمی‌کنه که token از متن باشه، عکس باشه یا صدا مدل فقط یه رشته token می‌بینه و پیش‌بینی می‌کنه که بعدش چی باید بیاد.
تو مرحله آموزش، مدل رو با داده‌های مخلوط (مثلاً متن + عکس) تمرین می‌دن که بتونه ارتباط بین اینا رو بفهمه. مثلاً یاد می‌گیره که یه عکس رو توصیف کنه یا از یه صدا متن بسازه.
در کل مدل‌های multimodal همون سیستم LLM‌ن، ولی گسترش پیدا کردن که همه‌چیز رو به شکل token ببینن و بتونن بین نوعای مختلف داده (مثل متن و تصویر) ارتباط برقرار کنن.

اگر دوست داشتید عمیق تر راجب این موضوع مطالعه داشته باشید این ویدئو از آقای Andrej Karpathy رو پیشنهاد میکنم :

https://youtu.be/7xTGNNLPyMI?list=TLGGF2qs5wlgDR4zMDA0MjAyNQ

خیلی خوب و کامل توضیح دادن .
منبع

#LLM #AI #Machine_Learning


#یادگیری_ماشین #هوش_مصنوعی

🆔 @programmers_street
5👍2
اگه می‌خوای تو حوزه مهندسی یادگیری ماشین حرفه‌ای بشی، لازمه این مراحل رو طی کنی:

1. یادگیری یه زبان برنامه‌نویسی
اول از همه، باید یه زبان برنامه‌نویسی بلد باشی. پیشنهاد من برای شروع، پایتون هست که به‌طور گسترده تو یادگیری ماشین و هوش مصنوعی استفاده می‌شه. یه دوره باکیفیت برای یادگیری پایتون، کورس موشفق همدانی هست:
https://www.youtube.com/watch?v=K5KVEU3aaeQ
این دوره با تمرکز روی یادگیری ماشین طراحی شده و خیلی به‌دردت می‌خوره. اگه تازه‌کار هستی، انتخاب یه IDE خوب از نون شب واجب‌تره! از Jupyter Notebook دوری کن و به‌جاش از PyCharm یا VSCode بسته به سلیقه‌ات استفاده کن.

2. آشنایی با گیت و گیت‌هاب
مگه می‌شه برنامه‌نویس باشی و Git بلد نباشی؟ یادگیری اصول اولیه گیت خیلی ساده‌ست و کورس‌های زیادی براش وجود داره. مهم نیست کدوم کورس رو انتخاب کنی، فقط شروع کن! من خودم کیفیت ویدیوهای موشفق همدانی رو دوست دارم:
https://www.youtube.com/watch?v=8JJ101D3knE
تو همین مرحله، یه اکانت GitHub بساز و پروژه‌هاتو اونجا آپلود کن. یه پروفایل گیت‌هاب قوی حتی تو استخدام شدن هم بهت کمک می‌کنه!

3. ساختمان داده و الگوریتم
یه مهندس یادگیری ماشین دائم با داده و کدنویسی سروکار داره. پس آشنایی حداقلی با ساختمان داده و الگوریتم یه ضرورتِ. نیازی نیست خیلی عمیق بشی، اما مفاهیم پایه رو باید بلد باشی.

4. دیتابیس
دیتابیس‌ها انواع مختلفی دارن و کار باهاشون فرق می‌کنه. به‌عنوان یه مهندس یادگیری ماشین، حتماً باید بتونی داده رو از دیتابیس بخونی، پردازش کنی و نتایج رو ذخیره کنی. حداقل با SQL آشنا باش تا بتونی کوئری‌های ساده مثل SELECT یا فیلتر کردن بنویسی. اگه بتونی با SQLAlchemy هم کار کنی، که دیگه نور علی نوره!

5. ریاضیات و آمار
تا اینجا بیشتر بحث‌های مهندسی نرم‌افزار بود، ولی از اینجا به بعد کار تخصصی‌تر می‌شه. برای درک بهتر مفاهیم یادگیری ماشین، باید یه مقدار جبر خطی، آمار و احتمالات بلد باشی. خیلیا این بخش رو نادیده می‌گیرن، ولی به نظرم برای حرفه‌ای شدن، درک حداقلی از این موضوعات ضروریه.

6. پردازش داده‌ها (EDA)
شنیدی می‌گن EDA (Exploratory Data Analysis) چیه؟ این بخش یکی از مهم‌ترین قسمت‌های کار یه مهندس داده یا یادگیری ماشینه. داده خوب برای دیتاساینتیست از فرزند صالح هم عزیزتره! باید داده رو بشناسی، خوب نمایشش بدی، مشکلاتش (مثل مقادیر گمشده یا داده‌های پرت) رو تشخیص بدی و بهبودش بدی. این کار یه بارم نیست، ممکنه تو پروژه بارها به داده برگردی. می‌گن ۸۰٪ کار یه مهندس یادگیری ماشین همینه!

7. یادگیری ماشین و دیپ‌لرنینگ
حالا می‌رسیم به اصل ماجرا! این حوزه خیلی گسترده‌ست و بسته به این که بخوای روی تصویر، صوت، متن یا چیز دیگه کار کنی، نیاز به تخصص داری. پیشنهاد می‌شه مثل حرف T باشی: اطلاعات وسیع و سطحی تو همه حوزه‌ها و عمیق تو یه حوزه خاص. باید با الگوریتم‌های سنتی مثل رگرسیون، SVM و... آشنا باشی، با روش‌های دیپ‌لرنینگ مثل CNN، RNN و ترنسفورمرها هم همین‌طور. یه نیم‌نگاهی هم به Generative AI و LLMها و AI Agentها داشته باش که این روزا حسابی ترندن!

8. دیپلوی و MLOps
در نهایت، مدلت باید جایی استفاده بشه! برای این کار نیاز به API داری که زبان مشترک تو و دولوپرهای بک‌اند و فرانت‌انده. یادگیری FastAPI خیلی به‌دردت می‌خوره. اگه یه کم Flask یا Django هم بلد باشی، بد نیست. ابزار بعدی Docker هست؛ چون کدت باید روی سرور اجرا بشه. بعد از دیپلوی، باید مدلت رو مانیتور کنی تا بهترین حالت عملکردش رو پیدا کنی. یه حوزه جدید به اسم MLOps هم هست که کارش مدیریت مدل‌ها، Model Registry و مانیتورینگِ. بهتره با حداقل یکی از ابزارهای این حوزه آشنا باشی.

#road_map #python #Machine_Learning

#هوش_مصنوعی #برنامه_نویسی #پایتون #یادگیری_ماشین


🆔 @programmers_street
1