در مقالات قبلی به عنوان فتح باب و بیان مساله، در مورد مصداقها و نمونههایی از درگیری نظام سیاست گذاری با موضوع هوش مصنوعی صحبت کردیم و به صورت اجمالی تاریخچه هوش مصنوعی را مورد بررسی قرار دادیم. در این مقاله به معرفی بیشتر یادگیری ماشین میپردازیم و تلاش میکنیم فهم بهتری از الگوریتمها به دست آوریم.
امروزه الگوریتمها ما را در بر گرفتهاند و بر روی تصمیماتی که ما میگیریم و یا درباره ما گرفته میشوند تاثیر میگذارند. مثالهای سادهای از این الگوریتمها را میتوانید در پیشنهادهای فیلم یوتیوب و یا پیشنهادهایی که فروشگاههای اینترنتی به شما میدهند مشاهده کنید. نمونه استفاده از این الگوریتمها در بخش عمومی نیز در سرتاسر دنیا وجود داد. به طور مثال در آمریکا دادگاهها و نظام پزشکی به صورت ویژه از این الگوریتمها برای تصمیم گیری استفاده میکنند. اما الگوریتمها چه چیزهایی هستند !؟
بهتر است با مثال ساده تهیه شربت آبلیمو خوشمزه شروع کنیم:
مرحله اول
برای تهیه شربت آبلیمو خوشمزه ابتدا شکر را به همراه آب داخل یک قابلمه مناسب میریزیم و روی حرارت زیاد قرار میدهیم تا آب سریعتر به جوش بیاید، سپس شکر را هم میزنیم تا به طور کامل در آب حل شود.
مرحله دوم
پس از اینکه آب به جوش آمد حرارت را ملایمتر میکنیم و صبر میکنیم تا شربت به قوام برسد. حدود ۷ تا ۱۲دقیقه زمان نیاز است تا شربت به غلظت کافی برسد. پس از اینکه به قوام رسید، قابلمه را از روی حرارت کنار میگذاریم.
مرحله سوم
درب قابلمه را میگذاریم تا دیوارههای قابلمه عرق کنید و شربت شکرک نزند. پس از اینکه شربت به خوبی خنک شد، آبلیمو را کم کم اضافه میکنیم و به خوبی با شربت مخلوط میکنیم تا با هم ترکیب و کاملا یکدست شوند.
مرحله چهارم
در صورت تمایل پوست لیمو ترش را نیز رنده میکنیم و داخل شربت میریزیم. اگر لیمو ترش تازه در دسترس دارید میتوانید به جای استفاده از پوست لیمو ترش پالپهای درون لیمو ترش را خرد کنید و داخل شربت بریزید
دستور العملی که در بالا برای تهیه یک شربت آبلیمو خوشمزه دیدید، یک الگوریتم است! یک الگوریتم، روشی گام به گام برای حل مسئله است. هر الگوریتم مجموعهای متناهی از دستورالعملها است، که به ترتیب خاصی اجرا میشوند(مثلا اگر اول آبلیمو به آب اضافه کنید، دیگر شربت آبلیمو "خوشمزه" نخواهید داشت :) ). یعنی زمانی که شما با استفاده از تعداد مشخصی از عملیات، در تعداد و ترتیبی مشخصی از مراحل، پاسخی به یک مساله میدهید، یک الگوریتم برای آن ارائه کرده اید. به طور مثال به الگوریتم ساده زیر که برای تشخیص زوج یا فرد بودن یک عدد است توجه کنید:
1. یک "عدد" دریافت کن
2. مقدار باقیمانده "عدد" تقسیم بر 2 را محاسبه کن
3. اگر باقیمانده برابر با صفر است، چاپ کن عدد زوج است
4. در غیر این صورت چاپ کن عدد فرد است
همان طور که مشاهده میکنید الگوریتمها مجموعه ای دستورالعملهاست و میتوان آن را در مورد مسالههای ساده از بستن بند کفش تا شناسایی تقلب در تراکنشها بانکی استفاده کرد و توسعه داد.
به طور مشابه با استفاده از اصول و فنون آماری، ما الگوریتمهایی را توسعه دادهایم که تلاش میکنند با توجه به تجربیات نتایج خروجی خود را بهبود دهند و به آن یادگیری ماشین می گوییم. وقتی این الگوریتم ها به کمک موضوع سیاست گذاری عمومی و مدیریت در بخش عمومی و حاکمیت می دهند و در آن فرایندهای آن تداخل و تقاطع ایجاد می کنند، موضوع حاکمیت الگوریتم ها مطرح می شود.
نکات دیگری مانند استفاده از فلوچارت در رسم توضیح الگوریتم ها دراین حوزه بحث وجود دارد که شاید دانستن آنها برای پژوهشگران این حوزه سودمند باشد، اما برای بحث ما یعنی بررسی هوش مصنوعی با محوریت سیاست گذاری همین قدر بسط و بررسی موضوع الگوریتم در این مرحله کفایت میکند.
اشتباه و اختلال ترمینولوژیک در میان دو واژه هوش مصنوعی و یادگیری ماشین به صورت رایج در بین افرادی که در این حوزه مشغول به کار هستند دیده میشود و البته پرسش در مورد این دو نیز از سوالات رایج است. در این بخش تلاش میکنیم تا تعاریف را نه با تعاریف خشک دانشگاهی بلکه با استفاده از مثالها و توجه به تفاوتها بیان کنیم.
احتمالا همه شما در فیزیک در مورد انرژی جنبشی و پتانسیل مطالبی را مطالعه کردهاید و میدانید که اگر در مورد جرم و سرعت اولیه یک جسم اطلاع داشته باشیم، میتوانیم حداکثر ارتفاعی که این جسم پس از پرتاب مستقیم به سمت بالا پیدا می کند را محاسبه کنیم.
حالا فرض کنید به شما و دوستتان فرصت سه ماهه ای داده شده است تا در مسابقه ای شرکت کنید. در این مسابقه به شما یک توپ تنیس داده شده است و از شما میخواهند توپ را به گونه ای به سمت بالا پرتاب کنید که تا نزدیک ترین فاصله سقف برسد، اما به سقف برخورد نکند. با هر پرتاب فاصله توپ از سقف اندازه گیری شده و از میان شما و دوستتان کسی برنده است که کمترین فاصله را ثبت کند. استراتژی شما برای برنده شدن چیست ؟
شاید شما تصمیم بگیرید که با محاسبه ارتفاع و وزن توپ تنیس، توپ را به نحوی با سرعت مناسب پرتاب کنید که در نزدیک سقف متوقف شده و به پایین بازگردد.
اما ممکن است دوست شما که دانش فیزیک خوبی ندارد، تصمیم دیگری بگیرد. او سه ماه تمرین میکند و با استفاده از سعی و خطا تلاش میکند تا "یاد بگیرد" که چگونه پرتابهای خود را اصلاح کند و به نتیجه بهتر برسد.
فارغ از این که برنده این مسابقه فرضی کیست، نوع دوم از حل مساله بالا (استراتژی دوست شما) قرابت بسیاری به حل مساله توسط یادگیری ماشین در هوش مصنوعی دارد.
هوش مصنوعی، هوشمندی ارائه شده از سوی ماشینهاست. ماشین لرنینگ یا یادگیری ماشین زیر مجموعهای از هوش مصنوعی و مجموعهای از الگوریتمهاست که رفتار و عملکرد ماشین را از طریق تجربههای پی در پی بهبود میبخشد. منظور ما از ماشین کامپیوترها ، رباتها و کلا همه مواردی است که قدرت پردازش کردن دادهها رادارند. انواع الگوریتمهای یادگیری ماشین وجود دارد و هر یک از آنها با توجه به نوع و دسته بندی ورودی و نتایج خروجی دسته بندی میشوند.
دسته بندیهای مختلفی در مورد الگوریتمهای یادگیری ماشینی صورت پذیرفته است و آنها را بر مبنای منبع دادههای مورد استفاده در ورودی و خروجی (گسسته و پیوسته)، نوع ورود دادهها به الگوریتم (بسته ای یا تدریجی)، بلادرنگ یا آفلاین بودن آنها و .... دسته بندی میکنند. در میان این انواع یادگیری دسته بندی زیر با توجه به کارکرد آن بیشتر میتواند برای ما به عنوان سیاست گذار کمک کند.
این دسته بندی با توجه به نوع دادههای ورودی و خروجی صورت پذیرفته است. هوش مصنوعی و یادگیری ماشین بر پایه دادههای موجود عمل میکنند. در واقع ماشین با استفاده از دیتاستهایی که وجود دارد (تجربههای قبلی)، نتایج آینده را پیش بینی میکند. در ذیل هر یک از این الگوریتمها در دسته بندی زیر به صورت دقیق تری این موضوع را تشریح میکنیم.
1- یادگیری نظارت شده
در این نوع از الگوریتمهای به ازای هر ورودی یک خروجی داریم ، یعنی یک ورودی میدهیم و خروجی میگیریم. در این نوع از روش های یادگیری دادهها برچسب دارند و الگوریتم با استفاده از پارامترهای ورودی، خروجیها را مشخص میکند.
مثال: شما مجموعه ای از دادههای مربوط به قد و وزن و سن و جنسیت 200 دانشجو را به الگوریتم میدهید و الگوریتم با توجه به این دادههایِ برچسبدارِ ورودی، برای نمونهی 201 که قد و سن و جنسیت آن داده شده است، وزن را محاسبه میکند
این نوع از یادگیری با توجه به پیوستگی و یا گسستگی در دادهها به دو مدل رگرسیون و یا طبقه بندی (classification) تقسیم میشوند. مثالهای دیگر از نمونه رگرسیون (دادههای پیوسته)ارزیابی ریسک، پیش بینی تحقق بودجه است و نمونههایی از الگوریتم طبقه بندی (دادههای گسسته) تشخیص تقلب، شناسایی تخلفات شهرداری از روی عکس هوایی است.
2- یادگیری نظارت نشده
در این نوع از یادگیری دادههای ما برچسب ندارند و الگوریتم با کار بر روی دادهها به خوشه بندی و تحلیل دادهها میپردازد. به طور مثال شما تمام محتوای صفحات ویکی پدیا را به الگوریتم خود ارائه میکنید و او آنها را به تاپیکهای مختلف در (به طور مثال فیزیک، ریاضی، ادبیات و...) تقسیم میکند. در این نوع از یادگیری ورودیها مشخص است اما خروجیها مشخص نیست. این الگوریتمها نیز به دو دسته کاهش بعد ( مثل الگوریتمهایی که برای متن کاوی و یا مصورسازی دادهها استفاده میشوند) و یا خوشه بندی ( به طور مثال برای تشخیص محلات مستعد در پیاده سازی یک برنامه اجرایی) تقسیم میشوند
3- یادگیری تقویتی
در این نوع از الگوریتمها که بر مبنای علوم رفتاری تهیه شده است، نظام پاداش و تنبیه وجود دارد و الگوریتم به صورت مداوم با توجه به فیدبکهای دریافتی از محیط در حال اصلاح خودش است. از مثالهای استفاده از این الگوریتم میتوان به طراحی سیستمهای لجستیک بهینه و یا مدیریت بازارهای مالی اشاره کرد.
احتمالا شما هم نام الگوریتمهای مختلف که در یادگیری ماشین استفاده میشوند را شنیده اید. این الگوریتمها (همان طور که در تعریف الگوریتم به آن اشاره کردیم) با استفاده از ترتیب مشخصی مسالهها را حل میکنند. به طور مثال الگوریتم KNN با توجه به همسایگیهای نزدیک یک مجموعه در مورد آن پیش بینی میکند یا الگوریتم شبکه عصبی تلاش دارد تا با الهام گرفتن از سیستم عصبی به حل مسائل بپردازد. برای ما به عنوان سیاست گذار آشنایی کلی با این الگوریتمها کفایت میکند. در مقاله کاربرد هوش مصنوعی در سیاستگذاری به صورت جدی تر نوع کاربرد این الگوریتمها را در حوزه عمومیبررسی کردهایم. در این جا نیز به عنوان نمونه به برخی از مقالهها که در آنها از روشهای هوش مصنوعی در کنار مسالههای حوزه عمومیاستفاده شده است اشاره میکنیم. برای آشنا شدن اولیه با استفاده از الگوریتم های مختلف در بخش عمومی و سیاست گذاری، میتوانید بر روی نام هر الگوریتم در زیر کلیک کنید تا به صفحه یک مقاله مربوط بروید. دوباره تاکید می کنم که در مقاله بعدی نتایج این مقالات به همراه بیش از 50 مقاله دیگر مورد بحث و بررسی قرار گرفته است
case-based reasoning (CBR)
cognitive mapping(CM)
fuzzy logic (FL)
machine learning (ML)
artificial neural networks (ANN)
genetic algorithms (GA)
multi-agent systems (MAS)
natural language processing (NLP)
ملاحظات مهم در هنگام کار با الگوریتمها
الگوریتمها برای ما دقیقا بر طبق دستوری که دریافت کردهاند، و دادههای که با آنها آموزش دیدهاند، کار میکنند. اگر ما به آنها دستورات اشتباه داده باشیم (علیرغم اطلاعات درست)، و یا منابع اطلاعاتی ورودی آنها ایراد داشته باشد (علی رغم دستورات درست) ، ممکن است برای ما و جامعه دردسر ایجاد کنند.
یکی از مثالهای کلاسیک در این حوزه Tay چت بات ماکروسافت است که برای یادگیری به محیط توئیتر برده شده بود. چت باتها یکی از کاربردهای مهم هوش مصنوعی هستند که امروزه بیش از گذشته در بخش عمومی و در ذیل دولت الکترونیک برای پاسخگویی به شهروندان مورد توجه قرار گرفتهاند. این ربات (و در واقع بیشتر چت بات های دیگر) به گونه ای طراحی شده بود که با استفاده از اطلاعاتی که از تعامل با دیگر کاربران در شبکه توئیتر به دست میآورد، آموزش دیده و تلاش می کرد که عملکرد بهتری داشته باشد. اما اتفاق جالبی که در واقعیت و در کمتر از نصف روز (کمتر از 12 ساعت) افتاد این بود که این ربات با توجه به این اطلاعات ورودی آن، از کاربران در توئیتر، به یک اکانت فحاش توئیتری تبدیل شد!
توجه داشته باشید که قضاوت در مورد مسالههایی که در مورد رفتار یک ربات یا الگوریتم هوش مصنوعی میشود، از موضوعات بحث برانگیز است. همان طور که ممکن است ربات اشتباه کند انسان هم ممکن است دچار اشتباه شود. ما (انسانها) در قضاوتهای پزشکی، قضایی، استخدامی بارها و بارها شاهد بودهایم که اشتباهات جدی رخ داده است. منشا بسیاری از خطاها انسان ها دقت پایین و احساسات آن ها است. ربات از این نظر که احساس ندارند و دقت بسیار بالاتری از انسان در محاسبات خود دارند، احتمالا در بسیاری از زمینهها از انسانها بهتر عمل کنند. به ویژه که ثابت شده است الگوریتمها و رباتها در محیطهای ناشناخته و پیچیده عملکرد به مراتب بهتر از انسان دارند.
پینوشت
اگر پژوهشگرِ خطمشیگذاری هوش مصنوعی و یا کنشگر در سطوح مختلف مدیریتی باشید حتما نیاز به مطالعه مجموعهای از اسناد مربوط به این موضوع دارید .در AI Policies and Plans Repository مجموعهای قابل دانلود از
استراتژیهای ملی در حوزه هوش مصنوعی،
خط مشی گذاریهای در حوزه هوش مصنوعی،
انواع نقشهراه در حوزه خط مشی گذاری هوش مصنوعی،
انواع گزارشهای معتبر سیاستی معتبر در بعد حاکمیتی هوش مصنوعی،
انواع ابزارهای تحلیلی برای توسعه و ارزیابی هوش مصنوعی،
رتبهبندیهای مختلف در ارتباط سیاست گذاری هوش مصنوعی،
و معرفی منابع معتبر آموزشی و علمی در ارتباط با هوش مصنوعی است.
اطلاعات بیشتر و نحوه دسترسی به این پروژه را در پست زیر بخونید
درباره AI Policies and Plans Repository
از طریق کانالهای زیر میتوانید با من در ارتباط باشید:
ایمیل من: javadsadeqi@gmail.com
آیدی تلگرام من: https://t.me/javaadsaadeghi