تولد هوش مصنوعی را میتوان به زمان آلن تورینگ و مقاله ای که در سال 1960 منتشر کرد نسبت داد. از اولین پروژههای عملی هوش مصنوعی، ایده گرفتن از مفهوم شبکهی عصبی و نورونها بود. دو نفر از دانشجویان دانشگاه هاروارد در سال ۱۹۵۰ اولین شبکه ی عصبی مصنوعی را که شامل ۴۰ نورون بود ساختند. در واقع نورونها واحدهایی یکشکل در مغز هستند که پیامهای عصبی را منتقل میکنند. البته شبکه های عصبی جدید که از آنها برای طبقهبندی تصاویر استفاده میشود دارای هزاران نورون هستند! باخت کاسپاروف، قهرمان شطرنج جهان، از سیستم deep blue باعث شد تا هوش مصنوعی در کانون توجه قرار گیرد.
هوشمندی را از دو منظر میتوان مورد بررسی قرار داد؛ از منظر اول هوشمندی یا در رفتار است یا در تفکر و از منظر دوم هوشمندی در انسانگونه بودن یا در منطقی بودن (rationality) است. اگر همهی حالات را در نظر بگیریم به چهار تعریف زیر میرسیم. هوش مصنوعی چیزی است که:
پس از انتخاب تعریف خود از هوشمندی، قدم بعدی ساخت عامل هوشمند (intelligent agent) است. عامل میتواند سختافزاری یا نرمافزاری باشد و بر حسب محیطی که عامل قرار است در آن مورد استفاده قرار گیرد، میتواند دارای اجزای مختلفی باشد.
اما تفاوت هوش مصنوعی و یادگیری ماشین: امروزه هر برنامهای که هوشمندی داشته باشد یا به نوعی رفتار انسان را تقلید کند، به عنوان هوش مصنوعی پذیرفته میشود. اما یادگیری ماشین بعد از هوش مصنوعی موضوعیت پیدا کرد و آن را میتوان زیر مجموعهی هوش مصنوعی در نظر گرفت. از مهمترین ویژگیهای یادگیری ماشین، یادگیری با استفاده از داده و بدون استفاده از دستورات مستقیم است
طبق فرمایشات دکتر فروغی، مسالهی مساله بینی (پیدا کردن مسائل عمیق) یعنی سعی بر پیدا کردن مسایل عمیق و پیدا کردن راه حل و ارتباط ایجاد کردن با دانشگاه و حل با دید پژوهشی امروزه از ارزش بالایی برخودار بوده که حاصل زیبایی نیز خواهد داشت.
از کاربرد های یادگیری ماشین در عصر حاضر میتوان به تشخیص ایمیل های spam، ماشینهای بدون راننده، صاحبانمحصولی که از سیستمهای پیشنهاد دهنده برای پیشنهاد محصول استفاده میکنند، اقتصاددانانی که برای پیشبینی روند بازار از آن استفاده میکنند و... نام برد.
با افزایش اهمیت داده و نیاز جامعه به بررسی آمار و دادهها سبب به وجود آمدن تخصصهایی در این زمینه شد که در زیرهرکدام و کاربرد آنها را به اختصار بیان میکنیم.
تحلیلگر داده: معماری مناسب برای جمعآوری اطلاعات یک سازمان را طراحی میکند و پایگاه داده مناسب برای این کار را انتخاب میکند؛ دادههای خام را از منابع داخلی و خارجی جمعآوری میکند و پس از آمادهسازی و انتخاب قالب مناسب، آنها را در پایگاه دادهای که طراحی کرده ذخیره میکند. نتیجهی فعالیتهای تحلیلگر داده میتواند گزارشهای کلی یا روابط بین دادهها باشد و معمولا در جهت اهداف سازمان است.
دانشمند داده: دانشمند داده سطح بالاتری از تحلیلگر داده دارد و نیازمند دانش آماری و ریاضیاتی و برنامهنویسی قویتری نسبت به تحلیلگر داده است. دانشمند داده امور دادهکاوی را معمولا با زبانهای برنامهنویسی و کتابخانههای آن انجام میدهد ولی تحلیلگر از پلتفرمها و نرمافزارها استفاده میکند.
مهندس داده: انتخاب میکند که چه دادهای از میان سیل دادهی تولیدی در اختیار شرکت قرار بگیرد. پس از انتخاب منابع داده، دادههای منابع مختلف را یکپارچه میکند و برای نگهداری بهینهی آنها برنامهریزی میکند.
مهندس یادگیری ماشین: وظایف مهندس یادگیری ماشین جنبهی نظری و عملیاتی دارند. به این صورت که او باید دانش کاملی از الگوریتمها و روشهای یادگیری ماشین داشته باشد. هم قبل از استقرار مدل، آن را مورد بررسی و تحلیل قرار دهد و هم بر فرآیند عملیاتی ساختن آن و محاسبهی پیچیدگیها نظارت داشته باشد. سپس بعد از از استقرار، مسئول نظارت و رسیدگی به آن خواهد بود.
به عنوان مثالی از ارتباط هوش مصنوعی با صنعت، به ارتباطش با صنعت معدن میپردازیم: با توجه به عدم قطعیت بالا و حجم بسیار زیاد اطلاعات ، زمینهی فعالیت هوش مصنوعی در این صنعت بسیار فراهم است.
شناسایی و ترسیم نقشههای زمینشناسی و عارضههای مربوطه (واحدهای سنگی مختلف)، با استفاده از تصاویر ماهواره ای، پیش بینی متغیرهای ژئومتالوژیکی با داده های کمتر و با دقت بالاتر، با توجه به هزینه بر بودن نمونه برداری های در معادن ، از جمله فعالیت ها در ارتباط بین صنعت معدن و هوش مصنوعی میباشند.
طبق فرمایشات مهندس ستوده، داشتن دانش کافی نسبت به موضوع مورد مطالعه و بررسی از اهمیت بالایی برخوردار است. به عنوان مثال، داشتن دانش کافی در زمینهی پزشکی در پروژه های هوش مصنوعی که از داده های پزشکی درحال استفاده هستیم.
اولین تعارف از یادگیری ماشین در دههی پنجاه آقای آرتور ساموئل یکی از پیشگامان هوش مصنوعی و بازیها : یادگیری ماشین زمینهای از تحقیقات است که به کامپیوترها توانایی یادگیری بدون برنامهنویسی صریح را میدهد. در واقع طبق این تعریف، ویژگی اصلی یادگیری ماشین خود آموزشی یا (Self-learning) میباشد که به معنی استفاده از مدلسازی آماری و عدم استفاده از دستورات مستقیم (یا صریح) میباشد. از اصلی ترین عناصر محوری یادگیری ماشین داده ها هستند که آنچه آن را ارزشمند میکند نمایندگی آن از واقعیت است و اطلاعاتی که درباره آن در اختیارمان میگذارد.
معرفی انواع داده:
· کلمات( زبان طبیعی): دادهای که پردازش زبان طبیعی با آن کار میکند، جملات و کلمات تولید شده توسط انسانها هستند، که ممکن است به صورت نوشتاری یا صوت در اختیار الگورتیمهای کامپیوتری قرار بگیرد. که برخی کاربرد های آن عبارتند از تشخیص گفتار، دسته بندی نوشتار، پاسخ به سوالات و...
· تصاویر: با کاربرد هایی نطیر خودروهای خودران، تشخیص اثر انگشت، در تصاویر پزشکی و...
· جداول
· سری های زمانی: در مورد بعضی از انواع داده، تغییرات آن و در نتیجه مقدار آن در طول زمان اهمیت ویژهای دارد. ماشین میتواند با دیدن تغییرات ویژگی مشخصی از یک داده در طول زمان، الگوی تغییرات آن را یاد بگیرد و به مسائلی که برحسب زماناند، مثل پیشبینی مقدار آن ویژگی در یک زمان مشخص پاسخ دهد.
عناصر چارچوب ارایه شده توسط آرتورسامئل برای مدل کردن یک مساله و حل آن: 1. مدل تصمیم گیری 2. معیار امتیاز دهی 3.رویهی خودکار برای محاسبهی معیار ارزیابی 4. رویهی خودکار برای بهبود مدل.
تعریف آقای تام میشل از یادگیری ماشین: اگر کارایی برنامه در انجام تکلیف T که با سنجه P ارزیابی میشود، با تجربه E افزایش یابد، میگوییم که برنامهیاد گرفته است از تجربه E با توجه به تکلیف T و سنجه P استفاده کند.
به طور کلی یادگیری ماشین به سه دسته کلی تقسیمبندی میشود.
و در نهایت برای بررسی دقیق مدل باید داده از برروی داده های جدید که تابحال سیستم آن را ندیده( تحت عنوان دادهی تست) آزمود.
حال مختصری از ابزار های یادگیری ماشین را اراپه خواهیم کرد.
زبان برنامه نویسی پایتون بنابر دلایلی که به آن اشاره خواهیم کرد، از محبوبیت بالایی برخوردار است :
· دارا بودن کتابخانه ها و ابزار های قوی متعدد
· قابل فهم تر بودن کدها
· جامعه ای بزرگ از برنامه نویسان با هدف حل مشکلات
· مناسب بودن برای پروژه های صنعتی
معرفی کتابخانه های محبوب و قدرتمند پایتون:
Numpy با هدفذخیرهسازی و پردازش بهینهٔ آرایههای عددی، pandas که در پآن ساختار اصلی داده به شکل دیتافریم (data frame) است که در واقع یک آرایه دوبعدی است که در آن سطرها و ستونها عنوان دارند، matplotlib با هدف ساخت نمودارهایی که بتوانند اطلاعات را به خوبی انتقال دهند، scikit_learn با هدف تمرکز بر مدلسازی داده به جای دستکاری و مرتبسازی و خلاصه کردن داده و...
فصل ۵: امروزه با توجه به افزایش بی حد و حصر دادهها، ذخیره سازی مقرون به صرفه دادهها وافزایش قدرت پردازندهها و کاهش هزینههای آنها یادگیری ماشین بسیار آسان تر و فراگیر تر شده است اما این بدان معنا نیست که چالش ها نیزبصورت کامل از بین رفته اند. درزیر به چالش هایی که در این زمینه وجود دارند اشاره میکنیم.
نخست چالش های مروط به داده
· تعداد ناکافی داده: مدلهای یادگیریماشین مانند انسانها هوشمند نیستند و فقط برای حتی تشخیص یک نوع میوه باید تعداد بسیار زیادی عکس مشاهده کنند.
· دادهی بی کیفیت: وجود مقادیر اشتباه و گمشده و یا یک سری دادهی بسار نامناسب با عموم داده ها که جز استثنایات به شمار میروند مانند وجود افرادی مثل Bill Gates ، Elon Musk و Mark Zuckerberg در بین دادههایی در خصوص حقوق افراد فعال در حوزه فناوریاطلاعات.
· ویژگی مناسب: ویژگی هایی را برای یادگیری مشخص نماییم که خاصیت تمییز دهی بین کلاس هاراداشته و در خروجی بصورت مستقیم اثرگذار باشند.
چالش های الگوریتمی
· Overfitting: ارزیابی روی دادهی آموزش دیده بسیار عالی اما در داده های جدید که مدل تا بحال آن را ندیده ضعیف
· Underfitting: بنابر دلایلی از جملهی دادهی نامناسب، مدل یادگیری خوبی نداشته باشد.
· زمان: هم مدت زمانی که طول میکشد تا آموزش مدل تمام شود، هم زمانی که مدل برای پیشبینی نمونهها مصرف میکند که هردو از اهمیت بالایی برخودار هستند.
فصل ۶: خلاصه گامهایی است که برای یک پروژهیادگیری ماشین طی میشود را بررسی میکنیم.
حال به عنوان جمع بندی نکاتی تکمیلی در خصوص هوش مصنوعی ذکر میکنیم. چرخهٔ تب تکنولوژی (Technology Hype Cycle) که نمودار رشد تکنولوژیهای مختلف را در طی زمان نشان میدهد، به شما در انتخاب حوزه ی فعالیتی کمک کرده و دید عمیق تری را از آیندهی فعالیتی شما ارائه خواهد داد. به عنوان مثال از THC هوش مصنوعی در سال 2020 میتوان موارد زیر را استنباط کرد.
ابتدا تصویر این چرخه را ملاحظه بفرمایید:
از جمله نکاتی که میتوان به آن اشاره کرد را در زیر آورده ایم:
. استفاده از واحد پردازندهٔ گرافیکی (GPU) در هوش مصنوعی تقریبا به محدودهٔپایانی رشد خود رسیده و اغلب تکنولوژیهای دیگر این حوزه به صورت مناسبی از آن استفاده میکنند.
· باتوجه به موقعیت قرارگیری پردازش تصویر(computer vision) در این نمودار، با آنکه به نظر میرسد این تکنولوژی شهرت خود را از دست داده است اما زمان به اوج رسیدن آن چیزی حدود ۲ تا ۵ سال تخمین زده شده است که نشانگر زمان مناسبی برای سرمایهگذاری و یا شروع به یادگیری این موضوع است.
هوش مصنوعی محدود یا ضعیف به هوشمندی عامل هایی گفته میشود که در یک مسالهی خاص به هوشمندی رسیده اند.
هوش مصنوعی عمومی(artificial general intelligence) و یا قوی عبارت است از ساختن عامل هوشمندی که مانند انسان از هوشی عمومیبرخوردار باشد که توانایی آموختن در مواجهه با هر مسئلهٔجدیدی را داشته باشد و محدود به یک زمینه یا مسئلهٔ خاص نباشد. که لذاب بشر بسیار حائز اهمیت است.
refrences:
https://quera.ir/college/land/college/8522/