Saturday, 12 September 2020

ML.NET: Machine Learning for .NET Developers


Machine Learning in .Net

ML.NET is a free software machine learning library for the C# and F# programming languages. It also supports Python models when used together with NimbusML. The preview release of ML.NET included transforms for feature engineering like n-gram creation, and learners to handle binary classification, multi-class classification, and regression tasks. Additional ML tasks like anomaly detection and recommendation systems have since been added, and other approaches like deep learning will be included in future versions.
ML.NET brings model-based Machine Learning analytic and prediction capabilities to existing .NET developers. The framework is built upon .NET Core and .NET Standard inheriting the ability to run cross-platform on Linux, Windows and macOS.
Developers can train a Machine Learning Model or reuse an existing Model by a 3rd party and run it on any environment offline. This means developers do not need to have a background in Data Science to use the framework. 

Build for .Net Developers

    With ML.Net, you can use your existing skills to easily integrate ML into your existing .Net applications without any prior experience.

ML.Net Performance

    Microsoft's paper on machine learning with ML.NET demonstrated it is capable of training sentiment analysis models using large datasets while achieving high accuracy. Its results showed 95% accuracy on Amazon's 9GB review dataset.

NimbusML Python support

    Microsoft acknowledged that the Python programming language is popular with Data Scientists, so it has introduced NimbusML the experimental Python bindings for ML.NET. This enables users to train and use machine learning models in Python. It was made open source similar to Infer.NET.

ML.Net capabilities

  • Sentiment Analysis - Analyse sentiment of customer review using binary classification algorithm.
  • Product recommendation - Recommends products based on purchase history using a matrix factorization algorithm.
  • Price prediction - Predict taxi fare based on parameters such as distance traveled using regression algorithm.
  • Customer segmentation - Identify group of customers with similar profiles using clustering algorithm.
  • Object detection - Recognize objects in an image using an ONNX deep learning model.
  • Fraud detection - Detect fraudulent credit card transaction using a binary classification algorithm.
  • Sales spike detection -  Detect spikes and changes in product sales using an anomaly detection model.
  • Image classification - Classify images using TensorFlow deep learning model.
  • Sales forecasting - Forecast further sales for product using a regression algorithm. 

Reference: ML.Net, wiki

Tuesday, 11 February 2020

How to upgrade to Angular 9


Update your existing project to the new version of Angular now easily

For step-by-step instructions on how to update to the latest Angular release, use the interactive update guide at update.angular.io

If your application uses the CLI, you can update to version 9 automatically with the help of the ng update script

Steps to upgrade to Angular 9

1. Identify the existing version of angular, in my case it was Angular 8.
Angular command  $ ng version



2. Upgrade Angular CLI
Angular command $ ng update @angular/cli @angular/core --next  



         Now your Angular CLI and Angular Project is upgraded to Angular 9 successfully.. As Angular 9 is in RC period, the flag --next is required while using ng update command. This flag is not required, once final version of Angular 9 is released.The above commands will run a series of small migrations that will convert the code of your application to be compatible with version 9 as shown in above image.

Angular 9 New Features and Ivy

Angular Version 9 was released recently in beta (RC). A release candidate (RC) is a beta version with potential to be a stable product, which is ready to release unless significant bugs emerge. In this article, we shall take an overview of the new features in the version 9 changes and updates available for use now.


Type Script 3.7.x Support

 ↪  Angular 9 supports the Typescript 3.7 or above version. So, if we want to use Angular 9 for our application, then we need to first upgrade the Typescript version to 3.7 or above.


Default & New Ivy Rendering Engine
 ↪  

Smaller Bundle Size

Dependency Injection Changes in Core

Need for Faster Mobile Apps

Angular Core Type-Safe Changes

Modules with Providers Support

Changes in Angular Forms

i18n Improvements

Service Worker Updates

ML.NET: Machine Learning for .NET Developers

Machine Learning in .Net ML.NET is a free software machine learning library for the C# and F# programming languages. It also supports Pyth...