Algorithm design & data structureچ
Kanalga Telegram’da o‘tish
این کانال برای تمامی علاقهمندان به کامپیوتر، مخصوصاً حوزه ساختمان دادهها و الگوریتمها، مفید می باشد. آشنایی با ریاضیات مقدماتی، برنامهنویسی مقدماتی و پیشرفته و همچنین شیگرایی میتواند در درک بهتر مفاهیم این درس کمک کند. 👨💻Admin👉 @Se_mohamad
Ko'proq ko'rsatish6 458
Obunachilar
-124 soatlar
-117 kun
-4530 kun
Postlar arxiv
الگوریتم k-نزدیکترین همسایگان (k-NN):
👥 چیست؟
یک الگوریتم یادگیری ماشین ساده و شهودی برای طبقه بندی و رگرسیون.
🔍 چگونه کار می کند؟
1. ابتدا"k" را انتخاب کنید: تعداد نزدیکترین همسایگان (k) را انتخاب کنید.
2. محاسبه فاصله ها: فاصله بین نقطه داده جدید و تمام نقاط داده آموزشی را اندازه گیری کنید.
3. همسایگان را بیابید: نزدیکترین نقاط داده (همسایگان) 'k' را شناسایی کنید.
4. پیش بینی:
- طبقه بندی: اکثریت رای برچسب های کلاس همسایه ها را بگیرید.
- رگرسیون: میانگین مقادیر همسایگان را محاسبه کنید.
🔧 ویژگی های کلیدی:
- فاز آموزشی وجود ندارد: با استفاده از کل مجموعه داده آموزشی، پیش بینی می کند.
- متریک فاصله: معمولاً از فاصله اقلیدسی برای یافتن نزدیکترین همسایگان استفاده می کند.
⚖️ مزایای:
- آسان برای درک و پیاده سازی.
- انعطاف پذیر: هم برای طبقه بندی و هم برای رگرسیون کار می کند.
⚠️ معایب:
- از نظر محاسباتی برای مجموعه داده های بزرگ گران است.
- حساس به ویژگی های نامربوط و نویز.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
📅 زمان ثبت نام و برگزاری کنکور ارشد و دکترا
📣👨💻 @AlgorithmDesign_DataStructuer
شبکههای عصبی گراف (Graph Neural Networks یا GNNs) یک دسته از شبکههای عصبی هستند که به طور خاص برای کار با دادههای ساختاریافته به شکل گراف طراحی شدهاند. در شبکههای عصبی سنتی، دادهها به طور معمول در ساختاری شبکهای مانند (مثلاً تصاویر، دنبالهها) نمایش داده میشوند. 📊 با این حال، بسیاری از دادههای دنیای واقعی به طور طبیعیتر میتوانند به صورت گرافها نمایش داده شوند که شامل گرهها (رئوس) و یالها (اتصالات بین گرهها) هستند. 🔗 GNNها به طور موثری روابط و وابستگیهای بین گرهها در یک گراف را بهدست میآورند، که آنها را برای مجموعهای از کاربردها در زمینههایی مانند تحلیل شبکههای اجتماعی، زیستشناسی مولکولی 🧬، و سیستمهای توصیهگر مناسب میسازد.
مفاهیم کلیدی GNNها
1. ساختار گراف:
- گرهها: موجودیتها در گراف (مثلاً کاربران در یک شبکه اجتماعی، اتمها در یک مولکول). 👤
- یالها: اتصالات بین گرهها که میتوانند جهتدار یا بدون جهت، وزندار یا بدون وزن باشند (مثلاً دوستیها، پیوندهای شیمیایی). 🔗
- ویژگیهای گره: ویژگیها یا دادههای مرتبط با هر گره (مثلاً اطلاعات پروفایل کاربران، خواص اتمی). 📄
- ویژگیهای یال: ویژگیها یا دادههای مرتبط با هر یال (مثلاً نوع رابطه، نوع پیوند). 🧩
2. انتقال پیام:
- ایده اصلی در GNNها انتقال پیام است، جایی که هر گره اطلاعات (پیامها) را از همسایگان خود جمعآوری میکند تا وضعیت خود را بهروزرسانی کند. 📩
- این فرآیند به طور معمول تکراری است، با چندین لایه انتقال پیام که به گرهها اجازه میدهد اطلاعات را از همسایگان بزرگتری جمعآوری کنند. 🔄
3. تعبیه گرهها:
- از طریق انتقال پیام، گرهها تعبیههایی (نمایشهای برداری) یاد میگیرند که ساختار محلی گراف و ویژگیهای گرهها و همسایگان آنها را بهدست میآورند. 🧠
4. نمایشهای سطح گراف:
- برای وظایفی که به نمایش سطح کل گراف نیاز دارند (مثلاً طبقهبندی گراف)، تعبیههای گرهها میتوانند به یک تعبیه سطح گراف واحد تجمیع شوند. 🌐
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
الگوریتم Kruskal یکی از الگوریتمهای مشهور در نظریه گرافها است که برای پیدا کردن حداقل درخت پوشای یک گراف وزندار و متصل به کار میرود. حداقل درخت پوشا (MST) زیرمجموعهای از یالهای گراف است که تمام راسها را پوشش میدهد و مجموع وزن یالهایش کمینه است.
📝 مراحل الگوریتم Kruskal:
🔍 مرتبسازی یالها: تمام یالهای گراف را بر اساس وزنهایشان به صورت صعودی مرتب میکنیم.
🌳 شروع با راسها: یک مجموعه از راسهای گراف به عنوان درخت پوشا (MST) با هیچ یالی شروع میکنیم.
➕ اضافه کردن یالها به درخت پوشا: یالها را به ترتیب وزن از کوچک به بزرگ بررسی میکنیم. اگر اضافه کردن یک یال باعث ایجاد حلقه نشود، آن را به MST اضافه میکنیم.
🔄 تکرار مراحل: این مراحل را تا زمانی که تعداد یالهای درخت پوشا به تعداد راسها منهای یک برسد، تکرار میکنیم.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
📄 معرفی مقاله "Attention Is All You Need"
مقاله "Attention Is All You Need" یکی از مهمترین مقالات در حوزه مدلهای زبانی بزرگ (LLM) و یادگیری عمیق است که توسط Vaswani و همکاران در سال 2017 منتشر شده است. این مقاله معماری جدیدی به نام ترانسفورمر (Transformer) معرفی میکند که بهطور کامل بر مکانیزم توجه (Attention) تکیه دارد و از شبکههای بازگشتی (RNN) یا شبکههای کانولوشنی (CNN) استفاده نمیکند.
📚 چکیدهای از مقاله:
ترانسفورمرها با استفاده از مکانیزم توجه چند-رأس (Multi-head Attention) قادر به مدلسازی وابستگیهای طولانی مدت در دادهها هستند. این معماری به صورت موازیسازی بهتری نسبت به مدلهای قبلی امکانپذیر میسازد و باعث شده تا مدلهای زبانی بسیار بزرگتری مانند GPT و BERT توسعه یابند.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
الگوریتم Prim :
الگوریتم Prim یکی از الگوریتمهای مشهور در نظریه گرافها است که برای پیدا کردن حداقل درخت پوشای یک گراف وزندار و متصل به کار میرود. حداقل درخت پوشا (MST) زیرمجموعهای از یالهای گراف است که تمام راسها را پوشش میدهد و مجموع وزن یالهایش کمینه است.
📝 مراحل الگوریتم Prim:
🎯 شروع از یک راس دلخواه: ابتدا یک راس دلخواه را به عنوان شروع انتخاب میکنیم و آن را به مجموعه MST اضافه میکنیم.
🔍 یافتن یال با کمترین وزن: در هر مرحله، یال با کمترین وزن که یکی از راسهایش در مجموعه MST و دیگری خارج از آن است را پیدا میکنیم.
➕ اضافه کردن راس جدید به MST: راس جدید را به مجموعه MST اضافه میکنیم.
🔄 تکرار مراحل: این مراحل را تکرار میکنیم تا تمامی راسهای گراف در مجموعه MST قرار بگیرند.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
Repost from تهران دیتا-دانشگاه تهران
⭕️ تابستون امسال وقتِ یادگیریه‼️
#دانشگاه_تهران برگزار میکند:
"جامعترین دوره آنلاین علمداده کل کشور" (کد ۳۰)
⛔️ فقط 7 نفر تا تکمیل ظرفیت این کد باقیست!
🎁 تا سقف 0️⃣2️⃣ درصد تخفیف ویژه ثبت نام!
درطی ۳۵۰ ساعت آموزش کاربردی، تخصصی و کاملا مطابق با نیازسنجیها و منطبق بر بازار کار داخلی و بینالمللی
شروع دوره: ۲۸ تیر ۱۴۰۳
روزهای برگزاری: پنجشنبه ها
🔑 برخی از مزایای کلیدی دوره:
🔸 اعطای گواهینامه معتبر #دوزبانه از دانشگاه تهران با قابلیت ترجمه رسمی و تحت نظارت وزارت علوم
🔹 بهرهگیری از اساتید و خبرگان برجسته آکادمیک و صنعت در حوزه علمداده
🔺 برگزاری آنلاین با قابلیت دانلود ویدیوها
🔺 پروژه محوری دروس ارائه شده
🔹 امکان ارائه پروژه پایانی توسط دانشپذیران
🔹 امکان پرداخت نقد و اقساط مطابق بودجه شما
🌐 اطلاعات بیشتر و ثبت نام
https://tehrandata.org/courses/datascience/
دریافت مشاوره رایگان و ثبت نام✔️
📞 09377516759
💬 t.me/tehrandata_admin
📱 t.me/tehran_data
📲 instagram.com/tehran_datascience
🌟 معرفی کتاب: Mathematics for Machine Learning 🌟
اگر به دنبال منبعی کامل و جامع برای یادگیری ریاضیات مورد نیاز در ماشین لرنینگ هستید، کتاب "Mathematics for Machine Learning" گزینهای عالی است!
📘 درباره کتاب:
این کتاب توسط Marc Peter Deisenroth, A. Aldo Faisal, و Cheng Soon Ong نوشته شده و مفاهیم ریاضی پایهای که برای درک و پیادهسازی الگوریتمهای ماشین لرنینگ لازم است را به زبانی ساده و قابل فهم توضیح میدهد.
📚 موضوعات پوشش داده شده:
جبر خطی
حساب دیفرانسیل و انتگرال
احتمالات و آمار
بهینهسازی
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
🌟 شروع یادگیری شبکههای عصبی: از قلم و کاغذ تا پیادهسازی با Numpy! 🌟
برای شروع یادگیری شبکههای عصبی، بهترین راه استفاده از قلم و کاغذ است، نه PyTorch یا TensorFlow.
🔍 چرا؟
مهمترین چیزی که تمام یادگیری ماشین را تحت تأثیر قرار میدهد، ریاضیات است. اگر درک عمیقی از ریاضیات پشت عملیات عصبی داشته باشید، جریان دادهها را بهتر متوجه میشوید و پیادهسازی شبکهها برایتان آسانتر خواهد شد.
📚 قدم بعدی چیست؟
وقتی اصول عملکرد شبکههای عصبی را متوجه شدید، سعی کنید آنها را خودتان با استفاده از Numpy پیادهسازی کنید. این کار نه تنها به شما درک بهتری از مفاهیم میدهد، بلکه شما را با مهارتهایی مجهز میکند که بتوانید مدلهای خودتان را بسازید.
👩🎓 تجربههای واقعی:
بسیاری از دانشآموزانی که تاکنون مدلی را از ابتدا بدون استفاده از PyTorch یا TensorFlow کدنویسی نکردهاند، اغلب درک کاملی از تمام اجزای شبکههای عصبی ندارند.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
سلام دوستان 🌟
یک سری تمرینات در زمینه معماری کامپیوتر وجود دارد اگر علاقهمندید و میتوانید این تمرینات را انجام دهید، لطفاً به آیدی زیر پیام بدهید.
🔗 @Se_mohamad
💻 وضعیت: باز است
🌟 پروژه تشخیص لباسهای لری، کردی و ترکمن با استفاده از CNN
👗 هدف پروژه:
تشخیص و دستهبندی تصاویر لباسهای محلی از سه قوم لری، کردی و ترکمن با استفاده از CNN.
🧠 تکنولوژی مورد استفاده:
شبکههای عصبی پیچشی (Convolutional Neural Networks - CNN) یکی از پیشرفتهترین و قدرتمندترین تکنیکها در زمینه پردازش تصویر و بینایی ماشین است. این شبکهها با بهرهگیری از لایههای مختلف میتوانند ویژگیهای پیچیده تصاویر را استخراج کرده و به تشخیص دقیقتری دست یابند.
📸 دادههای مورد استفاده:
برای آموزش این مدل، مجموعهای از تصاویر لباسهای محلی لری، کردی و ترکمن جمعآوری شده است. این تصاویر شامل تنوعات مختلف در طرحها، رنگها و الگوهای هر قوم است.
🔍 مراحل کار:
1. جمعآوری دادهها: تهیه تصاویر مختلف از لباسهای محلی هر قوم.
2. پیشپردازش دادهها: تنظیم و آمادهسازی تصاویر برای آموزش مدل.
3. آموزش مدل: استفاده از CNN برای یادگیری ویژگیهای تصاویر و تشخیص لباسهای هر قوم.
4. ارزیابی و تست: بررسی عملکرد مدل بر روی مجموعهای از تصاویر جدید و ارزیابی دقت آن.
📊 نتایج:
این پروژه نشان داده است که با استفاده از شبکههای عصبی CNN میتوان با دقت نسبتا بالایی لباسهای محلی لری، کردی و ترکمن را تشخیص داد. این دستاورد میتواند در زمینههای مختلفی مانند حفظ فرهنگ و هنر محلی، توسعه برنامههای آموزشی و حتی در صنعت مد و طراحی لباس مورد استفاده قرار گیرد.
📱 کاربردها:
- فرهنگی: حفظ و ترویج لباسهای محلی از طریق تشخیص و دستهبندی دقیق.
- آموزشی: استفاده در برنامههای آموزشی برای شناخت بهتر فرهنگهای مختلف.
- تجاری: توسعه اپلیکیشنها و سرویسهای جدید در صنعت مد و پوشاک.
🌐 لینک گیتهاب:
برای مشاهده جزئیات بیشتر و دسترسی به کدهای پروژه، به لینک زیر مراجعه کنید:
📎GitHub
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
Repost from هشتگ تبلیغ تخصصی
💥 دوره آنلاین متخصص ماشین لرنینگ با مدرک دانشگاه تهران
ــــــــــــــــــــــــــــــــــــ
⁉️ چرا این دوره:
✔️ مدرک دو زبانه از دانشگاه تهران
✔️ انجام، ۱۵ مینی پروژه و ۵ پروژه مستقل و یک پروژه جامع در طول دوره .
✔️ امکان استرداد شهریه ثبت نامی تا سقف 100% (در طرح نوین آموزشی 100)
✔️ پشتیبانی علمی ۲۴ ساعته
ــــــــــــــــــــــــــــــــــــــ
⁉️ مخاطبین این دوره چه کسانی هستند؟
🔸 دانشجویان و فارغ التحصیلان رشته های فنی و مهندسی
🔹 افرادی که قصد مهاجرت تحصیلی یا کاری دارند
🔸 شاغلین در حوزه هوش مصنوعی
🔹 مدیران ارشد و میانی سازمان ها
🔸 علاقمندان به حوزه هوش مصنوعی
ــــــــــــــــــــــــــــــــــــــ
📌 جهت دریافت مشاوره رایگان و اطلاعات تکمیلی؛
از طریق لینک زیر اقدام نمایید
📎 httb.ir/e8e96
ــــــــــــــــــــــــــــــــــــ
02188905269
@onacademy
🔢 فشردهسازی دادهها با Huffman Coding 🔢
📊فشرده سازی داده ها (Huffman Coding) چیست؟
فشرده سازی داده ها یکی از الگوریتمهای مشهور فشردهسازی دادههاست که توسط دیوید هافمن در سال ۱۹۵۲ ابداع شد. این الگوریتم با استفاده از فرکانس وقوع کاراکترها در داده، کدهایی با طول متغیر تولید میکند تا دادهها را به صورت بهینه فشرده کند.
🔍 چگونه کار میکند؟
1. تحلیل فرکانس: ابتدا فرکانس وقوع هر کاراکتر در داده محاسبه میشود.
2. ساخت درخت هافمن:
- دو کاراکتری که کمترین فرکانس را دارند انتخاب و با هم ترکیب میشوند تا یک گره جدید ایجاد کنند.
- این فرآیند تکرار میشود تا زمانی که تنها یک گره باقی بماند که ریشه درخت هافمن است.
3. تخصیص کدها: به هر کاراکتر با پیمایش درخت از ریشه تا برگها، کدی اختصاص داده میشود. مسیر حرکت به سمت چپ معمولاً با 0 و به سمت راست با 1 نشان داده میشود.
4. فشردهسازی دادهها: دادهها با جایگزینی هر کاراکتر با کد باینری مربوطه فشرده میشوند.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
🌐 Classification و Localization در یادگیری ماشین و بینایی کامپیوتر 🌐
🔍 Classification (دستهبندی):
در دستهبندی، هدف شناسایی و طبقهبندی کل تصویر به یکی از چند دسته یا کلاس مشخص است. مثلاً اگر یک مدل یادگیری ماشین برای تشخیص اشیاء آموزش داده شده باشد، میتواند بگوید که تصویر شامل یک سگ، یک گربه یا یک ماشین است. در این حالت، فقط نوع شیء موجود در تصویر تعیین میشود و نه مکان دقیق آن.
🖼 مثال: فرض کنید یک مدل برای تشخیص حیوانات در تصاویر داریم. این مدل پس از دریافت یک تصویر، اعلام میکند که این تصویر مربوط به یک "گربه" است.
📍 Localization (محلیسازی):
در محلیسازی، علاوه بر شناسایی نوع شیء موجود در تصویر، هدف تعیین محل دقیق آن در تصویر نیز میباشد. این شامل رسم یک کادر مرزی (Bounding Box) دور شیء مورد نظر است تا محل دقیق آن مشخص شود.
🖼 مثال: در همان مثال قبلی، مدل محلیسازی علاوه بر تشخیص "گربه"، یک کادر مرزی دور سگ رسم میکند تا محل دقیق آن در تصویر
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
به دنیای امنیت و آزادی خوش آمدید! 🌐
سلام دوستان عزیز! 🌟
اکنون با یک کلیک ساده، به سرویس پرسرعت VPN ما پیوسته و از اینترنت با سرعت بالا و با قدرتی ثابت لذت ببرید. ما با افتخار سرویسی با سرعت بالا، پینگ کم، و IP ثابت بدون وقفه را به شما ارائه میدهیم، همراه با پشتیبانی ۲۴ ساعته تا در هر لحظه آماده پاسخگویی به شما باشیم. 🛡
🔒 تضمین ما امنیت شماست. با اشتراک VPN ما، حریم خصوصی خود را حفظ کرده و به راحتی بر روی تمامی دستگاهها و سیستمهای عامل اتصال پیدا کنید.
🎉 پیشنهاد ویژه برای کاربران جدید: اکنون 15٪ تخفیف برای خرید اولیه فراهم شده است. به سرعت اقدام کنید و از این فرصت استفاده کنید! 💫
برای اطلاعات بیشتر و خرید، به پیوی تلگرامی ما پیام دهید. در انتظار شنیدن از شما هستیم! 📩
🔘 @Se_mohamad
✅همچنین، کسانی که دوستانشان را به خرید از اشتراک VPN ما دعوت کنند، تخفیف ویژهای دریافت خواهند کرد.
تابع فعالسازی Softmax :
تابع فعالسازی Softmax یکی از مهمترین و پرکاربردترین توابع فعالسازی در شبکههای عصبی به ویژه در مدلهای دستهبندی چندکلاسه است. این تابع مقادیر خروجی یک بردار را به توزیعی احتمالی تبدیل میکند که مجموع مقادیرش برابر با ۱ است. در واقع، Softmax مقادیر ورودی را به مقادیر بین ۰ و ۱ نگاشت میکند و بدین ترتیب احتمال تعلق هر ورودی به هر کدام از کلاسها را مشخص میکند.
کاربردها :
1️⃣دستهبندی چندکلاسه: تابع Softmax به طور گسترده در مسائل دستهبندی چندکلاسه استفاده میشود. در این حالت، خروجی شبکه عصبی یک بردار از نمرات (logits) برای هر کلاس است و تابع Softmax این نمرات را به توزیع احتمالات تبدیل میکند.
2️⃣مدلهای یادگیری عمیق: Softmax در لایه خروجی شبکههای عصبی به کار میرود تا احتمال هر کلاس را پیشبینی کند.
3️⃣بازیهای چند نفره و مدلهای تصمیمگیری: Softmax برای مدلسازی توزیع احتمالی تصمیمات و اقدامات استفاده میشود.
#هوش_مصنوعی
📣👨💻 @AlgorithmDesign_DataStructuer
پیمایش اول عمق (DFS):
پیمایش اول عمق (Depth-First Search یا DFS) یکی از الگوریتمهای پیمایش گراف و درخت است. در این روش، ابتدا یک گره را انتخاب کرده و تا زمانی که به گره برگ نرسیدهایم، به عمق درخت یا گراف حرکت میکنیم. پس از رسیدن به برگ، به گرههای قبلی بازگشته و همین فرآیند را برای گرههای دیگر تکرار میکنیم.
پیمایش اول سطح (BFS):
پیمایش اول سطح (Breadth-First Search یا BFS) نیز یکی از الگوریتمهای پیمایش گراف و درخت است. در این روش، ابتدا گره ریشه را بازدید کرده و سپس به ترتیب گرههای همسطح آن را بازدید میکنیم. برای انجام این کار از یک صف (queue) استفاده میکنیم.
تفاوتهای اصلی بین DFS و BFS :
⬅️ساختار داده مورد استفاده: در DFS از پشته (stack) استفاده میشود، در حالی که در BFS از صف (queue) استفاده میشود.
⬅️مسیر پیمایش: DFS به عمق پیمایش میکند و ابتدا به انتهای هر شاخه میرود، در حالی که BFS به عرض پیمایش میکند و ابتدا همه گرههای هر سطح را بازدید میکند.
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
📚📘 معرفی کتاب: درک الگوریتمها 📘📚
🔍 آیا تا به حال به این فکر کردهاید که الگوریتمها چگونه کار میکنند و چه نقشی در دنیای ما دارند؟ کتاب "درک الگوریتمها" نوشته آدیتا بهارگاوا، به زبان ساده و همراه با تصاویر جذاب، شما را با دنیای پیچیده و در عین حال شگفتانگیز الگوریتمها آشنا میکند. 🤓🔍
💡 این کتاب با توضیحات شفاف و مثالهای کاربردی، به شما کمک میکند تا مفاهیم پیچیده الگوریتمی را به راحتی درک کنید. از مبانی پایهای تا مباحث پیشرفتهتر، همه چیز به زبانی ساده و قابل فهم بیان شده است. 💻📈
🔥 ویژگیهای برجسته کتاب:
✅ زبان ساده و روان
✅ تصاویر و نمودارهای جذاب
✅ مثالهای عملی و کاربردی
✅ مناسب برای همه، از مبتدی تا پیشرفته
🌟 اگر به دنیای برنامهنویسی و الگوریتمها علاقهمند هستید یا دوست دارید دانش خود را در این زمینه گسترش دهید، این کتاب یکی از بهترین منابعی است که میتوانید داشته باشید. 🌟
🔗 همچنین میتوانید این پست را با دوستان خود به اشتراک بگذارید تا آنها نیز از این منبع ارزشمند بهرهمند شوند. 📤👥
#الگوریتم
📣👨💻 @AlgorithmDesign_DataStructuer
