ECE Trends
861 subscribers
249 photos
34 videos
8 files
163 links
🔺پنجره‌ای رو به فردای فناوری

┌──(ece㉿trends)-[~/زیرشاخه امنیت سایبری]
└─$ @UTCert


📌 تاسیس شده توسط بسیج دانشجویی دانشکده مهندسی برق و کامپیوتر دانشگاه تهران
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
🔸ماشین‌ها چگونه یاد می‌گیرند؟!

#machine_learning
🆔 @ECETrends
🔹چطوری مهندس IoT بشیم؟👨‍💻🦾

3️⃣ قسمت سوم : نرم افزار!

1.برنامه نویسی: طراحی یک مغز 🧠

خوب همون طور که می دونین هر سیستم IoT در نهایت یه نرم افزار نیاز داره که با توجه به ورودی های سیستم، راجع به خروجی‌هاش تصمیم گیری کنه. به خاطر همین مهارت، برنامه نویسی👨‍💻 جزء ضروری از توشه یه مهندس IoT به حساب میاد.
جاوا اسکریپت و پایتون معمولا زبان‌هایی هستن که دونستنشون خیلی میتونه بهتون کمک کنه. پایتون به خاطر سادگی، کاربرد گسترده‌ای داره و جاوا اسکریپت هم به خاطر اینکه به طور وسیعی برای برنامه‌های تحت سرور🌐 استفاده میشه.
جدا از اون ممکنه برای طراحی رابط کاربریتون(UI)، یکی از پلتفرم های برنامه نویسی موبایل 📲(اندروید، فلاتر، یا زبان سویفت برای ios و ..) هم به کارتون بیاد.

مطالب درس برنامه نویسی پیشرفته، شما رو تا حد خوبی برای این مسئله آماده میکنه


2. یادگیری ماشین، هوش مصنوعی و .. : حتی وسایل هم فکر می کنند!

امروزه تو دنیایی زندگی می کنیم که بشر بیشتر از هر زمان دیگه ای از اهمیت داده ها خبر داره و یاد گرفته چطوری از این مزیت برای انجام کارای عجیب و غریب🌀 استفاده بکنه. وقتی هم که راجع به IoT صحبت می کنیم با کلی سنسور طرفیم که هر کدوم حرف های زیادی برای گفتن دارن.
داشتن مهارت تو این زمینه میتونه به شما کمک کنه توانمندی گجت هاتونو تا حد زیادی ارتقا بدین. پیشبینی حرکات کاربرتون برای انجام کاری که بهش نیاز داره، یا بازیابی اطلاعات حیاتی سنسوراتون که به هر دلیلی دچار نقص شدن یا حتی کمک گرفتن از قابلیت هایی مثل تشخیص چهره 👤از کاراییه که میشه با این مهارت انجام داد.
درس هوش مصنوعی هم که در دانشکده خودمون ارائه میشه میتونه با این مهارت بیشتر آشناتون کنه.

🔜 از یادگیری ماشین یا همون ماشین لرنیگ خودمون صحبت شد؛ حیفه که بهش نپردازیم! پس در ادامه با ما همراه باشید تا ببینیم تو دنیای ماشین لرنینگ چه خبره؟!

✍🏻 محمد رضا بخشایش

#IOT
#machine_learning

🆔 @ECETrends | http://instagram.com/ece_trends
🔹ماشین لرنینگ چیست؟

همون طور که به شما قول داده بودیم حالا نوبت اینه که ببینیم این ماشین لرنینگ که وِرد زبون همگان شده چیه؟! بپردازیم به این موضوع که اصلا ماشین ها چطور می‌تونن یادگیری داشته باشن.‼️

بذارید با یک مثال از ماشین لرنینگ صحبت خودمون رو شروع کنیم تا بهتر بفهمیم ماشین لرنینگ چه کمک هایی می‌تونه به ما کنه:

فرض کنید می‌خوایم کف زمین رو تمیز🧹 کنیم. زمانی که یک انسان👨 این کار را انجام میده، کیفیت کار میتونه خیلی متغیر باشه چون به عوامل مختلفی بستگی داره. احتمال اینکه بعد از چند ساعت کار، خسته🥱 بشه یا حتی بخواد از زیر کار در بره بسیار زیاده.

حالا بیایم به ماشین یاد بدیم که کثیفی زمین رو تشخیص بده و بر اساس میزان کثیفی و شرایط زمین شروع به تمیز کردن سطح بکن. اگر برای ماشین این کار رو تعریف کنیم، خیلی بهتر از انسان میتونه اون رو انجام بده.

ماشین مدنظر باید بتونه به سوالات زیر جواب بده:
چه زمانی زمین نیاز به تمیز کردن داره؟ تا چه زمانی باید تمیز کردن زمین ادامه داشته باشه؟ و ...

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
🔹رقابت AI vs HI 😱😏


هوش مصنوعی در تقلید هوش انسانی در چند سال اخیر پیشرفت چشمگیری داشته است که مزایا آن:

1) سرعت پردازش: مثلا اگر برای یک دکتر👨‍⚕️ 10 دقیقه طول بکشد تا بیماری مریضش را تشخیص دهد، هوش مصنوعی در همین زمان بیماری میلیون ها بیمار دیگر را تشخیص میدهد.

2) نداشتن تعصب: واضح است که هر انسانی تفکرات و عقاید مخصوص به خود را دارد و ناخوداگاه ممکن است نتواند نسبت به ماشین که بی طرف است تصمیم مناسبی بگیرد.

3) خستگی ناپذیری🦾: انها نیاز به استراحت و غذا بعد از ساعات کار طولانی ندارند.

4) دقت: همانطور که میدانیم انسان در هنگام خستگی و یا در مشاغل خسته کننده و یکنواخت که مایل به انجام ان نیست، دقتش📏 پایین می آید، در حالی که در ماشین ها چنین نیست.


اما ماشین ها هنوز از کارهایی که مغز انسان قادر به انجام ان است خیلی فاصله دارد.
مزایای هوش انسانی:
1) بدون مرز: انسان ها از مغز، توانایی تفکر، حافظه خود استفاده می کنند، در حالی که ماشین های هوش مصنوعی به داده هایی که به آنها داده می شود بستگی دارند. هوش مصنوعی نمیتواند خارج از جعبه و کد خود عمل کند.

2) سازگاری سریع: هوش مصنوعی برای سازگاری با تغییرات جدید به زمان بیشتری نیاز دارد، در حالی که انسان می تواند به راحتی با تغییرات سازگار شود و این باعث می شود افراد بتوانند چندین توانایی را بیاموزند و به دست آورند.

3) غیر قابل درک🤯: به جرئت می توان گفت که هیچ کس توانایی درک آن که مغز چگونه فعالیت می کند را ندارد ولی هوش مصنوعی مخلوق خود انسان است.

4)اجتماعی👨‍👩‍👧‍👦: افراد در تعاملات اجتماعی بسیار بهتر هستند، زیرا می توانند داده های رفتاری را بررسی کنند، خودآگاهی داشته باشند و نسبت به احساسات دیگران ظریف باشند.

✍🏻 اشکان بهروزی


#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
👍1
🔹چند شغل پرکاربرد در ماشین لرنینگ:


1 – مهندس یادگیری ماشین

مهندسی یادگیری ماشین مهم‌ترین و پرتقاضاترین شغل فعلی هوش مصنوعی در جهان است. رسیدن به مهارت بالا در این عنوان شغلی کمی🤏 سخت است.

مهندسان واقعی و خبره یادگیری ماشین💪 باید بتوانند با طیف گسترده‌ای از داده‌ها کار کرده و برنامه نویسی را در سطح قابل قبولی بلد باشند.


2 – دانشمند رباتیک🤖

ربات‌ها در تولید صنعتی نقش بسیار گسترده‌ای پیدا کردند و می‌توانند بسیاری از کارهای دشوار را با سرعت بالا انجام دهند. ربات‌های جراح می‌توانند حتی با دقتی بیشتر از دست‌های یک جراح، یک عمل پزشکی را انجام دهند. تنوع مشاغل رباتیک بسیار زیاد است و فرصتی نیست که درباره‌ی همه آنها صحبت کنیم.

از آنجایی که رباتیک ترکیبی از کامپیوتر، مکانیک و برق است داوطلبان این موقعیت شغلی باید به جز هوش مصنوعی و ماشین لرنینگ به این مباحث هم علاقه‌مند باشند.


3 – مهندس یادگیری عمیق

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


4 – دانشمند داده📈

همان‌طور که از اسم این شغل می‌توانید حدس بزنید متخصص داده باید داده‌های مختلف را جمع آوری کرده و به کمک یادگیری ماشین آن‌ها را تحلیل کند. این شغل با اینکه از مباحث آماری استفاده می‌کند اما وظیفه‌ی آن فقط جمع کردن گزارش و آمار نیست. کسانی که در این حوزه وارد می‌شوند باید در استفاده از پلتفرم‌های Big Data و ابزارهای مختلف مثل Hadoop، Pig، Hive، Spark، MapReduce و غیره، متخصص باشد. همچنین یادگیری زبان‌های برنامه نویسی و کار با پایگاه داده مثل پایتون، SQL، پرل، اسکالا یا غیره، ضروری به نظر می‌رسد.


5 – متخصص بینایی ماشین👁

درست مثل ما انسان‌ها که با چشمان خودمان می‌توانیم دنیای بیرون را دیده و بسیاری از مسائل را تشخیص دهیم، ماشین‌ها هم باید بتواند این کار را بکند. بینایی ماشین در بخش‌های مختلفی مثل جریمه رانندگان متخلف، افزایش ایمنی خودروها، کنترل ترافیک، بخش‌های مختلف صنعت و تولید و غیره کاربرد دارد. یک متخصص بینایی ماشین باید در علوم رایانه، شناخت نور، مهندسی مکانیک و غیره تخصص داشته باشد.



#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
🔷دیپ لرنینگ چیست؟

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

اگر بخوایم یه تعریف ملموس‌تری از دیپ لرنینگ داشته باشیم باید گفت روشی هست که با تقلید از لایه‌های نورونی در مغز انسان🧠، از رایانه‌های قوی، مجموعه داده‌های انبوه، شبکه‌های عصبیِ تحت نظارت و آموزش‌دیده و همچنین الگوریتم backprop (پس‌انتشار) قدرت واقعی دنیا کامپیوترها رو نمایان می‌کنه.🦾

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

✍🏻 م.ع. کیانی

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
🔹تفاوت های machine learning و deep learning

1️⃣ پارت اول

▫️در ماشین لرنینگ به الگوریتم تعدادی داده تحویل داده میشود و این الگوریتم با تحلیل داده، دست به تصمیم گیری و پیش بینی میزند. وجه تمایز اصلی ماشین لرنینگ آن است که هنوز هم به راهنمایی متخصص و هوش انسانی نیاز دارد.
▪️اما دیپ لرنینگ تقلیدی از ساختار مغز انسان است که با استفاده از شبکه‌هایی از نورون‌های مصنوعی و ارتباط بین آن‌ها، ماشین را قادر به تصمیم‌گیری بدون کمک هوش بشری کند.


🔰اما تفاوت های اساسی:

1- نحوه یادگیری📝
▫️ماشین لرنینگ: اکثر قابلیت ها توسط متخصص شناسایی و کدهای داده شده، به سیستم ارائه میشوند.
▪️دیپ لرنینگ: سیستم به صورت اتوماتیک، از میان داده ها آموزش میبیند و وظیفه نهایی را انجام میدهد.

2- نحوه عملکرد با میزان داده ها 📈
▫️ماشین لرنینگ: نیاز به حجم بالایی از داده ها ندارد.
▪️دیپ لرنینگ: برعکس ماشین لرنینگ، نیاز به حجم عظیمی از داده دارد تا بتواند ارتباط دقیقی بین آن ها برقرار و برای مسائل پیچیده تر راه حلی ارائه دهد .

3- سیستم های مورد استفاده ⚙️
▫️ماشین لرنینگ: در سیستم های ضعیف هم مورد استفاده قرار میگیرد .
▪️دیپ لرنینگ: در ماشین های پیشرفته به کار می‌رود و همواره نیاز به یک GPU قوی دارد.

✍🏻 عرفان دارایی

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
❤2
🔹تفاوت های machine learning و deep learning

2⃣ پارت دوم

4- نحوه حل مسئله
▫️ماشین لرنینگ : ابتدا مسئله را به چند لایه مختلف تقسیم کرده و هر لایه به صورت جداگانه به سیستم ارائه و نتایج نهایی با هم تلفیق و ارائه می‌شوند.
▪️دیپ لرنینگ : تمام فرایند بدون دخالت متخصص انسانی و بدون گسستگی که در ماشین لرنینگ اتفاق می‌افتد، انجام و نتیجه ارائه می‌شود.

5- زمان اجرایی
▫️ماشین لرنینگ : زمان کمتری را اختصاص می‌دهد چون نیاز به ارتباط یابی کامل بین داده‌ها ندارد و بخشی ازین ارتباط از قبل فراهم شده است.
▪️دیپ لرنینگ : زمان بیشتری نیاز دارد. چون یادگیری الگوریتم ها زمان زیادی می‌خواهد. علت آن است که پارامتر های زیادی باید بررسی و ارتباط‌یابی بشوند.

یک مثال ساده : تشخیص مثلث🔺 و مربع ◽️ در اشکال
▫️ماشین لرنینگ : سیستم بر اساس داده های نمونه قبلی تشخیص میدهد که مربع چهار نقطه و مثلث سه نقطه دارد و تمایز را تشخیص می‌دهد.
▪️دیپ لرنینگ : سیستم به جای استفاده از اطلاعات قبلی از الگوریتمی که ساختار های کلی مثل تعداد خطوط عمود، مستقیم و متصل به هم شکل را تشخیص می‌دهد کمک می‌گیرد و تشخیص نهایی را انجام میدهد.

✍🏻 عرفان دارایی

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
🔹یادگیری تقویتی

1️⃣ پارت اول

تو بخشای قبلی یه ذهنیت کلی از ماشین لرنینگ پیدا کردیم و مشخص شد هدف اینه که به جای نوشتن الگوریتم های واضح و مشخص، کامپیوتر یه چیزی که از قبل براش تعریف کردیم رو یادبگیره.🤓

یکی از جالب ترین شاخه‌های یادگیری ماشین reinforcement learning یا یادگیری تقویتیه. 💪
یاد گیری تقویتی در روانشاسی به اسم رفتار گرایی استفاده میشه. تو روانشناسی رفتار گرا حرف حساب اینه که هر چی در تفکر یک موجود میگذره در رفتارش مشخص میشه پس ما فقط نیاز داریم رفتار رو بررسی کنیم تا اون چیز رو بشناسیم و نیازی نیست عملکردهای درون ذهنشو بفهمیم.🥸🧐
حالا چه ربطی داشت؟ 🤪 الان میگم...

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

🔜برای این کار یه سری چیزا لازمه که تو پست بعد میگم ...😶‍🌫️

✍🏻‏ Ho33ein

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
👍4
🔹یادگیری تقویتی

2️⃣ پارت دوم

مواد لازم: 👨‍🍳
1.مجموعه حالات مسئله
2.مجموعه تصمیمات قابل اتخاذ🤔
3.قوانین گذار از حالات به همدیگه
4.قوانین پاداش برای گذار از حالت ها💲
5.قوانین توصیفی چیزهایی که ماشین میتونه مشاهده کنه👀

برنامه ما توی بازه زمانی t تعداد n داده دریافت میکنه و a واکنش نسبت به اونا میده. سازنده برنامه یه امتیاز برای ماشین تعریف میکنن که هر وقت یک تصمیم درست گرفته بشه امتیاز بالاتر بره و از اینجا ماشین میفهمه که این روش خوب بوده و ذخیرش میکنه توی حافظه خودش و اگر به ازای واکنشی امتیاز منفی دریافت کرد دیگر اونو تکرار نکنه.
روش نوشتن برنامه های اینجوری خیلی پیچیده است و حتی در قسمت‌هایی از نورون‌های مغز توش الهام گرفته شده.

بذارید یه مثال بزنم که قشنگ‌تر درک کنید:
فرض کنید یه بازی پینگ پونگ دوبعدی از بالا رو داریم نگاه میکنیم.🏓 عملا دو تا خط میبینیم و یه توپ که اگه توپ از این خط ها رد بشه امتیاز به نفع حریفه.
ما میتونیم برای برنامه نویسی این بازی حرکات یک بازیکن حرفه ای رو آنالیز کنیم ولی اینجوری ماشین هیچوقت بهتر از اون بازی نخواهد کرد. حتی ممکنه بدتر هم بشه!😕
ولی اگر به جاش از یادگیری تقویتی استفاده می کردیم، طبعا توی حرکات اول چون کاملا رندوم داره بازی رخ میده کامپیوتر هزاران بار میبازه و هر دفعه یک داده جدید رو ثبت میکنه ولی ممکنه چند باری هم خوش شانسی بیاره و خب همین خوش شانسی ها شروع خوبیه برای کار ما!
الگورتیم ها بنظر ساده شد مگه نه؟😎
خب اشتباه می کنید:)😊
چرا؟
با ما همراه باشید...😅

✍🏻‏ Ho33ein

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
👍4❤1
🔹یادگیری تقویتی

3️⃣ پارت آخر

فرض کنید ما امتیازی که برای ماشین تعریف میکنیم (توی این بازی ساده ای که گفتم)برابر توپ هایی باشه که از حریف رد شده.
حالا بعد هزاران شبیه سازی کامپیوتر ما دستش گرم شده که یکدفعه وسط یه بازی خوب و حرفه ای امتیاز از دست میده. به کامپیوتر گفته شده فقط وقتی امتیاز گرفتی کارت درست بوده؛ پس حالا میاد همه اون دیتا های بازی رو نادیده میگیره و این خودش باعث تخریب الگورتیم های خوب قبلیش میشه! 🙄😑
یا مثلا رباتی رو فرض کنید که میخواد یه شئ رو از زمین برداره. توی میلیون‌ها حالت مختلفی که بازوهای این ربات دارن ممکنه سال‌ها طول بکشه و خوش شانسی حاصل نشه که بخواد ثبتش کنه!🥵

برای حل این مشکل میشه روش های امتیاز دهی رو تغییر داد که بعضی وقتا جواب میده ولی جالبه که بدونید کامپیوتر ها روش های خلاقانه عجیبی خواهند ساخت که امتیاز شمارو بگیرن ولی کاری که میخواید رو نکنن🥲

مثلا در مورد رباتی که قراره پشتک( back flip) بزنه یکی از روش های امتیاز دهی این خواهد بود که پاهای ربات در یک بازه زمانی باید رو به بالا باشه. حالا اگه کد این مورد رو بزنید و توی شبیه ساز کامپیوتری اجرا کنیدش بعد چندین مرحله اجرا می‌بینید سیستم پاهای آواتار رو بلند کرده! یا اواتاری خواهید داشت که رو دستاش راه میره :))


خلاصه کلام اینه که حتی با داشتن هدف کلی مشخص. ساخت مقیاس دقیق امتیاز دهی خیلی کار تخصصی و پیچیده اییه چون مغز ما همیشه توی معادلات خودش متغیر هایی رو در نظر میگیره که در نگاه اول قابل مشاهده نیستن.

✍🏻 ‏Ho33ein

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
👍4
🔴Trends.doc🔴
🔰سلسله جلسات بررسی مستند

🔻جلسه سوم:
بررسی مستند AlphaGo

📌به همراه بازدید از آزمایشگاه مدلسازی محاسباتی و یادگیری ماشین
❗️ظرفیت بازدید محدود است!

🗓 5شنبه - 12 اسفند
🕠ساعت 15:00

جهت ثبتنام برای بازدید به آیدی @Trends_doc پیام دهید

#Machine_Learning

🆔 @ECETrends | http://instagram.com/ece_trends
👍2
Audio
🎥 سلسله جلسات بررسی مستند

3⃣ جلسه سوم: بررسی مستند AlphaGo

#Machine_Learning
#AI

🆔 @ECETrends | http://instagram.com/ece_trends
❤1