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

فرآیند اندیشه و تفکر و طرز کار مغز از گذشته‌های بسیار دور مورد توجه فیلسوفان و دانشمندان در همه جای جهان بوده‌است. یونانیان باستان عقیده داشتند که می‌توان در یک بدنهٔ مکانیکی مغزی ساختگی قرار داد. یکی از اسطوره‌های یونان یک غول آهنی بود که مغزی مکانیکی داشت.آلن تورینگ (Alan Turing) یکی از تاثیرگذارترین افراد در حوزهٔ هوش مصنوعی است و بسیاری مقاله‌ای که او در سال ۱۹۵۰ منتشر کرد را تولد هوش مصنوعی می‌دانند. او همچنین تست تورینگ را پیشنهاد داد که معیاری برای تشخیص هوشمندی ماشین است.تورینگ همچنین در زمینه یادگیری تقویتی و الگوریتم‌های ژنتیک گام‌های مهمی برداشت.از منظر اول هوشمندی یا در رفتار است یا در تفکر و از منظر دوم هوشمندی در انسان‌گونه بودن یا در منطقی بودن (rationality) است. اگر همهٔ حالات را در نظر بگیریم به چهار تعریف زیر می‌رسیم. هوش مصنوعی چیزی است که:منطقی فکر کند.منطقی رفتار کند.مانند انسان فکر کند.مانند انسان رفتار کند.یادگیری ماشین بعد از هوش مصنوعی موضوعیت پیدا کرد و آن را می‌توان زیر مجموعهٔ هوش مصنوعی در نظر گرفت. یادگیری ماشین ویژگی‌هایی دارد که آن را از دیگر روش‌های هوش مصنوعی متمایز می‌کند.یکی از مهم‌ترین ویژگی‌های یادگیری ماشین، یادگیری با استفاده از داده و بدون استفاده از دستورات مستقیم استقدرت الگوریتم‌های یادگیری ماشین امکانات بسیاری را به جامعه عرضه کرده و حوزه‌های بسیاری به آن وابسته شده‌اند. صنعت، دانشگاه، حوزهٔ سلامت، اقتصاد و تجارت، کسب و کارها و بسیاری دیگر، از یادگیری ماشین برای پیشبرد اهداف خود استفاده می‌کنند. یکی از اولین کاربرد‌های یادگیری ماشین در تشخیص ایمیل های spam بود. امروزه ماشین‌های بدون راننده در سطح شهرها در حال حرکت هستند، صاحبان‌محصول از سیستم‌های پیشنهاد‌ دهنده برای پیشنهاد محصول استفاده می‌کنند، اقتصاددانان برای پیش‌بینی روند بازار از آن استفاده می‌کنند و همچنان کاربرد‌های بیشتری در حال ایجاد شدن است.به دلیل اهمیت استفاده از الگو‌های داده در تصمیم‌گیری شرکت‌ها، شغل‌های مرتبط با داده به یکی از جذاب‌ترین شغل‌های حاضر تبدیل شده‌اند. یکی دیگر از عوامل جذاب شدن یادگیری ماشین در عصر حاضر، توجه ویژه برنامه‌نویسان و شرکت‌های برنامه‌سازی به آن است. زبان پایتون و R از محبوب‌ترین زبان‌های قابل استفاده برای یادگیری ماشین هستند و کتابخانه‌های بسیار قدرتمندی در این زبان‌ها برای رفع نیازهای علاقه‌مندان این حوزه در حال گسترش است. افرادی که قصد ورود به این زمینه را دارند با دریایی از زبان‌ها و کتابخانه‌ها و ابزارها روبرو می‌شوند و متناسب با نیاز خود می‌توانند از آن‌ها بهره ببرندبا درک اهمیت دانش و اطلاعات، بسیاری به فکر استفاده از داده‌های موجود افتادند و سعی کردند در تصمیم‌گیری‌ها از نتایج تحلیل داده استفاده کنند. نه فقط شرکت‌ها، بلکه اشخاص برای ادارهٔ بهتر امور شخصی، دولت‌ها برای ادارهٔ کشور و دانشمندان برای گسترش علم از آن بهره گرفتند.با درک اهمیت دانش و اطلاعات، بسیاری به فکر استفاده از داده‌های موجود افتادند و سعی کردند در تصمیم‌گیری‌ها از نتایج تحلیل داده استفاده کنند. نه فقط شرکت‌ها، بلکه اشخاص برای ادارهٔ بهتر امور شخصی، دولت‌ها برای ادارهٔ کشور و دانشمندان برای گسترش علم از آن بهره گرفتند.از گذشته تحلیل و ارزیابی اطلاعات شرکت‌ها از اهمیت فوق‌العاده برخوردار بوده‌است و همیشه آمار و گزارش‌های یک شرکت در تصمیمات آیندهٔ آن تاثیرگذار بوده‌اند. حتی یک مغازه‌دار با بررسی فاکتورهای فروش می‌تواند در مورد خرید‌های آینده تصمیمات بهتری بگیرد و یا یک موسسهٔ تبلیغاتی می‌تواند روشهای تبلیغی خود را پس از بررسی بازخورد مردم مورد بازبینی قرار دهد.همانطور که گفته شد، مردم هم به تحلیل داده علاقه‌مند شده‌اند؛ مثل ثبت روزانه یا هفتگی وزن، میزان پیاده روی روزانه، ثبت مخارج ماهانه و پیدا‌ کردن روش‌هایی برای کاهش هزینه‌ها، زمانی که روزانه صرف شبکه‌های اجتماعی می‌شود و بسیاری از گزارش‌های دیگر که افراد برای مقاصد شخصی خود از این اطلاعات استفاده می‌کنند.یاز جامعه به بررسی آمار و داده‌ها سبب به وجود آمدن تخصص‌هایی در این زمینه شد. افرادی در سازمان‌ها مشغول به کار شدند تا امور مرتبط با داده را انجام دهند. بسته به نوع فعالیت افراد اسامی مختلفی به آن‌ها نسبت داده می‌شود. به نام خدا فرآیند اندیشه و تفکر و طرز کار مغز از گذشته‌های بسیار دور مورد توجه فیلسوفان و دانشمندان در همه جای جهان بوده‌است. یونانیان باستان عقیده داشتند که می‌توان در یک بدنهٔ مکانیکی مغزی ساختگی قرار داد. یکی از اسطوره‌های یونان یک غول آهنی بود که مغزی مکانیکی داشت.آلن تورینگ (Alan Turing) یکی از تاثیرگذارترین افراد در حوزهٔ هوش مصنوعی است و بسیاری مقاله‌ای که او در سال ۱۹۵۰ منتشر کرد را تولد هوش مصنوعی می‌دانند. او همچنین تست تورینگ را پیشنهاد داد که معیاری برای تشخیص هوشمندی ماشین است.تورینگ همچنین در زمینه یادگیری تقویتی و الگوریتم‌های ژنتیک گام‌های مهمی برداشت.از منظر اول هوشمندی یا در رفتار است یا در تفکر و از منظر دوم هوشمندی در انسان‌گونه بودن یا در منطقی بودن (rationality) است. اگر همهٔ حالات را در نظر بگیریم به چهار تعریف زیر می‌رسیم. هوش مصنوعی چیزی است که:منطقی فکر کند.منطقی رفتار کند.مانند انسان فکر کند.مانند انسان رفتار کند.یادگیری ماشین بعد از هوش مصنوعی موضوعیت پیدا کرد و آن را می‌توان زیر مجموعهٔ هوش مصنوعی در نظر گرفت. یادگیری ماشین ویژگی‌هایی دارد که آن را از دیگر روش‌های هوش مصنوعی متمایز می‌کند.یکی از مهم‌ترین ویژگی‌های یادگیری ماشین، یادگیری با استفاده از داده و بدون استفاده از دستورات مستقیم استقدرت الگوریتم‌های یادگیری ماشین امکانات بسیاری را به جامعه عرضه کرده و حوزه‌های بسیاری به آن وابسته شده‌اند. صنعت، دانشگاه، حوزهٔ سلامت، اقتصاد و تجارت، کسب و کارها و بسیاری دیگر، از یادگیری ماشین برای پیشبرد اهداف خود استفاده می‌کنند. یکی از اولین کاربرد‌های یادگیری ماشین در تشخیص ایمیل های spam بود. امروزه ماشین‌های بدون راننده در سطح شهرها در حال حرکت هستند، صاحبان‌محصول از سیستم‌های پیشنهاد‌ دهنده برای پیشنهاد محصول استفاده می‌کنند، اقتصاددانان برای پیش‌بینی روند بازار از آن استفاده می‌کنند و همچنان کاربرد‌های بیشتری در حال ایجاد شدن است.به دلیل اهمیت استفاده از الگو‌های داده در تصمیم‌گیری شرکت‌ها، شغل‌های مرتبط با داده به یکی از جذاب‌ترین شغل‌های حاضر تبدیل شده‌اند. یکی دیگر از عوامل جذاب شدن یادگیری ماشین در عصر حاضر، توجه ویژه برنامه‌نویسان و شرکت‌های برنامه‌سازی به آن است. زبان پایتون و R از محبوب‌ترین زبان‌های قابل استفاده برای یادگیری ماشین هستند و کتابخانه‌های بسیار قدرتمندی در این زبان‌ها برای رفع نیازهای علاقه‌مندان این حوزه در حال گسترش است. افرادی که قصد ورود به این زمینه را دارند با دریایی از زبان‌ها و کتابخانه‌ها و ابزارها روبرو می‌شوند و متناسب با نیاز خود می‌توانند از آن‌ها بهره ببرندبا درک اهمیت دانش و اطلاعات، بسیاری به فکر استفاده از داده‌های موجود افتادند و سعی کردند در تصمیم‌گیری‌ها از نتایج تحلیل داده استفاده کنند. نه فقط شرکت‌ها، بلکه اشخاص برای ادارهٔ بهتر امور شخصی، دولت‌ها برای ادارهٔ کشور و دانشمندان برای گسترش علم از آن بهره گرفتند.با درک اهمیت دانش و اطلاعات، بسیاری به فکر استفاده از داده‌های موجود افتادند و سعی کردند در تصمیم‌گیری‌ها از نتایج تحلیل داده استفاده کنند. نه فقط شرکت‌ها، بلکه اشخاص برای ادارهٔ بهتر امور شخصی، دولت‌ها برای ادارهٔ کشور و دانشمندان برای گسترش علم از آن بهره گرفتند.از گذشته تحلیل و ارزیابی اطلاعات شرکت‌ها از اهمیت فوق‌العاده برخوردار بوده‌است و همیشه آمار و گزارش‌های یک شرکت در تصمیمات آیندهٔ آن تاثیرگذار بوده‌اند. حتی یک مغازه‌دار با بررسی فاکتورهای فروش می‌تواند در مورد خرید‌های آینده تصمیمات بهتری بگیرد و یا یک موسسهٔ تبلیغاتی می‌تواند روشهای تبلیغی خود را پس از بررسی بازخورد مردم مورد بازبینی قرار دهد.همانطور که گفته شد، مردم هم به تحلیل داده علاقه‌مند شده‌اند؛ مثل ثبت روزانه یا هفتگی وزن، میزان پیاده روی روزانه، ثبت مخارج ماهانه و پیدا‌ کردن روش‌هایی برای کاهش هزینه‌ها، زمانی که روزانه صرف شبکه‌های اجتماعی می‌شود و بسیاری از گزارش‌های دیگر که افراد برای مقاصد شخصی خود از این اطلاعات استفاده می‌کنند.یاز جامعه به بررسی آمار و داده‌ها سبب به وجود آمدن تخصص‌هایی در این زمینه شد. افرادی در سازمان‌ها مشغول به کار شدند تا امور مرتبط با داده را انجام دهند. بسته به نوع فعالیت افراد اسامی مختلفی به آن‌ها نسبت داده می‌شود. شه و تفکر و طرز کار مغز از گذشته‌های بسیار دور مورد توجه فیلسوفان و دانشمندان در همه جای جهان بوده‌است. یونانیان باستان عقیده داشتند که می‌توان در یک بدنهٔ مکانیکی مغزی ساختگی قرار داد. یکی از اسطوره‌های یونان یک غول آهنی بود که مغزی مکانیکی داشت.آلن تورینگ (Alan Turing) یکی از تاثیرگذارترین افراد در حوزهٔ هوش مصنوعی است و بسیاری مقاله‌ای که او در سال ۱۹۵۰ منتشر کرد را تولد هوش مصنوعی می‌دانند. او همچنین تست تورینگ را پیشنهاد داد که معیاری برای تشخیص هوشمندی ماشین است.تورینگ همچنین در زمینه یادگیری تقویتی و الگوریتم‌های ژنتیک گام‌های مهمی برداشت.از منظر اول هوشمندی یا در رفتار است یا در تفکر و از منظر دوم هوشمندی در انسان‌گونه بودن یا در منطقی بودن (rationality) است. اگر همهٔ حالات را در نظر بگیریم به چهار تعریف زیر می‌رسیم. هوش مصنوعی چیزی است که:منطقی فکر کند.منطقی رفتار کند.مانند انسان فکر کند.مانند انسان رفتار کند.یادگیری ماشین بعد از هوش مصنوعی موضوعیت پیدا کرد و آن را می‌توان زیر مجموعهٔ هوش مصنوعی در نظر گرفت. یادگیری ماشین ویژگی‌هایی دارد که آن را از دیگر روش‌های هوش مصنوعی متمایز می‌کند.یکی از مهم‌ترین ویژگی‌های یادگیری ماشین، یادگیری با استفاده از داده و بدون استفاده از دستورات مستقیم استقدرت الگوریتم‌های یادگیری ماشین امکانات بسیاری را به جامعه عرضه کرده و حوزه‌های بسیاری به آن وابسته شده‌اند. صنعت، دانشگاه، حوزهٔ سلامت، اقتصاد و تجارت، کسب و کارها و بسیاری دیگر، از یادگیری ماشین برای پیشبرد اهداف خود استفاده می‌کنند. یکی از اولین کاربرد‌های یادگیری ماشین در تشخیص ایمیل های spam بود. امروزه ماشین‌های بدون راننده در سطح شهرها در حال حرکت هستند، صاحبان‌محصول از سیستم‌های پیشنهاد‌ دهنده برای پیشنهاد محصول استفاده می‌کنند، اقتصاددانان برای پیش‌بینی روند بازار از آن استفاده می‌کنند و همچنان کاربرد‌های بیشتری در حال ایجاد شدن است.به دلیل اهمیت استفاده از الگو‌های داده در تصمیم‌گیری شرکت‌ها، شغل‌های مرتبط با داده به یکی از جذاب‌ترین شغل‌های حاضر تبدیل شده‌اند. یکی دیگر از عوامل جذاب شدن یادگیری ماشین در عصر حاضر، توجه ویژه برنامه‌نویسان و شرکت‌های برنامه‌سازی به آن است. زبان پایتون و R از محبوب‌ترین زبان‌های قابل استفاده برای یادگیری ماشین هستند و کتابخانه‌های بسیار قدرتمندی در این زبان‌ها برای رفع نیازهای علاقه‌مندان این حوزه در حال گسترش است. افرادی که قصد ورود به این زمینه را دارند با دریایی از زبان‌ها و کتابخانه‌ها و ابزارها روبرو می‌شوند و متناسب با نیاز خود می‌توانند از آن‌ها بهره ببرندبا درک اهمیت دانش و اطلاعات، بسیاری به فکر استفاده از داده‌های موجود افتادند و سعی کردند در تصمیم‌گیری‌ها از نتایج تحلیل داده استفاده کنند. نه فقط شرکت‌ها، بلکه اشخاص برای ادارهٔ بهتر امور شخصی، دولت‌ها برای ادارهٔ کشور و دانشمندان برای گسترش علم از آن بهره گرفتند.با درک اهمیت دانش و اطلاعات، بسیاری به فکر استفاده از داده‌های موجود افتادند و سعی کردند در تصمیم‌گیری‌ها از نتایج تحلیل داده استفاده کنند. نه فقط شرکت‌ها، بلکه اشخاص برای ادارهٔ بهتر امور شخصی، دولت‌ها برای ادارهٔ کشور و دانشمندان برای گسترش علم از آن بهره گرفتند.از گذشته تحلیل و ارزیابی اطلاعات شرکت‌ها از اهمیت فوق‌العاده برخوردار بوده‌است و همیشه آمار و گزارش‌های یک شرکت در تصمیمات آیندهٔ آن تاثیرگذار بوده‌اند. حتی یک مغازه‌دار با بررسی فاکتورهای فروش می‌تواند در مورد خرید‌های آینده تصمیمات بهتری بگیرد و یا یک موسسهٔ تبلیغاتی می‌تواند روشهای تبلیغی خود را پس از بررسی بازخورد مردم مورد بازبینی قرار دهد.همانطور که گفته شد، مردم هم به تحلیل داده علاقه‌مند شده‌اند؛ مثل ثبت روزانه یا هفتگی وزن، میزان پیاده روی روزانه، ثبت مخارج ماهانه و پیدا‌ کردن روش‌هایی برای کاهش هزینه‌ها، زمانی که روزانه صرف شبکه‌های اجتماعی می‌شود و بسیاری از گزارش‌های دیگر که افراد برای مقاصد شخصی خود از این اطلاعات استفاده می‌کنند.یاز جامعه به بررسی آمار و داده‌ها سبب به وجود آمدن تخصص‌هایی در این زمینه شد. افرادی در سازمان‌ها مشغول به کار شدند تا امور مرتبط با داده را انجام دهند. بسته به نوع فعالیت افراد اسامی مختلفی به آن‌ها نسبت داده می‌شود. همانطور که گفته شد، اهمیت اطلاعات در حال افزایش است و عصر جدید عصر اطلاعات نامیده می‌شود اما دادهٔ خام قبل از تبدیل شدن به دانش نیازمند ذخیره سازی مناسب و آماده‌سازی‌هایی می‌باشد. تحلیل‌گر داده، معماری مناسب برای جمع‌آوری اطلاعات یک سازمان را طراحی می‌کند و پایگاه داده مناسب برای این کار را انتخاب می‌کند؛ داده‌های خام را از منابع داخلی و خارجی جمع‌آوری می‌کند و پس‌ از آماده‌سازی و انتخاب قالب مناسب، آنها را در پایگاه‌ داده‌ای که طراحی کرده ذخیره می‌کند.سپس داده‌ها را مورد بررسی قرار می‌دهد و از داده اطلاعات مفید استخراج می‌کند. او برای اینکار باید اطلاعاتی در مورد زمینه فعالیت‌های سازمان و اهداف آن داشته باشد. نتیجهٔ فعالیت‌های تحلیل‌گر داده می‌تواند گزارش‌های کلی یا روابط بین داده‌ها باشد و معمولا در جهت اهداف سازمان است.او با افراد مختلف سازمان در ارتباط است و نتایج به دست آمده را به شکلی قابل فهم و ساده و متناسب با موقعیت افراد در اختیار آن‌ها می‌گذارد. علاوه بر این‌ها تحلیل‌گر داده باید قدرت تحلیل بالا و دید نقادانه به مسائل داشته باشد.داشتن مهارت‌های برنامه‌نویسی برای تحلیل‌گر داده ضروری نمی‌باشد و می‌تواند از نرم‌افزار‌ها یا سرویس‌های وب برای انجام کارهای خود استفاده کند.در معدن و صنایع معدنی نیز همچون سایر صنایع دیگر، یادگیری ماشین بسیار کاربردی است، صنایع معدنی با توجه به عدم قطعیت بالا و حجم بسیار زیاد اطلاعات جزو صنایع پیچیده به حساب می آید. لذا یادگیری ماشین و هوش مصنوعی در این صنایع با پیشرفت تکنولوژی بیش از پیش مورد استفاده قرار گرفته است.به عنوان مثال در بخش اکتشاف منابع، برای کشف یک محدوده از ماده معدنی، داده های مختلفی همچون، تصاویر ماهواره ای، داده های ژئوفیزیک، ژئوشیمی، زمین شناسی، داده های مربوط به حفاری های گذشته و .... استفاده می شود. لذا با توجه به عدم قطعیت بالا، هوش مصنوعی و یادگیری ماشین می تواند در این فاز استفاده گردد. شرکت earth AI که یک شرکت معدنی در استرالیا می باشد، به عنوان پیشگام در این موضوع، اکتشاف هوشمند را با استفاده از یادگیری ماشین برای سرتاسر استرالیا پیاده سازی کرده است و در اولین گام، با جمع‌آوری داده‌های موجود اقدام به کشف معادن طلا و پتانسیل‌های محدوده‌های طلا کرده است.۱- پردازش تصاویر ماهواره ای۲- پیش‌بینی متغیرهای ژئومتالورژیکی۳- آنالیز تصاویر مربوط به جعبه مغزه‌ها۴- پردازش تصاویر گرفته‌شده از پهپاد برای شناسایی هدف‌های از پیش تعیین شدهپیدایش یادگیری ماشین، ریشه در تحقیقات هوش مصنوعی داشته و نتایج آن بعدها منجر به پیدایش مدل‌هایی برای پیدا کردن الگو‌ها در داده و پیش‌بینی روند داده‌ها شده است.دنده عقب رفتن در مسیر یادگیری ماشین!!پیدایش یادگیری ماشین، ریشه در تحقیقات هوش مصنوعی داشته و نتایج آن بعدها منجر به پیدایش مدل‌هایی برای پیدا کردن الگو‌ها در داده و پیش‌بینی روند داده‌ها شده است. فرآیند رسیدن به نقطه فعلی یادگیری ماشین را بررسی کنیم.دنده عقب رفتن در مسیر یادگیری ماشین!همانطور که در بخش‌های قبل دیدیم، یادگیری ماشین در بسیاری از زمینه‌ها عملیاتی شده و به جزء جدایی ناپذیر بسیاری از امور بدل شده است. امروزه شاهد پیشرفت‌های بزرگی در زمینهٔ هوش مصنوعی هستیم اما همچنان با آنچه در فیلم‌ها و داستان‌ها از یک عامل هوشمند متصوریم که در انجام کارهای گوناگون از توانایی مشابه انسان برخوردار است فاصله داریم. عامل‌های هوشمندی که امروزه ساخته می‌شوند معمولا در حل یک مسئلهٔ خاص به هوشمندی رسیده‌اند. مثل تشخیص انسان‌های داخل تصویر یا انجام بازی شطرنج. به این نوع از هوش مصنوعی، هوش مصنوعی محدود یا ضعیف اطلاق می‌شود. در مقابل، آنچه هوش مصنوعی عمومی (artificial general intelligence) و یا قوی نامیده می‌شود، عبارت است از ساختن عامل هوشمندی که مانند انسان از هوشی عمومی برخوردار باشد که توانایی آموختن در مواجهه با هر مسئلهٔ جدیدی را داشته باشد و محدود به یک زمینه یا مسئلهٔ خاص نباشد.می‌توان تعریف زیر را برای یادگیری ماشین ارائه داد:یادگیری ماشین در اکثر کاربردهای فعلی، یک برنامه کامپیوتری است که به داده دسترسی پیدا می‌کند و از آن برای آموزش خود استفاده می‌کند.بیایید چند دهه به عقب برگردیم. در دهه‌های هفتاد و هشتاد میلادی در خانه هر‌کسی کامپیوتر نبود و افراد کمی به اینترنت دسترسی داشتند. در آن دوره تکنیک‌های یادگیری ماشین در حال ارتقا و گسترش بودند تا الگو‌های موجود در داده را بهتر و سریع‌تر پیدا کنند. با توجه به شرایط آن دوره، این تکنولوژی به شکلی محرمانه توسط مهندسان و دانشمندان حوزه کامپیوتر در حال گسترش بود. به عقب‌تر برگردیم. فرض کنید دهه پنجاه میلادی است و چیزی به نام یادگیری ماشین وجود ندارد. در آن دوره یکی از مهندسان IBM که نامش آقای آرتور ساموئل بود، برای اولین بار از کلمه یادگیری ماشین استفاده کرد و تعریف زیر را برای آن ارائه داد:یادگیری ماشین زمینه‌ای از تحقیقات است که به کامپیوترها توانایی یادگیری بدون برنامه‌نویسی صریح را می‌دهد.منظور او از برنامه‌نویسی صریح را با مثالی بررسی می‌کنیم. فرض کنید شما می‌خواهید برنامه‌ای بنویسید که یک ورودی را بگیرد، مقدار آن را به توان ۲ برساند و در خروجی چاپ کند. برای این کار در کد خود ورودی را گرفته، مربع آن را محاسبه کرده و به خروجی می‌دهید. اما الگوریتم یادگیری ماشین به این صورت عمل نمی‌کند. اگر بخواهید همین برنامه با الگوریتم‌های یادگیری ماشین بنویسید، اعداد و مربع‌ آنها را به الگوریتم می‌دهید و الگوریتم پس از بررسی ورودی و خروجی یاد می‌گیرد که کار درست، ضرب کردن ورودی در خودش است!دربارهٔ داده:داده‌ها عنصر محوری یادگیری ماشین هستند و ماشین‌ها از داده‌ها یاد می‌گیرند، به این صورت که ما داده‌ها را به عنوان ورودی به الگوریتم می‌دهیم تا خروجی مورد نیازمان را دریافت کنیم. اما داده چیست؟ داده‌، در نتیجه مشاهدات و اندازه‌گیری‌ها شکل می‌گیرد و توصیف این وضعیت مشاهده شده به شمار می‌آید. این توصیف می‌تواند اشکال گوناگونی داشته باشدالگوریتم‌های یادگیری ماشین، مثل انسان با کمک تجربه یاد می‌گیرند. داده همان تجربه‌ای است که به عنوان ورودی به الگوریتم داده می‌شودالگوریتم‌های یادگیری نظارت‌شده، به دو دسته طبقه‌بندی (classification) و رگرسیون (regression) دسته‌بندی می‌شوند. هر دو دسته‌ی طبقه‌بندی و رگرسیون به داده‌های برچسب خورده نیاز دارند و الگوریتم پیش‌بینی آن‌ها را یاد می‌گیرد.طبقه‌بندی :در طبقه‌بندی، هدف ما پیدا کردن برچسب یا دسته مناسب برای نمونه‌های بدون برچسب می‌باشد. برای این کار، ما مدل یادگیری‌ ماشینی را با استفاده از نمونه‌های برچسب‌دار، آموزش می‌دهیم. بر اساس این یادگیری، مدل یادگیری‌ماشین می‌تواند، مجموعه‌دادگان را به دسته‌های مختلف تقسیم کند. بهترین مثال برای درک بهتر طبقه‌بندی، فیلتر کردن ایمیل‌ها به دو دسته اسپم و غیر اسپم است. برای این کار، شما مجموعه‌دادگان شامل میلیون‌ها متن ایمیل، موضوع ایمیل و دیگر ویژگی‌هایی که ممکن است مهم باشد، جمع می‌کنید؛ سپس، بر اساس اینکه هر ایمیل اسپم بوده است یا نه، آن‌ها را برچسب می‌زنید. حال، با استفاده از یکی از الگوریتم‌های طبقه‌بندی، شما مدلی را روی نمونه‌های برچسب‌دار، آموزش می‌دهید. مدل شما در نهایت می‌تواند یک ایمیل اسپم را از غیر اسپم تشخیص دهد!رگرسیون: در رگرسیون، هدف ما تخمین مقدار یک ویژگی (این بار مقداری پیوسته) برای یک نمونه می‌باشد. این الگوریتم‌ها برای پیش‌بینی روند بازار، قیمت خانه و دیگر مثال‌ها به کار می‌روند.تنها تفاوت میان این دو دسته، به نوع این برچسب بستگی دارد.یادگیری تقویتی:یادگیری تقویتی، یکی از روش های یادگیری ماشین است که با ذهنیت آزمون و خطا کار می‌کند. عامل هوشمند (agent) طبق حالت جاری (state) ، حرکتی (action) انجام می‌دهد و بر اساس آن حرکت بازخورد (reward) دریافت می‌کند؛ این بازخورد ممکن است مثبت یا منفی (پاداش یا تنبیه) باشد و عامل با این بازخورد خط‌مشی (policy) خود را تغییر می‌دهد.پایتون برای علم داده:پایتون چیست؟پایتون یک زبان برنامه نویسی است که در اوایل دهه‌ی ۹۰ میلادی، توسط خیدو فان روسوم درهلند اختراع شد. برای مثال، در توسعه‌ی وبسایت‌های معروفی مانند Dropbox , Instagram وYoutube و .....پایتون استفاده شده است. جامعه‌ی بزرگ توسعه دهندگانِ پایتون و ابزار‌های متن بازِ(open source) متعدد برای این زبان، می‌تواند کمک بزرگی برای برنامه نویسان این زبان باشد. در سال‌های اخیر ابزار‌های زیادی مخصوصا در حوزه‌ی علم داده برای پایتون توسعه داده شده است که آنالیز کردن داده‌ها را از همیشه آسان‌تر می‌سازد.برخلاف C و C++ که زبان‌هایی دارای کامپایلر هستند، پایتون زبانی دارای مفسر است. کامپایلر برنامه ایست که کد نوشته شده (برای مثال به زبان C) را به زبان ماشین ترجمه می‌کند. اما سخت افزار برای هر دستگاهی متفاوت است و این باید توسط کامپایلر پیشبینی شود؛ مثلا کامپایلر برای سی‌پی‌یو‌های Intel و AMD متفاوت است. اما در مقابل مفسر برنامه را در محیطی به نام kernel به bytecode ترجمه و آن را به صورت خط به خط اجرا می‌کند. لذا هر برنامه‌ی پایتون در هر دستگاهی که مفسر پایتون نصب شده‌باشد، اجرا می‌شود.به دلیل متن‌باز بودن مفسر پایتون، نسخه‌های مختلفی از آن توسط افراد مختلفی توسعه داده شده است که پیاده‌سازی اصلی آن CPython نام دارد (به این دلیل که به زبان C نوشته شده است)؛ نسخه‌های دیگری مانند Jython , IronPython , PyPy نیز وجود دارد که تفاوت‌های کوچکی با پیاده‌سازی اصلی دارند. به طور مثال Jython برنامه را به java bytecode ترجمه می‌کند و روی JVM اجرا می‌کند. یا PyPy کد پایتون را ۷ برابر سریع‌تر از پیاده‌سازی اصلی اجرا می‌کند.چرا پایتون برای علم داده انتخاب شده؟به غیر از پایتون زبان‌های دیگری مانند R، Scala، Julia، Matlab و SQL نیز برای علوم داده استفاده می‌شوند؛ اما پایتون به خصوص در صنعت از همه پر‌کاربرد‌تر است (منظور از Matlab، اسکریپت نوشته‌شده در متلب است).پایتون کتابخانه‌ها و ابزار‌هایی قوی و متعدد دارد.کدهای پایتون قابل فهم است پایتون به نسبت زبان‌های دیگر نوشتار ساده‌تری دارد و به همین دلیل سریع قابل یادگیری است و این باعث می‌شود کار، به خصوص در پروژه‌های بزرگ، راحت‌تر شودپایتون برای علم دادهپایتون چیست؟پایتون یک زبان برنامه نویسی است که در اوایل دهه‌ی ۹۰ میلادی، توسط خیدو فان روسوم درهلند اختراع شد. از زمان اختراعش تا امروز پایتون به عنوان یک زبان برنامه نویسی سطح بالا در توسعه‌ی برنامه‌های وب و موبایل و همچنین در آنالیز داده و محاسبات علمی به کار رفته است.برای مثال، در توسعه‌ی وبسایت‌های معروفی مانند Dropbox , Google , Instagram , Spotify وYoutube از پایتون استفاده شده است. جامعه‌ی بزرگ توسعه دهندگانِ پایتون و ابزار‌های متن بازِ(open source) متعدد برای این زبان، می‌تواند کمک بزرگی برای برنامه نویسان این زبان باشد. در سال‌های اخیر ابزار‌های زیادی مخصوصا در حوزه‌ی علم داده برای پایتون توسعه داده شده است که آنالیز کردن داده‌ها را از همیشه آسان‌تر می‌سازد.با اینکه پایه‌های نوشتن زبانی مانند پایتون در دهه‌‌ی ۸۰ میلادی گذاشته شد، اولین بار در سال ۱۹۹۱ منتشر شد. هدف اصلی از توسعه‌ی این زبان، اتوماسیون کار‌های تکراری، برای توسعه سریع برنامه‌ها است. پایتون زبانی به نسبت آسان برای یادگیری است زیرا کدهای آن تمیز و قابل فهم است. بنابراین غافل‌‌گیر کننده نیست که بیشتر برنامه نویس‌ها با آن آشنا هستند.برخلاف C و C++ که زبان‌هایی دارای کامپایلر هستند، پایتون زبانی دارای مفسر است. کامپایلر برنامه ایست که کد نوشته شده (برای مثال به زبان C) را به زبان ماشین ترجمه می‌کند. اما سخت افزار برای هر دستگاهی متفاوت است و این باید توسط کامپایلر پیشبینی شود؛ مثلا کامپایلر برای سی‌پی‌یو‌های Intel و AMD متفاوت است. اما در مقابل مفسر برنامه را در محیطی به نام kernel به bytecode ترجمه و آن را به صورت خط به خط اجرا می‌کند. لذا هر برنامه‌ی پایتون در هر دستگاهی که مفسر پایتون نصب شده‌باشد، اجرا می‌شود.چرا پایتون برای علم داده انتخاب شده؟پایتون کتابخانه‌ها و ابزار‌هایی قوی و متعدد داردپایتون در همه‌ی حوزه‌های علم داده دارای کتابخانه‌های متعددی است که اکثر آنها توسط شرکت‌های بزرگ یا دانشگاه‌ها پشتیبانی و دائما به‌روز‌رسانی می‌شوند. تعدادی از مهمترین کتابخانه‌های پایتون برای علم داده را در بخش کتابخانه‌های علم داده در پایتون خواهیم دید.کدهای پایتون قابل فهم استپایتون به نسبت زبان‌های دیگر نوشتار ساده‌تری دارد و به همین دلیل سریع قابل یادگیری است و این باعث می‌شود کار، به خصوص در پروژه‌های بزرگ، راحت‌تر شود. در واقع نوشتار پایتون به قدری ساده است که جمله‌ی زیر بسیار به شوخی گفته می‌شود:پایتون، شبه کد قابل اجرا است.جامعه‌ای بزرگ از توسعه‌دهندگانفرض کنید در نوشتن کدی به مشکلی بر می‌خورید؛ می‌توانید توضیح مشکل خود را در گوگل سرچ کنید و احتمالا از قبل این مشکل برای دیگران پیش‌آمده و راه حل آن در سایت‌هایی مانند stackoverflow موجود است. حتی اگر این مشکل از قبل برای کسی پیش نیامده باشد، تعداد زیادی متخصص در هر حوزه‌ی کار با پایتون در وبسایت‌های مختلف هستند تا به سوالات شما پاسخ دهند. این دقیقا فایده‌ی داشتن جامعه‌ی بزرگی از توسعه‌دهندگان است.پایتون در مقابل R::پایتون و R دو زبان پرطرفدار در حوزه‌ی علم داده هستند. اشتراکات زیادی از جمله رایگان و متن باز بودن بین دو زبان وجود دارد. مستندات هر دو زبان با کمک کاربران نوشته‌ شده است و هر دو اجتماعات فعالی در اینترنت دارند. اما هرکدام برتری‌هایی نسبت به دیگری دارند.پایتون کتابخانه‌های متعدد و قوی‌ای دارد که در بالا به آنها اشاره شده است.چرا از یادگیری‌ماشین استفاده می‌کنیم؟امروزه داده‌ها، قلب تپنده بسیاری از کسب‌وکارها هستند. اکنون اغلب، تصمیماتِ داده محور هستند که باعث می‌شوند شرکتی از رقیب خود پیشی بگیرد. ولی چرا یادگیری‌ماشین مهم است؟ یادگیری‌ماشین به شرکت‌ها این امکان را می‌دهد که کارهایی که قبلاً تنها توسط انسان‌ها امکان‌پذیر بود را با سرعت بالاتر و دقت بیشتر انجام دهند، مانند پاسخگویی به تماسهای خدمات مشتری و حسابداری. از یادگیری‌ماشین حتی برای حل کردن مشکلات بزرگ‌تر مانند تشخیص تصاویر در اتومبیل‌های خودران، پیش‌بینی زمان وقایای طبیعی نیز استفاده می‌شود، به همین دلیل یادگیری‌ماشین اهمیت بسیار بالایی دارد. اما لازم است بدانیم که استفاده از یادگیری‌ماشین به دلایل زیر خیلی آسان‌تر و فراگیرتر شده است:افزایش بی حد و حصر داده‌ها،ذخیره سازی مقرون به صرفه داده‌ها،افزایش قدرت پردازنده‌ها و کاهش هزینه‌های آن‌هااکنون دلیل موفقیت بسیاری از صنایع در حال توسعه، مدل های یادگیری ماشین بسیار قوی هستند که قادر به تجزیه و تحلیل داده‌های بزرگ‌تر و پیچیده‌تر هستند. با داشتن این مدل‌های دقیق، یک سازمان شانس بیشتری در شناسایی فرصت‌های سودآور یا جلوگیری از خطرات ناشناخته دارد.با وجود اینکه امروزه یادگیری‌ماشین نقش به سزایی در زندگی بشر ایفا می‌کند، اما همچنان چالش‌هایی برای به‌کارگیری این تکنیک حل مسئله وجود دارد؛ در درسنامه‌های بعدی راجع به این چالش‌ها بیشتر خواهیم آموخت.هدف ما در یادگیری‌ماشین این است که با مشاهده و یادگیری از داده‌های گذشته، آینده را پیش‌بینی کنیم. وقتی دچار Overfitting می‌شویم در حقیقت مدل عمومیت خود را از دست داده است؛ به عبارت بهتر مدل نمی‌تواند آینده را به درستی پیش‌بینی کند. علت عدم توانایی در پیش‌بینی آینده این است که داده‌های آموزش را زیاد از حد یاد گرفته است.پس از آن‌که توانستیم چالش‌های مربوط به داده را مدیریت کنیم، سراغ الگوریتم و مدل می‌رویم. بیش‌برازش (Overfitting)، کم‌برازش (Underfitting) و زمان نمونه‌ای از چالش‌های مربوط به مدل‌ها و الگوریتم‌های هوش‌مصنوعی و یاد‌گیری‌ماشین هستند.منظور از داده نامناسب آن است که داده به قدری بی‌کیفیت است که اطلاعات دقیق و جامعی از هدفی که قصد مدل کردن آن را داریم به دست نمی دهد.مسئله زمان:زمان در یادگیری‌ماشین از دو جهت اهمیت دارد؛ هم مدت زمانی که طول می‌کشد تا آموزش مدل تمام شود، هم زمانی که مدل برای پیش‌بینی نمونه‌ها مصرف می‌کند. مدت زمانی که طول می‌کشد تا آموزش مدل تمام شود، طول مدت توسعه محصول را تحت تاثیر قرار می‌دهد و زمان مصرفی توسط مدل برای پیش‌بینی نمونه‌ها زمانی است که کاربر‌ نهایی تجربه می‌کند. دانشمند داده همواره سعی می‌کند هر دو زمان را کمینه کند.فرایند آموزش مدل به زمان‌بر بودن معروف است. الگوریتم‌ها برای یادگیری زمان زیادی مصرف می‌کنند؛ بنابراین باید مدلی انتخاب کنیم که پیچیدگی زمانی خوبی داشته باشد. الگوریتم‌هایی هستند که پس از پایان آموزش معمولا به دقت خوبی می‌رسند ولی چون فرایند یادگیری زمان‌بری دارند در عمل از آن‌ها زیاد استفاده نمی‌شود!یکی از راه حل‌هایی که برای رفع مسئله زمان مطرح می‌شود استفاده از سخت‌افزار پیچیده و حرفه‌ای تر است که خود چالش‌های مختص به خود را دارد.امروزه شاهد پیشرفت‌های بزرگی در زمینهٔ هوش مصنوعی هستیم اما همچنان با آنچه در فیلم‌ها و داستان‌ها از یک عامل هوشمند متصوریم که در انجام کارهای گوناگون از توانایی مشابه انسان برخوردار است فاصله داریم. عامل‌های هوشمندی که امروزه ساخته می‌شوند معمولا در حل یک مسئلهٔ خاص به هوشمندی رسیده‌اند. مثل تشخیص انسان‌های داخل تصویر یا انجام بازی شطرنجچرخهٔ تب تکنولوژی (Technology Hype Cycle) را اولین بار موسسه‌ٔ گارتنر (Gartner) در سال ۱۹۹۵ مطرح کرد. این چرخه، نمودار رشد تکنولوژی‌­های مختلف را در طی زمان نشان می‌دهد. بر این اساس هر تکنولوژی ۵ مرحلهٔ اصلی را طی می‌کند. به این صورت که ابتدا معرفی می‌شود و شروع به مشهور شدن می‌کند. در این مرحله اغلب شرکت‌ها به استفاده از این فناوری جدید روی می‌آورند. در مرحلهٔ دوم که اوج قله است، نام آن تکنولوژی در همه‌جا شنیده شده و با جذب سرمایه‌گذار، بسیاری از استارت‌آپ‌ها شروع به معرفی و استفاده از آن می‌کنند. اما در مرحلهٔ سوم محدودیت‌های این تکنولوژی شناخته می‌شود و آهسته از شهرت آن کاسته شده و بسیاری استفاده از آن را کنار می‌گذارند. در مرحلهٔ چهارم، تنها برخی کسانی که در عرصه‌ٔ آن تکنولوژی باقی‌مانده‌اند شروع به فعالیت اصلی در این حوزه کرده و تکنولوژی شروع به رشد می‌کند تا زمانی که به مرحله پایانی یعنی پختگی و ثبات نسبی برسدو اما شرکت‌های پیشرو:شرکت DeepMind،شرکت OpenAIگروه AI شرکت Facebookگروه AI شرکت Google ، این شرکت ها در دوره معرفی شد و با اشخاص موفقی در زمینه هوش مصنوعی مصاحبه شده بود مثل مهندس یامی که سبب شد انگیزه من برا فراگرفتن هوش مصنوعی و یادگیری ماشین چند برابر شود مهندس هادی یامی، دانشمند کاربردی (Applied scientist) در شرکت مایکروسافت، در آخر معرفی کتاب های کاربردی با توجه به سطح ما در هوش مصنوعی معرفی شد.منبعhttps://quera.ir/college/land/college/8522/هوش مصنوعی