Algorithm design & data structure
6.49K subscribers
832 photos
141 videos
174 files
432 links
این کانال برای تمامی علاقه‌مندان به کامپیوتر، مخصوصاً حوزه ساختمان داده‌ها و الگوریتم‌ها، مفید می باشد. آشنایی با ریاضیات مقدماتی، برنامه‌نویسی مقدماتی و پیشرفته و همچنین شی‌گرایی می‌تواند در درک بهتر مفاهیم این درس کمک‌ کند.

👨‍💻Admin👉 @Se_mohamad
Download Telegram
ویدئوهای آموزشی شامل جلسات کامل کلاس دیپ‌لرنینگ دکتر ملک در دانشگاه شهید بهشتی، اکنون در دسترس شماست! این ویدئوها فرصت مناسبی برای یادگیری عمیق مفاهیم و تکنیک‌های پیشرفته در این حوزه را فراهم می‌کنند. 🎥📚💡
https://www.youtube.com/playlist?list=PLzKFqE-aHvMDyfo6wk4jBnAPszrL5XICg

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
دوره آموزشی LLM Agents MOOC شامل موضوعات زیر است:

- مبانی LLMs
- استدلال (Reasoning)
- برنامه‌ریزی، استفاده از ابزار
- زیرساخت LLM Agent
- Retrieval-Augmented Generation
- تولید کد، علم داده (Code Generation, Data Science)
- عوامل چندوجهی (Multimodal Agents)، رباتیک
- ارزیابی و بنچمارک‌گیری در کاربردهای عوامل (Evaluation and Benchmarking on Agent Applications)
- حریم خصوصی، ایمنی و اخلاق
- تعامل انسان و عامل، شخصی‌سازی، هم‌ترازی (Human-Agent Interaction, Personalization, Alignment)
- همکاری چندعامله (Multi-Agent Collaboration)

این دوره تمامی جنبه‌های کلیدی مرتبط با عوامل LLM را پوشش می‌دهد و می‌تواند برای علاقه‌مندان به این حوزه بسیار ارزشمند باشد.

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

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
TinyViM: Frequency Decoupling for Tiny Hybrid Vision Mamba

Topic: Image Classification

Paper
: https://arxiv.org/pdf/2411.17473v1.pdf

GitHub: https://github.com/xwmaxwma/tinyvim

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
🎙 معرفی OuteTTS-0.2-500M

مدل OuteTTS-0.2-500M یکی از پیشرفته‌ترین ابزارهای تبدیل متن به گفتار (Text-to-Speech) است که با 500 میلیون پارامتر، صدایی طبیعی و شبیه به انسان تولید می‌کند. این مدل از زبان‌های انگلیسی، چینی، ژاپنی، و کره‌ای پشتیبانی می‌کند و قابلیت ایجاد پروفایل گوینده شخصی‌سازی‌شده را نیز دارد. 🌐
💡 نصب آسان:
pip install outetts

Demo
Github

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
🎥 دوره شبکه‌های عصبی از مبانی تا پیشرفته

این دوره شامل ویدئوهای یوتیوب است که در آن‌ها به کدنویسی و آموزش شبکه‌های عصبی می‌پردازیم. نوت‌بوک‌های Jupyter هر جلسه در پوشه lectures ذخیره می‌شوند و تمرین‌ها نیز در توضیحات ویدئو قرار دارند.
https://github.com/karpathy/nn-zero-to-hero/tree/master

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
💠 STORM: ابزار هوش مصنوعی دانشگاه استنفورد
🔍 بررسی صدها مقاله در چند ثانیه!
📚 خروجی: مقاله‌ای خلاصه و جامع.
مناسب برای پژوهشگران حرفه‌ای و سریع! 🚀

https://storm.genie.stanford.edu/

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
آیا به دنبال شروع قدرتمند سال 2025 با مقالات برتر در زمینه هوش مصنوعی هستید؟

1. Agents Are Not Enough
2. OLMo 2
3. Measuring Higher Level Mathematical Reasoning
4. On the Overthinking of LLMs
5. Memory Layers at Scale
6. 1.58-bit FLUX

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
مهم‌ترین معادلات ریاضی در علم داده!
🎓 10 دوره رایگان ریاضی:https://www.mltut.com/mathematics-for-data-science-free-courses/
1️⃣ Gradient Descent: Optimization algorithm minimizing the cost function.
2️⃣ Normal Distribution: Distribution characterized by mean μ\muμ and variance σ2\sigma^2σ2.
3️⃣ Sigmoid Function: Activation function mapping real values to 0-1 range.
4️⃣ Linear Regression: Predictive model of linear input-output relationships.
5️⃣ Cosine Similarity: Metric for vector similarity based on angle cosine.
6️⃣ Naive Bayes: Classifier using Bayes’ Theorem and feature independence.
....

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
مدل‌های زبانی بزرگ مثل ChatGPT می‌توانند در برنامه‌نویسی شما بسیار مفید باشند:

ایجاد رابط‌های کاربری پویا
مدیریت و پردازش حجم زیادی از داده‌های متنی
و بسیاری موارد دیگر!

در این دوره، با مبانی مدل‌های زبانی بزرگ (LLMs) آشنا می‌شوید و یاد می‌گیرید چگونه از آن‌ها در پروژه‌های کدنویسی خود استفاده کنید. 🚀
https://www.freecodecamp.org/news/development-with-large-language-models/

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
NeuZip: Memory-Efficient Training and Inference with Dynamic Compression of Neural Networks
اگر به بهینه‌سازی مصرف حافظه در شبکه‌های عصبی و افزایش کارایی مدل‌های بزرگ علاقه دارید، پیشنهاد می‌کنیم مقاله بالا را مطالعه کنید. NeuZip روشی نوآورانه برای فشرده‌سازی وزن‌ها است که علاوه بر کاهش چشمگیر استفاده از حافظه در آموزش و استنتاج، عملکرد مدل را کاملاً حفظ می‌کند.
💡 کد این روش به‌صورت رایگان منتشر شده است!

Paper:https://arxiv.org/pdf/2410.20650
Github:https://github.com/BorealisAI/neuzip

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
📚 کنفرانس #NeurIPS2024 یکی از معتبرترین رویدادهای هوش مصنوعی و یادگیری ماشین در جهان برگزار شده است!
🔍 امسال، بیش از ۴,۵۰۰ مقاله پژوهشی ارزشمند ارائه شده که شما می‌توانید آن‌ها را به‌صورت تعاملی در یک بصری‌سازی جذاب بررسی کنید.

اگر به حوزه‌های مختلف هوش مصنوعی علاقه دارید، این ابزار می‌تواند بهترین راه برای یافتن موضوعات مورد علاقه‌تان باشد، مثل:

شبکه‌های عصبی عمیق 🧠
مدل‌های زبانی بزرگ (LLMs) ✍️
بینایی کامپیوتر 👁
بهینه‌سازی و الگوریتم‌ها 📈
https://jalammar.github.io/assets/neurips_2024.html

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
💾 LLM Datasets v2.0

🚀 Updated Repository for Phi-4 Inspiration!
یه مجموعه فوق‌العاده از modern, high-quality datasets for post-training، آماده شده که نه‌تنها به درد پروژه‌های آموزشی می‌خوره، بلکه ابزار و مشاوره‌های عالی هم داره.

🔍 این مجموعه، بعد از فیلترینگ قوی، بهترین‌ها رو در ۸ دسته ارائه می‌ده:
1. General Purpose

2. Math
3. Code
4. Instruction Following 🆕
5. Multilingual
6. Agent & Function Calling
7. Real Conversations 🆕
8. Preference Alignment 🆕

💡 اگر در حال تولید datasets هستید یا دنبال داده برای training run بعدی خودتون می‌گردید، حتماً یه نگاهی بهش بندازید! 😎

لینک ریپو: https://github.com/mlabonne/llm-datasets

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
📃A Survey of Graph Neural Networks for Social Recommender Systems


📎 https://arxiv.org/abs/2212.04481

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
📊 معرفی لایبرری TPOT: راهکاری برای یادگیری ماشین خودکار! 🚀
💡 در واقع TPOT یک لایبرری پایتونی قدرتمند برای یادگیری ماشین خودکار (AutoML) است که با استفاده از الگوریتم ژنتیک، پایپلاین مدل‌های یادگیری ماشین را بهینه می‌کند. این ابزار می‌تواند در بسیاری از دیتاست‌ها، دقت بالاتری نسبت به سایر روش‌ها ارائه دهد.

🌟 ویژگی‌های کلیدی TPOT:
بهینه‌سازی پایپلاین: این ابزار با الگوریتم ژنتیک بهترین مدل را برای داده‌های شما انتخاب می‌کند.
سادگی استفاده: فقط با چند خط کدنویسی می‌توانید مدل یادگیری ماشین خود را بسازید.
قابلیت تنظیم پارامترها:
تعداد جمعیت اولیه
نرخ جهش
و سایر تنظیمات الگوریتم ژنتیک به راحتی قابل تنظیم هستند. 🛠
https://github.com/EpistasisLab/tpot/tree/master

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
🔥 از صفر تا قهرمانی با VLMs (Vision-Language Models) 🔥

📢 معرفی دوره جدید: "VLMs Zero to Hero"

1️⃣ NLP Fundamentals
2️⃣ CV Fundamentals
3️⃣ Early Vision-Language Models
4️⃣ Scale and Efficiency
5️⃣ Modern Vision-Language Models
https://github.com/SkalskiP/vlms-zero-to-hero

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
جستجوی باینری: سریع، دقیق، و قدرتمند 🔍⚡️

جستجوی باینری (Binary Search) یکی از الگوریتم‌های اساسی و فوق‌العاده سریع برای جستجو در داده‌های مرتب‌شده است. این الگوریتم با کاهش مداوم فضای جستجو به نصف، پیچیدگی زمانی بسیار کارآمدی ارائه می‌دهد:



ایده اصلی 🧠
جستجوی باینری از اصل "تقسیم و حل" (Divide and Conquer) استفاده می‌کند:
1. لیست باید مرتب باشد.
2. عنصر میانی لیست بررسی می‌شود:
- اگر مقدار هدف کوچک‌تر باشد، جستجو به نیمه‌ی چپ محدود می‌شود.
- اگر مقدار هدف بزرگ‌تر باشد، جستجو به نیمه‌ی راست محدود می‌شود.
- اگر عنصر میانی برابر مقدار هدف باشد، مکان آن پیدا شده است!



مزایا 🌟
- سرعت بالا: پیچیدگی زمانی (O(log n))، که برای داده‌های بزرگ بسیار کارآمد است.
- مصرف کم حافظه: نیاز به فضای اضافی ندارد (به جز در نسخه بازگشتی).
- کاربرد گسترده: در دیتابیس‌ها، موتورهای جستجو، و حتی مسائل گرافیکی.



معایب ⚠️
- پیش‌شرط مهم: لیست باید از پیش مرتب‌شده باشد.
- در مقایسه با جستجوی خطی (Linear Search)، در لیست‌های کوتاه ممکن است بهینه‌تر نباشد.
- نسخه بازگشتی ممکن است در داده‌های بسیار بزرگ به دلیل استفاده از پشته دچار محدودیت شود.



پیاده‌سازی جستجوی باینری

نسخه‌ی تکراری (Iterative):
def binary_search_iterative(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1




نسخه‌ی بازگشتی (Recursive):
def binary_search_recursive(arr, target, left, right):
if left > right:
return -1
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
return binary_search_recursive(arr, target, mid + 1, right)
else:
return binary_search_recursive(arr, target, left, mid - 1)




مثال کاربردی 📚
فرض کنید لیستی از اعداد مرتب داریم:
[2, 4, 7, 10, 23, 36, 50, 72]
اگر بخواهیم عدد 23 را پیدا کنیم:
1. ابتدا عنصر میانی: (10) → مقدار هدف بزرگ‌تر است → نیمه‌ی راست.
2. عنصر میانی جدید: (36) → مقدار هدف کوچک‌تر است → نیمه‌ی چپ.
3. عنصر میانی جدید: (23) → پیدا شد!



کاربردهای عملی جستجوی باینری 🔧
1. جستجو در دیتابیس‌ها: برای پیدا کردن رکوردهای خاص.
2. الگوریتم‌های مرتب‌سازی: مثل مرتب‌سازی ادغامی و سریع (Merge Sort, Quick Sort).
3. حل مسائل بهینه‌سازی: پیدا کردن ریشه در توابع، جستجو در فضای جواب (Solution Space).
4. کدنویسی رقابتی: برای حل مسائل در ساختار داده‌های مرتب.



پیچیدگی زمانی و مکانی ⏱️
- زمانی: (O(log n)) (در بدترین، بهترین و حالت متوسط).
- مکانی:
- نسخه‌ی تکراری: (O(1))
- نسخه‌ی بازگشتی: (O(log n))به دلیل استفاده از پشته بازگشت).

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer