آنچه در این صفحه می خوانید:
- معرفی یادگیری ماشینی (Machine Learning)
- تاریخچه یادگیری ماشینی (Machine Learning)
- کاربرد یادگیری ماشینی (Machine Learning)
- یادگیری ماشینی (Machine Learning) با پایتون
- یادگیری ماشینی (Machine Learning) با R
- روش های یادگیری ماشینی (Machine Learning)
- نرم افزار های یادگیری ماشینی (Machine Learning)
معرفی یادگیری ماشینی (Machine Learning)
یادگیری ماشینی (ML) یک مطالعه علمی از الگوریتم ها و مدل های آماری است که سیستم های رایانه ای برای انجام یک کار خاص و بدون استفاده از دستورالعمل های صریح و با استفاده از الگوهای و استنباط از آن ها استفاده می کنند. این به عنوان زیر مجموعه ای از هوش مصنوعی دیده می شود. الگوریتم های یادگیری ماشین یک مدل ریاضی را بر اساس داده های نمونه، معروف به "داده های آموزش" می سازند، تا بتوانند پیش بینی ها یا تصمیم گیری هایی را انجام دهند بدون اینکه صریحاً برای انجام کار برنامه ریزی شوند. الگوریتم های یادگیری ماشینی در طیف گسترده ای از برنامه ها، از جمله فیلتر ایمیل و بینایی رایانه استفاده می شود، جایی که تهیه یک الگوریتم معمولی برای انجام موثر کار، دشوار یا غیرقابل دسترس است.
یادگیری ماشین ارتباط نزدیکی با آمار محاسباتی دارد، که تمرکز آن بر ساخت پیش بینی با استفاده از رایانه است. مطالعه بهینه سازی ریاضی روش ها، نظریه ها و حوزه های کاربردی را به حوزه یادگیری ماشین ارائه می دهد. داده کاوی زمینه ای در زمینه یادگیری ماشینی است و تمرکز آن بر تجزیه و تحلیل داده های اکتشافی از طریق یادگیری بدون نظارت است. در کاربردهای خود در زمینه مشکلات تجاری، یادگیری ماشینی نیز به عنوان تجزیه و تحلیل پیش بینی کننده شناخته می شود.
یادگیری ماشینی یا Machine Learning نوعی از هوش مصنوعی (AI) است که اجازه می دهد برنامه های کاربردی نرم افزار در پیش بینی نتایج بدون برنامه ریزی دقیق تر شوند. فرض اساسی یادگیری ماشینی ایجاد الگوریتمی است که می تواند داده های ورودی را دریافت کند و از تجزیه و تحلیل آماری برای پیش بینی مقدار خروجی در یک محدوده قابل قبول استفاده کند. الگوریتم های یادگیری ماشینی اغلب با عنوان نظارت شده یا نظارت نشده طبقه بندی می شوند.
الگوریتم های نظارت شده نیاز به انسان ها دارد تا علاوه بر ارائه بازخورد در مورد دقت پیش بینی در طول آموزش، ورودی و خروجی مورد نظر را ایجاد کنند. پس از تکمیل آموزش، الگوریتم آنچه را که به داده های جدید آموخته اشده است را اعمال می کند. الگوریتم های نظارت نشده باید با داده های مورد نظر مورد آموزش قرار نگیرند. در عوض، آن ها از یک روشی به نام یادگیری عمیق استفاده می کنند که داده ها را مرور می کند و به نتیجه گیری می رساند. الگوریتم های یادگیری نظارت نشده برای وظایف پردازش پیچیده تر از سیستم های یادگیری نظارت شده استفاده می شود.
فرایندهای موجود در یادگیری ماشینی شبیه به داده کاوی و مدل سازی قابل پیش بینی است. هر دو نیاز به جستجو از طریق داده ها برای جست و جوی الگوها و تنظیم فعالیت های برنامه می باشد. بسیاری از افراد با یادگیری ماشینی با خرید در اینترنت آشنا هستند. فراتر از بازاریابی شخصی، دیگر موارد استفاده از یادگیری ماشینی عبارتند از: شناسایی تقلب، فیلتر کردن spam، تشخیص تهدید امنیت شبکه ای، نگهداری قابل پیش بینی و ایجاد خبر.
تاریخچه یادگیری ماشینی (Machine Learning)
آرتور ساموئل، پیشگام آمریکایی در زمینه بازی های رایانه ای و هوش مصنوعی، در سال 1959 در حالی که در IBM بود، اصطلاح "آموزش ماشین را" اختراع کرد. کتاب نماینده تحقیق یادگیری ماشین در دهه 1960 کتاب نیلسون در مورد ماشین های یادگیری بود که بیشتر با طبقه بندی الگوها با یادگیری ماشین سروکار داشت. علاقه به یادگیری ماشینی مربوط به شناخت الگوی همچنان در دهه 1970 ادامه یافت، همانطور که در کتاب "دادا و هارت" در سال 1973 توضیح داده شد. در 1981 گزارشی در مورد استفاده از استراتژی های آموزش داده شد تا یک شبکه عصبی یاد بگیرد 40 شخصیت را بشناسد (26 حرف، 10 رقم و 4 علامت ویژه) از پایانه رایانه. به عنوان یک تلاش علمی، یادگیری ماشین از تلاش هوش مصنوعی خارج شد. در اوایل دوره هوش مصنوعی به عنوان یک رشته دانشگاهی، برخی از محققان علاقه مند بودند که ماشین آلات از داده ها بیاموزند. آنها تلاش کردند تا با روشهای مختلف نمادین، و همچنین آنچه که "شبکه های عصبی" خوانده می شدند، به مسئله نزدیک شوند. اینها اکثراً گیرنده و مدلهای دیگری بودند که بعداً مشخص شد که مدلهای خطی تعمیم یافته آماری برای نوسازی است.
با این وجود، تأکید روزافزون بر رویکرد منطقی و دانش محور باعث ایجاد اختلاف بین هوش مصنوعی و یادگیری ماشین می شود. سیستم های احتمالی تحت تأثیر مشکلات نظری و عملی جمع آوری و ارائه اطلاعات تا سال 1980 سیستم های خبره برای تسلط بر هوش مصنوعی قرار داشتند و آمار نیز از این موضوع مطلوب نبود. کار بر روی یادگیری مبتنی بر نمادین / دانش در درون هوش مصنوعی ادامه پیدا کرد و منجر به برنامه نویسی منطق استقرایی شد، اما در تشخیص الگوی و بازیابی اطلاعات، اکنون آمار آماری بیشتر از تحقیقات خارج از حوزه هوش مصنوعی است. تحقیقات شبکه عصبی در همان زمان توسط هوش مصنوعی و علوم رایانه رها شده بود. این خط نیز توسط محققان سایر رشته ها از جمله هاپفیلد، روملهارت و هینتون در خارج از حوزه AI / CS به عنوان "ارتباط گرایی" ادامه یافت. موفقیت اصلی آنها در اواسط دهه 1980 با بازآفرینی مجدد پس زمینه انجام شد.
یادگیری ماشینی، به عنوان یک زمینه جداگانه سازماندهی مجدد شد، در دهه 1990 شکوفا شد. این زمینه هدف خود را از دستیابی به هوش مصنوعی به مقابله با مشکلات قابل حل با ماهیت عملی تغییر داده است. این تمرکز را از رویکردهای سمبولیکی که از AI به ارث برده بود، دور کرد و به سمت روشها و مدلهایی که از آمار و نظریه احتمال وام گرفته شده بودند، گرفت. همچنین از افزایش در دسترس بودن اطلاعات دیجیتالی شده و همچنین امکان توزیع آن از طریق اینترنت سود برده است.
کاربرد یادگیری ماشینی (Machine Learning)
يادگيري ماشين در حال حاضر يك واژه اصلي در دنياي تكنولوژي است و به دلايل خوب، اين يك گام بزرگ به جلو در چگونگي يادگيري رايانه است. اساساً، به یک الگوریتم یادگیری ماشین داده می شود "مجموعه آموزشی" از داده ها، پس از آن خواسته می شود از این داده ها برای پاسخ به یک سؤال استفاده کند. به عنوان مثال، شما ممکن است مجموعه ای از عکس ها را به رایانه ارائه دهید، که بعضی از آنها می گویند "این یک گربه است" و برخی می گویند "این یک گربه نیست". سپس می توانید یک سری عکس های جدید را به کامپیوتر نشان دهید و مشخص می شود کدام عکس از گربه ها بوده است.
یادگیری ماشین سپس به مجموعه آموزش خود می افزاید. هر عکسی که آن را مشخص کند - به درستی یا نادرست - به مجموعه آموزش اضافه می شود و برنامه به طور مؤثر "باهوش تر" می شود و در طی زمان وظیفه خود را بهتر می کند. در واقع، یادگیری است.
امنیت داده ها
بدافزار یک مشکل بزرگ و رو به رشد است. در سال 2014، آزمایشگاه کسپرسکی اعلام کرد که روزانه 325000 پرونده جدید بدافزار شناسایی کرده است. اما، شرکت اطلاعاتی سازمانی Deep Instinct می گوید که هر یک از بدافزارهای جدید تقریباً کد مشابه نسخه های قبلی را دارند - فقط بین 2 تا 10٪ پرونده ها از تکرار به تکرار تغییر می کنند. مدل یادگیری آنها با تغییرات 2-10٪ مشکلی ندارد و می تواند پیش بینی کند که کدام فایل ها با دقت بسیار بالا بدافزار هستند. در شرایط دیگر، الگوریتم های یادگیری ماشین می توانند به دنبال دستیابی به الگوهای دستیابی به داده ها در ابر باشند و ناهنجاری هایی را که می تواند نقض امنیت را پیش بینی کند، گزارش دهند.
امنیت شخصی
اگر اخیراً در یک هواپیما پرواز کرده اید یا در یک رویداد عمومی بزرگ شرکت کرده اید، تقریباً مطمئناً باید در صف های غربالگری امنیتی صبر کنید. اما یادگیری ماشینی ثابت می کند که می تواند برای از بین بردن هشدارهای دروغین و پیدا کردن چیزهایی باشد که دستگاه های نمایشگر ممکن است در فرودگاهها، استادیوم ها، کنسرت ها و سایر مکان ها در برنامه های امنیتی از دست ندهند. این امر می تواند روند قابل ملاحظه ای را سرعت بخشیده و از وقایع ایمن تر اطمینان حاصل کند.
تجارت مالی
بسیاری از مردم مشتاق این هستند که به دلایل آشکار بتوانند پیش بینی کنند که بورس سهام در هر روز معین چه خواهد کرد. اما الگوریتم های یادگیری ماشین همیشه به هم نزدیک می شوند. بسیاری از بنگاه های تجاری معتبر از سیستم های اختصاصی برای پیش بینی و اجرای معاملات با سرعت و حجم بالا استفاده می کنند. بسیاری از اینها به احتمالات متکی هستند، اما حتی تجارت با احتمال نسبتاً کم، با حجم یا سرعت کافی، می تواند سودهای کلانی را برای بنگاه ها بدست آورد. وقتی انسان می تواند مقادیر زیادی از داده ها یا سرعتی که می توانند تجارت را انجام دهند، نمی توانند با ماشین ها رقابت کنند.
مراقبت های بهداشتی
الگوریتم های یادگیری ماشین می توانند اطلاعات بیشتری را پردازش کرده و الگوهای بیشتری را نسبت به همتایان انسانی خود مشاهده کنند. در یک مطالعه، از تشخیص كمك کامپیوتر (CAD) استفاده شده است كه می توان اسكن های اولیه ماموگرافی زنانی را كه بعداً سرطان سینه به وجود آوردند، بررسی كرد و رایانه 52٪ از سرطان ها را تقریباً یك سال قبل از تشخیص رسمی خانم ها مشاهده كرد. علاوه بر این، یادگیری ماشین می تواند برای درک عوامل خطر بیماری در جمعیت های بزرگ استفاده شود. شرکت Medecision الگوریتمی را ایجاد کرد که قادر به شناسایی هشت متغیر برای پیش بینی بستری قابل اجتناب در بیماران دیابتی بود.
شخصی سازی بازاریابی
هرچه درک بیشتری از مشتریان داشته باشید، بهتر می توانید به آنها خدمت کنید و فروش بیشتری نیز خواهید داشت. این پایه و اساس شخصی سازی بازاریابی است. شاید شما این تجربه را داشته باشید که در آن از فروشگاه آنلاین بازدید می کنید و به محصولی نگاه می کنید اما آن را خریداری نکنید و سپس روزهای بعد تبلیغات دیجیتالی را برای آن محصول دقیق در وب مشاهده می کنید. شرکت ها می توانند شخصی را که ایمیل دریافت می کند، یا نامه های مستقیم یا کوپن ها را تهیه کنند، شخصی را که می بیند، کدام محصولات را به عنوان "توصیه شده" و مواردی از این دست نشان می دهند، شخصی سازی کنند، همه این گونه ها طراحی شده اند تا مشتری را با اطمینان بیشتری به سمت فروش سوق دهند.
تشخیص تقلب
یادگیری ماشینی در کشف موارد احتمالی کلاهبرداری در بسیاری از زمینه های مختلف بهتر و بهتر می شود. به عنوان مثال، پی پال از یادگیری ماشین برای مبارزه با پولشویی استفاده می کند. این شرکت ابزارهایی دارد که میلیون ها تراکنش را با یکدیگر مقایسه می کند و می تواند دقیقاً بین معاملات مشروع و کلاهبرداری بین خریداران و فروشندگان تمایز قائل شود.
توصیه ها
اگر از سرویس هایی مانند Amazon یا Netflix استفاده می کنید، احتمالاً با این استفاده آشنا هستید. الگوریتم های یادگیری ماشین هوشمند فعالیت شما را تجزیه و تحلیل می کنند و آن را با میلیون ها کاربر دیگر مقایسه می کنند تا مشخص کنند چه چیزی را دوست دارید در ساعت بعدی بخرید یا تماشا کنید. این توصیه ها همیشه باهوش تر می شوند و به عنوان مثال می دانند که شما می توانید موارد خاصی را به عنوان هدیه خریداری کنید (و خودتان آن کالا را نمی خواهید) یا ممکن است اعضای خانواده های مختلفی وجود داشته باشند که ترجیحات مختلف تلویزیون دارند.
جستجوی آنلاین
شاید معروف ترین کاربرد یادگیری ماشین، گوگل و رقبای آن دائماً آنچه را که موتور جستجو می فهمد بهبود بخشد. هر بار که جستجوی خود را در Google انجام می دهید، برنامه چگونگی پاسخ به نتایج را تماشا می کند. اگر بر روی نتیجه برتر کلیک کنید و در آن صفحه وب بمانید، می توانیم فرض کنیم که اطلاعات مورد نظر را بدست آورده اید و جستجو موفقیت آمیز بوده است. اگر از طرف دیگر، روی صفحه دوم نتایج کلیک کنید یا یک رشته جستجو جدید را بدون کلیک کردن بر روی نتایج تایپ کنید، می توانیم تصور کنیم موتور جستجو نتایج شما را نخواسته است و برنامه می تواند از آن اشتباه یاد بگیرد تا نتیجه بهتری در آینده به دست آورد.
پردازش زبان طبیعی (NLP)
NLP در انواع برنامه های هیجان انگیز در همه رشته ها مورد استفاده قرار می گیرد. الگوریتم های یادگیری ماشین با زبان طبیعی می توانند در اختیار نمایندگان خدمات مشتری قرار بگیرند و سریعتر مشتری را به اطلاعات مورد نیاز خود هدایت کنند. این مورد برای ترجمه حقوقی مبهم در قراردادها به زبان ساده استفاده می شود و به وکلا کمک می کند تا حجم وسیعی از اطلاعات را برای تهیه یک پرونده مرتب سازند.
ماشین های هوشمند
IBM اخیراً مدیران ارشد خودرو را مورد بررسی قرار داده است و 74٪ انتظار داشتند که ما تا سال 2025 شاهد اتومبیل های هوشمند در جاده ها باشیم. یک ماشین هوشمند نه تنها در اینترنت اشیا ادغام می شود بلکه در مورد صاحب آن و محیط آن نیز می آموزد. این ممکن است تنظیمات داخلی دما، صدا، موقعیت صندلی و غیره را تنظیم کند.و به طور خودکار براساس راننده، گزارش و حتی مشکلات را برطرف کند، خود را رانندگی کند و مشاوره در real-time در مورد ترافیک و شرایط جاده ارائه دهد.
یادگیری ماشینی (Machine Learning) با پایتون
یادگیری ماشینی نوعی از هوش مصنوعی (AI) است که بدون برنامه ریزی صریح، امکان یادگیری را در رایانه ها فراهم می کند. یادگیری ماشین بر توسعه برنامه های رایانه ای تمرکز دارد که می توانند هنگام قرار گرفتن در معرض داده های جدید تغییر کنند. در این مقاله، اصول اولیه آموزش ماشین و اجرای الگوریتم یادگیری ماشین ساده را با استفاده از پایتون خواهیم دید.
تنظیم محیط
انجمن Python ماژول های زیادی را برای کمک به برنامه نویسان برای اجرای یادگیری ماشین ایجاد کرده است. در این مقاله از ماژول های numpy، scipy و scikit-Learn استفاده خواهیم کرد. ما می توانیم آن ها را با استفاده از فرمان cmd نصب کنیم:
pip install numpy scipy scikit-learn
یک گزینه بهتر، دانلود بسته های miniconda یا آناکوندا برای python است که با استفاده از این بسته ها قابل استفاده است.
یادگیری ماشینی (Machine Learning) با R
R یکی از زبان های اصلی برای علم داده است. این ویژگی های تجسم عالی را ارائه می دهد، که برای اکتشاف داده ها قبل از ارسال به هر یادگیری خودکار و همچنین ارزیابی نتایج الگوریتم یادگیری ضروری است. بسیاری از بسته های R برای یادگیری ماشین در قفسه موجود است و بسیاری از روش های مدرن در یادگیری آماری در بخش R به عنوان بخشی از توسعه آن ها اجرا می شود.
- R توسط بهترین دانشمندان داده در جهان استفاده می شود. در نظرسنجی ها در مورد Kaggle (سکوی یادگیری ماشین رقابتی)، R تقریباً پرکاربردترین ابزار یادگیری ماشین است. هنگامی که متخصصان یادگیری ماشین حرفه ای در سال 2015 مورد بررسی قرار گرفتند، دوباره محبوب ترین ابزار یادگیری ماشین R بود.
- R به دلیل وسعت تکنیک هایی که ارائه می دهد قدرتمند است. هر تکنیکی که می توانید برای تجزیه و تحلیل داده ها، تجسم سازی، نمونه گیری، یادگیری نظارت شده و ارزیابی مدل از آنها استفاده کنید در R. ارائه شده است. این پلتفرم از تکنیک های بیشتری نسبت به هر روش دیگری برخوردار است.
- R مدرن ترین است زیرا توسط دانشگاهیان مورد استفاده قرار می گیرد. یکی از دلایلی که تکنیک های R در این زمینه بسیار زیاد است، به این دلیل است که دانشگاهیانی که الگوریتم های جدیدی را توسعه می دهند، آن ها را در R توسعه داده و آن ها را به صورت بسته های R آزاد می کنند. این بدان معنی است که می توانید قبل از سایر سیستم عامل ها به الگوریتم های پیشرفته در R دسترسی پیدا کنید. همچنین این بدان معنی است که تا زمانی که کسی آنها را به سیستم عامل های دیگر منتقل کند، می توانید به برخی از الگوریتم های R دسترسی داشته باشید.
- R رایگان است زیرا نرم افزار اوپن سورس است. می توانید همین حالا آن را به صورت رایگان دانلود کنید و روی هر پلتفرم اجرا می شود.
روش های یادگیری ماشینی (Machine Learning)
الگوریتم های یادگیری ماشینی اغلب به عنوان سرپرست یا بدون نظارت طبقه بندی می شوند.
- الگوریتم های یادگیری ماشین نظارت شده (Supervised machine learning algorithms) می توانند آنچه را که در گذشته آموخته اند، با استفاده از نمونه های برچسب زده شده، برای پیش بینی وقایع آینده، از داده های جدید استفاده کنند. با شروع از تجزیه و تحلیل مجموعه داده های آموزشی شناخته شده، الگوریتم یادگیری یک عملکرد استنباطی تولید می کند تا پیش بینی های مربوط به مقادیر خروجی را انجام دهد. این سیستم قادر به ارائه اهداف برای هر ورودی جدید پس از آموزش کافی است. الگوریتم یادگیری همچنین می تواند خروجی آن را با خروجی صحیح و در نظر گرفته شده مقایسه کرده و خطاهایی را پیدا کند تا بر این اساس مدل اصلاح شود.
- در مقابل، الگوریتم های یادگیری ماشین بدون نظارت (unsupervised machine learning algorithms) وقتی استفاده می شود که اطلاعاتی که برای آموزش استفاده می شود، نه طبقه بندی شده و نه برچسب زده می شوند. یادگیری بدون نظارت مطالعه می کند که چگونه سیستم ها می توانند یک عملکرد را برای توصیف ساختار پنهان از داده های بدون برچسب استنباط کنند. سیستم خروجی مناسب را مشخص نمی کند، اما داده ها را کاوش می کند و می تواند برای توصیف ساختارهای پنهان از داده های بدون برچسب از داده ها، استنتاج کند.
- الگوریتم های یادگیری نیمه تحت نظارت ماشین (Semi-supervised machine learning algorithms) در مکانی بین یادگیری نظارت شده و نظارت نشده وجود دارد زیرا آنها از هر دو داده دارای برچسب و بدون برچسب برای آموزش استفاده می کنند. به طور معمول مقدار کمی از داده های دارای برچسب و مقدار زیادی از داده های بدون برچسب. سیستم هایی که از این روش استفاده می کنند، می توانند دقت یادگیری را به میزان قابل توجهی بهبود بخشند. معمولاً، یادگیری نیمه نظارت وقتی انتخاب می شود که داده های دارای برچسب به دست آمده نیاز به منابع ماهر و مرتبط دارند تا بتوانند آن را آموزش دهند، از آن یاد بگیرند. در غیر این صورت، دستیابی به داده های بدون مارک به طور کلی نیازی به منابع اضافی ندارد.
- الگوریتم های یادگیری ماشین تقویت کننده (Reinforcement machine learning algorithms) یک روش یادگیری است که با تولید اقدامات با محیط آن در تعامل است و خطاها یا پاداش ها را کشف می کند. جستجوی آزمایش و خطا و پاداش تأخیر مهمترین ویژگی های یادگیری تقویتی هستند. این روش به ماشین ها و نمایندگان نرم افزار اجازه می دهد تا به طور خودکار رفتار ایده آل را در یک زمینه خاص برای به حداکثر رساندن عملکرد خود تعیین کنند. بازخورد پاداش ساده برای عامل لازم است که یاد بگیرد کدام عمل بهتر است. این به عنوان سیگنال تقویت شناخته شده است.
یادگیری ماشین تجزیه و تحلیل مقادیر انبوه داده ها را امکان پذیر می کند. اگرچه به منظور شناسایی فرصت های سودآور یا خطرات خطرناک، معمولاً نتایج سریع تر و دقیق تری ارائه می کند، ممکن است برای آموزش صحیح آن به زمان و منابع اضافی نیز نیاز داشته باشد. تلفیق یادگیری ماشین با هوش مصنوعی و فناوری های شناختی می تواند در پردازش حجم زیادی از اطلاعات حتی موثرتر باشد.
نرم افزار های یادگیری ماشینی (Machine Learning)
تنسورفلو (TensorFlow)
TensorFlow یک کتابخانه نرم افزاری اوپن سورس برای برنامه ریزی داده ها و برنامه نویسی متفاوت با طیف وسیعی از کارها است. این یک کتابخانه ریاضی است و همچنین برای برنامه های یادگیری ماشین مانند شبکه های عصبی استفاده می شود. از تنسور فلو برای تحقیق و تولید در Google استفاده می شود. در نوامبر 2015 تحت مجوز Apache 2.0 منتشر شد. تنسورفلو یک کتابخانه نرم افزاری است که برای محاسبه عددی با گراف های جریان داده ها مورد استفاده قرار می گیرد که به کاربران اجازه می دهد محاسبات دلخواه را به عنوان یک گراف جریان های داده بیان کنند. گره ها در این گراف عملیات ریاضی را نشان می دهند درحالیکه edge داده ای را نشان می دهد که از یک گره با گره دیگر ارتباط دارد.
Jupyter Notebook
نوت بوک Jupyter یک برنامه وب متن باز است که به شما امکان ایجاد و به اشتراک گذاری اسناد حاوی کد زنده، معادلات، مصورسازی ها و متن روایتی را می دهد. کاربرد آن تمیز کردن و تغییر داده ها، شبیه سازی عددی، مدل سازی آماری، تجسم داده، یادگیری ماشینی و غیره است.
پروژه Jupyter یک پروژه بدون سود و متن باز است که در سال 2014 از پروژه IPython متولد شده است، زیرا آن را برای حمایت از علم داده تعاملی و محاسبات علمی در تمام زبان های برنامه نویسی تکامل یافته است. Jupyter همیشه و 100٪ نرم افزاری اوپن سورس خواهد بود و به صورت رایگان برای همه قابل دسترس است و تحت شرایط لیبرال مجوز BSD اصلاح و منتشر شده است. Jupyter از طریق جامعه Jupyter در GitHub توسعه یافته است.
Watson AI
رشد و تکامل IBM Watson از یک مسابقه پرسش و پاسخ رایانه ای شروع شده است، یک مجموعه از رابط های برنامه نویسی کاربردی (API) بر مبنای هوش مصنوعی (AI)که بر روی محیط ابری شرکت IBM قابل دسترس می باشد. این رابط های برنامه نویسی کاربردی واتسون، می توانند تمام انواع داده ها را دریافت کرده، درک کنند، تجزیه و تحلیل کنند، به اشکال مختلف طبیعی با انسان تعامل داشته باشند، یاد بگیرند و پاسخ بدهند – در مقیاس بزرگتر، همه این موارد اجازه می دهد تا فرآیندهای کسب و کار و برنامه های کاربردی دوباره تفسیر شوند.