یادگیری ماشین (ML) چیست، آموزش ML (لرنینگ ماشین) به صورت ساده، معرفی انواع یادگیری ماشین

Amir H.
4 اسفند, 1402
بدون دیدگاه
3 دقیقه زمان مطالعه

با پدید آمدن هوش مصنوعی شاخه یادگیری ماشین (ML) که یکی از نیاز های این فناوری بود به وجود آمد. اصطلاح ماشین لرنینگ یا یادگیری ماشین توسط آرتور ساموئل درسال 1995 ابداع شد. یادگیری ماشین به این معناست که ماشین یا سیستم هایی ساخته شود که قادر باشند خودشان به صورت خودکار با استفاده از داده هایی که در اختیارشان قرار میگیرد. یاد بگیرند وآموزش ببیند.

یادگیری ماشین (ML) چیست؟

یادگیری ماشین (ML) که یکی از زیر شاخه های هوش مصنوعی می باشد. سیستم ها را قادر میسازد تا توانایی یادگیری و کسب تجربه داشته باشند. این ماشین ها می توانند با استفاده ازالگوریتم های لرنینگ ماشین از طریق آموزش و استفاده از تجارب گذشته عملکرد خود را به مرور زمان بهبود ببخشند تا بهترین نتیج را ارائه دهند.

نحوه کارکرد الگوریتم های ماشین

الگوریتم های ماشین برای مدیریت کردن داده هایی با حجم های بسیار زیاد از روش های مختلفی استفاده میکند. الگوریتم های (MLفرآیند یادگیری را از طریق داده های که درا ختیار یک سیستم یا ماشین قرار میگیرد آغاز میکنند.  شروع کار الگوریتم های ماشین با استفاده ازیک مجموعه داده های آموزشی برای ایجاد یک مدل آغاز میشود.در مرحله دوم الگوریتم ها یک پیش بینی برای داده های جدیدی که در اختیار سیستم قرار میگیرد ارئه میدهند. در مرحله بعد این پیش بینی ها ونتایج از لحاظ دقت ارزیابی میشوند. اگر نتیجه و یا پیش بینی مورد انتظار نباشد . الگوریتم های ماشین بارها و بارها آموزش میبینند تا زمانی که بتوانند نتیجه مورد نظر را ارائه دهند.این ویژگی الگوریتم های ماشین را قادر میسازند تا بدون هیچ برنامه ای به طور خودکار یاد بگیرند و یک پاسخ بهینه را ارائه دهند.دقت درستی این پاسخ به مرور زمان بالاتر میرود. این الگوریتم ها پس از رسیدن به سطح بالایی از دقت مورد استفاده قرار میگیرند.

مثالی از نحوه کارکرد الگوریتم های ماشین

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

1 در ابتدا گوگل تعداد بسیار زیادی از نمونه تصویر(مجموعه داده ها) با برچسب کیک دریافت میکند.
2.در مرحله بعد سیستم های گوگل حدس میزنند که چه نوع الگوهایی برای تشخیص تصویر کیک مناسب هستند.
3. مرحله بعدی الگوریتم ها به دنبال الگو های پیکسلی و الگو های رنگی میگردند که به آن ها کمک میکند تا پیش بینی کنند که این تصویر کیک هست یا خیر.
4. الگوریتم اگر اشتباه کند برای درست شدن آن تغییراتی صورت میگیرد.
5.در اخر یک سیستم رایانه ای بزرگ که از مغز انسان الگو برداری شده است از مجموعه الگو هایی که توسط الگوریتم ها ماشین ایجاد شده اند، یاد میگیرند. این سیستم کامپیوتری پس از آموزش تصویر کیک را میتواند به درستی شناسایی کند و نتایج دقیقی را ارائه دهد.


نمونه های یادگیری ماشین در سیستم ها رایانه ای

هدف اصلی الگوریتم های یادگیری ماشین ساختن سیستم های هوش مصنوعی در رشته کامپیوتر است. و طیف وسیعی از تکنیک هایی را در برمی گیرد. این تکنیک ها برنامه های کاربردی نرم افزارها را قادر می سازند تا عملکرد خود را در طول زمان بهبود ببخشند.
الگوریتم ها ML برای یافتن الگوها و روابط بین داده ها آموزش میبینند. به این صورت که با استفاده از داده ها تاریخی به عنوان ورودی برای پیش بینی ، طبقه بندی اطلاعات ، خوشه بندی نقاط داده ، کاهش ابعاد و حتی کمک به تولید محتوا جدید استفاده میشوند این الگوریتم ها در برنامه هایی مانند ChatGPT، Dall-E 2 و GitHub Copilot استفاده میشوند.


توضیح مراحل لرنینگ ماشین به زبان ساده

نحوه کارکرد یادگیری ماشین به زبان ساده به صورت مراحل زیر است.

مرحله اول: شناسایی و بررسی مشکل: در اولین مرحله باید مسئله مورد نظر را به دقت مطالعه کنیم . یعنی مشکل را کامل درک و اهداف مدل را تعریف کنیم.

مرحله دوم: جمع آوری داده ها: هنگامی که مشکل را به خوبی تعریف کردیم باید داده ها مورد نیاز برای مدل را جمع آوری کنیم. این داده ها را میتوانیم از پایگاه داده و در صورت نیاز از اینترنت جمع آوری کنیم . باید کیفیت و کمیت داده ها بسیار مهL میباشد . زیرا به صورت مستقیم بر عملکردمان تاثیر میگذارد.

مرحله سوم: آماده سازی داده ها: پس از جمع آوری داده ها باید آن ها را به درستی بررسی کنیم. سپس در فرمت های دلخواه آن ها قرار می دهیم تا بتوانیم الگو های پنهان را پیدا کنیم. که  صورت مراحل زیر میباشد.
-پاکسازی داده ها
-تبدیل داده ها
-تجزیه و تحلیل داده های توضیحی مهندسی ویژگی
-تقسیم بندی داده ها برای آموزش و آزمایش مرحله

مرحله چهارم : انتخاب مدل: این مرحله شامل انتخاب الگوریتم یادگیری ماشین مورد نیاز میباشد. که بستگی به مشکلی که میخواهیم آن را حل کنیم دارد همچنین باید از نقاط و ضعف الگوریتم ها آگاهی داشته باشیم . گاهی چندین الگوریتم ها را انتخاب میکنیم و نتایج آن ها را مقایسه میکنیم و بهترین مدل را بر اساس نیازخود انتخاب میکنیم.

در واقع بسته به داده ها(مدل ها ) که میخواهیم انتخاب کنیم مدل های متفئتی وجود دارد مثل صدا، تصاویر ، متن و مقادیر عددی متفاوتی وجود دارد.

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

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

مرحله ششم: ارزیابی مدل: در این مرحله باید مدل را در برابر مجموعه داده ها ی ارزیابی که تا حالا مدل با آن ها مواجه نشده است مورد بررسی قرار دهیم. اگر دقت مدل کمتر و یا مساوی 50 درصد باشد آن مدل مفید نخواهد بود زیرا تصمیم گیری را مثل پرتاب سکه به صورت پنجاه پنجاه میشود. باید دقت مدل به 90 درصد برسد.

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

روش های یادگیری ماشین

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

شیوه های یادگیری ماشین به صورت یادگیری با نظارت ، یادگیری بدون نظارت ، یادگیری نیمه نظارت و یادگیری تقویتی طبقه بندی میشوند.

یادگیری با نظارت

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

در حال حاظر دو روش اصلی یادگیری تحت نظارت وجود دارد.

1.روش رگرسیون:رگرسیون نوعی یادگیری تحت نظارت میباشد که در آن الگوریتم ها یاد میگیرند. که مقادیر پیوسته را بر اساس وژگی های داده های ورودی پیش بینی کنند.پیش بینی های خروجی هم مقادیر پیوسته میباشند .مانند قیمت سهام و مسکن
الگوریتم های رگرسیون به صورت مختلف میباشند که عبارتند از رگرسیون چندجمله ای ، رگرسیون خطی ، رگرسیون ریج ، رگرسیون درخت تصمیم، رگرسیون جنگل تصادفی ، رگرسیون بردار پشتیبان و غیره.

2. روش طبقه بندی : در روش طبقه بندی الگوریتم هایادمیگیرند که بر اساس ویژگی های داده های ورودی مجموعه داده ها را به یک دسته یا کلاس خاص اختصاص دهند. برچسب های خروجی در یک طبقه بندی به صورت گسسته جای میگیرند.
الگوریتم‌های طبقه‌بندی می‌توانند باینری باشند، که در آن خروجی یکی از دو کلاس ممکن است، یا چند کلاسه، که در آن خروجی می‌تواند یکی از چندین کلاس باشد. الگوریتم‌های طبقه‌بندی مختلف در یادگیری ماشین عبارتند از: رگرسیون لجستیک، بی‌بی‌سابقه، درخت تصمیم، ماشین بردار پشتیبان (SVM)، نزدیک‌ترین همسایه‌ها (KNN) و غیره.

مثال روش یادگیری با نظارت

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


یادگیری بدون نظارت

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

در یادگیری بدون نظارت دو روش وجود دارد.

1.روش خوشه بندی:در این روش الگوریتم های خوشه بندی نقاط داده مشابه بر اساس ویژگی های آن ها گروه بندی میکنند. هدف این کار شناسایی خوشه ها و یا گروه هایی از نقاط داده که شبیه یکدیگر هستند ، در حالی که از بقیه گروه ها متمایز میباشند. برخی از الگوریتم‌های خوشه‌بندی محبوب عبارتند از K-means، خوشه‌بندی سلسله مراتبی و DBSCAN.

2.روش کاهش ابعاد: در این ورش الگوریتم های کاهش ابعاد تعداد متغیر های ورودی را در یک مجموعه داده کاهش میدهند. و حال که اطلاعات اصلی تا حد امکان نگه میدارند.هدف این کار برای کاهش پیچیدگی یک مجموعه داده و آسان تر کردن تحلیل و تجسم کردن آن میباشد. برخی از الگوریتم های محبوب کاهش ابعاد عبارتند از تجزیه و تحلیل مؤلفه اصلی (PCA)، t-SNE، و رمزگذار خودکار.


یادگیری نیمه نظارت

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

نکته مهم این است که الگوریتم های نیمه نظارت نتایج و پیش بینی های دقیق تری نسبت به روش های دیگر رائه میدهند.آن ها دو مشکل عدم تناسب و تطبیق بیش از حد را باهمدیگر ترکیب میکنند. تا خروجی که ارائه میدهند به خوبی تعمیم می یابد.
به عبارت ساده تر الگوریتم های نیمه نظارتی حد وسطی برای عدم یادگیری بیش ازحد و یادگیری بیش ازحد از یک مجموعه داده را نشان می دهند. یادگیری نیمه نظارت یک انتخاب برتر برای تجریه و تحلیل داده ها میباشد. برای این که تنظیم راحت تر و آسانتر است و میتواند روی مقدار انوبوهی از داده ها بدون برچسب با نمونه کوچکی از داده های برچسبگذاری شده کار کند.

یادگیری نیمه نظارت در زمینه های زیر کارایی دارد.

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


یادگیری تقویتی

یکی دیگر از روش های یادگیری ماشین یادگیری تقویتی میباشد به این صورت در این یک سیستم از طریق آزمون و خطا با محیط خود تعامل کند به این صورت اگر پیش بینی درست انجام دهد پاداش میگیرد و اگر غلط پیش بینی کند جریمه میشود این روش را تا زمانی انجام میدهد که برای پیش بینی خود بالاترین پاداش را دریافت کند.

دو نوع اصلی یادگیری تقویتی وجود دارد:

یادگیری تقویتی مبتنی بر مدل: در یادگیری تقویتی مبتنی بر مدل، عامل مدلی از محیط، از جمله احتمالات انتقال بین حالت‌ها و پاداش‌های مرتبط با هر جفت حالت-عمل را می‌آموزد. سپس عامل از این مدل برای برنامه ریزی اقدامات خود استفاده می کند تا پاداش مورد انتظار خود را به حداکثر برساند. برخی از الگوریتم های محبوب یادگیری تقویتی مبتنی بر مدل شامل تکرار ارزش و تکرار سیاست هستند.

یادگیری تقویتی بدون مدل : در یادگیری تقویتی بدون مدل، عامل یک خط مشی را مستقیماً از تجربه می آموزد بدون اینکه به صراحت مدلی از محیط بسازد. عامل با محیط تعامل می کند و خط مشی خود را بر اساس پاداش هایی که دریافت می کند به روز می کند. برخی از الگوریتم های محبوب یادگیری تقویتی بدون مدل عبارتند از Q-Learning، SARSA و Deep Reinforcement Learning.

رایج ترین الگوریتم های یادگیری ماشین

رایج ترین الگوریتم های ماشینی که مورد استفاده قرار میگیرند عبارتند از:

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

رگرسیون خطی: الگوریتم رگرسیون خطی میتواند مقادیر عددی را براساس رابط خطی بین مقادیر مختلف پیش بینی کند. برای مثال این تکنیک میتواند قیمت یک خانه را بر اساس داده های تاریخی برای منطقه مورد نظر پیش بینی کند.

رگرسیون لجستیک:این الگوریتم ها به صورت نظارت شده میباشند. و برای متغیرهایی که پاسخ طبقه ای استفاده می شوند. به عنوان مثال پاسخ هایی مانند بله/خیر را برای سوالات پیش بینی میکنند. ازاین نوع الگوریتم می توانیم برای کنترل کیفیت در خط تولید کارخانه ها و طبقه بندی هرزنامه استفاده کرد.

خوشه بندی : الگوریتم های خوشه بندی در حالت بدون نظارت میتوانند الگوهای موجود در داده ها را شناسایی کنند تا بتوانند آن ها را گروه بندی کنند. به وسیله آن ها رایانه ها می توانند تفاوت های اقلام داده ای را که انسان ها نادیده میگیرند شناسایی کنند.

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

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

چرا در یادگیری ماشین بسیار مهم است؟

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

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

سوال : از از حلقه یادگیری مداوم چه نتیجه ای حاصل میشود؟

یادگیری مداوم مسیری به سمت هوش مصنوعی است که باعث پیشرفت در () میشود به همین ترتیب هوش مصنوعی را بهبود میبخشد و مرزهای هوش انسانی و هوش مصنوعی را کمرنگ تر میکند.


کاربرد های مهم و متفاوت یادگیری ماشین

حالا میخواهیم کاربرد های یادگیری ماشین را بیاموزیم:

اتوماسیون: یکی از ویژگی های مهم یادگیری ماشین اتوماسیون است الگوریتم های یادگیری ماشین در هرزمینه کاملا میتوانند مستقل عمل کنند. و نیازی به دخالت انسانی ندارند. میتوانیم از ربات ها در فرآیند هایی که به صورت تکراری باید انجام شوند و یا حضور نیروی انسانی در قسمت هایی که غیرممکن و یا خطرناک می باشد. استفاده کنیم.

صنعت مالی : خدمات مشتری ، بانکداری شخصی ، ارزیابی ریسک ، تجارت الگوریتمی حوزه هایی هستند که بانک ها و شرکت های خدمات مالی از یادگیری ماشین استفاده میکنند.
برای مثال، Capital One، ML را برای دفاع از کارت اعتباری به کار گرفت، که شرکت آن را در دسته وسیع‌تر تشخیص ناهنجاری قرار می‌دهد .

سازمان های دولتی : دولت برای مدیریت ایمنی و خدمات عمومی از ML استفاده میکند . برای مثال در زمینه های برقراری امنیت و تشخیص چهره مجرمین لرنینگ ماشین بسیار کاربرد دارد.
صنعت مراقبت های بهداشتی و خدمات درمانی: بهداشت ودرمان یکی از اولین صنایع میباشد که از تشخیص تصویر استفاده میکند.

صنعت خرده فروشی: در صنعت خرده فروشی یادگیری ماشین برای تجریه وتحلیل رفتار مشتری ها پیش بینی تقاضا و مدیرینت موجودی استفاده میشود.

موتورهای توصیه: الگوریتم های یادگیری ماشین در فروشگاه های اینترنتی و سایت های فروش با استفاده از نحوه عملکرد مشتری های سایت میتوانند برای فروش بیشتر محصولات مرتبط را توصیه کنند.

بینایی ماشین : الگوریتم های ML سیستم های هوش مصنوعی قادر می سازند تا اطلاعات معنی دار از ورودی های بصری ، تصاویر ویویدو ها استخراج کنند. بینایی کامپیوتر و شبکه های عصبی قادر به برچسب گذاری عکس های در رسانه های اجتماعی ، و تصویر برداری رادیولوژی میباشند . یکی دیگر از کاربرد های آن ها استفاده در خودرو های خودران می باشد.


 

بدون دیدگاه
اشتراک گذاری
اشتراک‌گذاری
با استفاده از روش‌های زیر می‌توانید این صفحه را با دوستان خود به اشتراک بگذارید.