انقلاب صنعتی چهارم – هوش مصنوعی

0
150
انقلاب صنعتی چهارم – هوش مصنوعی

“انقلاب دیجیتال را که از سال ۱۹۸۰ آغاز شده و تا امروز ادامه یافته، می‌توان به سادگی، تغییر از فناوری الکترونیک آنالوگ، به سوی فناوری دیجیتال نامید.

در مرکز این تحوّل، ترانزیستور و فناوری‌های مشتق شده از آن، مانند رایانه، تلفن همراه و دورنگار قرار دارند.”

 

“انقلاب صنعتی چهارم (به انگلیسی Fourth Industrial Revolution) یا صنعت ۴٫۰ (به انگلیسی Industry 4.0) به اتوماسیون فرآیندهای تولید سنتی با استفاده از فناوری هوشمند گفته می‌شود.”

 

هدف انقلاب صنعتی چهارم اینه که دخالت انسان رو به حد صفر برسونه.
برای همین این انقلاب باید ارتباطات بین ماشین ها رو بیشتر کنه (اینترنت چیزها یا IoT) و ماشین ها رو هوشمند کنه (هوش مصنوعی یا AI) تا مسائل رو تحلیل کنن، خودشون رو نظارت و رفع عیب کنن و بتونن فرآیندها رو بهینه کنن (کاهش هزینه و افزایش بهره وری).

اینترنت چیزها و هوش مصنوعی

یکی از اتفاقات مهم در انقلاب صنعتی چهارم، افزایش تعداد دستگاه های الکترونیکیه که به صورت نظیر به نظیر یا از طریق واسط (سرور، ابر سرور و …) با هم ارتباط دارند.

 

خانه های هوشمند یک مثال خیلی خوب هستند که بتونم منظورمو برسونم.

در یک خانه هوشمند ما میتونیم اجزای زیر رو داشته باشیم:

  1. آیفون تصویری هوشمند
  2. دزدگیر هوشمند با دوربین های نصب شده در خانه
  3. حسگر دود
  4. حسگر دما
  5. حسگر روشنایی
  6. حسگر صوتی
  7. و …
اینترنت چیزها و هوش مصنوعی
سیسی – نیمه شب

بیاید با هم یک سناریو رو متصور بشیم.

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

به سمت “خانه” برمیگردم.

وقتی روبروی درب خونه قرار میگیرم، آیفون با تشخیص چهره من و احراز هویتم درب رو برام باز میکنه، وقتی که وارد خونه شدم درب خونه به صورت خودکار بسته میشه.

هوا تاریکه و چراغا به صورت خودکار روشن شدند، کمی سردرد دارم و با صدای رسا میگم “سیسی لطفا نور چراغا رو کمتر کن!”، خونه هوشمند (سیسی) نور چراغا رو کمتر میکنه و یک جایی لم میدم.

 

همینطور که در این سناریو خواندید و متصور شدید، اینترنت چیزها (چیزنت) کاملا در این خانه هوشمند استفاده شده، حسگرها با هم ارتباط دارند، با یک پردازشگر مرکزی (سیسی) هم مرتبط هستند.

اما اون بخشی که تصمیم میگیره در چه زمانی چه کاری انجام بده یا صدای من یا هویت من رو تشخیص بده، کار هوش مصنوعیه.

واقعا جذابیتی نداره من یک پنل مدیریت (اپلیکیشن موبایل) داشته باشم اطلاعات رو ببینم، هشدارها رو ببینم و خودم تصمیم بگیرم!

اینجوری همش درگیرم خونه رو مدیریت کنم…!

شت…!

اون زمانی مشکل من حل شده که، خانه هوشمند (اگه واقعا فقط نمیخوایم اسم هوشمند رو یدک بکشیم!) خودش نظارت کنه، تحلیل کنه و تصمیم گیری کنه، و در شرایط خاص که نتونسته تصمیم بگیره از من کمک بخواد!

در انقلاب صنعتی چهارم، اینترنت اشیاء بدون هوش مصنوعی، فقط یک مرحله پیشرفت در جمع آوری اطلاعات محسوب میشه و اسمش رو انقلاب نمیشه گذاشت!

نیاز به سخت افزار قدرتمند

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

کلود کامپیوتینگ

با پردازش مرکزی میشه این مشکل رو رفع کرد، یعنی دستگاه ها و حسگرها اطلاعاتشون رو برای یک پردازشگر مرکزی (محلی یا بر بستر اینترنت) ارسال کنند تا اون عملیات هوشمند رو انجام بده و نتیجه رو بهشون برگردونه.

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

ولی این خیلی راضی کننده نیست، نه؟

اگه یک گوشی موبایل هوشمند داشته باشیم و در شرایطی به اینترنت متصل نباشیم، تمام قابلیت های هوشمند رو از دست میدیم…!

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

فیلترهای اسنپ چت

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

خبر خوب اینه که موفقیت های چشمگیری هم داشتند و پردازش لبه (Edge Computing) خیلی فراگیرتر و جدی تر شده.

پردازش لبه (Edge Computing) , بصورت خلاصه پردازش اطلاعات در محلی نزدیک به خود سنسورها هست نه در مکانی دورتر و یا از بستر اینترنت یا شبکه با سرورهای پرسرعت, و خودروهای خودران بهترین مثال از این نوع پردازش هستند.

 

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

 

تشخیص اشیاء با یک دیوایس با پردازنده ضعیف

اونا تونستن با 5% از دست دادن دقت، تشخیص چهره رو 10 هزار بار سریعتر انجام بدن!

کاری که باید روی GPU انجام میشد رو تونستن روی یک CPU تک هسته ای اجرا کنند!

نتیجه کارشون شرکتی شد به اسم XNOR.ai که سال 2020 توسط شرکت اپل به ارزش 200 میلیون دلار خریداری شد!

فعلا هم خبری ازشون نیست، رفتند به اعماق برای توسعه تکنولوژیشون برای اپل..!

 

حلقه گم شده

از ضعف های ایرانی ها اینه که همیشه چند سالی از تکنولوژی عقبند، از اون بدتر به خاطر وجود ساختار مدیریتی ضعیف و یا “غد بازی های” بین رشته ای، ارتباط موثری بین رشته های سخت افزار و نرم افزار شکل نگرفته.

ظاهرا ما هنوز در انقلاب اول و دوم گیر کردیم تا سوم و چهارم راه هست هنوز!

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

 

از کجا شروع کنیم

برای یادگیری هوش مصنوعی و فعالیت در این رشته، باید از رشته نرم افزار باشیم؟ باید ریاضیات قوی داشته باشیم؟ یا چی؟

من شما رو ارجاع میدم به بهترین استادی که در حوزه هوش مصنوعی پیدا کردم، آقای جرمی هاوارد (Jeremy Howard) ایشون میگن هرچی بقیه میگن شما برعکسشو عمل کنین!

“بقیه میگن باید ریاضیات و … رو بخونین و قوی کنین و بعد برین تو دل کار!

من میگم اول برین تو دل کار، با هوش مصنوعی کد بزنین، تست کنین، کم کم مطالعه کنین و درک عمیق پیدا کنین! حالا در نهایت به ریاضیاتشم میرسین!”

آقای جرمی هاوارد

اگه سری به آموزش های ایشون در سایت Fast.ai بزنین، میبینین چه روش عالی و کاربردی داره و واقعا ره صد ساله رو میتونین 1 شبه (بخوانید ماه) طی کنین!

 

هوش مصنوعی رو میشه به سه دوران دسته بندی کرد:

 

1- زمانی که قدرت پردازشی در اختیار غول ها بود

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

در رابطه با این روش های میتونم به موارد PCA و Decision Trees و SVM و K-Nearest Neighbour و K-Means و انواع دیگه روش های ریاضی/آماری یادگیری ماشین اشاره کنم.

این روش ها بیشتر در داده کاوی استفاده میشد (هنوزم میشه!)

 

مشکل این روش ها اینه که یک مرحله به اسم مهندسی ویژگی (Feature Engineering) دارند که کاملا یک کار انسانیه.

مثلا برای تشخیص چهره توسط کامپیوتر تا حالا روش های مختلفی پیشنهاد شده که همگی این روش ها بر اساس نظرات و ایده هایی بوده که ویژگی های بخصوصی از تصویر صورت رو مورد بررسی قرار میداده و با روش های ریاضی / آماری و روش های تحلیل تصویر، به این نتیجه میرسیده که در تصویر صورت وجود داره یا خیر، و اگه وجود داره در کدام ناحیه؟

 

خوب اگه قرار باشه ما به کامپیوتر بگیم دنبال چه ویژگی هایی باشه، خیلی هوشمند نیست، درسته؟ این روش ها دقت پایینی هم داشتند! دستخوش تغییرات زیادی هم بودند که البته این تغییرات مجددا نیاز به مهندسی ویژگی ها داشت.

 

سال 2001 یک روش توسط پاول وایولا و میشل جونز معرفی شد که در ادامه جزء جدایی ناپذیری از شبکه های عصبی کانولوشن (Convolutional Neural Networks) شد.

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

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

یک شبکه عصبی وقتی میتونه موثر باشه که تعداد بسیار زیادی “نورون” داشته باشه و این نورون ها با هم ارتباط معناداری داشته باشند.

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

سوپر کامپیوتر کی بودی تو؟

2- زمانی که قدرت پردازشی چند برابر در اختیار غول ها قرار گرفت

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

 

پردازش های شبکه های عصبی به تمامی قدرت یک CPU نیاز ندارند (انرژی زیادی هدر میدیم)، وقتی که داریم از خوشه های CPU استفاده میکنیم (پردازش موازی) اطلاعات رو باید برای هر CPU کپی کنیم، و اگر یک معماری با چند صد CPU و حافظه مشترک طراحی کنیم؟ به مشکلات فیزیکی برمیخوریم.

 

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

آرایه‌ای از کارت‌های گرافیک انویدیا

حالا که دست غول ها برای طراحی شبکه های عصبی پیچیده تر و با نورون های بیشتر باز شد،

هم مقوله ای به اسم شبکه های عصبی کانولوشنی (Convolutional Neural Networks) مطرح شد و هم مقوله ای به اسم شبکه های عصبی عمیق (Deep Neural Networks)، که نسبت به شبکه های عصبی قبلی پیشرفت چشمگیری در دقت داشتند.

خوب ما با شبکه های عصبی شاهد رشد عجیبی در دقت هوش مصنوعی در حوزه های پردازش تصویر، صوت و متن هستیم.

اینجا پایان ماجراست؟ خیر!

 

3- زمانی که قدرت پردازشی چند برابر در اختیار بقیه هم قرار گرفت

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

هر روز 100 مقاله جدید در هوش مصنوعی

تقریبا هر ساله یک معماری جدید شبکه عصبی معرفی میشه که در دقت تشخیص معماری های قبلی رو شکست میده.

شبکه های عصبی مولد هم معرفی شدند که قادر به تولید تصویر، صوت و متن هستند.

حتی شبکه های عصبی ایجاد شده که قابلیت کد نویسی هم دارند (کم کم ما نرم افزاریا باید جمع کنیم بریم توی غار).

 

کسی که میخواد هوش مصنوعی کار کنه باید وارد حوزه شبکه های عصبی بشه؟

شبکه های عصبی با اینکه دقت خیلی بالایی در پردازش تصویر و صوت دارند، اما در داده کاوی بازی رو به روش های قبلی میبازند، مثلا درخت های تصمیم دقت خیلی بالاتری نسبت به شبکه های عصبی در داده کاوی اطلاعات (اطلاعات عددی) دارند.

این برمیگرده به علایق شما، که بیشتر در چه رشته ای از هوش مصنوعی میخواین فعالیت کنین؟

داده کاوی؟ پردازش تصویر؟ صوت؟ متن؟ و یا…..؟

 

شما هم اگر ایده یا پیشنهادی در مورد تلفیق الکترونیک و IOT با هوش مصنوعی دارید حتما اینجا برای ما کامنت کنید.

 

 

منبع:سیسوگ

مطلب قبلیچرخش خودکار صفحه مانیتور دسکتاپ با آردوینو و سنسور LSM6DS3
مطلب بعدیتشخیص اشیاء با استفاده از Raspberry Pi B+ 2014 – قسمت اول

پاسخ دهید

لطفا نظر خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید