هوش مصنوعی(Artificial Intelligence یا AI)
خیلی از افراد با شنیدن واژه هوش مصنوعی تصور میکنند، هوش مصنوعی همان رباتهای بی احساسی هستند که قرار است در آینده جای انسانها را بگیرند. مسئول این نوع تفکر به احتمال زیاد فیلم های علمی و تخیلی است اما واقعیت با آنچه که تصور میشود تفاوت دارد. هوش مصنوعی یا AI در واقع تکنولوژی است که به نحوی قابلیت تفکر دارد. البته این قابلیت تفکر با چیزی که ما به عنوان تفکر انسانی میشناسیم تا حد زیادی تفاوت دارد، اما در حقیقت سعی دارد تا از آن تقلید کند. به شبیه سازی فرآیندهای هوش انسانی توسط برنامههای کامپیوتری، هوش مصنوعی میگویند. همزمان با افزایش هیجان هوش مصنوعی در کشور شاهد این هستیم که شرکتها به دنبال چگونگی استفاده هوش مصنوعی در محصولات و خدمات آنها آن را خود هستند.
امروزه شاید هوش مصنوعی به آن شکلی که تصور میکنیم وجود نداشته باشد اما باز هم بسیاری از کارهایی که روزانه انجام میدهیم، مانند جستجوی اینترنت یا گشت و گذار در صفحات شبکههای اجتماعی و غیره، همه متاثر از هوش مصنوعی است و در حقیقت در این مواقع داریم از آن استفاده میکنیم. انقدر این استفاده نا ملموس است و به آن عادت کردهایم که در آن لحظه حس نمیکنیم که داریم از هوش مصنوعی استفاده میکنیم. دلیل اصلی آن این است که نمیدانیم هوش مصنوعی واقعا چیست و چه کارهایی انجام میدهد. از آنجایی که آینده از آن هوش مصنوعی خواهد بود بهتر است به جای نگران بودن در مورد هوش مصنوعی یاد بگیریم که چه کارهایی را میتوانیم با آن انجام دهیم و اطلاعاتمان را در این زمینه بیشتر کنیم. پس بیایید از ابتدا ببینیم هوش مصنوعی چیست.
زبان برنامه نویسی هوش مصنوعی چیست؟
هوش مصنوعی نیازمند سخت افزار و نرم افزار تخصصی برای نوشتن و آموزش الگوریتمهای یادگیری ماشین است. هیچ زبان برنامه نویسی به طور انحصاری در هوش مصنوعی استفاده نمیشود، اما پایتون (Python)، آر (R)، جاوا (Java)، سی++ (++C) و جولیا (Julia) جزء زبانهای محبوب در بین توسعه دهندگان هوش مصنوعی هستند.
تعریف هوش مصنوعی
هنوز تعریف دقیقی که تمامی دانشمندادن بر روی آن توافق داشته باشند از هوش مصنوعی ارائه نشده ولی اکثر تعریفها را میتوان به شکل زیر دسته بندی کرد.
دو تعریف اول مربوط به فرآیندهای تفکر و استدلال است، در حالی دو تعریف دیگر با رفتار سر و کار دارند.
تعریف سادهای از هوش مصنوعی
هوش مصنوعی یا artificial intelligence شاخه ای از علوم رایانه است که هدف اصلی آن تولید ماشینهای هوشمندی است که توانایی انجام وظایفی که نیازمند به هوش انسانی است را داشته باشد. هوش مصنوعی در حقیقت نوعی شبیه سازی هوش انسانی برای کامپیوتر است و منظور از هوش مصنوعی در واقع ماشینی است که به گونه ای برنامه نویسی شده که همانند انسان فکر کند و توانایی تقلید از رفتار انسان را داشته باشد. این تعریف می تواند به تمامی ماشین هایی اطلاق شود که بگونهای همانند ذهن انسان عمل میکنند و میتوانند کارهایی مانند حل مسئله و یادگیری داشته باشند.
تفاوت رباتها با هوش مصنوعی در چیست؟
رباتها ممکن است هوش مصنوعی داشته باشند، اما هر رباتی مصداقی از هوش مصنوعی نیست. رباتها میتوانند تنها اجسام مکانیکی باشند که برای انجام وظایف خاصی برنامهریزی شدهاند، در حالی که هوش مصنوعی میتواند در داخل رباتها یا برنامهها وجود داشته باشد.
اهداف هوش مصنوعی
اساس هوش مصنوعی آن است که هوش انسان و طریق کار آن بهگونهای تعریف شود که یک ماشین بتواند آن را به راحتی اجرا کند و وظایفی که بر آن محول میشود را به درستی اجرا کند. هدف هوش مصنوعی در حقیقت بر سه پایه استوار است:
هوش مصنوعی (AI) شاخه گسترده ای از علوم رایانه است که مربوط به ساخت ماشین های هوشمند با توانایی انجام وظایفی است که معمولاً به هوش انسان نیاز دارند. هوش مصنوعی یک علم میان رشته ای با چندین رویکرد است ، اما پیشرفت در یادگیری ماشین و یادگیری عمیق باعث ایجاد تغییر الگوی تقریباً در هر بخش از صنعت فناوری می شود.
تاریخچه هوش مصنوعی
تاریخچه هوش مصنوعی به سال های جنگ جهانی دوم بر میگردد. زمانی که نیروهای آلمانی برای رمز نگاری و ارسال ایمن پیام ها از ماشین enigma استفاده می کردند و دانشمند انگلیسی، آلن تورینگ در تلاش برای شکست این کدها برآمد. تورینگ به همراه تیمش ماشین bombe را ساختند که enigma را رمز گشایی می کرد. هر دو ماشین enigma و bombe پایه های یادگیری ماشینی (machine learning) هستند که یکی از شاخه های هوش مصنوعی یا همان Artificial intelligence میباشد. تورینگ ماشینی را هوشمند میدانست که بدون اینکه به انسان حس صحبت با ماشین را بدهد، با او ارتباط برقرار کند و این مسئله پایه علم هوش مصنوعی است یعنی ساخت ماشینی که همانند انسان فکر، تصمیم گیری و عمل کند.
رفته رفته با پیشرفت فناوری و سایر سخت افزارهای مورد نیاز برای توسعه هوش مصنوعی، ابزار هوشمند و سرویسهای هوشمندی به بازار عرضه شدند که از هوش مصنوعی در بسیاری از فرآیندهایشان استفاده میکردند. بسیاری از سرویسهای معروفی همانند موتورهای جستجو، ماهوارهها و غیره از هوش مصنوعی استفاده میکردند. با معرفی گوشیهای هوشمند و پس از آن گجتهای هوشمند، هوش مصنوعی گام بلندی را برای ورود به زندگی انسانهای پشت سر گذاشت. از این زمان به بعد هوش مصنوعی برای انسانها جلوه کاربردی تری پیدا کرد و انسانها بیشتر با واژه هوش مصنوعی و کاربردهای آن آشنا شدند.
تفاوت هوش مصنوعی و برنامه نویسی
ما در برنامه نویسی ورودیهای معلوم و مشخص دازیم و با استفاده از دستورات شرطی مانند if و else میتوانیم معادلات را حل کنیم و به نتیجهی دلخواه برسیم ولی مسائلی که با هوش مصنوعی حل میشوند از تنوع ورودی زیادی بهرمند هستند به همین دلیل نمیتوان با برنامه نویسی معمولی تمام جنبهها را پوشش داد مثل یک سیستم تبدیل صدا به متن یا تشخیص چهره که دادههای ورودی آنها بسیار متنوع هستند به همین دلیل مجبور به استفاده از مدلهای هوش مصنوعی برای انجام این کارها هستیم
در مقالهای دیگر به صورت کامل به مهمترین تفاوتهای هوش مصنوعی و برنامه نویسی اشاره کردیم برای خواندن مقاله “تفاوت هوش مصنوعی و برنامه نویسی” بر روی عنوان مقاله کلیک کنید.
شاخه های هوش مصنوعی
هوش مصنوعی یک علم بسیار گسترده و پیچیده است که شاخههای متعددی دارد؛ شاخههای هوش مصنوعی عبارتند از:
سطوح مختلف هوش مصنوعی
یک سیستم هوش مصنوعی بر اساس آن چه که از دنیای بیرون درک میکند و میتواند به آن پاسخ دهد، دارای سه سطح میباشد. هوش مصنوعی محدود، عمومی و سوپر هوش مصنوعی. در ادامه هر کدام را به تفصیل توضیح میدهیم.
در مقالهای دیگر انواع هوش مصنوعی را معرفی کردیم برای کسب اطلاعات بیشتر به این مقاله مراجعه کنید.
هوش مصنوعی محدود (artificial narrow intelligence)
در تاریخچه هوش مصنوعی ، هوش مصنوعی محدود بسیار زودتر از انواع دیگر هوش مصنوعی پدید آمده است. این روزها نمونه های هوش مصنوعی محدود زیاد است. برای مثال رایانههایی که در بازی های پیچیدهای مانند شطرنج ، تصمیم گیری هوشمندانه در زمینه تجارت و انواع دیگر کارهای مهم توانستهاند بهتر از انسان عمل کنند نمونههایی از هوش مصنوعی محدود هستند. زمانی که در مورد هوش مصنوعی محدود صحببت میکنیم منظورمان سیستمهای هوشمندی است که در انجام دادن یک وظیفه (task) به خصوص بهتر از انسان عمل میکنند. برای مثال سیستم هوشمندی که میتواند به صورت خودکار گفتار را به نوشتار تبدیل کند یا سیستمهای تشخیص چهره که قادرند هویت یک فرد را حتی در شلوغی و سیل عظیمی از جمعیت تشخیص دهند. اگر بخواهیم برخی از کاربردهای هوش مصنوعی محدود را مثال بزنیم، عبارتند از:
هوش مصنوعی عمومی (Artificial General Intelligence)
منظور از هوش مصنوعی عمومی ماشینی است که میتواند دنیای اطراف خود را همانند یک انسان درک کند و دارای ظرفیت و گنجایش مشابه برای انجام فعالیتها و وظایفی است که یک انسان به طور معمول آنها را انجام میدهد. در حال حاضر هوش مصنوعی عمومی وجود ندارد اما رد پای آن را میتوانیم در داستان های دارای ژانر عملی-تخیلی مشاهده کنیم. از نظر تئوری یک هوش مصنوعی عمومی میتواند هم سطح انسان فعالیت کند و یا حتی در زمینههایی مانند حافظه و غیره از او بهتر عمل کند.
با این سطح از آگاهی و دانش یک ماشین میتواند تمام کارهایی که زمانی بر انسان محول میشد را بدون نیاز به وجود انسان انجام دهد و با گذشت زمان بیشتر ماشینهای دارای هوش مصنوعی عمومی میتوانند در بسیاری از زمینهها جای انسان را پر کنند. خاتمه دادن به نیاز حضور نیروی انسانی در بسیاری از کارها و استفاده از تکنولوژی هوش مصنوعی عمومی یا کامل میتواند مانند هر تکنولوژی دیگری هر دو جنبه مثبت و منفی در زندگی اجتماعی و فردی انسانها داشته باشد. اما با همهی اینها وجود آن بسیار مفید و در عین حال اجتناب ناپذیر خواهد بود. به کمک هوش مصنوعی عمومی که دارای تواناییها و ظرفیتهای زیادی برای کمک به بشریت میباشد، بسیاری از مشکلاتی انسان امروزی با آن سر و کله میزند، همانند تغییرات شدید آب و هوایی، حل خواهد شد.
سیستمهای هوش مصنوعی عمومی میتواند از کارهای عادی تا کارهای بسیار مهم و خطیر را به بهترین شکل انجام دهند. در سطح عمومی آنها میتوانند کارهایی مثل رانندگی، دستیار شخصی هوشمند با توانایی درک همهی نیازهای کاربر، یک دستیار پزشک و یا سیستم تشخیص بیماری و غیره باشد. در سطوح بالا این سیستمها میتوانند کارهایی را انجام دهند که به زندگی و امنیت و جان انسانها بستگی دارد و میتوانند به خوبی از پس چنین کارهایی بر بیایند.
سوپر هوش مصنوعی(Artificial Super Intelligence)
سوپر هوش مصنوعی در واقع عبارتی است که برای هوش مصنوعی استفاده میشود که سطح هوش و درک انسانی را پشت سر گذاشته و به نوعی دارای هوش فرا بشری خواهد شد. تا به حال هنوز هیچ جامعهای نتوانسته به سوپر هوش مصنوعی دست پیدا کند. در حقیقت رسیدن یا نرسیدن و یا حتی زمان رسیدن به آن در حالهای از ابهام میباشد. هم چنین این مسئله که چنین هوش مصنوعی چه کارهایی انجام میدهد و یا این مسئله که آیا قرار است تهدیدی برای بشر باشد یا فرصتی برای او، هم مبهم است و بسیاری از صاحب نظران نظرات بسیار متفاوتی را در این مورد دارد وبحثی داغ بین صاحبان غولهای تکنولوژی میباشد. برای رسدن به این سطح از هوش مصنوعی، یک سیستم هوشمند باید تست تورینگ را پشت سر گذاشته باشد و هیچ ماشینی تا به حال به سطحی از درک و شعور و وسعت دانش یک انسان بالغ نرسیده است که از این تست سر بلند بیرون آمده باشد.
تفاوت هوش مصنوعی محدود و عمومی و سوپر هوش مصنوعی در چیست؟
هوش مصنوعی محدود (ضعیف) جایی است که ما در حال حاضر در آن قرار داریم و هوش مصنوعی عمومی آینده ای است که میخواهیم به آن برویم و سوپر هوش مصنوعی آیندهای است که برای هوش مصنوعی میبینیم که حاصل تکامل و هوشمند شدن هوش مصنوعی است.
هوش مصنوعی محدود به این معنا است که در آن سیستم هوش مصنوعی میزان خاصی از هوش را در یک زمینه خاص به کار ببرد. در حقیقت این سیستم هنوز یک کامپیوتر است اما یک کامپیوتری که در برخی از زمینهها هوشمندتر از انسان عمل میکند.
معنای هوش مصنوعی عمومی بسیار پیچیدهتر است. این واژه به سیستمی اطلاق می شود که میتوانند همانند یک انسان هر کاری را بکه به او محول میشود را انجام دهد. ایده آل هوش مصنوعی عمومی آن است که بتواند به درک تجربی و شناخت کلی از محیط هایی که در آن قرار میگیرد داشته باشد و هم چنین بتواند دادهها و اطلاعاتی که به او داده میشود را با سرعتی چند برابر انسان پردازش نماید. از این رو میتوانیم بگوییم که سیستمهای هوش مصنوعی عمومی در بعد دانش ، توانایی شناختی و سرعت پردازش از انسانها قویتر عمل خواهند کرد نکته مهم این است که این سیستم زاده مغز و علم بشر است.
سوپر هوش مصنوعی همان طور که گفته شد زمانی است که هوش مصنوعی به فراتر از تواناییهای انسان دست خواهد یافت. این سیستم میتواند دارای قدرتهایی باشد که یک انسان از داشتن آن نحروم است. رسیدن به این سیستم در اثر تکامل یافتن هوش مصنوعی عمومی اتفاق خواهد افتاد و ساخت آن هم میتواند به دست بشر باشد و یا اینکه میتواند به دست سیتستمهای هوشمندی باشد که به تکامل دست یافتهاند.
هوش مصنوعی چگونه آموزش میبیند؟
امروزه سیستمهای هوش مصنوعی به کمک یادگیری ماشین و یادگیری عمیق هوشمند میشوند و میتوانند یاد بیرند و آموزش ببینند. در ادامه هر کدام را معرفی میکنیم.
یادگیری ماشین
یادگیری ماشین (Machine Learning) یکی از زیر مجموعه های هوش مصنوعی است که به سیستم ها این امکان را می دهد تا به صورت خودکار یادگیری و پیشرفت داشته باشند بدون اینکه نیاز باید تا یک برنامه نویسی مخصوص به آن یادگیری خاص را انجام داد. تمرکز اصلی یادگیری ماشینی بر توسعه برنامههایی است که بتوانند با دسترسی به دادهها، به طور خودکار از آنها برای یادگیری خود سیستم استفاده کنند.
در یادگیری ماشین فرآیند یادگیری با مشاهدات یا داده ها آغاز می شود و سیستم از مثال ها، تجارب مستقیم و یا دستور العمل ها و.. استفاده میکند تا به یک الگو مشخص برسد و بر اساس آن الگو شروع به تصمیم گیری و حل مسئله کند. هدف اصلی یادگیری ماشین آن است که به کامپیوتر اجازه بدهیم که بدون دخالت و کمک انسان به طور اتوماتیک یادگیری داشته باشند و بتواند بر اساس مشاهدات و دادهها رفتار خود را تنیم کند.
الگوریتم های بسیار مختلفی برای یادگیری ماشین وجود دارد و هر روزه صدها الگوریتم جدید نیز در این زمینه تولید میشوند. به طور معمول این الگوریتمها به وسیله سبک یادگیری (learning style) (مانند یادگیری نظارت شده، یادگیری بدون نظارت، یادگیری نیمه نظارت) و یا با توجه به شباهتشان در فرم و عملکرد ( مانند طبقه بندی، برگشت، درخت تصمیم گیری، دسته کردن، یادگیری عمیق و…) گروه بندی می شوند. صرف نظر از هر دو گروهبندی، تمام الگوریتم های یادگیری ماشین معمولا در زمینههای زیر فعالیت میکنند:
هدف اساسی الگوریتمهای یادگیری ماشین تفسیر موفقیت آمیز دادهها و تعمیم یادگیریها به فراتر از نمونههای آموزش داده شده است.
یادگیری عمیق
یادگیری عمیق نوعی از یادگیری ماشین و هوش مصنوعی است که در واقع از روشی که ذهن انسان برای یادگیری موضوع خاصی به کار میگیرد، تقلید میکند. این نوع از یادگیری یکی از عناصر مهم در علم داده میباشد که شامل آمار و مدل سازی پیش بینی است. یادگیری عمیق برای دانشمندان داده که وظیفه جمع آوری ، تجزیه و تحلیل و تفسیر مقادیر زیادی از داده ها را دارند، بسیار کاربردی است و روند تحلیل و تفسیر دادهها را سریعتر و آسان تر می کند.
به نوعی می توان گفت یادگیری عمیق در واقع همان یادگیری ماشین است به گونه ای که در سطح کارهای پیچیده، نمایش یا انتزاع، عمل یادگیری را برای یک سیستم هوش مصنوعی انجام میدهد و به این صورت ماشین درک بهتری از واقعیت های وجودی پیدا میکند و می تواند الگوهای مختلف را شناسایی کند. در ساده ترین سطح، یادگیری عمیق را می توان راهی برای خودکار سازی تجزیه و تحلیل پیش بینیها دانست.
برای شناسایی نحوه کار کرد یادگیری عمیق باید با شبکههای عصبی آشنا باشید. این نوع از یادگیری در واقع همانند یادگیری به وسیله شبکههای عصبی هستند که دارای لایه پنهان زیادی میباشند و هر چقدر در این لایه ها جلو تر بروید به مدل های پیچیدهتر و کاملتری میرسید.
دسته بندی سیستمهای هوش مصنوعی
آرنت هینتز، استادیار زیست شناسی تلفیقی و علوم کامپیوتر دانشگاه ایالتی میشیگان، هوش مصنوعی را به چهار دسته کلی تقسیم بندی می کند. این دسته بندی شامل سیستم هایی که امروزه وجود دارند تا سیستم های احساسی که هنوز وجود ندارند را در بر میگیرد. این دسته ها به شرح زیر هستند:
نوع اول: ماشین های انفعالی
نمونه این دسته deep blue است که یک برنامه شطرنج بود که در دهه 1990 توانست گری کاسپاروف، قهرمان شطرنج جهان را شکست دهد. deep blue می توانست مهره های روی هر خانه شطرنج را شناسایی کند و حرکت های پیش رو را پیش بینی کند. مشکل برنامه آن بود که نمی توانست تجربه های قبلی خود را به یاد بسپارد و از آن برای حرکت های آینده اش استفاده کند. این برنامه هربار تمام حرکت های استراتژیک ممکن خود و رقیب را بررسی و آنالیز می کرد و بهترین آن ها را انتخاب می کرد. این نوع از هوش مصنوعی و برنامه های این چنینی برای هدف های محدودی قابل استفاده هستند و نمی توانند به راحتی در موقعیت های دیگری کاربرد داشته باشند.
نوع دوم: حافظه محدود
این سیستم هوش مصنوعی برعکس قبلی می تواند از تجارب گذشته برای تصمیمات آینده اش استفاده کند. برخی از کارکرد های تصمیم گیری در ماشین های خود ران از این نوع طراحی هستند. این نوع ماشین ها از مشاهداتشان برای تصمیماتی که در آینده ای نه چندان دور می خواهند بگیرند استفاده می کنند. مثلا اینکه لاینی که در آن در حال رانندگی هستند را عوض کنند. البته این نوع مشاهدات و تجربیات به صورت همیشگی ذخیره نمی شوند.
نوع سوم: تئوری ذهن
این نوع از هوش مصنوعی هنوز وجود ندارد اما اساس این عبارت روانشناختی به تمامی اعتقادات و دانش ها، آرزوها و آمال و نیت هر فرد بر می گردد و تاثیری که هر کدام از آن ها بر تصمیم گیری یک فرد دارد. این هوش مصنوعی قادر به درک و آنالیز این نوع از تصمیم گیری ها می باشد.
نوع چهارم: خود آگاهی
در این دسته سیستم هوش مصنوعی آگاهی از خود و هوشیاری وجود دارد. ماشین های دارای خود آگاهی می توانند بفهمند که در چه سطح و حالتی هستند و می توانند از اطلاعاتی که بدست می آورند احساسات دیگران را نتیجه گیری کنند. البته این نوع از هوش مصنوعی نیز همانند مورد سوم هنوز وجود ندارد.
آیا رباتیک همان هوش مصنوعی است؟
رباتیک در حقیقت حوزه ای از علم و تکنولوژی است که با ربات ها سر و کار دارد و به طور کلی میتوان گفت رباتها ماشینهایی هستند که برای انجام یک سری کارها به صورت اتوماتیک یا نیمه اتوماتیک، از قبل برنامه ریزی شدهاند. رباتیک علمی است که با طراحی، ساخت و برنامه نویسی انواع رباتها سر و کار دارد و تنها بخش کوچکی از زیر مجموعه آن است که به هوش مصنوعی مربوط می شود و با آن ادغام شده و تشکیل ربات های دارای هوش مصنوعی را می دهد. هوش مصنوعی نیز زیر مجموعهای از علوم کامپیوتر است که به تولید برنامههایی میپردازد که وظایفی که نیاز به هوش انسانی دارد را انجام دهند. الگوریتم های هوش مصنوعی دارای یادگیری، درک، حل مسئله، درک زبان طبیعی و یا استدلال منطقی می باشند.
از هوش مصنوعی در دنیا کاربردهای متنوع و فراوانی دارد و این تکنولوژی در زمینههای مختلفی برای اتوماتیک کردن و یا هوشمند کردن فرآیندها استفاده میشود. برای مثال موتور جستجوگر گوگل از هوش مصنوعی در جستجو ایش استفاده میکند تا بهترین و نزدیکترین نتیجه به آن چه که کاربر میخواهد را پیدا کند. الگوریتمهای هوش مصنوعی تنها به منظور کنترل رباتها ساخته نشدهاند. در واقع زمانی که از هوش مصنوعی برای کنترل یک ربات استفاده میکنیم، در حقیقت این هوش مصنوعی تنها یک بخشی از سیستم رباتیکی بزرگتری است که این سیستم بزرگتر خود شامل سنسورها، فعال کنندهها و برنامه نویسیهایی است که هوش مصنوعی در آن دخیل نمیباشد. هوش مصنوعی و رباتیک دو علم کاملا جدا از هم هستند و اصلا به یکدیگر شباهتی ندارند و تنها در برخی از بخشها به منظور هوشمند شدن رباتها از هوش مصنوعی استفاده میشود.