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

👨‍💻Admin👉 @Se_mohamad
Download Telegram
تفکر در مورد حل مسائل به روش بازگشتی نیازمند فهمیدن این است که چگونه می‌توان مسئله را به زیرمسائل کوچک‌تر تقسیم کرد و این روند را تا رسیدن به ساده‌ترین حالت ادامه داد. در اینجا چند مرحله و نکته برای فکر کردن به مسائل بازگشتی آورده شده:

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
🌟 عنوان مقاله:
"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
This media is not supported in your browser
VIEW IN TELEGRAM
🔹 اخیراً الگوریتمی برای تشخیص ارقام دست‌نویس از صفر و تنها با استفاده از Numpy پیاده‌سازی شده، بدون اینکه از کتابخانه‌های پیشرفته‌ای مثل TensorFlow یا PyTorch کمک گرفته بشه. این پروژه تجربه‌ای عملی و عمیق در اصول یادگیری عمیق بود و به درک بهتر مفاهیمی همچون شبکه‌های عصبی، پس‌انتشار خطا و نزول گرادیان دسته‌ای کمک کرد.


🔹 یکی از ویژگی‌های جالب این پیاده‌سازی، ساختار شیءگرا آن است تا نمونه‌های مختلف با تعداد نورون‌های متفاوت ساخته بشه و نتایج را با هم مقایسه کنیم. برای آموزش مدل از دیتاست معروف MNIST استفاده شده که شامل ۶۰,۰۰۰ تصویر آموزشی و ۱۰,۰۰۰ تصویر تست است.

این پروژه به من یادآوری می کند که یادگیری اصولی و پیاده‌سازی دستی الگوریتم‌ها می‌تواند پایه‌ای محکم برای درک عمیق‌تر مفاهیم هوش مصنوعی فراهم کند. 👨‍💻

link GitHub: https://github.com/filipecostaribeiro/HandwrittenDigitClassifier

#هوش_مصنوعی
📣👨‍💻 @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
🎓 اگر به دنبال یک دوره جامع و کاربردی در یادگیری ماشین هستید، دوره‌ی Machine Learning Course With Python را به شما پیشنهاد می‌کنم. این دوره نه تنها به آموزش دقیق الگوریتم‌های یادگیری ماشین 📊 و مبانی ریاضیاتی آن‌ها 🧠 می‌پردازد، بلکه برای هر الگوریتم، از صفر تا صد، کدنویسی را به شما یاد می‌دهد.

🔍 چرا کدنویسی از پایه اهمیت دارد؟ یکی از مهم‌ترین راه‌ها برای درک عمیق مفاهیم یادگیری ماشین، پیاده‌سازی الگوریتم‌ها از پایه است. این کار به شما کمک می‌کند تا سازوکار هر الگوریتم را بهتر بشناسید و به مفاهیم به شکل کاربردی مسلط شوید 💪.

💻 یادگیری ماشین با پایتون، مهارتی است که با تمرین کدنویسی از پایه می‌توان به آن رسید. زمانی می‌توان گفت شما به یادگیری ماشین و پایتون مسلط هستید که بتوانید هر الگوریتم را تا جایی که امکان دارد، بدون وابستگی به کتابخانه‌های آماده، خودتان پیاده‌سازی کنید.

Link Course : https://www.youtube.com/playlist?list=PLfFghEzKVmjsNtIRwErklMAN8nJmebB0I

#هوش_مصنوعی
📣👨‍💻 @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
صف حلقوی 🚀

صف حلقوی یا 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
◀️ اگر به دنبال یادگیری شبکه‌های عصبی عمیق با رویکردی جذاب و کارآمد هستید، پیشنهاد می‌کنم سری به سایت Learn PyTorch بزنید! این سایت، شما را با PyTorch و کتابخانه‌های کلیدی مثل Numpy و Pandas آشنا می‌کند و در قالب پروژه‌های کاربردی، مفاهیم پیچیده شبکه‌های عصبی را به روشی ساده و قابل‌فهم آموزش می‌دهد.

اگرچه کتابخانه‌های دیگری هم برای ساخت شبکه‌های عصبی وجود دارند، اما 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
📚 برترین مقالات RAG هفته اول نوامبر ۲۰۲۴

۱. RAGViz Tool
ابزار RAGViz یک ابزار تشخیص پیشرفته برای سیستم‌های RAG است که با استفاده از رابط کاربری جذاب و مدل LLM داخلی، توجه توکن‌ها را در اسناد بازیابی شده به صورت بصری نمایش می‌دهد. این ابزار دو ویژگی اصلی دارد:
- نمایش توجه توکن‌ها و اسناد در سطح جزئیات بالا
- مقایسه تولیدات پس از اضافه یا حذف اسناد زمینه‌ای
عملکرد این ابزار بسیار سریع است، با زمان پاسخ‌دهی متوسط ۵ ثانیه.
Paper : https://arxiv.org/abs/2411.01751

۲.RAGulator (Irrelevant LLM output Detectors in RAG)
در این مقاله، RAGulator معرفی شده که یک مدل سبک و سریع برای تشخیص خروجی‌های خارج از زمینه در سیستم‌های RAG است. این مدل از DeBERTa برای شناسایی متن‌های تولید شده نامربوط استفاده می‌کند و بدون نیاز به پردازش اضافی یا مهندسی ویژگی‌ها، دقت بالایی دارد.
Paper:https://arxiv.org/abs/2411.03920

۳. Long Context RAG
این تحقیق به بررسی اثرات طول زمینه در عملکرد RAG در ۲۰ مدل LLM مختلف پرداخته است. نتایج نشان می‌دهد که در حالی که بازیابی اسناد بیشتر می‌تواند دقت را بهبود بخشد، تنها مدل‌های پیشرفته‌ای که طول زمینه بیشتری از ۶۴ هزار توکن را پشتیبانی می‌کنند، می‌توانند دقت ثابت را حفظ کنند.
Paper:https://arxiv.org/abs/2411.03538

۴. Rationale-Guided RAG
این مقاله به معرفی RAG2 می‌پردازد که برای کاربردهای زیست‌پزشکی طراحی شده است و با استفاده از رشنال‌های LLM بهبود می‌یابد. RAG2 با فیلتر کردن اطلاعات بی‌ربط و بهبود بازیابی، موفق به افزایش دقت سیستم‌های RAG تا ۶.۱٪ شده است.
Paper:https://arxiv.org/abs/2411.00300

۵. Adaptive Filtering for RAG
مدل E2E-AFG یک مدل تمام‌عیار برای فیلترگذاری تطبیقی در سیستم‌های RAG است. این مدل به صورت خودکار تمرکز بیشتری بر محتوای مرتبط می‌کند و باعث کاهش تاثیر اطلاعات غیرمرتبط و افزایش دقت تولیدات می‌شود. E2E-AFG در تمام وظایف، نتایج بهتری نسبت به مدل‌های پایه داشته است.
Paper:https://arxiv.org/abs/2411.00437

۶. Data Extraction Attacks in RAG
این مقاله به حملات استخراج داده در سیستم‌های RAG پرداخته و روش‌هایی برای تزریق داده‌های مسموم به مدل‌های LLM معرفی کرده است. نتایج نشان می‌دهند که حتی با ۳٪ داده مسموم، می‌توان به طور مؤثر به داده‌های حساس دسترسی پیدا کرد و این مسئله تهدیدات امنیتی بزرگی برای سیستم‌های RAG به همراه دارد.
Paper:https://arxiv.org/abs/2411.01705

۷. CORAG (Retrieval Optimization System for RAG)
در واقع CORAG یک سیستم بهینه‌سازی جدید برای بازیابی در RAG است که با استفاده از JST به صورت پیوسته به دنبال انتخاب بهینه اسناد می‌گردد و توانایی در نظر گرفتن ارتباطات بین بخش‌ها را دارد. این مدل به طور چشمگیری کارایی را نسبت به مدل‌های سنتی بهبود می‌بخشد.
Paper:https://arxiv.org/abs/2411.00744

۸. M3DocRAG (Multimodal RAG)

مدل M3DocRAG به عنوان یک چارچوب چندوجهی جدید، توانایی تطبیق با انواع مختلف اسناد، دامنه‌های مختلف و سوالات چندگانه را دارد. این مدل با استفاده از ColPali و Qwen2-VL 7B عملکرد بسیار بهتری نسبت به مدل‌های پایه نشان داده است و قادر است انواع مختلف شواهد (متن، نمودار، تصویر و...) را در فرآیند بازیابی اطلاعات به کار گیرد.
Paper:https://arxiv.org/abs/2411.04952


با اشتراک این مقالات پیشرفته، از آخرین دستاوردها در دنیای RAG مطلع شوید و با محققان دیگر در ارتباط باشید! 🚀

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
🧬 Cellpose 🧬

در واقعCellpose یک الگوریتم یادگیری عمیق منبع بازه که برای cell segmentation در biological images طراحی شده. این ابزار که توسط MouseLand توسعه داده شده، از CNNs استفاده می‌کنه تا دقت بالایی رو در زمینه‌های مختلف تصویربرداری ارائه بده. 🧫

💡 Human-in-the-Loop 💡
یکی از ویژگی‌های منحصربه‌فرد Cellpose، قابلیت Human-in-the-Loop هست که به کاربر اجازه می‌ده به صورت تعاملی نتایج segmentation رو بهبود بده. این ویژگی باعث می‌شه الگوریتم به شرایط خاص و نیازهای کاربران بهتر تطبیق پیدا کنه. 🛠🔍

🖥 User-Friendly Interface 🖥
میتوان گفتCellpose دارای رابط گرافیکی کاربرپسند هست که حتی برای پژوهشگرانی که تجربه برنامه‌نویسی زیادی ندارن، استفاده از اون آسونه. این ابزار به همه اجازه می‌ده که بدون نیاز به دانش عمیق محاسباتی از قابلیت‌های پیشرفته deep learning بهره ببرن. 📊🔓


source : https://github.com/MouseLand/cellpose?tab=readme-ov-file

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
"TABPFN: A Transformer That Solves Small Tabular Classification Problems in a Second"
این مقاله با معرفی مدلی به نام TabPFNبه یک راهکار جدید برای مسائل طبقه بندی دادههای جدولی کوچک میپردازد. TabPFN یک شبکه ترنسفورمر پیش آموزشیافته است که میتواند طبقهب ندی دادههای جدولی را در کمتر از یک ثانیه انجام دهد. این مدل نیاز به تنظیم ابرپارامترها ندارد و در مقایسه با روشهای پیشرفته طبقه بندی، عملکردی رقابتی ارائه میدهد.

Paper :https://arxiv.org/abs/2207.01848
Code : https://github.com/automl/TabPFN

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
عنوان پروژه‌ای که پیاده‌سازی شده، "ساخت Bot مبتنی بر LLM به عنوان دستیار فروش در تلگرام با Python" است.کارهایی که در این پروژه انجام می‌شود به شرح زیر است:

1. فرض شده که در حوزه فروش آنلاین کفش و لباس فعالیت داریم و گروهی برای این منظور در تلگرام راه‌اندازی کرده‌ایم.
2. یک Bot در تلگرام می‌سازیم و از طریق Python به آن متصل می‌شویم تا بتواند به پیام‌های کاربران در گروه پاسخ دهد.
3. لیست محصولات فروشگاه و توضیحات آن‌ها را در یک vectorDB ذخیره می‌کنیم.
4. این Bot توانایی درک پیام‌های کاربران (مثل "یک کفش بنددار مشکی می‌خواهم") را با استفاده از یک مدل retrieval دارد و می‌تواند محصولات مرتبط را پیشنهاد دهد.
5. علاوه بر آن، این Bot می‌تواند بر اساس توصیف کاربران از خودشان (مثل "من یک خانم ۲۷ ساله هستم، قد ۱۷۲، علاقه‌مند به رنگ‌های تیره و استایل رسمی")، ترکیب‌های کامل لباس را پیشنهاد دهد و گزینه‌های مشابه را از vectorDB جستجو کند.

لینک ویدئو:
https://www.youtube.com/watch?v=1R-sMhOnLeo
لینک کد:
https://github.com/aix64-main/LLM_Fashion_Telegram

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer