<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های زهره غنی آبادی</title>
        <link>https://virgool.io/feed/@zohreghaniabadi</link>
        <description>دانشجو ارشد هوش مصنوعی دانشگاه صنعتی مالک اشتر</description>
        <language>fa</language>
        <pubDate>2026-06-15 06:43:50</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/1357342/avatar/n6wwzN.jpeg?height=120&amp;width=120</url>
            <title>زهره غنی آبادی</title>
            <link>https://virgool.io/@zohreghaniabadi</link>
        </image>

                    <item>
                <title>بایاس، کم برازش ، بیش برازش ، هوش مصنوعی، یادگیری ماشین</title>
                <link>https://virgool.io/@zohreghaniabadi/%D8%A8%D8%A7%DB%8C%D8%A7%D8%B3-%DA%A9%D9%85-%D8%A8%D8%B1%D8%A7%D8%B2%D8%B4-%D8%A8%DB%8C%D8%B4-%D8%A8%D8%B1%D8%A7%D8%B2%D8%B4-%D9%87%D9%88%D8%B4-%D9%85%D8%B5%D9%86%D9%88%D8%B9%DB%8C-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-adpiwdfz1vxz</link>
                <description>هوش مصنوعیسلام? با یک یادگیری دیگر آمدیم میخواهیم مفهموم بایس و کم برازش و بیش برازش را در دنیای واقعی مثال بزنیم? اول بریم سراغ یک مقدمه که بایاس و بیش برازش و کم برازش چیست و بعد برای درک بهتر مثالی در دنیای واقعی بزنیم .خب بیاید اینجوری شروع کنیم که ?فرض کنید شما میخواهید در یک تست بازیگری شرکت کنید  ??کارگردان هم به شما 5 نمونه دیالوگ داده است تا با استفاده از آن‌ها بتوانید خود را برای اتد زدن تست آماده کنید. ??‍♀️اگر شما طوری آماده باشید که فقط این 5 اتد را بزنید  و اگر نقش دیگری از شما بخواهند  از پس آن بر نیایید یعنی آمادگی شما برای تست Overfit یا بیش‌برازش شده است  ???بگذارید کمی جلوتر برویم تا بهتر مثال متوجه شوید ?حال اگر تمامی مفاهیم بازیگری ، میمیک و بدن و بیان رابلد باشید  ولی هیچ کدام از دیالوگ ها خواسته شده را حتی نشنیده باشید?❌ باز هم نمی‌توانید ل خوبی اتد خواسته شده را بزنید ?، البته شاید بتوانید یک اتد نسبتا خوبی هم  بزنید?ولی? اینجا توانایی شما در هنرتان  Underfit شده است.? این در حالی است که نقش دیگری که نزدیک به این نقش ها هستند را هم شاید بتوانید نصفه و نیمه بازی کنید(ولی دقیق نمی‌توانید همان دیالوگ و نقش را بازی کنید).☹️☹️❌❌در دنیای الگوریتم‌ها Overfit شدن به معنای این است که الگوریتم فقط داده‌هایی که در مجموعه آموزشی (train set) یاد گرفته است را می‌تواند به درستی پیش‌بینی کند ولی اگر داده‌ای کمی از مجموعه‌ی آموزشی فاصله داشته باشد، الگوریتمی که Overfit شده باشد، نمی‌تواند به درستی پاسخی برای این داده‌های جدید پیدا کند و آن‌ها را با اشتباهِ زیادی طبقه‌بندی می کند.❌❌Underfit شدن نیز زمانی رخ می دهد که الگوریتم یک مدلِ خیلی کلی از مجموعه آموزشی به دست می‌آورد. یعنی حتی اگر خودِ داده‌های مجموعه‌ی آموزشی را نیز به این الگوریتم بدهیم، این الگوریتم خطایی قابل توجه خواهد داشت???? می‌توان گفت یادگیری ماشین (Machine Learning)‌، به‌عنوان یک علم، به‌همان اندازه که مهم و چشمگیر است، پیچیده نیز است؛ درواقع اساس آن از مسائل فنی و ریاضی تشکیل شده است. اگر نتوانیم این مسائل فنی را درک کنیم، نمی‌توانیم بگوییم یادگیری ماشین را یاد گرفته‌ایم؛ برای مثال، اگر به‌عنوان یک محقق داده (Data Scientist)‌ به مصاحبه‌ی کاری برویم، به‌طور حتم از ما سؤال می‌شود که «آیا می‌توانید درباره‌ی مشکل کم‌برازش (Underfitting) و بیش‌برازش (Overfitting)‌ در یادگیری ماشین توضیح دهید؟». البته آنان به دنبال این نیستند که تمامی جزئیات این مسائل را با نمودار برای‌شان شرح دهید، اما می‌خواهند بدانند شما این مفهوم را درک کرده‌اید یا نه.بایاس مدل اصلا میدانید چی هست??بایاس میزان خطای مدل را مشخص می‌کند. به عبارتی میزان اختلاف بین خروجی واقعی و خروجی تخمین زده شده توسط مدل را مشخص می‌کند. هرچقدر بایاس مدل زیاد باشه معنیش اینه که خطاش زیاد است و هرچقدر کمتر یعنی میزان خطا کمتر است. وقتی مدل underfit بشود، بایاس مدل افزایش می یابد. اصطلاح underfitting را زمانی به کار میبریم که مدل به خوبی نتواند یاد بگیرد. ممکن است مدلی که برای حل مسئله استفاده کرده‌ایم، توان حل مسئله را نداشته باشد.  مثلا مرز داده‌ها غیرخطی است ولی ما از یک مدل ساده که میتواند مرز خطی پیدا کند استفاده کنیم.مفهوم بایاس در یادگیری ماشین هم اگر بخواهیم بگوییمبه این دلیل که رابطه بین ورودی و خروجی غیرخطی است، ولی مدلی که استفاده کرده ایم خطی است و توان حل یک مسئله غیرخطی را ندارد. در نتیجه خروجی تخمین زده شده توسط این مدل خروجی مناسبی نیست و با مقادیر واقعی اختلاف زیادی دارد. در چنین شرایطی میگوییم بایاس مدل زیاد است. مدلی که برای حل این مسئله استفاده شده است یک مدل ضعیف یا به عبارتی weak-learner است.این همه گفتیم مثال هم زدیم شاید دوباره بپرسید کم‌ برازش (Underfitting) چیست؟  چه زمانی اتفاق می‌افتد و راه‌های جلوگیری از آن کدام است؟ به‌زبان ساده، کم‌برازش هنگامی اتفاق می‌افتد که مدل یادگیری ماشین به‌اندازه‌ی کافی پیچیده نباشد که بتواند روابط میان ویژگی‌های یک مجموعه داده و متغیر هدف را به‌درستی تشخیص دهد.مدلی که به مشکل کم‌برازش دچار است به نتایج اشتباه در داده‌های جدید را که روی آن‌ها آموزش داده نشده است رقم خواهد زد و اغلب حتی درمورد داده‌های آموزشی نیز عملکرد ضعیفی دارد. زمانی که مدل دچار مشکل کم برازش (Underfitting) است بسیاری از ویژگی‌های داده‌های آموزشی را را نادیده می‌گیرد و نمی‌تواند رابطه‌ی میان ورودی و خروجی را یاد بگیرد.شاید بگید خب ?کم‌ برازش (Underfitting) چیست؟کم برازش (Underfitting) سناریویی در علم داده (Data Science) است که در آن یک مدل قادر نیست رابطه‌ی میان متغیرهای ورودی و خروجی را به طور دقیق ثبت کند. این خطا ایجاد خطای بالایی در هر دو مجموعه‌ی آموزشی و مجموعه‌ی داده‌های دیده‌نشده (تست) را رقم می‌زند.⭐⭐⭐⭐⭐⭐⭐این امر زمانی رخ می‌دهد که مدل بیش‌ازحد ساده باشد؛ به‌این معنا که مدل به زمان آموزش بیشتر، ویژگی‌های ورودی بیشتر یا تنظیم (Regularization) کمتر نیاز دارد.مدل در کم‌برازش نمی‌تواند الگوی غالب را در داده‌ها را تشخیص دهد؛ درنتیجه، این امر افزایش خطا و عملکرد ضعیف مدل را به همراه دارد.اگر مدلی نتواند به‌خوبی به داده‌های جدید تعمیم داده شود، نمی‌توان از آن برای طبقه‌بندی یا پیش‌بینی استفاده کرد. تعمیم یک مدل به داده‌های جدید درنهایت همان چیزی است که به ما امکان می‌دهد هر روز از الگوریتم‌های یادگیری ماشین برای پیش‌بینی و طبقه‌بندی داده‌ها استفاده کنیم.شاخص‌های تشخیص کم‌ برازش (Underfitting)بایاس بالا (High Bias) و واریانس پایین (Low Variance)‌ شاخص‌های خوبی برای تشخیص کم‌برازش هستند. از آنجا که این رفتار در هنگام استفاده از مجموعه‌ی داده‌های آموزشی دیده می‌شود، معمولاً شناسایی مدل‌های دچار کم‌برازش راحت‌تر از مدل‌هایی است که دچار بیش‌برازش (Overfitting)‌ هستند.وقتی درباره Overfitting  صحبت میکنیم صحبت از بالا رفتن یادگیری مدل بر روی داده های آموزشی میکنیم .به عبارتی الگوریتم مورد استفاده مدل ما بدلیل یاد گرفتن یکایک نمونه های آموزشی تبدیل به یک مدل پیچیده شده تا جایی که اگر یک نمونه جدید تست به این مدل داده شود خطای بالایی را تولید خواهد کرد. شکل زیر دقیقا این وضعیت را نمایش میدهد .  اما راه حل چیست ؟روشهای معمول پیشنهاد شده برای مواجهه با بیش برازشCross-Validation: یک روش استاندارد برای پیدا کردن خطای پیش بینی داده های جدید، استفاده ا k-fold cross validation است که ما معمولا k را ۱۰ یا ۵ در نظر میگیریم .توقف زودهنگام الگوریتم: با وضع قوانینی در الگوریتم سعی میکنیم قبل از اینکه به بیش برازش برسیم یادگیری را متوقف کنیم.هرس: هرس کردن خصوصا در الگوریتم های درخت تصمیم , با حذف گره هایی که کمترین تاثیر را در نتایج خروجی دارند موجب ساده شدن مدل میشوند.Regularization: این معیار با تعریف تابع هزینه (شما عملکرد این تابع را به عنوان جریمه در نظر بگیرید) اضافه شدن ویژگی ها به تابع هدف را سختگیرانه کنترل میکند. از این رو تلاش می کند ضرایب را برای بسیاری از ویژگی ها  به صفر برساند و به همین ترتیب هزینه را مینیمم کند.Underfitting یا کم برازشبرعکس زمانی که ما دچار Underfitting  میشویم اذعان به سادگی مدل در مرحله آموزش داریم تا حدی که نتوانسته مفهوم حاکم بر داده های ورودی را درک کند. چون مدل ما ساده است نمیتواند رفتار داده های آموزش را بدرستی یاد بگیرد و طبیعتا خطای آموزش بالایی دارد .بنابراین در مواجهه با داده های تست جدید هم خطای تعمیم بالایی خواهد داشت.معمولا زمانی اتفاق می افتد که داده های کمتری برای ساخت یک مدل دقیق و همچنین زمانی که ما سعی می کنیم یک مدل خطی با داده های غیر خطی ایجاد کنیم.شکل زیر تحلیل شفافی را به ما میدهد . همانطور که صحبت شد , زمانی که پیچیدگی مدل ما به دلیل یادگیری کمتر در مرحله آموزش پایین است در معرض Underfitting  هستیم و هم خطای آموزش و هم خطای تست بالاست و نتسیجه اینکه خطای تعمیم پذیری مدل هم بالا خواهد بود.هر چقدر پیچیدگی مدل افزایش میابد خطای آموزش به دلیل یادگیری دقیق تر داده های آموزشی کمتر شده اما مدل در پیش بینی رفتار داده های تست رفتار نامناسبی داشته و خطای تست بالا میرود و مدل ما برای داده های جدید ناکامد بوده و قابل تعمیم نمیباشد.طبیعتا بهترین فیت جاییست که خطای آموزش و خطای تست در حد معقولی بسته به صورت مسئله بین دو پدیده فوق باشد.یکی از بهترین شیوه هایی که درک ایندو پدیده برای من تثبیت شد استفاده از دو مفهوم دیگر بنام واریانس وبایاس مدل بود .واریانس مدل متغیر بودن پیش بینی مدل برای یک داده است که به ما درباره پراکندگی داده های ما صحبت میکند. مدل با واریانس زیاد توجه زیادی به داده های آموزشی داشته و بر اطلاعاتی که قبل از آن دیده نشده تعمیم پذیر نمیباشد. در نتیجه، چنین مدلهایی به خوبی بر روی داده های آموزشی عمل می کنند اما دارای نرخ خطای بالا در داده های تست هستند.در وارایانس موجب ایجاد خطای ناشی از حساسیت به نوسانات کوچک در مجموعه آموزش است و الگوریتم را به مدل کردن نویز های تصادفی در داده های آموزش وادار میکند یعنی همان پدیده overfitting .?⭐?⭐?بایاس اختلاف بین میانگین پیش بینی مدل ما و مقدار واقعی ای که ما در حال تلاش برای پیش بینی آن هستیم. مدل با بایاس زیاد توجه زیادی به داده های آموزش نکرده و مدل را بیش از پیش ساده و کلی می کند. این همیشه منجر به خطای زیاد در آموزش و داده های تست می شود. بایاس بالا می تواند در الگوریتم منجر به از دست رفتن روابط بین ویژگی ها و خروجی های هدف یا همان Underfitting شود.?. هدف از پست این است که با مفهوم Overfitting و Underfitting آشنا شده تا بتوانیم الگوریتم‌هایی ارائه کنیم تا از این دو پدیده در امان باشند.?اجازه بدهید با یک مثال شروع کنیم. فرض کنید شما برای یک آزمون  در حال درس خواندن هستید. استاد هم به شما 50عدد نمونه سوال داده است تا با استفاده از آن‌ها بتوانید خود را برای امتحان آماده کنید. اگر شما طوری مطالعه کنید که فقط این 50نمونه سوال را کامل بلد باشید و هر سوالِ دیگری که کمی از این 50 سوال فاصله داشته باشد، اشتباه جواب دهید، یعنی ذهنِ شما بر روی سوالاتِ آموزشی که استاد برای یادگیری داده است Overfit یا بیش‌برازش شده است. حال اگر تمامی سوالات را به صورت مفهومی بلد باشید ولی هیچ کدام از سوالات را به صورتِ دقیق بلد نباشید، حتی اگر دقیقاً همان سوال‌ها هم در جلسه امتحان به شما داده شود، باز هم نمی‌توانید به درستی و با دقت پاسخ آن ها را بدهید، البته شاید بتوانید یک پاسخ نصفه و نیمه از سوالات بنویسید. اینجا ذهن شما Underfit شده است. این در حالی است که سوالات دیگری که نزدیک به این سوالات هستند را هم شاید بتوانید نصفه و نیمه پاسخ دهید (ولی دقیق نمی‌توانید).?در دنیای الگوریتم‌ها Overfit شدن به معنای این است که الگوریتم فقط داده‌هایی که در مجموعه آموزشی (train set) یاد گرفته است را می‌تواند به درستی پیش‌بینی کند ولی اگر داده‌ای کمی از مجموعه‌ی آموزشی فاصله داشته باشد، الگوریتمی که Overfit شده باشد، نمی‌تواند به درستی پاسخی برای این داده‌های جدید پیدا کند و آن‌ها را با اشتباهِ زیادی طبقه‌بندی می کند.?Underfit شدن نیز زمانی رخ می دهد که الگوریتم یک مدلِ خیلی کلی از مجموعه آموزشی به دست می‌آورد. یعنی حتی اگر خودِ داده‌های مجموعه‌ی آموزشی را نیز به این الگوریتم بدهیم، این الگوریتم خطایی قابل توجه خواهد داشت.بایاس (Bias )مهول پاتل  مدیرعامل اجرایی شرکت hired می گوید:?در حالی که شما احتمالا ماشین ها را عینی، عادلانه و منسجم تصور می کنید اما در واقع آن ها بیشتر همان تعصبات ( بایاس ) ناخودآگاه را همانند انسان هایی که آن ها را ساخته اند، تصویب می کنند. به همین دلیل لازم است که شرکت ها اهمیت عادی سازی داده ها را – یعنی تنظیم مقادیر اندازه گیری شده در مقیاس های مختلف در مقیاس معمول – تشخیص دهند تا اطمینان حاصل شود که تعصبات انسانی ناخواسته وارد الگوریتم نمی شوند.?به عنوان نمونه اگر شما بخواهید نیرو استخدام کنید و از رایانه بدین منظور استفاده نمایید: اگر مجموعه ای از داده ها و ۱۰۰ زن و ۳۰۰ مرد کاندیدا را به رایانه ارائه دهید و از آن بخواهید بهترین فرد را برای این کار پیش بینی کند، قرار است نامزدهای مرد بیشتری را تحت پوشش خود قرار دهد زیرا حجم مردان سه برابر اندازه زنان در مجموعه داده ها است. در نتیجه ساختن فناوری عادلانه و عینی ممکن است چالش برانگیز باشد اما مطمعنا الگوریتم های آگاه سازی در مورد تصمیمات و بینش های ما و تعصباتی را که ما سعی در خنثی کردن آن ها به عنوان یک جامعه داریم در پی ندارد. بایاس (Bias )? مهول پاتل  مدیرعامل اجرایی شرکت hired می گوید:در حالی که شما احتمالا ماشین ها را عینی، عادلانه و منسجم تصور می کنید اما در واقع آن ها بیشتر همان تعصبات ( بایاس ) ناخودآگاه را همانند انسان هایی که آن ها را ساخته اند، تصویب می کنند. به همین دلیل لازم است که شرکت ها اهمیت عادی سازی داده ها را – یعنی تنظیم مقادیر اندازه گیری شده در مقیاس های مختلف در مقیاس معمول – تشخیص دهند تا اطمینان حاصل شود که تعصبات انسانی ناخواسته وارد الگوریتم نمی شوند.به عنوان نمونه اگر شما بخواهید نیرو استخدام کنید و از رایانه بدین منظور استفاده نمایید: اگر مجموعه ای از داده ها و ۱۰۰ زن و ۳۰۰ مرد کاندیدا را به رایانه ارائه دهید و از آن بخواهید بهترین فرد را برای این کار پیش بینی کند، قرار است نامزدهای مرد بیشتری را تحت پوشش خود قرار دهد زیرا حجم مردان سه برابر اندازه زنان در مجموعه داده ها است. در نتیجه ساختن فناوری عادلانه و عینی ممکن است چالش برانگیز باشد اما مطمعنا الگوریتم های آگاه سازی در مورد تصمیمات و بینش های ما و تعصباتی را که ما سعی در خنثی کردن آن ها به عنوان یک جامعه داریم در پی ندارد.شاید عجیب به نظر برسد، اما داده‌ها درعین‌حال که ارزشمندترین دارایی‌های یک شرکت هستند، می‌توانند مشکل‌سازترین دارایی شرکت‌ها هم باشند.شرکتی را در نظر بگیرید که خدمات آزمایش DNA ارائه می‌کند. خدماتی که این روزها پرطرف‌دار هم هست. اطلاعاتی که از آزمایش DNA به دست می‌آید، برای مشتریان شرکت بسیار ارزشمند است، چرا که حاوی اطلاعاتی از روابط خانوادگی و اجدادی تا ردپاهای ژنتیکی درگیر در بیماری‌هاست. اهمیت این اطلاعات در کنار تردیدها دربارهٔ سوگیری‌های داده (data bias) نهفته در آنها، سؤالات مهمی دربارهٔ این آزمایش‌ها به وجود می‌آورد. آیا این آزمایش‌ها دقت و اعتبار کافی دارند؟ آیا می‌توان به نتایج آنها اطمینان کرد؟ مشتریانی هستند که نتایج بسیار متفاوتی از شرکت‌های مختلف ارائه‌کنندهٔ خدمات تست DNA دریافت کرده‌اند. گروه دیگری از افراد هم هستند که اطلاعات مورد نظرشان را در نتایج این تست‌ها پیدا نمی‌کنند، آن هم بیشتر افرادی که در زمرهٔ اقلیت نژادی و قومی محسوب می‌شوند.بخش عمده‌ای از این مشکلات، به استفادهٔ  آزمایشگاه‌ها از الگوریتم‌های هوش مصنوعی (AI) در تفسیر آزمایش‌ها مربوط می‌شود، تا از این طریق به کار سرعت ببخشند و اتکا به نیروی انسانی متخصص را کاهش دهند. این الگوریتم‌ها، اگرچه سرعت بسیار بیشتری از انسان‌ها دارند، اما تنها بر اساس مجموعه داده‌هایی که از گذشته جمع‌آوری شده‌اند، کار می‌کنند و ممکن است داده‌های پیشین نمود درستی از انواع ترکیب‌های مختلف که در افراد گوناگون دیده می‌شود، به دست ندهند.این نوع مشکلات، تنها گریبان شرکت‌های ارائه‌دهندهٔ خدمات ژنتیکی را نمی‌گیرد. در زمینه‌های گوناگون، از صنایع گرفته تا تجارت، به‌کارگیری هوش مصنوعی مشروط به پیداکردن راه‌حل‌هایی برای سوگیری‌های داده و رفع ریسک‌های احتمالی در موضوع‌های اخلاقی، حقوقی و مالی، در زمینهٔ استفاده از هوش مصنوعی است.حل مشکل سوگیری داده‌ها نیازمند شناخت دقیق ریشه‌های شکل‌گیری این مشکل در داده‌ها است. با شناخت بهتر ریشهٔ این مشکلات، شرکت‌ها می‌توانند سامانه‌های هوشمند را به شکلی مسئولانه‌تر پیاده‌سازی کنند و حتی عملکرد آنها را نیز بهتر سازند.سوگیری‌ها و چرخهٔ عمر داده (Bias and the Data Lifecycle)در ساخت سیستم‌های هوش مصنوعی از مجموعه داده‌ها استفاده می‌شود. مجموعه داده‌ها از تعصب‌ها و تبعیض‌ها نسبت به گروه‌های مختلف (مثلاً اقلیت‌های نژادی) عاری نیستند. سوگیری  داده همین‌جا اتفاق می‌افتد، یعنی هنگام ساخت سیستم‌های هوشمند، براساس مجموعه‌ داده‌هایی که از تعصب‌ها و تبعیض‌ها متأثرند. اغلب تصور می‌شود که این سوگیری‌ها علیه اقلیت‌های حمایت شده در یک جامعه است (قانون فدرال آمریکا از افراد در برابر تبعیض و تنفر به دلیل داشتن دین، قومیت، جنسیت، سن، معلولیت، رنگ پوست، مرام خاص، ریشه‌های تابعیتی، مذهب و اطلاعات ژنتیکی حمایت می‌کند)، اما، در واقع هر نوع سوگیری داده، به نفع یا به ضرر هر گروهی، می‌تواند مشکل‌آفرین باشد و ......دیگه فکر میکنم متوجه شده باشید ?موفق باشید ??️زهره غنی آبادی دانشجو ارشد هوش مصنوعی دانشگاه صنعتی مالک اشتر تهران</description>
                <category>زهره غنی آبادی</category>
                <author>زهره غنی آبادی</author>
                <pubDate>Thu, 06 Jan 2022 01:14:28 +0330</pubDate>
            </item>
                    <item>
                <title>درخت تصمیم</title>
                <link>https://virgool.io/@zohreghaniabadi/%D8%AF%D8%B1%D8%AE%D8%AA-%D8%AA%D8%B5%D9%85%DB%8C%D9%85-oycinvl9g8pr</link>
                <description>?درخت تصمیم ?درخت تصمیم ? یادگیری ماشین، هوش مصنوعی بیاید که یک مطلب جدید براتون آوردم ??سلام ??️من وارد سایتpaperswithcode شدم یک مقاله که از روش درخت تصمیم به عنوان روش اصلی (main solution) استفاده کرده را ترجمه و مطالعه کردم و خلاصه آن را برای شما شرح دادم :ما روشی را برای تشخیص شی بصری بر اساس مجموعه‌ای از درخت‌های تصمیم بهینه سازمان‌دهی شده در یک آبشار از ردکننده‌ها توصیف می‌کنیم. درختان از مقایسه شدت پیکسل در گره های داخلی خود استفاده می کنند و این باعث می شود که بتوانند مناطق تصویر را بسیار سریع پردازش کنند. تجزیه و تحلیل تجربی از طریق مشکل تشخیص چهره ارائه می شود. نتایج به‌دست‌آمده دلگرم‌کننده هستند و نشان می‌دهند که این روش دارای ارزش عملی است. علاوه بر این، ما حساسیت آن به نویز را تجزیه و تحلیل می‌کنیم و نحوه انجام تشخیص شی ثابت با چرخش سریع را نشان می‌دهیم. کد منبع کامل در https://github.com/nenadmarkus/pico ارائه شده استخلاصه?ما روشی را برای تشخیص شی بصری بر اساس توصیف می کنیممجموعه ای از درختان تصمیم بهینه سازماندهی شده در یک مورددسته رد کننده ها درختان از شدت پیکسل در مقایسه باایزون ها در گره های داخلی خود هستند و این باعث می شود که بتوانندمناطق تصویر را بسیار سریع پردازش کنید. تجزیه و تحلیل تجربی استاز طریق مشکل تشخیص چهره ارائه شده است. به دست آمدهنتایج دلگرم کننده است و نشان می دهد که روشارزش عملی دارد علاوه بر این، ما حساسیت آن را تجزیه و تحلیل می کنیمدارای نویز و نشان دادن نحوه انجام چرخش سریع غیر متغیرتشخیص شی مورچه کد منبع کامل در ارائه شده استhttps://github.com/nenadmarkus/picoمعرفیدر بینایی کامپیوتر، تشخیص را می توان به عنوان یک وظیفه توصیف کردپیدا کردن موقعیت ها و مقیاس های همه اشیاء در یک تصویرکه به یک کلاس ظاهری معین تعلق دارند. مثلاً اینهااشیاء می توانند اتومبیل، عابر پیاده یا صورت انسان باشند. خودکارتشخیص اشیا طیف وسیعی از کاربردها را دارد. مقداریشامل بیومتریک، کمک راننده، نظارت بصری ورابط های هوشمند انسان و ماشین این اپلیکیشن ها ایجاد می کنندانگیزه قوی برای توسعه سریع و دقیقروش های تشخیص اشیاویولا و جونز به طور عملی تشخیص اشیا را انجام داده انددر کاربردهای دنیای واقعی امکان پذیر است. این به دلیل این واقعیت استکه سیستم ها بر اساس چارچوب خود می توانند تصاویر را پردازش کنندبسیار سریعتر از رویکردهای قبلی در حالی که دستیابی به موارد مشابهنتایج تشخیص با این حال، برخی از برنامه ها می توانند از مزایای آن بهره مند شوندآشکارسازهای سریعتر، و این انگیزه اصلی ما بودپژوهش. ما علاقه مند به حمایت از طیف گسترده ای ازرایانه شخصی و دستگاه های تلفن همراه با قدرت پردازش محدود. بدین ترتیب،برای اینکه سیستم ما در این برنامه ها کاربردی باشد، ما هستیمآماده است تا دقت تشخیص را به قیمت بهتر قربانی کندسرعت پردازش و سادگیدر این مقاله، ما یک فریمور تشخیص شی را توضیح می دهیمکه قادر است تصاویر را با حفظ کامپوزیت بسیار سریع پردازش کند.دقت درخواستی ایده های اساسی در بخش 2 توضیح داده شده است. و تحلیل تجربی در یافته های ما را به هم می ریزد و در مورد جهت گیری های تحقیقاتی آینده بحث می کند.ما متوجه شده ایم (فوریه 2014) که تقریباً یکسان استچارچوب توسط لیائو و همکاران توصیف شده است. در یک فنی در اینجا ما کار آنها را تصدیق می کنیم و آن را بیان می کنیمتحقیق ما کاملاً مستقل انجام شده است. روشرویکرد ما اصلاح استاندارد Viola-Jones استچارچوب تشخیص اشیا ایده اصلی اسکن کردن استتصویر با آبشاری از طبقه‌بندی‌کننده‌های باینری کاملاً منطقی استموقعیت ها و مقیاس ها یک منطقه تصویر به عنوان یک موضوع طبقه بندی می شودموضوع مورد علاقه در صورتی که با موفقیت از تمام اعضای گروه عبور کندآبشار هر طبقه بندی کننده باینری از مجموعه ای از د-درختان cision با مقایسه شدت پیکسل به عنوان تست های باینریدر گره های داخلی آنها فرآیند یادگیری شامل الفروش ساخت درخت رگرسیون حریص و تقویتالگوریتم جزئیات در زیر بخش های زیر آورده شده است. درخت تصمیم برای رگرسیون مبتنی بر تصویربرای رسیدگی به مشکل رگرسیون مبتنی بر تصویر، ما استفاده می کنیمیک درخت تصمیم گیری دودویی بهینه با ترکیب شدت پیکسلپاریزون ها به عنوان تست های باینری در گره های داخلی آن. این رویکردتوسط آمیت و جمن در [1] معرفی شد و بعدها موفقیتبه طور کامل توسط سایر محققان و مهندسان استفاده می شود (به عنوان مثال،نگاه کنید به [16، 15، 13]). تست باینری مقایسه شدت پیکسل درتصویر I به عنوان تعریف شده استbintest(I; l1, l2) = (0، I(l1) ≤ I(l2)1، در غیر این صورت،(1)که در آن I(li) شدت پیکسل در مکان li است. مکان l1و l2 در مختصات نرمال شده هستند، یعنی هر دو از آن هستندمجموعه [-1، +1] × [-1، +1]. این بدان معنی است که تست های باینری می تواننددر صورت نیاز به راحتی قابل تغییر اندازه است. هر گره پایانی درختشامل یک اسکالر است که خروجی را مدل می کند.بر ساخت درخت نظارت می شود. داده های آموزشییک مجموعه است {(Is, vs, ws) : s = 1, 2, . . . ، S} جایی که vs زمین استارزش حقیقت مرتبط با تصویر Is و ws اهمیت آن استفاکتور (وزن). به عنوان مثال، در مورد کلاس باینریافسانه، حقایق پایه نشان دهنده برچسب طبقاتی است: مثبتنمونه ها با 1+ و نمونه های منفی با حاشیه نویسی می شوند-1. وزن‌های ws ما را قادر می‌سازند که اهمیت متفاوتی قائل شویمارزش هر یک از این نمونه ها این مهم ثابت خواهد شدبعد. آزمون باینری در هر گره داخلی درخت به صورت se- است.به گونه ای انتخاب شده است که میانگین وزنی مربع خطا را به حداقل برساندزمانی بدست می آید که داده های آموزشی دریافتی توسط آزمون تقسیم شود.این با به حداقل رساندن مقدار زیر انجام می شود:WMSE = X(I,v,w)∈C0w ·(v −v¯0)2 +ایکس(I,v,w)∈C1w ·(v −v¯1)2، (2گره آدرخت ساخته شده برای ذخیره سازی و اجرای آن به بایت های O (2D) نیاز دارد.مقیاس سرعت زمان به صورت O (D). مجموعه ای از درختان برای طبقه بندی باینریکاتیونیک درخت تصمیم منفرد معمولاً می‌تواند به مقدار متوسطی برسد.نژادپرستانه از سوی دیگر، مجموعه ای از درختان می تواند به دست آوردنتایج چشمگیر ما از الگوریتم GentleBoost [4]، aاصلاح AdaBoost شناخته شده تر، برای ایجاد دیسمجموعه مجرمانه با برازش متوالی درخت تصمیم بهیک مسئله حداقل مربعات مناسببه منظور ایجاد مجموعه ای از درختان K از یک آموزشset {(Is, cs): s = 1, 2,. . . ، S}، الگوریتم در ادامه می یابدمراحل زیر:EnglishPersianInitialize the weight ws for each image Is and its classlabel cs ∈ {−1, +1} asws =(1/P, cs = +11/N, cs = −1where P is the total number of positive samples and Nis the total number of negative samples.2. For k = 1, 2, . . . , K :(a) Fit a decision tree Tk by weighted least squares of csto Is with weights ws (as explained in section 2.1).(b) Update weights:ws = ws exp (−csTk(Is)),where Tk(Is) denotes the real-valued output of treeTk on image Is.(c) Renormalize weights so they sum to 1.3. Output ensemble {Tk : k = 1, 2, . . . , K}.During runtime, the outputs of all trees in the ensembleare summed together and the obtained value is thresholdedin order to obtain a class label. We can achieve different ratiosof true positives to false positives by varying the threshold.This proves important in building an efficient detector, asdescribed in the next sectوزن ws را برای هر تصویر Is و کلاس آن مقداردهی کنیدبرچسب cs ∈ {−1، +1} به عنوانws =(1/P، cs = +11/N، cs = -1که در آن P تعداد کل نمونه های مثبت و N استتعداد کل نمونه های منفی است.2. برای k = 1، 2، . . . ، ک:(الف) درخت تصمیم Tk را با حداقل مربعات وزنی cs برازش دهیدبه است با وزن ws (همانطور که در بخش 2.1 توضیح داده شد).(ب) به روز رسانی وزن:ws = ws exp (−csTk(Is))،که در آن Tk(Is) خروجی با ارزش واقعی درخت را نشان می دهدTk روی تصویر است.ج) وزن ها را مجدداً عادی کنید تا مجموع آنها برابر با 1 شود.3. گروه خروجی {Tk : k = 1, 2, . . . ، K}.در طول زمان اجرا، خروجی تمام درختان در گروهبا هم جمع می شوند و مقدار به دست آمده در آستانه قرار می گیردبرای به دست آوردن برچسب کلاس ما می توانیم به نسبت های مختلف دست پیدا کنیماز مثبت واقعی به مثبت کاذب با تغییر آستانه.این امر در ساخت یک آشکارساز کارآمد مهم استدر بخش بعدی توضیح داده شده است تشخیص به عنوان اسکن تصویر با بدنهدسته طبقه بندی کننده های باینریبدون هیچ دانش پیشینی، ما باید به طور سیستماتیکتصویر را با طبقه‌بندی‌کننده باینری ما در تمام نقاط مختلف اسکن کنید.موقعیت ها و مقیاس ها به منظور یافتن اشیاء مورد علاقه. ماننداین از نظر محاسباتی نیازمند است، ما پیشنهاد را دنبال می کنیمویولا و جونز ایده اصلی استفاده از چند طبقه بندی استمراحل کاتیونی با افزایش پیچیدگی هر مرحله تشخیص می دهدتقریباً همه اشیاء مورد علاقه در حالی که کسر خاصی را رد می کننداز غیر اشیا بنابراین، اکثریت غیر اشیاء رد می شونددر مراحل اولیه، یعنی با صرف زمان کمی برای پردازش.در مورد ما، هر مرحله از مجموعه ای از درختان تشکیل شده است.مراحل اولیه درختان کمتری نسبت به مراحل بعدی دارند. آشکارسازنرخ حرکت هر مرحله با تنظیم خروجی تنظیم می شودآستانه مجموعه آن هر مرحله از خروجی نرم استفاده می کند(&quot;اطمینان&quot;) مرحله قبل به عنوان اطلاعات اضافیبرای بهبود تبعیض پذیری آن این با پیشرفت به دست می آید .امید وارم مطالب براتون مفید بوده باشه ?خسته نباشید مهندسا ??️اگه میخواهید مطالب بیشتر بدانید وارد سایت معرفی شده بروید??زهره غنی آبادی دانشجو ارشد هوش مصنوعی دانشگاه صنعتی مالک اشتر تهران?️</description>
                <category>زهره غنی آبادی</category>
                <author>زهره غنی آبادی</author>
                <pubDate>Wed, 29 Dec 2021 21:10:28 +0330</pubDate>
            </item>
                    <item>
                <title>Cross validation ترجمه زهره غنی آبادی</title>
                <link>https://virgool.io/@zohreghaniabadi/cross-validation-%D8%AA%D8%B1%D8%AC%D9%85%D9%87-%D8%B2%D9%87%D8%B1%D9%87-%D8%BA%D9%86%DB%8C-%D8%A2%D8%A8%D8%A7%D8%AF%DB%8C-xmf7js9z6o7q</link>
                <description>Cross validationترجمه‌ی زهره غنی آبادی دانشجو ارشد هوش مصنوعی دانشگاه صنعتی مالک اشتر تهران در یادگیری ماشینCross validationمنبع:https://quera.ir/course/assignments/36947/problems/123242# Cross-Validation in Machine Learning: How to Do It Rightآیا میخواهید چندین اجرا را به روشی خودکار مقایسه کنید؟ابرداده خود را به نپتون وارد کنید و همه اجراها را در یک نمای مقایسه کاربر پسند ببینید.بیشتر بدانیداعتبار سنجی متقابل در یادگیری ماشینی: چگونه آن را به درستی انجام دهیم10 دقیقه خواندننویسنده ولادیمیر لیاشنکوبه روز شده در 12 نوامبر 2021در یادگیری ماشینی (ML)، تعمیم معمولاً به توانایی یک الگوریتم برای مؤثر بودن در ورودی های مختلف اشاره دارد. این بدان معنی است که مدل ML با کاهش عملکرد در ورودی های جدید از توزیع یکسان داده های آموزشی مواجه نمی شود.برای انسان تعمیم طبیعی ترین چیز ممکن است. ما می توانیم در پرواز طبقه بندی کنیم. به عنوان مثال، ما قطعاً یک سگ را می شناسیم حتی اگر قبلاً این نژاد را ندیده باشیم. با این وجود، ممکن است برای یک مدل ML کاملاً یک چالش باشد. به همین دلیل است که بررسی توانایی الگوریتم برای تعمیم یک کار مهم است که در ساخت مدل نیاز به توجه زیادی دارد.برای این کار از Cross-Validation (CV) استفاده می کنیم.در این مقاله به موارد زیر خواهیم پرداخت:اعتبار متقابل چیست: تعریف، هدف استفاده و تکنیک هاتکنیک‌های مختلف CV: نگه‌داشتن، k-folds، Leave-one-out، Leave-p-out، k-fold طبقه‌بندی شده، k-fold مکرر، k-folds تودرتو، CV کاملنحوه استفاده از این تکنیک ها: sklearnاعتبار سنجی متقابل در یادگیری ماشینی: sklearn، CatBoostاعتبار سنجی متقابل در یادگیری عمیق: Keras، PyTorch، MxNetبهترین شیوه ها و نکات: سری های زمانی، داده های پزشکی و مالی، تصاویرCross-Validation چیست؟اعتبار سنجی متقابل تکنیکی برای ارزیابی یک مدل یادگیری ماشین و آزمایش عملکرد آن است. CV معمولاً در کارهای کاربردی ML استفاده می شود. این به مقایسه و انتخاب یک مدل مناسب برای مسئله مدل‌سازی پیش‌بینی‌کننده خاص کمک می‌کند.درک CV آسان است، پیاده‌سازی آن آسان است، و تمایل به تعصب کمتری نسبت به سایر روش‌های مورد استفاده برای شمارش امتیازهای کارایی مدل دارد. همه اینها اعتبارسنجی متقابل را به ابزاری قدرتمند برای انتخاب بهترین مدل برای کار خاص تبدیل می کند.تکنیک های مختلفی وجود دارد که ممکن است برای اعتبارسنجی متقابل یک مدل استفاده شود. با این حال، همه آنها یک الگوریتم مشابه دارند:مجموعه داده را به دو بخش تقسیم کنید: یکی برای آموزش، دیگری برای آزمایشمدل را روی مجموعه آموزشی آموزش دهیداعتبار مدل را در مجموعه آزمایشی تأیید کنید1-3 مرحله را چند بار تکرار کنید. این عدد به روش رزومه ای که استفاده می کنید بستگی داردهمانطور که می دانید، تکنیک های CV زیادی وجود دارد. برخی از آنها معمولا استفاده می شوند، برخی دیگر فقط در تئوری کار می کنند. بیایید روش‌های اعتبارسنجی متقاطع را که در این مقاله پوشش داده خواهد شد، ببینیم.نگه داریدK-foldsترک یک بیرونترک کردنچین های K طبقه بندی شدهK-folds مکررچین های K تو در توکاملنگه داریداعتبار سنجی متقابل Hold-out ساده ترین و رایج ترین تکنیک است. شاید ندانید که این روش نگهدارنده است اما مطمئناً هر روز از آن استفاده می کنید.الگوریتم تکنیک Hold-out:مجموعه داده را به دو بخش تقسیم کنید: مجموعه آموزشی و مجموعه تست. معمولاً 80 درصد مجموعه داده به مجموعه آموزشی و 20 درصد به مجموعه آزمایشی می‌رود، اما می‌توانید هر تقسیم‌بندی را انتخاب کنید که مناسب‌تر باشد.مدل را روی مجموعه آموزشی آموزش دهیددر مجموعه آزمایشی اعتبار سنجی کنیدنتیجه اعتبارسنجی را ذخیره کنیدخودشه.ما معمولاً از روش نگهدارنده در مجموعه داده‌های بزرگ استفاده می‌کنیم، زیرا فقط یک بار نیاز به آموزش مدل دارد.اجرای نگهدارنده واقعاً آسان است. برای مثال، می‌توانید این کار را با استفاده از sklearn.model_selection.train_test_split انجام دهید.import numpy as npfrom sklearn.model_selection import train_test_splitX, y = np.arange(10).reshape((5, 2)), range(5)X_train, X_test, y_train, y_test = train_test_split(X, y, با این حال، نگه داشتن یک نقطه ضعف بزرگ دارد.به عنوان مثال، مجموعه داده ای که از نظر توزیع کاملاً یکنواخت نیست. اگر چنین است، ممکن است پس از تقسیم در یک نقطه ناهموار قرار بگیریم. به عنوان مثال، مجموعه آموزشی مجموعه تست را نشان نخواهد داد. هر دو مجموعه تمرین و تست ممکن است بسیار متفاوت باشند، یکی از آنها ممکن است آسان تر یا سخت تر باشد.علاوه بر این، این واقعیت که ما مدل خود را فقط یک بار آزمایش می کنیم ممکن است یک گلوگاه برای این روش باشد. با توجه به دلایل ذکر شده در بالا، ممکن است نتیجه به دست آمده با تکنیک Hold-out نادرست در نظر گرفته شودk-foldK-Fold CV تکنیکی است که معایب روش نگهدارنده را به حداقل می رساند. k-Fold روش جدیدی را برای تقسیم مجموعه داده معرفی می کند که به غلبه بر &quot;تست فقط یک بار گلوگاه&quot; کمک می کند.الگوریتم تکنیک k-Fold:تعدادی چین را انتخاب کنید - k. معمولاً k 5 یا 10 است، اما می‌توانید هر عددی را انتخاب کنید که کمتر از طول مجموعه داده باشد.مجموعه داده را به k قسمت مساوی (در صورت امکان) تقسیم کنید (به آنها folds گفته می شود)k – 1 folds را انتخاب کنید که مجموعه آموزشی خواهد بود. تای باقیمانده مجموعه آزمایشی خواهد بودمدل را روی مجموعه آموزشی آموزش دهید. در هر تکرار اعتبارسنجی متقاطع، باید یک مدل جدید مستقل از مدل آموزش داده شده در تکرار قبلی آموزش دهید.در مجموعه آزمایشی اعتبار سنجی کنیدنتیجه اعتبارسنجی را ذخیره کنیدمراحل 3 تا 6 هزار بار را تکرار کنید. هر بار از چین باقی مانده به عنوان مجموعه تست استفاده کنید. در پایان، شما باید مدل را روی هر فولد که دارید اعتبارسنجی کرده باشید.برای به دست آوردن امتیاز نهایی، میانگین نتایجی که در مرحله 6 به دست آوردید.برای انجام اعتبارسنجی متقاطع k-Fold می توانید از sklearn.model_selection.KFold استفاده کنیدsklearn.model_selection import KFoldX = np.array([[1, 2], [3, 4], [1, 2], [3, 4]])y = np.array([1, 2, 3, 4])kf = KFold(n_splits=2)for train_index, test_index in kf.split(X):    print(&quot;TRAIN:&quot;, train_index, &quot;TEST:&quot;, test_index)    X_train, X_test = X[train_index], X[test_index]    y_train, y_test = y[train_index], y[test_index].به طور کلی همیشه بهتر است به جای Hold-out از تکنیک k-Fold استفاده کنید. از آنجایی که آموزش و آزمایش بر روی چندین بخش مختلف مجموعه داده انجام می شود، به صورت مو به مو، مقایسه k-Fold نتیجه پایدارتر و قابل اعتمادتری به دست می دهد. اگر تعداد تاها را افزایش دهیم تا مدل را روی بسیاری از زیر مجموعه‌های مختلف مختلف آزمایش کنیم، می‌توانیم امتیاز کلی را قوی‌تر کنیم.با این حال، روش k-Fold یک نقطه ضعف دارد. افزایش k منجر به آموزش مدل های بیشتر می شود و فرآیند آموزش ممکن است واقعاً گران و زمان بر باشد Repeated k-Fold: تکرار k-fold اعتبارسنجی متقابل k-Fold مکرر یا CV نمونه‌برداری‌های تصادفی مکرر احتمالاً قوی‌ترین تکنیک‌های CV در این مقاله است. این یک تغییر از k-Fold است اما در مورد K-Folds تکراری k تعداد تاها نیست. تعداد دفعاتی است که ما مدل را آموزش خواهیم داد.ایده کلی این است که در هر تکرار، نمونه‌هایی را به‌طور تصادفی از سرتاسر مجموعه داده به عنوان مجموعه آزمایشی انتخاب می‌کنیم. به عنوان مثال، اگر تصمیم بگیریم که 20٪ از مجموعه داده ها مجموعه آزمایشی ما باشد، 20٪ نمونه به طور تصادفی انتخاب می شوند و 80٪ بقیه به مجموعه آموزشی تبدیل می شوند.الگوریتم تکنیک Repeated k-Fold:k را انتخاب کنید - چند بار مدل آموزش داده می شودتعدادی نمونه را انتخاب کنید که مجموعه آزمایشی خواهد بودمجموعه داده را تقسیم کنیدروی مجموعه آموزشی تمرین کنید. در هر تکرار اعتبارسنجی متقاطع، یک مدل جدید باید آموزش داده شوددر مجموعه آزمایشی اعتبار سنجی کنیدنتیجه اعتبارسنجی را ذخیره کنیدمراحل را 3-6 هزار بار تکرار کنیدبرای به دست آوردن امتیاز نهایی، میانگین نتایجی که در مرحله 6 به دست آوردید.K-Fold مکرر مزایای واضحی نسبت به استاندارد k-Fold CV دارد. اولا، نسبت تقسیم قطار/آزمایش به تعداد تکرارها بستگی ندارد. ثانیا، ما حتی می توانیم نسبت های منحصر به فردی را برای هر تکرار تنظیم کنیم. ثالثاً، انتخاب تصادفی نمونه‌ها از مجموعه داده‌ها، Repeated k-Fold را برای سوگیری انتخاب قوی‌تر می‌کند.با این حال، برخی از معایب وجود دارد. k-Fold CV تضمین می‌کند که مدل روی همه نمونه‌ها آزمایش می‌شود، در حالی که K-Fold تکراری بر اساس تصادفی‌سازی است که به این معنی است که برخی از نمونه‌ها ممکن است هرگز برای قرار گرفتن در مجموعه آزمایش انتخاب نشوند. در همان زمان، برخی از نمونه ها ممکن است چندین بار انتخاب شوند.Sklearn به شما در پیاده سازی Repeated k-Fold CV کمک می کند. فقط استفاده کنsklearn.model_selection.RepeatedKFold. در اجرای sklearn این تکنیک باید تعداد فولدهایی که می خواهید داشته باشید (n_splits) و تعداد دفعاتی که تقسیم انجام می شود (n_repeats) را تنظیم کنید. این تضمین می کند که در هر تکرار چین های مختلفی خواهید داشت.import numpy as npfrom sklearn.model_selection import RepeatedKFoldX = np.array([[1, 2], [3, 4], [1, 2], [3, 4]])y = np.array([0, 0, 1, 1])rkf = RepeatedKFold(n_splits=2, n_repeats=2, random_state=42)for train_index, test_index in rkf.split(X):    print(&quot;TRAIN:&quot;, train_index, &quot;TEST:&quot;, test_index)    X_train, X_test = X[train_index], X[test_index]    y_train, y_test = y[train_index], y[test_index]K-Fold تو در توبرخلاف سایر تکنیک‌های CV، که برای ارزیابی کیفیت یک الگوریتم طراحی شده‌اند، Nested k-Fold CV محبوب‌ترین راه برای تنظیم پارامترهای یک الگوریتم است.تصور کنید که ما یک پارامتر p داریم که معمولاً به الگوریتم پایه ای که ما در حال تایید متقابل آن هستیم بستگی دارد. به عنوان مثال، برای رگرسیون لجستیک، ممکن است پارامتر جریمه باشد که برای تعیین هنجار مورد استفاده در جریمه استفاده می شود.الگوریتم تکنیک Nested k-Fold:k را انتخاب کنید - تعدادی تا، به عنوان مثال، 10 - فرض کنیم این عدد را انتخاب کرده ایمیک پارامتر p را انتخاب کنید. فرض کنید الگوریتم ما رگرسیون لجستیک است و p پارامتر جریمه p = {&#x27;l1&#x27;, &#x27;l2&#x27;, &#x27;elasticnet&#x27;, &#x27;none&#x27;}مجموعه داده را به 10 تا تقسیم کنید و یکی از آنها را برای آزمایش رزرو کنیدیکی از تاهای آموزشی را برای اعتبار سنجی رزرو کنیدبرای هر مقدار p روی 8 فولد آموزشی باقیمانده آموزش دهید و روی فولد اعتبارسنجی ارزیابی کنید. اکنون 4 اندازه گیری داریدمراحل 4-5 را 9 بار تکرار کنید. بچرخانید که کدام فولد آموزشی، فولد اعتبارسنجی است. اکنون اندازه گیری 9 * 4 داریدp را انتخاب کنید که میانگین خطای تمرین را بیش از 9 برابر به حداقل برساند. از آن p برای ارزیابی روی مجموعه تست استفاده کنیداز مرحله 2 10 بار تکرار کنید و از هر تا به نوبت به عنوان تای تست استفاده کنیدمیانگین و انحراف معیار اندازه گیری ارزیابی را در 10 برابر تست ذخیره کنیدالگوریتمی که بهترین عملکرد را داشت، الگوریتمی بود که بهترین میانگین عملکرد خارج از نمونه را در 10 لایه آزمایشی داشت.این تکنیک از نظر محاسباتی گران است زیرا در طول مراحل 1 تا 10 تعداد زیادی مدل باید آموزش و ارزیابی شوند. با این حال، Nested k-Fold CV معمولا استفاده می شود و ممکن است در چندین کار ML واقعاً مؤثر باشد.متأسفانه، هیچ روش داخلی در sklearn وجود ندارد که بتواند CV Nested k-Fold را برای شما انجام دهد. این لحظه ای است که شما باید یا گوگل کنید و پیاده سازی شخصی را پیدا کنید یا خودتان آن را کدنویسی کنید.اعتبار متقاطع کاملCV کامل کم استفاده ترین تکنیک CV است. ایده کلی این است که ما یک عدد k - طول مجموعه آموزشی را انتخاب می کنیم و روی هر تقسیم ممکن حاوی k نمونه در مجموعه آموزشی اعتبار سنجی می کنیم.مقدار آن تقسیم‌ها را می‌توان به صورت Сnk محاسبه کرد که n طول مجموعه داده است. اگر k بالاتر از 2 باشد، باید مدل خود را چندین بار آموزش دهیم که همانطور که قبلاً متوجه شدیم زمان فرآیند گران قیمت و از نظر محاسباتی است.به همین دلیل است که از CV کامل یا در تحقیقات نظری استفاده می شود و یا در صورت وجود فرمول مؤثری که به حداقل رساندن محاسبات کمک می کند.الگوریتم اعتبار سنجی متقاطع کامل:یک عدد k - طول مجموعه تمرینی را انتخاب کنیدمجموعه داده را تقسیم کنیدروی مجموعه آموزشی تمرین کنیددر مجموعه آزمایشی اعتبار سنجی کنیدنتیجه اعتبارسنجی را ذخیره کنیدمراحل 2 تا 5 Сnk را تکرار کنیدبرای به دست آوردن امتیاز نهایی، میانگین نتایجی که در مرحله 5 به دست آوردیدبیشتر تکنیک های اعتبار سنجی متقابل ذکر شده در بالا به طور گسترده در ML استفاده می شود. مهم است که به خاطر داشته باشید که استفاده از تکنیک CV مناسب ممکن است در زمان شما صرفه جویی کند و به انتخاب بهترین مدل برای کار کمک کند.این بدان معناست که اولاً، بهتر است همیشه مدل را تأیید متقابل کنید و ثانیاً باید یک روش CV مربوطه را انتخاب کنید. بنابراین، دانستن مزایا و معایب تکنیک‌های اعتبارسنجی متقابل حیاتی است.شایان ذکر است که اگر می‌خواهید مدل را اعتبار متقابل کنید، همیشه باید دفترچه راهنمای مدل را بررسی کنید زیرا برخی از الگوریتم‌های ML، به عنوان مثال، CatBoost روش‌های CV داخلی خود را دارند. ممکن است آنها را مربوط به وظیفه ML خود بیابید و به جای روش های داخلی sklearn از آنها استفاده کنید.به طور کلی، همانطور که ممکن است متوجه شده باشید، بسیاری از تکنیک‌های CV دارای روش‌های داخلی sklearn هستند. من به شدت توصیه می کنم از آنها استفاده کنید زیرا این روش ها در زمان زیادی برای کارهای پیچیده تر صرفه جویی می کنند.اعتبار متقابل در یادگیری عمیقاعتبار سنجی متقابل در یادگیری عمیق (DL) ممکن است کمی مشکل باشد زیرا اکثر تکنیک های CV حداقل چند بار نیاز به آموزش مدل دارند.در یادگیری عمیق، معمولاً به دلیل هزینه‌های مرتبط با آموزش مدل‌های مختلف، از CV اجتناب می‌کنید. به جای انجام k-Fold یا سایر تکنیک‌های CV، ممکن است از زیرمجموعه‌ای تصادفی از داده‌های آموزشی خود به عنوان نگهدارنده برای اهداف اعتبارسنجی استفاده کنید.به عنوان مثال، کتابخانه یادگیری عمیق Keras به شما امکان می دهد یکی از دو پارامتر را برای تابع fit که آموزش را انجام می دهد، ارسال کنید.validation_split: درصدی از داده هایی که باید برای اعتبار سنجی نگهداری شوندvalidation_data: چند عدد از (X, y) که باید برای اعتبارسنجی استفاده شود. این پارامتر پارامتر validation_split را نادیده می گیرد، به این معنی که شما می توانید تنها یکی از این پارامترها را در یک زمان استفاده کنید.همین رویکرد در آموزش های رسمی سایر فریمورک های DL مانند PyTorch و MxNet استفاده می شود. آنها همچنین پیشنهاد می کنند مجموعه داده را به سه بخش تقسیم کنید: آموزش، اعتبار سنجی و آزمایش.آموزش - بخشی از مجموعه داده برای آموزشاعتبارسنجی - بخشی از مجموعه داده برای تأیید اعتبار در حین آموزشتست - بخشی از مجموعه داده برای اعتبار سنجی نهایی مدلبا این حال، اگر مجموعه داده کوچک است (شامل صدها نمونه) می توانید از اعتبارسنجی متقاطع در وظایف DL استفاده کنید. در این مورد، یادگیری یک مدل پیچیده ممکن است یک کار بی ربط باشد، بنابراین مطمئن شوید که کار را بیشتر پیچیده نکنید.بهترین روش ها و نکاتشایان ذکر است که گاهی اوقات انجام اعتبارسنجی متقابل ممکن است کمی مشکل باشد.به عنوان مثال، اشتباه منطقی هنگام تقسیم مجموعه داده بسیار آسان است که ممکن است منجر به یک CV غیرقابل اعتماد شود.ممکن است نکاتی را بیابید که باید هنگام تایید متقابل یک مدل در زیر مد نظر داشته باشید:هنگام تقسیم داده ها منطقی باشید (آیا روش تقسیم منطقی است)از روش CV مناسب استفاده کنید (آیا این روش برای مورد استفاده من قابل اجرا است)هنگام کار با سری های زمانی، گذشته را تأیید نکنید (به اولین نکته مراجعه کنید)هنگام کار با داده های پزشکی یا مالی، به یاد داشته باشید که آن را بر اساس شخص تقسیم کنید. از داشتن داده برای یک نفر هم در آموزش و هم در مجموعه تست خودداری کنید زیرا ممکن است به عنوان نشت داده در نظر گرفته شودهنگام برش تکه‌ها از تصاویر بزرگ‌تر، به یاد داشته باشید که با شناسه تصویر بزرگ تقسیم کنیدالبته، نکات از کار به کار متفاوت است و پوشش همه آنها تقریبا غیرممکن است. به همین دلیل است که انجام یک تجزیه و تحلیل داده های اکتشافی جامد قبل از شروع اعتبارسنجی متقابل یک مدل همیشه بهترین روش است.افکار نهاییاعتبار سنجی متقابل ابزار قدرتمندی است. هر دانشمند داده باید با آن آشنا باشد. در زندگی واقعی، شما نمی توانید پروژه را بدون تایید متقابل یک مدل به پایان برسانید.به نظر من بهترین تکنیک های CV Nested k-Fold و استاندارد k-Fold هستند. من شخصاً از آنها در وظیفه تشخیص تقلب استفاده کردم. K-Fold تودرتو و همچنین GridSeachCV به من کمک کرد تا پارامترهای مدل خود را تنظیم کنم. از طرف دیگر، k-Fold برای ارزیابی عملکرد مدل من استفاده شد.در این مقاله، ما متوجه شدیم که اعتبارسنجی متقابل چیست، چه تکنیک‌های CV در طبیعت وجود دارد و چگونه آنها را پیاده‌سازی کنیم. در آینده الگوریتم های ML قطعاً حتی بهتر از امروز عمل خواهند کرد. با این حال، اعتبار سنجی متقابل همیشه برای پشتیبان گیری از نتایج شما مورد نیاز است.امیدواریم با این اطلاعات، مشکلی در تنظیم CV برای پروژه بعدی یادگیری ماشینی خود نخواهید داشت!منابع https://www.geeksforgeeks.org/cross-validation-machine-learning/https://machinelearningmastery.com/k-fold-cross-validation/https://towardsdatascience.com/cross-validation-in-machine-learning-72924a69872fhttps://towardsdatascience.com/why-and-how-to-do-cross-validation-for-machine-learning-d5bd7e60c189https://scikit-learn.org/stable/modules/cross_validation.html ولادیمیر لیاشنکوجوان مشتاق هوش مصنوعی که به EdTech و Computer Vision در پزشکی علاقه دارد. من می خواهم با کمک به سایر افراد برای مطالعه، کشف فرصت های جدید و پیگیری سلامت خود از طریق فناوری های پیشرفته، دنیا را به مکانی بهتر تبدیل کنم.من را دنبال کنیدبعدی را بخوانیدراهنمای نهایی برای ارزیابی و انتخاب مدل‌ها در یادگیری ماشین10 دقیقه خواندن | نویسنده سامدریتا قوش | به روز شده در 16 جولای 2021در سطح بالا، یادگیری ماشین ترکیبی از آمار و محاسبات است. محور یادگیری ماشینی حول مفهوم الگوریتم‌ها یا مدل‌هایی است که در واقع تخمین‌های آماری روی استروئیدها هستند.با این حال، هر مدل مفروض بسته به توزیع داده محدودیت‌های متعددی دارد. هیچ یک از آنها نمی توانند کاملاً دقیق باشند زیرا آنها فقط تخمین هستند (حتی اگر روی استروئیدها باشند). این محدودیت ها عموماً با نام سوگیری و واریانس شناخته می شوند.یک مدل با سوگیری زیاد با توجه نکردن به نکات آموزشی بیش از حد ساده می شود (به عنوان مثال: در رگرسیون خطی، صرف نظر از توزیع داده ها، مدل همیشه یک رابطه خطی را در نظر می گیرد).یک مدل با واریانس بالا با تعمیم ندادن به نقاط آزمایشی که قبلاً ندیده است، خود را به داده های آموزشی محدود می کند (به عنوان مثال: جنگل تصادفی با حداکثر عمق = هیچ).این مسئله زمانی به وجود می آید که محدودیت ها ظریف باشند، مانند زمانی که باید بین یک الگوریتم جنگل تصادفی و یک الگوریتم تقویت گرادیان یا بین دو تغییر الگوریتم درخت تصمیم یکسان، یکی را انتخاب کنیم. هر دو تمایل به واریانس بالا و سوگیری کم دارند.اینجاست که انتخاب مدل و ارزیابی مدل مطرح می شود!در این مقاله در مورد:انتخاب مدل و ارزیابی مدل چیست؟روش‌های انتخاب مدل مؤثر (نمونه‌گیری مجدد و رویکردهای احتمالی)روش های رایج ارزیابی مدلمعاوضه های مهم مدل یادگیری ماشین https://neptune.ai/blog/the-ultimate-guide-to-evaluation-and-selection-of-models-in-machine-learning</description>
                <category>زهره غنی آبادی</category>
                <author>زهره غنی آبادی</author>
                <pubDate>Tue, 07 Dec 2021 15:56:19 +0330</pubDate>
            </item>
                    <item>
                <title>یادگیری ماشین</title>
                <link>https://virgool.io/@zohreghaniabadi/%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-rusxepy8ugmh</link>
                <description>فرآیند اندیشه و تفکر و طرز کار مغز از گذشته‌های بسیار دور مورد توجه فیلسوفان و دانشمندان در همه جای جهان بوده‌است. یونانیان باستان عقیده داشتند که می‌توان در یک بدنهٔ مکانیکی مغزی ساختگی قرار داد. یکی از اسطوره‌های یونان یک غول آهنی بود که مغزی مکانیکی داشت.آلن تورینگ (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/هوش مصنوعی</description>
                <category>زهره غنی آبادی</category>
                <author>زهره غنی آبادی</author>
                <pubDate>Fri, 26 Nov 2021 20:24:22 +0330</pubDate>
            </item>
                    <item>
                <title>یادگیری ماشین هوش مصنوعی</title>
                <link>https://virgool.io/@zohreghaniabadi/%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-%D9%87%D9%88%D8%B4-%D9%85%D8%B5%D9%86%D9%88%D8%B9%DB%8C-dzm4sjbyywt1</link>
                <description>فرآیند اندیشه و تفکر و طرز کار مغز از گذشته‌های بسیار دور مورد توجه فیلسوفان و دانشمندان در همه جای جهان بوده‌است. یونانیان باستان عقیده داشتند که می‌توان در یک بدنهٔ مکانیکی مغزی ساختگی قرار داد. یکی از اسطوره‌های یونان یک غول آهنی بود که مغزی مکانیکی داشت.آلن تورینگ (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/</description>
                <category>زهره غنی آبادی</category>
                <author>زهره غنی آبادی</author>
                <pubDate>Fri, 26 Nov 2021 20:22:01 +0330</pubDate>
            </item>
            </channel>
</rss>