بالگ آموزشی املکس
مرجع متخصصان یادگیری ماشین
یادگیریAI
بدون استفاده از ریاضی
نویسندگان:
مهندس امیررضا مختاری
محصل دانشجو شهید رجایی تهران
محقق در زمینه های علوم داده و یادگیری ماشین
دی ماه 1402
.1مقدمه
ما باید بتوانیم هوش مصنوعی را به تمام افراد با زبان قابل فهم اموزش دهیم ،مطمئنا همه با زبان ریاضی اشنا
نیستند و اگر هم اشنا باشند سخت میتوان با زبان ریاضی هوش مصنوعی را به دیگران اموزش داد .
از انجایی که صنایع تبدیلی ،جوامع و اقتصاد جامعه در اینده خیلی نزدیک تحت تاثیر AIقرار خواهند گرفت و
سرعت ان خیلی بیشتر میشود پس الزم تمامی گروه های سنی با این ابزار اشنا شوند حتی در اینده خیلی نزدیک
ممکن است برای وکال ،سیاستمداران،و سهامداران با این سواالت مواجه بشوند (ایا شرکت من باید این محصول
مرتبط با هوش مصنوعی را بپذیرد؟)و یا (چه محدودیت های برای مجریان قانون از فناوری تشخیص چهره قائل
شویم؟) اینها تنها بخشی از استفاده هوش مصنوعی در رده های باال میباشد پس اگاهی و استفاده هوش
مصنوعی بسیار واجب و حیاتی میباشد و میتوانیم بگوییم
سالم به عصر جدید ،هوش مصنوعی !!!.....
.2هوش مصنوعی ضروری تر از انچه که فکر میکنید
در عصر امروز سهامدارانی را داریم که با تکنیکی کار کردن مخالف هستند یا بعبارتی به انها( nontechnical
)stakeholdersمیگویند ،این افراد برای یادگیری هوش مصنوعی اگر هیچ پشتوانه ای از علم کامپیوتر یا
ریاضی نداشته باشند الزم مطالعه بیشتری از افراد دیگر داشته باشند یا حتی ی پله از انها جلوتر باشند .
یادگیری سطحی درباره هوش مصنوعی کاری جلو نمیبرد زیرا اغلب جوامع پاسخی برای سوال های خود در
این حوزه و شغل هایی که به این حوزه ربط دارد پیدا نخواهند کرد.
یکی از افاتی که میتواند برای افراد رده باال جامعه داشته باشد بشرطی که به این حوزه اشراف نداشته باشند
این میباشد ،بطور مثال :
اگر در اینده قاضی که به عدالت حکمی را صادر میکند ،به ابزار های AIمشرف نباشد ممکن است رای او
دستکاری های متعددی از افراد متخلف شود بدون اینکه قاضی خبر داشته باشد و تهدید بزرگی را در جامعه
ایجاد میکند
.3ریاضی در AI
ریاضی یکی از فاکتور های مهم در یادگیری هوش مصنوعی میباشد ،اما تا حد المکان میشود هوش
مصنوعی را بدون ریاضی تا جایی پیش برد و بجای استفاده از دیفرانسیل و انتگرال های سنگین ،مثال های
ساده ای را بکار برد و مفهوم را برسانیم ( )https://www.aiwithoutmath.com/یکی از سایت هایی
میباشد که مارا در این زمینه کمک میکند.
-1عوامل منطقی()Rational agents
خود عامل در هوش مصنوعی به این معناست که چیزی میباشد که عمل میکند مثل یک بات نرم افزاری
که در تلگرام و اینستا و ........یا روبات های فیزیکی که در دنیای واقعی هستن و تحت فرمانی عمل میکنند
عامل منطقی به این صورت تعریف شده است که یک نوع عاملی است که سعی میکند بهترین جواب
رادربیاورد
و این عوامل طوری برنامه ریزی و تنظیم شده اند که نتایج را بهنر از بقیه یا از سایرین ببینند.
ما یک وسیله ای به نام چوب اندازه گیری داریم که توسط ان عامل بهترین نتیجه را تعیین میکند
که به ان تابع هدف عامل میگوییم.
و این ایده که یک عامل سعی بر این دارد که بهترین نتیجه را کسب کند ،معموال در واژگان فنی بیان میشود
به عنوان مثال ممکن بعضی از افراد بگویند عامل سعی در حداکثر کردن کارایی دارد،حداکثر کردن کارایی
مورد انتظار خود یا حداکثر کردن تابع هدف خود میباشد.
-2طبقه بندی()classifier
طبقه بندی در AIبه این معنی است که ما بر اساس یک چیز یا چیز های مختلف بعضی از پارامتر ها یا
مقادیری را طبقه بندی میکنیم به طور مثال :ما چند عکس داریم و میخواهیم این عکس هارا بر این اساس
که این عکس ها گربه یا سگ هستیند دسته بندی یا طبقه بندی کنیم،ما میخواهیم با مثالی روانتر و ساده
تر مفهومی دیگر از AIبه شما یاد دهیم که به این موضوع هم بسیار ربط دارد:
مثال وقتی شما ایمیلی را ارسال میکنید یا دریافت میکنید بعضی اوقات ان ایمیل ممکن spamباشد و از
خودمون میپرسیم چطوری این تشخیص را داده است که ایمیل ما spamیا خیر؟و بین این همه ایمیل
چگونه ایمیل های spamشناسایی خواهندشد؟ایا نیاز نیروی انسانی باالیی داشته باشیم ؟
جواب اینها فقط و فقط در هوش مصنوعی خالصه میشود والغیر،اما چگونه امکان دارد.اسپم شدن پیام
ها یا نشدن انها از یک الگوریتم پیروی میکنند ،حتی خود اینستا که الگوریتم هایی دارد برای خود اما ما
این دانش را در هوش مصنوعی میگوییم modelو چیزی که منجر به تولید این دانش خواهد شد را
اموزش مدل یا ( )training modelخواهند گفت
ما از اموزش مدل کال یکبار استفاده خواهیم کرد و به مراتب ان ،ایمیل هایی که دریافت میشوند یا ارسال
میشوند با استفاده از ان اموزش به ما نشان خواهد داد که ان ایمیل spamیا خیر
پس ما در مرحله اول به AIاموزش میدهیم و اموزش را فرامیگیرد و در مرجله بعد خودش وارد عمل خواهد
شد و کار های مربوط به ان اموزش را انجام خوهد داد ،این را بدانید که در AIمعموال درصد باالیی را برای
اموزش میگزارند و درصد کمی را صرفا برای انجام ان کار قرار میدهند
Naive Bayes -3
اما یکی از متد های طبقه بندی که استفاده تقریبا زیادی دارد( ،نوی بیز) این متد بسیار ساده میباشد و
میتوانیم بسرعت به داده های کوچک اموزش دهیم
و همچنین یکی از معایب این متد میتواند مستقل دانستن هر ویژگی پارامتری که ما وارد میکنیم باشد
اما خود به خود متغییر ها در حالت عادی بهمدگیر وابسته هستند یا به اصالح باهم سفر میکنند
(، )travel togetherمثال:
اگر هوا بارانی باشد احتمال زیاد ابری هم هست و این پارامتر ها به هم وابسته میباشند اما این در متد
نوی بیز ،دو پارامتر(بارانی) و (ابری ) جدا از هم تخصیص میدهد
و با این حال اگر ما این ویژگی هارو مستقل در نظر بگیریم بر نتیجه هیچ تاثیری نمیگذارد پس میتوانیم از
این متد به اسانی در شروع کار خود استفاده کنیم
(Linear Regression -4رگرسیون خطی)
این نوع متد یکی از پرکاربرد ترین متد ها در زمینه AIمیباشد اما این متد در زمینه پیش بینی بکار میرود
پیش بینی یا predictاز مهم ترین بخش ها میباشد که ما باستفاده از اطالعاتی که از متغییر های ورودی
میگیریم ،خروجی را پیش بینی میکنیم به طور مثال:
مثال ما میخواهیم قیمت یک خانه را پیش بینی کنیم برای اینکه بتوانید پیش بینی خوبی داشته باشید باید
اطالعات مختلفی از جمله (مساحت خانه،درکدام منطقه هست،نزدیک به مدرسه ،دریا
،یا......هست)بدهیم .متغییر های ورودی اسم های دیگه ای هم دارند که به انها متغیر های توصیفی هم
میگویند ،به این دلیل که درباره قسمت خروجی شرح میدهد
مثال در قیمت مسکن شرح میدهد که چرا هر خانه قیمت خاص خودش نسبت به خانه های دیگر دارد
پس نتیجه میگیریم متغییر های ورودی ما بسیار مهم و حساس میباشند
اما رگرسیون خطی در تجارت چه کاربرد هایی دارد؟
.1مثال میتوانیم با قیمت های گذشته و شاخص های اقتصادی پیش بینی کنیم ایا قیمت مس درحال
افزایش میباشد یا خیر؟
.2چقدر میتوانیم سرمایه گذاری کنیم در بحث تبلیغات ؟اگر صرفا $100سرمایه گذاری کنیم در تبلیغات
تلوزیونی کافی است یا میتوانیم %50دالر ان را در تبلیغات تلوزیونی تخصیص دهیم و $50دیگر ان را در
فضای مجازی
.3اگر ما پزشکان اضافی استخدام کنیم چقدر میتوانیم از بیماری ها را کاهش دهیم؟
.4پنج عامل اصلی که مشتری بتواند در پرداخت وام زودتر اقدام کند چی میتواند باشد؟
این درنظر داشته باشید برای اینکه بتواند از رگرسیون خطی استفاده کرد باید خروجی ما یک مقدار عددی
پیوسته باشد ،و باید رابطه بین ورودی و خروجی ما بصورت خطی باشد برفرض مثال:
اگر ورودی ما (تعداد اتاق )باشد و رو به افزایش باشد این تعداد به همون نسبت باید خروجی ما(قیمت
خانه)هم رو به افزایش باشد
نکته :اگر شکی بین رابطه ورودی و خروجی ما در بحث خطی بودنشون یا نبودنشون پیش اومد در این قسمت
استفاده از شبکه های عصبی که رابطه های غیر خطی دارند میتواند جایگزین خوب و موثری باشد
رگرسیون خطی چگونه کار میکند؟
رگرسیون خطی با قرار دادن یک خط (اگر ما یک متغییر قرار دهیم)یا یک صفحه(اگر ما چند متغییر قرار دهیم)
به داده های تاریخی میپردازد
اما (قراردادن) fittingبه الگوریتم خط یا ضفحه میگویند که با توجه به داده های تاریخی بهترین نتیجه را
برای خروجی شرح میدهد ،در شکل زیر یک رگرسیون خطی را مشاهده میکنید که محور Xنشان دهنده
مقادیر متغییر ورودی میباشند و دایره های توپر هم مقادیر ورودی و هم خروجی میباشند اما محور Yان
چیزی مباشد که ما پیش بیینی کرده بودیم اگر بخواهیم مثالی بزنیم اینظور میباشد که:
مقادیر محور Xفقط شامل تعداد اتاق های خانه یا نزدیکی به دریا و مدرسه میباشد و دایره های توپر هم
شامل تعداد اتاق های خانه ،نزدیکی به دریا و مدرسه میباشد هم شامل قیمت خانه که خروجی ما است
و محور Yشامل پیش بیینی ما در مورد قیمت خانه که انجام دادیم است
ما افراد مستعد زیادی در کشورمون داریم که میتوانیم با اموزش دادن هوش مصنوعی با زبان ساده نتیجه:
و تقریبا غیر فنی به این دسته از افراد،انها را به این حوزه عالقه مند کنیم و بتوانیم از این ابزار قدرتمند در
شغل،زندگی،اینده کشور و.....استفاده کنیم و بتوانیم یکی از چند کشور برتر در ای حوزه شویم
منابعSteven Skiena, The Algorithm Design Manual 12 (Springer 2d ed. 2009):