کتاب Programming ML.NET (برنامهنویسی ML.NET) شرح مقدمهای بر کتابخانهی ML.NET برای توسعهی برنامههای هوش مصنوعی است که در 12 فصل به طور خلاصه مفاهیم آن را توضیح خواهد داد.
در ادامه مقدمهای از کتاب Programming ML.NET را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Programming ML.NET:
ما به مردانی نیاز داریم که بتوانند چیزهایی را در خواب ببینند که هرگز نبودهاند و بپرسند “چرا که نه؟”
– جان اف کندی، سخنرانی در پارلمان ایرلند، ژوئن 1963
امروزه، جستجو برای دانشمندان داده پیوسته است، به نظر میرسد دادهها فراوان است و قدرت محاسبات ابری در دسترس است. آیا این دنیای عالی برای پیروزی قطعی یادگیری ماشینی است؟ همانطور که میبینیم، همه مواد لازم برای پختن «هوش مصنوعی کاربردی» را داریم، اما هنوز یک روش روشن و مؤثر برای ترکیب آنها نداریم.
هدف علم داده، مانند هدف علم، نشان دادن امکانپذیر بودن چیزی است. با این حال، علم داده راه حل تولید نمیکند. این هدف شاخه دیگری از جهان یادگیری ماشین است – مهندسی داده.
شرکتها به شدت به دنبال دانشمندان داده هستند، اما نتیجه یک تیم علمی داده خوب معمولاً یک مدل قابل اجرا است که کیفیت نرم افزار آن اغلب به جای یک مصنوع آماده تولید، یک نمونه اولیه است. الگوریتمها به شدت به دادهها متصل هستند و دادهها باید کامل، تمیز و متعادل باشند.
چه کسی مسئول این بخش از کار است اغلب نامشخص است، و در نتیجه، کار اغلب تا حدی در بهترین حالت انجام میشود. با این حال، یک تیم علم داده که از بقیه خط لوله کاربردی هوش مصنوعی جدا شده و به تولید میرسد، هنوز سرمایهگذاری مناسبی برای سازمان بزرگی است که کسبوکارش مقادیر زیادی داده تولید میکند (مانند تاسیسات انرژی، مؤسسات مالی، و مزارع تولیدی). برای شرکتهای کوچکتر با بودجههای بسیار محدودتر، خرید نتایج برخی از علوم داده کاربردی میتواند به عنوان خدمات ارزانتر باشد.
از علم داده تا تولید، معمولاً راه طولانی در میان است و کار زیادی روی دادهها وجود دارد. در ادامه چند نکته قابل تامل است:
- دادهها چگونه ذخیره میشوند؟ به صورت روزانه یا ساعتی؟
- آیا دادهها باید به طور موقت در برخی از فرمتهای متوسط کپی شوند؟
- چه نوع تبدیلی برای کارکرد مدل مورد نیاز است؟ چگونه میتوانید آن را خودکار کنید؟
- عملکرد مدل یک بار در تولید چگونه است؟
- هر چند وقت یک بار انتظار میرود که مدل برای پایبندی به دادههای زنده نیاز به آموزش مجدد داشته باشد؟
- اگر بازآموزی یک عملیات مکرر است، چگونه هر کار مرتبط را خودکار کنیم؟
- در مورد جمع آوری مجموعه دادههای به روز شده، اجرای آموزش و استقرار مدل به روز چطور؟
بزرگترین مشکلی که ما با مدلهای یادگیری ماشین تجربه میکنیم به دادههای به کار گرفته شده بازمیگردد. در جولای 2021، MIT Technology Review مقاله ای در مورد تأثیر هوش مصنوعی در مواجهه با همه گیری کووید منتشر کرد.
نتیجه مقاله این است که بسیاری از مشکلاتی که با بررسی گسترده مدلهای توسعهیافته آشکار میشوند، به کیفیت ضعیف دادهای که محققان برای توسعه ابزارهای خود استفاده میکردند، مرتبط است. از این رو، تقریباً همه ابزارها تقریباً هیچ استفاده مؤثری نداشتند. این منجر به درک بهتر نقش مهندسی داده و کیفیت داده میشود.
پردازش دادهها از طریق فایلهای پراکنده CSV برای بررسی یک ایده کافی است، اما برای ایجاد یک زیرساخت قوی، باید به یک پایگاه داده (رابطه ای، NoSQL یا گراف) و برخی از زبانهای جست و جوی جدی سوئیچ کنید، و برای این منظور، احتمالاً فراتر از آن حرکت کنید. پایتون و وارد برنامه نویسی کلاسیک شوید. علم داده بدون برنامه نویسی جدی و مهارتهای پایگاه داده کافی نیست. از سوی دیگر، آیا جستجوی بینشهای خاص کسبوکار در دادهها تنها کاری نیست که انجام میدهید؟
هوش مصنوعی به طور کلی، و یادگیری ماشین به طور خاص، اکنون به عنوان یک مبادله بین کالا و راه حلهای مستقیم برای مشکلات عمودی بازی میشود. خدمات ابری کالایی، امنیت، ثبات و کیفیت قابل قبولی را ارائه میدهند. با این حال، آنها همه سناریوهای ممکن را پوشش نمیدهند. اما آنها در حال گسترش هستند و در آینده نزدیک بیشتر گسترش خواهند یافت.
همه اینها ایجاد محیطی برای ساخت همان نرمافزار قدیمی اما با ابزارهای قدرتمندتر است. ما فقط در مورد ابتدایی بودن زبانهای برنامهنویسی و کلاسهای برخی چارچوبها صحبت نمیکنیم. ما همچنین در مورد ابزارهای هوشمند و پیشبینیکننده با الگوریتمهای یادگیری ماشین و خدمات ابری کالایی (یا کانتینری) صحبت میکنیم.
در این سناریو، ML.NET به عنوان یک پل عالی بین مهندسی داده و علم داده کالایی عمل میکند و به طور کامل با چارچوب دات نت ادغام شده است. کالاهای ML.NET به اشکال مختلفی عرضه میشوند: الگوریتمهای داخلی برای یادگیری سطحی، دسترسی آسان به خدمات ابری Azure، و ادغام با مدلهای از پیش آموزش دیده، مانند شبکههای Keras یا TensorFlow.
چه کسی باید کتاب Programming ML.NET را بخواند؟
در چشم انداز ما، اگر پشته دات نت را بپذیرید، ML.NET ابزاری عالی برای انجام یادگیری ماشینی است، هر آنچه که در نهایت از نظر چرخ دندههای داخلی الگوریتمها و مدلهای انتخابی شما به معنای آن باشد.
از این رو، این کتاب برای توسعهدهندگان داتنت است که مایلند (یا نیاز دارند) به دنیای یادگیری ماشین نزدیک شوند. اگر توسعهدهنده نرمافزاری باشید که علم داده و مهارتهای یادگیری ماشین را به زرادخانه خود اضافه میکنید، ایدهآل است. اگر دانشمند داده ای هستید که مایل به کسب اطلاعات بیشتر در مورد نرم افزارهای فراتر از پایتون هستید، ایده آل است. با این حال، هر دو دسته باید بیشتر و بیشتر در مورد دیگری بیاموزند.
چه کسانی نباید کتاب Programming ML.NET را بخوانند؟
کتاب Programming ML.NET یادگیری ماشینی را از طریق لنزهای ML.NET که یک کتابخانه مخصوص پلتفرم است، مورد بحث قرار میدهد. این بیشتر برای مهندسان داده و مهندسان ML طراحی شده است تا دانشمندان داده ساده. برای روشنتر شدن، مسئولیتهای اصلی یک مهندس ML این است که به طور فیزیکی یک مدل آموزش دیده خارجی را در برنامههای مشتری وارد کند و وظیفه بسیار ظریفتر نظارت بر ساخت و آموزش یک مدل بر اساس مشخصات علم داده را انجام دهد. کتاب ابزارهای انجام این کار را مورد بحث قرار میدهد.
اگر علاقه زیادی به تولید واقعی راه حل یادگیری ماشین ندارید، کتاب Programming ML.NET احتمالاً بهترین کتابی نیست که میتوانید تهیه کنید. این ذهن شما را به روی تکنیکهای پیشرفته علم داده باز نمیکند، اما به شما میآموزد که چگونه شروع به استفاده از کاری کنید که تیم ML.NET برای سالها انجام میدهد – برای ادغام راهحلهای یادگیری ماشینی ساده اما مؤثر در NET.
سازمان کتاب Programming ML.NET
این کتاب به سه بخش تقسیم شده است.
فصل 1-3 کتاب Programming ML.NET یک نمای کلی از کتابخانه ارائه میدهد.
فصل 4-10 کتاب Programming ML.NET وظایف اختصاصی برای پردازش دادهها، آموزش، و ارزیابی برای مشکلات رایج، مانند رگرسیون، طبقه بندی، رتبه بندی، تشخیص ناهنجاری و موارد دیگر را تشریح میکند.
فصلهای 11-13 کتاب Programming ML.NET به شبکههای عصبی اختصاص داده شده است که ممکن است زمانی که هیچ یک از وظایف یادگیری کم عمق مناسب تشخیص داده نشود، وارد عمل شوند. همچنین، ما یک نمای کلی از شبکههای عصبی و نمونهای از تشخیص پاسپورت را شامل میشویم که هم از خدمات شناختی Azure کالایی و هم از یک شبکه سفارشی دست ساز Keras استفاده میکند.
در نهایت، ضمیمه A توضیح پذیری مدل را مورد بحث قرار میدهد.
سرفصلهای کتاب Programming ML.NET:
- Cover Page
- Title Page
- Copyright Page
- Dedication Page
- Contents
- Contents at a Glance
- Acknowledgments
- Introduction
- Chapter 1. Artificially Intelligent Software
- Chapter 2. An Architectural Perspective of ML.NET
- Chapter 3. The Foundation of ML.NET
- Chapter 4. Prediction Tasks
- Chapter 5. Classification Tasks
- Chapter 6. Clustering Tasks
- Chapter 7. Anomaly Detection Tasks
- Chapter 8. Forecasting Tasks
- Chapter 9. Recommendation Tasks
- Chapter 10. Image Classification Tasks
- Chapter 11. Overview of Neural Networks
- Chapter 12. A Neural Network to Recognize Passports
- Appendix A. Model Explainability
- Index
- Code Snippets
جهت دانلود کتاب Programming ML.NET میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.