ساختمان داده.PDF
81.8 MB
📘 جزوه دستنویس کامل درس ساختمان داده از استاد راعی دانشگاه صنعتی امیرکبیر
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
🔹 ربات Optimus توسط تسلا طراحی شده تا وظایف تکراری و کارهای فیزیکی یا خطرناک رو بر عهده بگیره. این ربات انساننما از هوش مصنوعی و بینایی کامپیوتر بهره میبره تا محیطش رو شناسایی کنه و به طور مستقل کارها رو انجام بده. Optimus میتونه هم در صنعت و هم در خانه کمکرسان باشه و به آیندهای هوشمندتر نزدیکترمون کنه.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
درک ماتریس سردرگمی به خاطر اهمیتش در ارزیابی مدلهای یادگیری ماشین واقعاً ارزشش رو داره، چون میتونه دید واضحی از عملکرد مدل ارائه بده.
یک بار برای همیشه بیایم قدمبهقدم بررسی کنیم:
1️⃣مثبت واقعی (True Positive - TP): وقتی که مقدار واقعی مثبت هست و مدل هم به درستی اون رو مثبت پیشبینی کرده. این نتیجهای هست که دنبالش هستیم، مثل تشخیص صحیح بیماری در یک مدل پزشکی.
2️⃣مثبت کاذب (False Positive - FP): جایی که مدل اشتباه کرده و یک نتیجه مثبت ارائه داده در حالی که مقدار واقعی منفی بوده. این همون خطای نوع اول (Type I Error) هست. مثل اینکه به فرد سالم بگه که بیمار هست.
3️⃣منفی واقعی (True Negative - TN): این مورد یعنی مقدار واقعی منفی هست و مدل هم به درستی اونو منفی پیشبینی کرده. مثلاً به فرد سالم به درستی بگه که سالمه.
4️⃣منفی کاذب (False Negative - FN): وقتی مدل به اشتباه یک مورد مثبت رو منفی شناسایی کنه. این همون خطای نوع دوم (Type II Error) هست. مثلاً وقتی که به فرد بیمار بگه سالمه.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
یک بار برای همیشه بیایم قدمبهقدم بررسی کنیم:
1️⃣مثبت واقعی (True Positive - TP): وقتی که مقدار واقعی مثبت هست و مدل هم به درستی اون رو مثبت پیشبینی کرده. این نتیجهای هست که دنبالش هستیم، مثل تشخیص صحیح بیماری در یک مدل پزشکی.
2️⃣مثبت کاذب (False Positive - FP): جایی که مدل اشتباه کرده و یک نتیجه مثبت ارائه داده در حالی که مقدار واقعی منفی بوده. این همون خطای نوع اول (Type I Error) هست. مثل اینکه به فرد سالم بگه که بیمار هست.
3️⃣منفی واقعی (True Negative - TN): این مورد یعنی مقدار واقعی منفی هست و مدل هم به درستی اونو منفی پیشبینی کرده. مثلاً به فرد سالم به درستی بگه که سالمه.
4️⃣منفی کاذب (False Negative - FN): وقتی مدل به اشتباه یک مورد مثبت رو منفی شناسایی کنه. این همون خطای نوع دوم (Type II Error) هست. مثلاً وقتی که به فرد بیمار بگه سالمه.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
All Cheay Sheets.pdf
7.5 MB
All Cheat Sheets Machine Learning , Deep Learning , Artificial Intelligence
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
تفکر در مورد حل مسائل به روش بازگشتی نیازمند فهمیدن این است که چگونه میتوان مسئله را به زیرمسائل کوچکتر تقسیم کرد و این روند را تا رسیدن به سادهترین حالت ادامه داد. در اینجا چند مرحله و نکته برای فکر کردن به مسائل بازگشتی آورده شده:
1. تعریف پایه (Base Case):
ابتدا باید بفهمید سادهترین حالتی که برای مسئله وجود دارد چیست. این حالت پایه به بازگشت پایان میدهد. اگر حالت پایه را بهدرستی تعریف نکنید، ممکن است کد شما به بینهایت تکرار برود. مثلاً، برای مسئله فاکتوریل، حالت پایه n = 0 است، زیرا 0! = 1 است و نیازی به محاسبات بیشتر نیست.
2. تقسیم مسئله (Divide the Problem):
به مسئله بهعنوان یک ترکیب از زیرمسائل نگاه کنید. ببینید که آیا میتوانید مسئله بزرگتر را به یک یا چند زیرمسئله کوچکتر تبدیل کنید. به عنوان مثال، در فاکتوریل n! = n - (n-1)! نشان میدهد که فاکتوریل n به فاکتوریل یک عدد کوچکتر، یعنی n-1 ، وابسته است.
3. قانون بازگشتی (Recursive Case):
پس از تعریف پایه، مرحلهی بازگشت را مشخص کنید. این بخش همان قسمتی است که مسئلهی بزرگتر را به یک نسخهی کوچکتر از خودش میشکند و سپس از همان تابع برای حل آن استفاده میکند. هر بار که تابع فراخوانی میشود، یکی از زیرمسائل حل میشود.
4. تصویر ذهنی از پشتهی فراخوانی (Call Stack):
هنگام کار با بازگشت، به یاد داشته باشید که هر بار که یک تابع بازگشتی فراخوانی میشود، وضعیت فعلی تابع در پشته ذخیره میشود و سپس پس از اتمام بازگشتها از پشته خارج میشود. این کمک میکند که وضعیت هر مرحله حفظ شود. بهعنوان مثال، در مسئله هانوی، هر حرکت بین میلهها در پشته ذخیره میشود تا در پایان به راهحل کلی برسیم.
5. حل با مثالهای کوچک:
برای درک بهتر، ابتدا مسئله را با نمونههای کوچک حل کنید. مثلاً در یک تابع بازگشتی فیبوناچی، ابتدا F(2) ، سپس F(3) و به همین ترتیب تا رسیدن به جواب بزرگتر حل کنید تا الگوی حل بازگشتی مشخص شود.
6. قابلیت یادگیری (Memoization) برای بهینهسازی:
گاهی بازگشت به تکرار زیاد منجر میشود، مانند محاسبهی فیبوناچی که نیاز به محاسبه چندباره اعداد دارد. در این موارد میتوانید از تکنیک یادگیری (Memoization) استفاده کنید تا نتایج قبلی را ذخیره کرده و از دوبارهکاری جلوگیری کنید.
7. محدودیتهای بازگشت (Limitations of Recursion):
همیشه توجه داشته باشید که بازگشت در مسائل با عمق زیاد، میتواند منجر به پر شدن پشته شود و خطای Stack Overflow ایجاد کند. بنابراین در مسائل پیچیده باید دقت کنید که آیا بازگشت مناسبترین روش است یا میتوان از تکرار استفاده کرد.
در نهایت، با تمرین و تحلیل بیشتر روی مسائل مختلف، درک بهتری از کاربرد بازگشت پیدا میکنید و میتوانید الگوهای بازگشتی را راحتتر شناسایی کنید.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
1. تعریف پایه (Base Case):
ابتدا باید بفهمید سادهترین حالتی که برای مسئله وجود دارد چیست. این حالت پایه به بازگشت پایان میدهد. اگر حالت پایه را بهدرستی تعریف نکنید، ممکن است کد شما به بینهایت تکرار برود. مثلاً، برای مسئله فاکتوریل، حالت پایه n = 0 است، زیرا 0! = 1 است و نیازی به محاسبات بیشتر نیست.
2. تقسیم مسئله (Divide the Problem):
به مسئله بهعنوان یک ترکیب از زیرمسائل نگاه کنید. ببینید که آیا میتوانید مسئله بزرگتر را به یک یا چند زیرمسئله کوچکتر تبدیل کنید. به عنوان مثال، در فاکتوریل n! = n - (n-1)! نشان میدهد که فاکتوریل n به فاکتوریل یک عدد کوچکتر، یعنی n-1 ، وابسته است.
3. قانون بازگشتی (Recursive Case):
پس از تعریف پایه، مرحلهی بازگشت را مشخص کنید. این بخش همان قسمتی است که مسئلهی بزرگتر را به یک نسخهی کوچکتر از خودش میشکند و سپس از همان تابع برای حل آن استفاده میکند. هر بار که تابع فراخوانی میشود، یکی از زیرمسائل حل میشود.
4. تصویر ذهنی از پشتهی فراخوانی (Call Stack):
هنگام کار با بازگشت، به یاد داشته باشید که هر بار که یک تابع بازگشتی فراخوانی میشود، وضعیت فعلی تابع در پشته ذخیره میشود و سپس پس از اتمام بازگشتها از پشته خارج میشود. این کمک میکند که وضعیت هر مرحله حفظ شود. بهعنوان مثال، در مسئله هانوی، هر حرکت بین میلهها در پشته ذخیره میشود تا در پایان به راهحل کلی برسیم.
5. حل با مثالهای کوچک:
برای درک بهتر، ابتدا مسئله را با نمونههای کوچک حل کنید. مثلاً در یک تابع بازگشتی فیبوناچی، ابتدا F(2) ، سپس F(3) و به همین ترتیب تا رسیدن به جواب بزرگتر حل کنید تا الگوی حل بازگشتی مشخص شود.
6. قابلیت یادگیری (Memoization) برای بهینهسازی:
گاهی بازگشت به تکرار زیاد منجر میشود، مانند محاسبهی فیبوناچی که نیاز به محاسبه چندباره اعداد دارد. در این موارد میتوانید از تکنیک یادگیری (Memoization) استفاده کنید تا نتایج قبلی را ذخیره کرده و از دوبارهکاری جلوگیری کنید.
7. محدودیتهای بازگشت (Limitations of Recursion):
همیشه توجه داشته باشید که بازگشت در مسائل با عمق زیاد، میتواند منجر به پر شدن پشته شود و خطای Stack Overflow ایجاد کند. بنابراین در مسائل پیچیده باید دقت کنید که آیا بازگشت مناسبترین روش است یا میتوان از تکرار استفاده کرد.
در نهایت، با تمرین و تحلیل بیشتر روی مسائل مختلف، درک بهتری از کاربرد بازگشت پیدا میکنید و میتوانید الگوهای بازگشتی را راحتتر شناسایی کنید.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
🌐 شبکههای عصبی گرافی (GNN) 🌐
شبکههای عصبی گرافی یک ابزار قدرتمند برای پردازش دادههای ساختاریافته به شکل گراف هستند و در کاربردهای بسیاری مانند شبکههای اجتماعی، شیمی، و تحلیل رفتار کاربر استفاده میشوند. برای آشنایی بیشتر با مفاهیم و روشهای پیادهسازی GNN و دسترسی به آخرین منابع تحقیقاتی، پیشنهاد میکنم به لینک زیر مراجعه کنید:
https://distill.pub/2021/gnn-intro/
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
شبکههای عصبی گرافی یک ابزار قدرتمند برای پردازش دادههای ساختاریافته به شکل گراف هستند و در کاربردهای بسیاری مانند شبکههای اجتماعی، شیمی، و تحلیل رفتار کاربر استفاده میشوند. برای آشنایی بیشتر با مفاهیم و روشهای پیادهسازی GNN و دسترسی به آخرین منابع تحقیقاتی، پیشنهاد میکنم به لینک زیر مراجعه کنید:
https://distill.pub/2021/gnn-intro/
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
🌟 عنوان مقاله:
"Masked Autoencoders Are Scalable Vision Learners"
🧩 MAE Architecture:
در این معماری، در مرحلهی pre-training، حدود ۷۵٪ از image patches بهطور تصادفی ماسک میشوند و تنها زیرمجموعهای از visible patches به encoder داده میشود. پس از encoding، mask tokens اضافه شده و همراه با encoded patches، به decoder ارسال میشوند تا تصویر اصلی در سطح pixel بازسازی شود. پس از اتمام pre-training، decoder کنار گذاشته میشود و encoder برای انجام recognition tasks بر روی تصاویر کامل استفاده میشود.
Paper:https://arxiv.org/abs/2111.06377
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
"Masked Autoencoders Are Scalable Vision Learners"
🧩 MAE Architecture:
در این معماری، در مرحلهی pre-training، حدود ۷۵٪ از image patches بهطور تصادفی ماسک میشوند و تنها زیرمجموعهای از visible patches به encoder داده میشود. پس از encoding، mask tokens اضافه شده و همراه با encoded patches، به decoder ارسال میشوند تا تصویر اصلی در سطح pixel بازسازی شود. پس از اتمام pre-training، decoder کنار گذاشته میشود و encoder برای انجام recognition tasks بر روی تصاویر کامل استفاده میشود.
Paper:https://arxiv.org/abs/2111.06377
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
Signals and Systems.rar
76 MB
🔹 سیگنال و سیستم یکی از دروس بنیادی در رشتههای برق و کامپیوتره که مفاهیمش توی بسیاری از حوزهها کاربرد داره. برای مثال، ایدهی کانولوشن در شبکههای عصبی کانولوشنی (CNN) که بهصورت گسترده در پردازش تصویر استفاده میشه، از همین درس سرچشمه گرفته. بنابراین، یادگیری دقیق این درس میتونه پایه خوبی برای درک عمیقتر مباحث پیچیدهتر باشه.
جزوه: دکتر ثریا رستگار
دانشگاه ایلام 📘💡
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
جزوه: دکتر ثریا رستگار
دانشگاه ایلام 📘💡
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
🔹 اخیراً الگوریتمی برای تشخیص ارقام دستنویس از صفر و تنها با استفاده از Numpy پیادهسازی شده، بدون اینکه از کتابخانههای پیشرفتهای مثل TensorFlow یا PyTorch کمک گرفته بشه. این پروژه تجربهای عملی و عمیق در اصول یادگیری عمیق بود و به درک بهتر مفاهیمی همچون شبکههای عصبی، پسانتشار خطا و نزول گرادیان دستهای کمک کرد.
🔹 یکی از ویژگیهای جالب این پیادهسازی، ساختار شیءگرا آن است تا نمونههای مختلف با تعداد نورونهای متفاوت ساخته بشه و نتایج را با هم مقایسه کنیم. برای آموزش مدل از دیتاست معروف MNIST استفاده شده که شامل ۶۰,۰۰۰ تصویر آموزشی و ۱۰,۰۰۰ تصویر تست است.
این پروژه به من یادآوری می کند که یادگیری اصولی و پیادهسازی دستی الگوریتمها میتواند پایهای محکم برای درک عمیقتر مفاهیم هوش مصنوعی فراهم کند. 👨💻
link GitHub: https://github.com/filipecostaribeiro/HandwrittenDigitClassifier
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
🔹 یکی از ویژگیهای جالب این پیادهسازی، ساختار شیءگرا آن است تا نمونههای مختلف با تعداد نورونهای متفاوت ساخته بشه و نتایج را با هم مقایسه کنیم. برای آموزش مدل از دیتاست معروف MNIST استفاده شده که شامل ۶۰,۰۰۰ تصویر آموزشی و ۱۰,۰۰۰ تصویر تست است.
این پروژه به من یادآوری می کند که یادگیری اصولی و پیادهسازی دستی الگوریتمها میتواند پایهای محکم برای درک عمیقتر مفاهیم هوش مصنوعی فراهم کند. 👨💻
link GitHub: https://github.com/filipecostaribeiro/HandwrittenDigitClassifier
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
اگر به دنبال منابعی برای مطالعه درس ساختمان داده و الگوریتم هستید، این راهنماییها میتواند به شما کمک کند تا بهترین کتابها را برای نیازهای خود انتخاب کنید! 📘💻
📚 برای دانشجویانی که فقط به نمره دانشگاه راضی هستند: اگر هدفتان تنها گذراندن درس با نمره خوب است، معمولاً جزوههای استاد کافی خواهند بود. اما اگر به دنبال درک عمیقتری هستید، منابع بیشتری نیز وجود دارد.
🔍 برای آزمونهای استخدامی: اگر هدفتان شرکت در آزمونهای استخدامی است، کتابهای دکتر مقسمی و دکتر هادی یوسفی منابعی عالی هستند. توصیه میکنم که تمام تستهای این کتابها را دونهبهدونه حل کنید تا به تسلط خوبی برسید. 💼📖
📈 برای کنکور و یادگیری پیشرفتهتر:
1. اگر مبتدی هستید: با کتاب دکتر هادی یوسفی شروع کنید. این کتاب برای شروع، منبع مناسبی است و پایههای ساختمان داده و الگوریتم را به خوبی پوشش میدهد. 📗✨
2. برای سطح بالاتر: بعد از کتاب دکتر یوسفی، سراغ کتاب CLRS بروید. این کتاب یک منبع فوقالعاده است که مفاهیم را به عمق و دقت توضیح میدهد. جملهبهجملهی این کتاب را بخوانید و تمریناتش را کامل حل کنید؛ سعی کنید که تا حد ممکن بدون کمک به جواب برسید. این تلاش باعث درک عمیقتر شما از موضوع خواهد شد. 📖💪
3. و در نهایت: اگر به دنبال کتابی پرمحتوا و دقیق هستید که ذهن شما را برای مسائل پیچیده آماده کند، کتاب دکتر محمد قدسی را مطالعه کنید. این کتاب علاوه بر آمادگی برای کنکور، دیدگاه عمیقی نسبت به مفاهیم ساختمان داده و الگوریتم به شما میدهد. 🌟📘
🔔 نکته آخر: ممکن است منابع آموزشی و تستی خوب دیگری هم وجود داشته باشند، اما کتابهایی که معرفی کردم، از نظر نظم مطالب و کیفیت سوالات، برای من بهترین بودند. برای تسلط بر درس ساختمان داده و الگوریتم، حتماً تمرینهای زیادی انجام دهید؛ یک دور مطالعه کافی نیست. ⏳🔍
امیدوارم این توضیحات به شما کمک کند! 🔖 در آینده مطالب بیشتری هم قرار میدهم تا بهتر با این حوزه آشنا شوید. 🚀
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
📚 برای دانشجویانی که فقط به نمره دانشگاه راضی هستند: اگر هدفتان تنها گذراندن درس با نمره خوب است، معمولاً جزوههای استاد کافی خواهند بود. اما اگر به دنبال درک عمیقتری هستید، منابع بیشتری نیز وجود دارد.
🔍 برای آزمونهای استخدامی: اگر هدفتان شرکت در آزمونهای استخدامی است، کتابهای دکتر مقسمی و دکتر هادی یوسفی منابعی عالی هستند. توصیه میکنم که تمام تستهای این کتابها را دونهبهدونه حل کنید تا به تسلط خوبی برسید. 💼📖
📈 برای کنکور و یادگیری پیشرفتهتر:
1. اگر مبتدی هستید: با کتاب دکتر هادی یوسفی شروع کنید. این کتاب برای شروع، منبع مناسبی است و پایههای ساختمان داده و الگوریتم را به خوبی پوشش میدهد. 📗✨
2. برای سطح بالاتر: بعد از کتاب دکتر یوسفی، سراغ کتاب CLRS بروید. این کتاب یک منبع فوقالعاده است که مفاهیم را به عمق و دقت توضیح میدهد. جملهبهجملهی این کتاب را بخوانید و تمریناتش را کامل حل کنید؛ سعی کنید که تا حد ممکن بدون کمک به جواب برسید. این تلاش باعث درک عمیقتر شما از موضوع خواهد شد. 📖💪
3. و در نهایت: اگر به دنبال کتابی پرمحتوا و دقیق هستید که ذهن شما را برای مسائل پیچیده آماده کند، کتاب دکتر محمد قدسی را مطالعه کنید. این کتاب علاوه بر آمادگی برای کنکور، دیدگاه عمیقی نسبت به مفاهیم ساختمان داده و الگوریتم به شما میدهد. 🌟📘
🔔 نکته آخر: ممکن است منابع آموزشی و تستی خوب دیگری هم وجود داشته باشند، اما کتابهایی که معرفی کردم، از نظر نظم مطالب و کیفیت سوالات، برای من بهترین بودند. برای تسلط بر درس ساختمان داده و الگوریتم، حتماً تمرینهای زیادی انجام دهید؛ یک دور مطالعه کافی نیست. ⏳🔍
امیدوارم این توضیحات به شما کمک کند! 🔖 در آینده مطالب بیشتری هم قرار میدهم تا بهتر با این حوزه آشنا شوید. 🚀
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
بهترین دانشگاههای جهان مجموعه وسیعی از دورههای رایگان در حوزه علم داده ارائه میدهند.
در ادامه، ۲۰ دوره رایگان در علم داده که توسط دانشگاههای معتبر ماساچوست (MIT)، استنفورد و هاروارد ارائه شدهاند، فهرست شدهاند.
1. Introduction to Computer Science and Programming Using Python (MIT)
https://ocw.mit.edu/courses/6-00sc-introduction-to-computer-science-and-programming-spring-2011/
2. Introduction to Computational Thinking and Data Science (MIT)
https://ocw.mit.edu/courses/6-0002-introduction-to-computational-thinking-and-data-science-fall-2016/
3. The Analytics Edge (MIT)
https://ocw.mit.edu/courses/15-071-the-analytics-edge-spring-2017/
4. Machine Learning (MIT)
https://ocw.mit.edu/courses/6-867-machine-learning-fall-2006/
5. Introduction to Deep Learning (MIT)
http://introtodeeplearning.com/
6. Artificial Intelligence (MIT)
https://ocw.mit.edu/courses/6-034-artificial-intelligence-fall-2010/
7. Optimization Methods (MIT)
https://ocw.mit.edu/courses/15-093j-optimization-methods-fall-2009/
8. Probabilistic Systems Analysis and Applied Probability (MIT)
https://ocw.mit.edu/courses/6-041sc-probabilistic-systems-analysis-and-applied-probability-fall-2013/
9. Statistical Thinking and Data Analysis (MIT)
https://ocw.mit.edu/courses/15-075j-statistical-thinking-and-data-analysis-fall-2011/
10. Optimization Methods in Management Science (MIT)
https://ocw.mit.edu/courses/15-053-optimization-methods-in-management-science-spring-2013/
11. Databases (Stanford)
https://online.stanford.edu/courses/soe-ydatabases-databases
12. Mining Massive Datasets (Stanford)
https://online.stanford.edu/courses/soe-ycs0007-mining-massive-data-sets
13. Statistical Learning (Stanford)
https://online.stanford.edu/courses/sohs-ystatslearning-statistical-learning-r
14. Computer Science 101 (Stanford)
https://online.stanford.edu/courses/soe-ycscs101-computer-science-101
15. Algorithms: Design and Analysis, Part 1 (Stanford)
https://online.stanford.edu/courses/soe-ycsalgorithms1-algorithms-design-and-analysis-part-1
16. Algorithms: Design and Analysis, Part 2 (Stanford)
https://online.stanford.edu/courses/soe-ycs0001-algorithms-design-and-analysis-part-2
17. Convex Optimization (Stanford)
https://lnkd.in/ezW3RgEZ
18. Introduction to Artificial Intelligence with Python (Harvard)
https://pll.harvard.edu/course/cs50s-introduction-artificial-intelligence-python?delta=0
19. Data Science: Machine Learning (Harvard)
https://pll.harvard.edu/course/data-science-machine-learning?delta=0
20. Data Science: Probability (Harvard)
https://www.edx.org/learn/probability/harvard-university-data-science-probability
کانال ما رو به دوستانتون معرفی کنید تا اونها هم بتونن از این دورههای ارزشمند استفاده کنن! 🎓📚
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
در ادامه، ۲۰ دوره رایگان در علم داده که توسط دانشگاههای معتبر ماساچوست (MIT)، استنفورد و هاروارد ارائه شدهاند، فهرست شدهاند.
1. Introduction to Computer Science and Programming Using Python (MIT)
https://ocw.mit.edu/courses/6-00sc-introduction-to-computer-science-and-programming-spring-2011/
2. Introduction to Computational Thinking and Data Science (MIT)
https://ocw.mit.edu/courses/6-0002-introduction-to-computational-thinking-and-data-science-fall-2016/
3. The Analytics Edge (MIT)
https://ocw.mit.edu/courses/15-071-the-analytics-edge-spring-2017/
4. Machine Learning (MIT)
https://ocw.mit.edu/courses/6-867-machine-learning-fall-2006/
5. Introduction to Deep Learning (MIT)
http://introtodeeplearning.com/
6. Artificial Intelligence (MIT)
https://ocw.mit.edu/courses/6-034-artificial-intelligence-fall-2010/
7. Optimization Methods (MIT)
https://ocw.mit.edu/courses/15-093j-optimization-methods-fall-2009/
8. Probabilistic Systems Analysis and Applied Probability (MIT)
https://ocw.mit.edu/courses/6-041sc-probabilistic-systems-analysis-and-applied-probability-fall-2013/
9. Statistical Thinking and Data Analysis (MIT)
https://ocw.mit.edu/courses/15-075j-statistical-thinking-and-data-analysis-fall-2011/
10. Optimization Methods in Management Science (MIT)
https://ocw.mit.edu/courses/15-053-optimization-methods-in-management-science-spring-2013/
11. Databases (Stanford)
https://online.stanford.edu/courses/soe-ydatabases-databases
12. Mining Massive Datasets (Stanford)
https://online.stanford.edu/courses/soe-ycs0007-mining-massive-data-sets
13. Statistical Learning (Stanford)
https://online.stanford.edu/courses/sohs-ystatslearning-statistical-learning-r
14. Computer Science 101 (Stanford)
https://online.stanford.edu/courses/soe-ycscs101-computer-science-101
15. Algorithms: Design and Analysis, Part 1 (Stanford)
https://online.stanford.edu/courses/soe-ycsalgorithms1-algorithms-design-and-analysis-part-1
16. Algorithms: Design and Analysis, Part 2 (Stanford)
https://online.stanford.edu/courses/soe-ycs0001-algorithms-design-and-analysis-part-2
17. Convex Optimization (Stanford)
https://lnkd.in/ezW3RgEZ
18. Introduction to Artificial Intelligence with Python (Harvard)
https://pll.harvard.edu/course/cs50s-introduction-artificial-intelligence-python?delta=0
19. Data Science: Machine Learning (Harvard)
https://pll.harvard.edu/course/data-science-machine-learning?delta=0
20. Data Science: Probability (Harvard)
https://www.edx.org/learn/probability/harvard-university-data-science-probability
کانال ما رو به دوستانتون معرفی کنید تا اونها هم بتونن از این دورههای ارزشمند استفاده کنن! 🎓📚
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
MIT OpenCourseWare
Introduction to Computer Science and Programming | Electrical Engineering and Computer Science | MIT OpenCourseWare
6.00SC Intro to CS and Programming has been retired from OCW. You can access the archived course on [DSpace – MIT’s digital repository](https://dspace.mit.edu/handle/1721.1/150601). Please see the list of [introductory programming courses](https://ocw.mi…
🎓 اگر به دنبال یک دوره جامع و کاربردی در یادگیری ماشین هستید، دورهی Machine Learning Course With Python را به شما پیشنهاد میکنم. این دوره نه تنها به آموزش دقیق الگوریتمهای یادگیری ماشین 📊 و مبانی ریاضیاتی آنها 🧠 میپردازد، بلکه برای هر الگوریتم، از صفر تا صد، کدنویسی را به شما یاد میدهد.
🔍 چرا کدنویسی از پایه اهمیت دارد؟ یکی از مهمترین راهها برای درک عمیق مفاهیم یادگیری ماشین، پیادهسازی الگوریتمها از پایه است. این کار به شما کمک میکند تا سازوکار هر الگوریتم را بهتر بشناسید و به مفاهیم به شکل کاربردی مسلط شوید 💪.
💻 یادگیری ماشین با پایتون، مهارتی است که با تمرین کدنویسی از پایه میتوان به آن رسید. زمانی میتوان گفت شما به یادگیری ماشین و پایتون مسلط هستید که بتوانید هر الگوریتم را تا جایی که امکان دارد، بدون وابستگی به کتابخانههای آماده، خودتان پیادهسازی کنید.
Link Course : https://www.youtube.com/playlist?list=PLfFghEzKVmjsNtIRwErklMAN8nJmebB0I
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
🔍 چرا کدنویسی از پایه اهمیت دارد؟ یکی از مهمترین راهها برای درک عمیق مفاهیم یادگیری ماشین، پیادهسازی الگوریتمها از پایه است. این کار به شما کمک میکند تا سازوکار هر الگوریتم را بهتر بشناسید و به مفاهیم به شکل کاربردی مسلط شوید 💪.
💻 یادگیری ماشین با پایتون، مهارتی است که با تمرین کدنویسی از پایه میتوان به آن رسید. زمانی میتوان گفت شما به یادگیری ماشین و پایتون مسلط هستید که بتوانید هر الگوریتم را تا جایی که امکان دارد، بدون وابستگی به کتابخانههای آماده، خودتان پیادهسازی کنید.
Link Course : https://www.youtube.com/playlist?list=PLfFghEzKVmjsNtIRwErklMAN8nJmebB0I
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
ساختمان داده و طراحی الگوریتم پایههای اصلی در علوم کامپیوتر و به خصوص هوش مصنوعی هستند.
🔹 چرا ساختمان داده و طراحی الگوریتم مهم است؟
ساختمان دادهها به نحوهی سازماندهی، ذخیرهسازی و بازیابی دادهها کمک میکنند. این ساختارها به ما امکان میدهند تا دادهها را به شکلی منظم و کارآمد مدیریت کنیم و دسترسی سریعتری به اطلاعات داشته باشیم. برای مثال، آرایهها، لیستهای پیوندی، درختها و گرافها از جمله ساختمان دادههای مهم هستند که برای مسائل مختلف انتخاب میشوند.
طراحی الگوریتم به ما این امکان را میدهد که با ترکیب این ساختمان دادهها، برای مسائل پیچیدهتر راهحلهای بهینه پیدا کنیم. در هوش مصنوعی، از این اصول برای پیادهسازی الگوریتمهای یادگیری ماشین، پردازش تصویر، تحلیل متون و بسیاری از موارد دیگر استفاده میشود.
📍 مثالی از اهمیت ساختمان دادهها و الگوریتمها در هوش مصنوعی
فرض کنید در حال توسعه یک سیستم تشخیص خودکار چهره هستید. این سیستم باید حجم زیادی از تصاویر را پردازش و اطلاعاتی مانند ویژگیهای صورت را استخراج کند. در اینجا، از ساختار دادهای مانند درختهای تصمیمگیری یا شبکههای گراف برای دستهبندی و سازماندهی ویژگیها استفاده میکنیم. سپس، الگوریتمهای یادگیری مانند الگوریتم نزدیکترین همسایهها (KNN) یا الگوریتمهای جستجو میتوانند به ما کمک کنند تا چهرههای جدید را با دادههای موجود مقایسه کنیم و تشخیص دهیم.
🚀 نتیجهگیری
یادگیری ساختمان داده و طراحی الگوریتم به دانشجویان و برنامهنویسان این امکان را میدهد که بتوانند برنامههایی سریعتر، بهینهتر و هوشمندتر طراحی کنند. در دنیای هوش مصنوعی که سرعت و کارایی حرف اول را میزند، داشتن دانش کافی در این دو زمینه بسیار ضروری است.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
🔹 چرا ساختمان داده و طراحی الگوریتم مهم است؟
ساختمان دادهها به نحوهی سازماندهی، ذخیرهسازی و بازیابی دادهها کمک میکنند. این ساختارها به ما امکان میدهند تا دادهها را به شکلی منظم و کارآمد مدیریت کنیم و دسترسی سریعتری به اطلاعات داشته باشیم. برای مثال، آرایهها، لیستهای پیوندی، درختها و گرافها از جمله ساختمان دادههای مهم هستند که برای مسائل مختلف انتخاب میشوند.
طراحی الگوریتم به ما این امکان را میدهد که با ترکیب این ساختمان دادهها، برای مسائل پیچیدهتر راهحلهای بهینه پیدا کنیم. در هوش مصنوعی، از این اصول برای پیادهسازی الگوریتمهای یادگیری ماشین، پردازش تصویر، تحلیل متون و بسیاری از موارد دیگر استفاده میشود.
📍 مثالی از اهمیت ساختمان دادهها و الگوریتمها در هوش مصنوعی
فرض کنید در حال توسعه یک سیستم تشخیص خودکار چهره هستید. این سیستم باید حجم زیادی از تصاویر را پردازش و اطلاعاتی مانند ویژگیهای صورت را استخراج کند. در اینجا، از ساختار دادهای مانند درختهای تصمیمگیری یا شبکههای گراف برای دستهبندی و سازماندهی ویژگیها استفاده میکنیم. سپس، الگوریتمهای یادگیری مانند الگوریتم نزدیکترین همسایهها (KNN) یا الگوریتمهای جستجو میتوانند به ما کمک کنند تا چهرههای جدید را با دادههای موجود مقایسه کنیم و تشخیص دهیم.
🚀 نتیجهگیری
یادگیری ساختمان داده و طراحی الگوریتم به دانشجویان و برنامهنویسان این امکان را میدهد که بتوانند برنامههایی سریعتر، بهینهتر و هوشمندتر طراحی کنند. در دنیای هوش مصنوعی که سرعت و کارایی حرف اول را میزند، داشتن دانش کافی در این دو زمینه بسیار ضروری است.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
📄 **معرفی مقاله جدید: " Large Language Models: A Survey"
این مقاله یک مرور کلی و جامع از مدلهای زبانی بزرگ مثل GPT-4،LLaMA، و PaLM ارائه میدهد و به بررسی دقیق دستاوردها و چالشهای این حوزه میپردازد.
🔹 نکات اصلی مقاله:
1. معماری مدلها: بررسی و مقایسه ساختار و ویژگیهای مدلها، و اینکه چطور هر کدام برای وظایف خاص بهینهسازی شدهاند.
2. مجموعه داده و روشهای آموزشی: روشهای جمعآوری دادههای آموزشی و تأثیر آنها بر دقت و عملکرد مدلها.
3. کاربردهای مختلف: از ترجمه و تولید متن تا پاسخگویی به سوالات پزشکی و تخصصهای کدنویسی.
4. چالشهای موجود: مشکلاتی نظیر هزینه محاسباتی بالا، مسائل اخلاقی، و چالشهای زیستمحیطی.
این مقاله راهنمایی ارزشمند برای علاقهمندان به مدلهای زبان است و آینده این فناوریها را روشنتر میکند. 📚
Paper : https://arxiv.org/abs/2402.06196
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
این مقاله یک مرور کلی و جامع از مدلهای زبانی بزرگ مثل GPT-4،LLaMA، و PaLM ارائه میدهد و به بررسی دقیق دستاوردها و چالشهای این حوزه میپردازد.
🔹 نکات اصلی مقاله:
1. معماری مدلها: بررسی و مقایسه ساختار و ویژگیهای مدلها، و اینکه چطور هر کدام برای وظایف خاص بهینهسازی شدهاند.
2. مجموعه داده و روشهای آموزشی: روشهای جمعآوری دادههای آموزشی و تأثیر آنها بر دقت و عملکرد مدلها.
3. کاربردهای مختلف: از ترجمه و تولید متن تا پاسخگویی به سوالات پزشکی و تخصصهای کدنویسی.
4. چالشهای موجود: مشکلاتی نظیر هزینه محاسباتی بالا، مسائل اخلاقی، و چالشهای زیستمحیطی.
این مقاله راهنمایی ارزشمند برای علاقهمندان به مدلهای زبان است و آینده این فناوریها را روشنتر میکند. 📚
Paper : https://arxiv.org/abs/2402.06196
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
صف حلقوی 🚀
صف حلقوی یا Circular Queue ساختاری برای مدیریت دادههاست که به بهینهسازی حافظه کمک میکند. این نوع صف بهگونهای طراحی شده که انتهای صف به ابتدای آن متصل است، بنابراین از فضای موجود به بهترین شکل ممکن استفاده میشود. در این صف، وقتی به انتهای آرایه میرسیم، اضافه کردن عناصر جدید از ابتدای آن ادامه مییابد و صف به شکل دایرهای عمل میکند. 🌐
ویژگیهای صف حلقوی ✨
1. استفاده بهینه از حافظه: برخلاف صف عادی که پس از چندین بار حذف عناصر از ابتدا، فضای جلویی بلااستفاده میماند، در صف حلقوی میتوان از این فضای خالی مجدد استفاده کرد. این ویژگی باعث میشود حافظه اتلاف نشود. 🧠
2. اندیسدهی چرخشی: در صف حلقوی، اندیسها به صورت چرخشی حرکت میکنند. یعنی وقتی به انتهای آرایه رسیدیم، میتوانیم به اندیس ابتدایی بازگردیم و عناصر جدید را اضافه کنیم. 🔄
3. حل مشکل اورفلو کاذب: در صف عادی ممکن است پس از چند بار
پیادهسازی صف حلقوی ⚙️
برای پیادهسازی این صف، معمولاً از یک آرایه و دو اندیس استفاده میشود:
- Front:
موقعیت اولین عنصر صف را نشان میدهد.
- Rear:
موقعیت آخرین عنصر صف را نشان میدهد.
این اندیسها به صورت مدولار (
عملیاتهای اصلی صف حلقوی 🛠
- enqueue (اضافه کردن):
عنصر جدید به انتهای صف افزوده میشود. اگر صف پر نباشد، عنصر در محل
- dequeue (حذف کردن):
اولین عنصر از صف حذف میشود. اگر صف خالی نباشد، عنصر در موقعیت
کاربردهای صف حلقوی 📊
این صف در شبکههای کامپیوتری و سیستمهای عامل بسیار کاربرد دارد؛ جایی که پردازشها به طور چرخشی اجرا شده و از منابع بهینه استفاده میشود. برای مثال، در مدیریت بستههای داده در شبکه یا زمانبندی پردازندهها، صف حلقوی به کار میآید.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
صف حلقوی یا Circular Queue ساختاری برای مدیریت دادههاست که به بهینهسازی حافظه کمک میکند. این نوع صف بهگونهای طراحی شده که انتهای صف به ابتدای آن متصل است، بنابراین از فضای موجود به بهترین شکل ممکن استفاده میشود. در این صف، وقتی به انتهای آرایه میرسیم، اضافه کردن عناصر جدید از ابتدای آن ادامه مییابد و صف به شکل دایرهای عمل میکند. 🌐
ویژگیهای صف حلقوی ✨
1. استفاده بهینه از حافظه: برخلاف صف عادی که پس از چندین بار حذف عناصر از ابتدا، فضای جلویی بلااستفاده میماند، در صف حلقوی میتوان از این فضای خالی مجدد استفاده کرد. این ویژگی باعث میشود حافظه اتلاف نشود. 🧠
2. اندیسدهی چرخشی: در صف حلقوی، اندیسها به صورت چرخشی حرکت میکنند. یعنی وقتی به انتهای آرایه رسیدیم، میتوانیم به اندیس ابتدایی بازگردیم و عناصر جدید را اضافه کنیم. 🔄
3. حل مشکل اورفلو کاذب: در صف عادی ممکن است پس از چند بار
dequeue
(حذف عنصر) فضای خالی باقی بماند ولی همچنان با خطای پر بودن مواجه شویم. در صف حلقوی، این مشکل با استفاده از فضای خالی جلوی صف حل میشود. ✅پیادهسازی صف حلقوی ⚙️
برای پیادهسازی این صف، معمولاً از یک آرایه و دو اندیس استفاده میشود:
- Front:
موقعیت اولین عنصر صف را نشان میدهد.
- Rear:
موقعیت آخرین عنصر صف را نشان میدهد.
این اندیسها به صورت مدولار (
%
) حرکت میکنند تا در صورت رسیدن به انتهای آرایه، به ابتدای آن بازگردند. این چرخش اجازه میدهد صف بهصورت دایرهای عمل کند. 🔄عملیاتهای اصلی صف حلقوی 🛠
- enqueue (اضافه کردن):
عنصر جدید به انتهای صف افزوده میشود. اگر صف پر نباشد، عنصر در محل
Rear
قرار میگیرد و Rear
به اندیس بعدی (با کمک مدولار) تغییر میکند. ➕- dequeue (حذف کردن):
اولین عنصر از صف حذف میشود. اگر صف خالی نباشد، عنصر در موقعیت
Front
حذف میشود و Front
به اندیس بعدی تغییر میکند. ➖کاربردهای صف حلقوی 📊
این صف در شبکههای کامپیوتری و سیستمهای عامل بسیار کاربرد دارد؛ جایی که پردازشها به طور چرخشی اجرا شده و از منابع بهینه استفاده میشود. برای مثال، در مدیریت بستههای داده در شبکه یا زمانبندی پردازندهها، صف حلقوی به کار میآید.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
در مقالهای با عنوان **Number Cookbook: Number Understanding of Language Models and How to Improve It** به یکی از چالشهای مهم در مدلهای زبانی پرداخته شده: درک صحیح اعداد، بهویژه اعداد اعشاری. این مشکل تنها به لایه Tokenizer محدود نمیشود، بلکه در بخش Attention و سایر مراحل پردازش مدلها نیز تأثیرگذار است.
در این مقاله، روشهایی برای ارزیابی و بهبود درک عددی مدلهای زبانی بزرگ (LLMها) پیشنهاد شدهاست. هدف از این راهکارها ارتقای دقت مدلها در تفسیر و تحلیل دادههای عددی است، که در نهایت میتواند توانایی تحلیلی آنها را به میزان قابلتوجهی افزایش دهد.
Paper : https://arxiv.org/abs/2411.03766
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
در این مقاله، روشهایی برای ارزیابی و بهبود درک عددی مدلهای زبانی بزرگ (LLMها) پیشنهاد شدهاست. هدف از این راهکارها ارتقای دقت مدلها در تفسیر و تحلیل دادههای عددی است، که در نهایت میتواند توانایی تحلیلی آنها را به میزان قابلتوجهی افزایش دهد.
Paper : https://arxiv.org/abs/2411.03766
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
◀️ اگر به دنبال یادگیری شبکههای عصبی عمیق با رویکردی جذاب و کارآمد هستید، پیشنهاد میکنم سری به سایت Learn PyTorch بزنید! این سایت، شما را با PyTorch و کتابخانههای کلیدی مثل Numpy و Pandas آشنا میکند و در قالب پروژههای کاربردی، مفاهیم پیچیده شبکههای عصبی را به روشی ساده و قابلفهم آموزش میدهد.
اگرچه کتابخانههای دیگری هم برای ساخت شبکههای عصبی وجود دارند، اما PyTorch با سادگی و انعطافپذیری خود انتخابی عالی است. در Learn PyTorch میتوانید یادگیری را به تجربهای لذتبخش تبدیل کنید و به سرعت مفاهیم را در عمل ببینید!
https://www.learnpytorch.io/
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
اگرچه کتابخانههای دیگری هم برای ساخت شبکههای عصبی وجود دارند، اما PyTorch با سادگی و انعطافپذیری خود انتخابی عالی است. در Learn PyTorch میتوانید یادگیری را به تجربهای لذتبخش تبدیل کنید و به سرعت مفاهیم را در عمل ببینید!
https://www.learnpytorch.io/
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Fall Detection System | ایمنی با هوش مصنوعی 🛡
⚠️ هر سال، میلیونها نفر از سالمندان دچار سقوطهای خطرناک میشوند که اغلب برای ساعتها نادیده میمانند. این تأخیر در واکنش میتواند به مشکلات جدی یا حتی بدتر منجر شود. ⏰
سیستم تشخیص سقوط با هوش مصنوعی که:
📹 بلافاصله لحظهی سقوط را شناسایی میکند
🚨 بهطور خودکار هشدارها را با مدرک تصویری ارسال میکند
💬 در زمان واقعی مراقبان را از طریق Telegram مطلع میسازد
مناسب برای:
🏥 مراکز نگهداری سالمندان
🏠 Home monitoring
🏭 High-risk workplaces
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
⚠️ هر سال، میلیونها نفر از سالمندان دچار سقوطهای خطرناک میشوند که اغلب برای ساعتها نادیده میمانند. این تأخیر در واکنش میتواند به مشکلات جدی یا حتی بدتر منجر شود. ⏰
سیستم تشخیص سقوط با هوش مصنوعی که:
📹 بلافاصله لحظهی سقوط را شناسایی میکند
🚨 بهطور خودکار هشدارها را با مدرک تصویری ارسال میکند
💬 در زمان واقعی مراقبان را از طریق Telegram مطلع میسازد
مناسب برای:
🏥 مراکز نگهداری سالمندان
🏠 Home monitoring
🏭 High-risk workplaces
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer