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

👨‍💻Admin👉 @Se_mohamad
Download Telegram
🔍 انواع وظایف شبکه‌های عصبی گراف (GNN)

1. دسته‌بندی گراف 🧩: طبقه‌بندی گراف‌ها به دسته‌های مختلف. (کاربرد: تحلیل شبکه‌های اجتماعی، دسته‌بندی متن)

2. دسته‌بندی نود 🏷: پیش‌بینی برچسب‌های گم‌شده نودها با استفاده از برچسب‌های همسایه‌ها.

3. پیش‌بینی لینک 🔗: پیش‌بینی لینک بین نودها در یک گراف ناقص. (کاربرد: شبکه‌های اجتماعی)

4. تشخیص جامعه 🕸: تقسیم نودها به خوشه‌های مختلف بر اساس ساختار لبه‌ها.

5. تعبیه گراف 📊: نگاشت گراف‌ها به بردارهایی که اطلاعات نودها و لبه‌ها را حفظ می‌کند.

6. تولید گراف 🌱: تولید ساختار گراف جدید با یادگیری از توزیع نمونه‌های گراف.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
در لینک زیر، می‌توانید کدهای چندین الگوریتم ساختمان داده را پیدا کنید که به زبان‌های برنامه‌نویسی مختلف نوشته شده‌اند. 💻 این مجموعه برای کسانی که به دنبال یادگیری و پیاده‌سازی الگوریتم‌های کلاسیک در زبان‌های مختلف هستند، بسیار مفید است. 📚

https://github.com/amaitou/DataStructures?tab=readme-ov-file

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
This media is not supported in your browser
VIEW IN TELEGRAM
💻 دوره رایگان "داده ساختارها و مبانی الگوریتم‌ها" توسط دانشگاه صنعتی شریف و تدریس دکتر **علی شریفی زارچی**، به صورت رایگان در دسترس علاقه‌مندان قرار گرفته است.
برای دسترسی به این دوره به لینک زیر مراجعه کنید:

لینک دوره

📂 همچنین برای دانلود فایل‌های تدریس شده می‌توانید از لینک زیر استفاده کنید:

لینک فایل‌ها


#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
🙏3
در یادگیری ماشین، اصطلاح "flattening" به فرآیندی اشاره دارد که در آن یک ساختار چندبعدی (مانند یک ماتریس یا آرایه چندبعدی) به یک بردار یک‌بعدی تبدیل می‌شود. این کار به‌ویژه در کار با داده‌های تصویری یا داده‌های چندبعدی دیگر اهمیت دارد.

به طور خلاصه، flattening به شما این امکان را می‌دهد که داده‌های چندبعدی را به شکلی درآورید که بتوانید آن‌ها را به عنوان ورودی به مدل‌های یادگیری ماشین دهید. در بسیاری از معماری‌های شبکه‌های عصبی، به خصوص در لایه‌های پایانی شبکه‌های عصبی کانولوشنی (CNNs)، یک لایه flatten وجود دارد که داده‌های خروجی چندبعدی را به یک بردار یک‌بعدی تبدیل می‌کند تا بتوان آن‌ها را به لایه‌های کاملاً متصل (fully connected layers) ورودی داد.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍4🙏1
برای مشاهده اسلایدهای تدریس شده درس «الگوریتم و ساختار داده» در دانشگاه WATERLOO، لطفاً به لینک زیر مراجعه کنید. 🌐

https://ece.uwaterloo.ca/~dwharder/aads/Lecture_materials/


یکی از مزایای عالی این اسلایدها این است که در پایان هر فصل، سوالاتی همراه با پاسخ‌هایشان مطرح شده است. 📚

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
پدینگ در شبکه‌های عصبی کانولوشنی 🤖

پدینگ (Padding) یکی از مفاهیم مهم در شبکه‌های عصبی کانولوشنی است که به اضافه کردن پیکسل‌های اضافی به حاشیه تصویر اشاره دارد. این کار به منظور حفظ ابعاد فضایی تصویر پس از عملیات کانولوشن انجام می‌شود.

🌐 در هنگام انجام عملیات کانولوشن، یک فیلتر روی تصویر حرکت می‌کند. اگر این فیلتر فقط روی پیکسل‌های اصلی تصویر حرکت کند، خروجی کوچک‌تر از تصویر ورودی خواهد بود. مثلاً اگر یک تصویر 5x5 (25 پیکسل) و یک فیلتر 3x3 داشته باشیم، خروجی یک ماتریس 3x3 (9 پیکسل) خواهد بود.


🔍 دو نوع اصلی پدینگ وجود دارد:
1. پدینگ معتبر (Valid Padding): فیلتر فقط در مکان‌های معتبر داخل تصویر اعمال می‌شود و از حاشیه عبور نمی‌کند. این کار باعث می‌شود ابعاد خروجی کوچک‌تر شود.
2. پدینگ همانند (Same Padding): تصویر با صفرها به اندازه‌ای پدینگ می‌شود که ابعاد خروجی پس از کانولوشن با ورودی برابر باشد.

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍5
در علوم کامپیوتر، مسائل بر اساس میزان بغرنجی و پیچیدگی آن‌ها به سه دسته اصلی تقسیم می‌شوند:

1️⃣ مسائلی با الگوریتم‌های چندجمله‌ای: این دسته شامل مسائلی است که برای آن‌ها الگوریتم‌هایی با پیچیدگی زمانی چندجمله‌ای (polynomial time) یافت شده است. این بدان معناست که زمان اجرای این الگوریتم‌ها با افزایش اندازه ورودی به طور منطقی و قابل مدیریت رشد می‌کند. به عنوان مثال، جستجوی دودویی در آرایه‌های مرتب 🔍، مرتب‌سازی آرایه‌ها 📊، و ضرب زنجیره‌ای ماتریس‌ها 🔗 همگی از این نوع مسائل هستند. این دسته از مسائل به طور کلی به عنوان مسائلی با پیچیدگی قابل قبول در نظر گرفته می‌شوند و حل آن‌ها در زمان قابل قبولی ممکن است.

2️⃣ مسائلی که ثابت شده بغرنج هستند: این دسته شامل مسائلی است که برای آن‌ها ثابت شده است که الگوریتم چندجمله‌ای وجود ندارد. به عبارت دیگر، هیچ راه حلی با زمان اجرای معقول و قابل قبول برای این مسائل وجود ندارد و به عنوان مسائل سخت (intractable) شناخته می‌شوند. یک نمونه معروف از این مسائل، حساب پرزبرگر 🧮 است که اثبات شده است به گونه‌ای بغرنج است که نمی‌توان الگوریتمی با زمان اجرای چندجمله‌ای برای آن یافت.

3️⃣ مسائلی با وضعیت نامشخص: این دسته شامل مسائلی است که هنوز به طور دقیق مشخص نشده است که آیا قابل حل با الگوریتم‌های چندجمله‌ای هستند یا نه. از طرف دیگر، هیچ الگوریتم چندجمله‌ای برای این مسائل یافت نشده است، اما بغرنج بودن آن‌ها نیز به طور قطعی اثبات نشده است. به عنوان مثال، مسأله کوله‌پشتی صفر و یک 🎒 و مسأله فروشنده دوره‌گرد 🚶‍♂️ در این دسته قرار می‌گیرند. این مسائل به عنوان NP-complete شناخته می‌شوند، و در صورت یافتن الگوریتم چندجمله‌ای برای یکی از آن‌ها، همه مسائل NP می‌توانند در زمان چندجمله‌ای حل شوند.

💡 نکته جالب در اینجا این است که در حالی که دسته اول از مسائل به راحتی و با استفاده از الگوریتم‌های بهینه حل می‌شوند، دسته دوم و سوم چالش‌های بزرگی را برای محققان علوم کامپیوتر ایجاد کرده‌اند. یافتن راه حلی برای مسائل دسته سوم یکی از بزرگ‌ترین چالش‌ها در نظریه پیچیدگی است و همچنان یکی از پرسش‌های باز و مهم در این زمینه باقی مانده است.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3
مقاله "CogVideo: Large-scale Pretraining for Text-to-Video Generation via Transformers" یک مدل نوآورانه به نام CogVideo را معرفی می‌کند که برای تولید ویدیو از متن طراحی شده است. این مدل از تکنیک‌های یادگیری عمیق و شبکه‌های ترانسفورمر بهره می‌برد، که به طور گسترده در مدل‌های تولید متن به تصویر (text-to-image) و تولید زبان طبیعی کاربرد دارند.

برای دسترسی به مقاله و کدهای مرتبط، می‌توانید به لینک‌های زیر مراجعه کنید:

https://paperswithcode.com/paper/cogvideo-large-scale-pretraining-for-text-to

https://github.com/thudm/cogvideo

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍1
🎉 معرفی کانال تست کامپیوتر 💻

به کانال ما خوش آمدید! 🌟 اینجا می‌توانید به روزترین تست‌های کامپیوتری و اطلاعات مفید در زمینه‌های مختلف کامپیوتر را پیدا کنید🚀

📩برای پیوستن به کانال:

https://t.me/test_computer_ce
🙏4👍1
معرفی NeuralGCM: پیشرفت در پیش‌بینی آب و هوا 🌍

در واقع NeuralGCM مدل جدیدی است که با ترکیب مدل‌های یادگیری ماشینی (ML) و شبیه‌سازهای گردش عمومی (GCMs) برای پیش‌بینی آب و هوا و اقلیم طراحی شده است. این مدل می‌تواند پیش‌بینی‌های دقیق برای دوره‌های ۱-۱۰ روزه و پیش‌بینی‌های بلندمدت ۱-۱۵ روزه ارائه دهد. 🌦🔬

ویژگی‌های کلیدی NeuralGCM:
- رقابت با مدل‌های پیشرفته: نتایج مشابه یا بهتری نسبت به بهترین مدل‌های ML و GCMs ارائه می‌دهد.
- پیش‌بینی دقیق: می‌تواند معیارهای آب و هوایی و اقلیمی را برای چندین دهه با دقت ردیابی کند و پدیده‌های نوظهور مانند طوفان‌های استوایی را شبیه‌سازی کند. 🌀🌡
- صرفه‌جویی محاسباتی: نسبت به GCMهای معمولی صرفه‌جویی‌های بزرگ محاسباتی را ارائه می‌دهد.

این مدل نمایانگر ترکیبی موفق از یادگیری عمیق و فیزیک در مقیاس بزرگ است که به بهبود پیش‌بینی‌های آب و هوایی کمک می‌کند. 🚀🌎

📩 برای اطلاع بیشتر :
Neural general circulation models for weather and climate

#هوش_مصنوعی
📣👨‍💻 @AlgorithmDesign_DataStructuer
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
پیمایش الگوریتم BFS با استفاده از صف به این صورت عمل می‌کند:

1. ابتدا یک صف خالی ایجاد می‌کنیم.
2. گره شروع را به صف اضافه کرده و آن را علامت‌گذاری می‌کنیم.
3. تا زمانی که صف خالی نشده است:
- اولین گره را از صف خارج می‌کنیم.
- تمام گره‌های مجاور که هنوز بازدید نشده‌اند را به صف اضافه کرده و آن‌ها را علامت‌گذاری می‌کنیم.
- گره‌های بازدیدشده به ترتیب از صف خارج شده و بررسی می‌شوند.
4. این روند ادامه دارد تا تمامی گره‌های دسترس‌پذیر از گره شروع بازدید شوند.

🔄📥 صف به‌عنوان ابزار اصلی برای مدیریت ترتیب بازدید از گره‌ها استفاده می‌شود.

#الگوریتم
📣👨‍💻 @AlgorithmDesign_DataStructuer
👌3👍1
Media is too big
VIEW IN TELEGRAM
تقسیم داده ها با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
نرمال سازی داده ها با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
روش کدبندی وان هات با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
تبدیل دادهای طبقه بندی شده با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
مدیریت داده های گمشده با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
یادگیری ماشین با الگوریتم نزدیکترین همسایه (KNN) با کتابخانه scikit-learn
👍4
Media is too big
VIEW IN TELEGRAM
کاهش ابعاد با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
رگرسیون خطی با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
ماشین بردارپشتیبان (SVM) با کتابخانه scikit-learn

#هوش_مصنوعی
👍4
Media is too big
VIEW IN TELEGRAM
درخت تصمیم با کتابخانه scikit-learn

#هوش_مصنوعی
👍4