Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ML.NET, Machine learning for .NET developers

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

ML.NET, Machine learning for .NET developers

Machine Learning is a hot topic for several years now. You have all probably heard this buzz word, but since the information is scattered around, most of you are not quite sure what it means. Nowadays many big companies and even startups use machine learning for different aspects of the human needs: Personal Finance, Banking, Health Care, Customer Service, Sales and Marketing. We can easily say that Machine learning is a statistical and data-driven approach to creating AI, such as when a computer program learns from data to improve its performance. The benefits of the Machine Learning are limitless. They can help us in making faster decisions, developing insights of the processes, data, way beyond the human capabilities, acting on opportunities and converting them into leads and deals. And now, Microsoft has a new product ML.NET, a free, cross platform, open source machine learning framework built for you, .NET developers.

Avatar for Dimitar Bosevski

Dimitar Bosevski

November 17, 2018

Other Decks in Programming

Transcript

  1. About Dimitar Bosevski • Microsoft Practice Lead @InterWorks • Problem

    solver • Committed to goals • Initiator • Always learns new things
  2. How learning works?  People from experience, examples = Result

     Traditional approach: Data + Algorithm = Result  Machine learning: Data + Output > Training = Algorithm
  3. Problem with traditional approach • Microlending company (loans to small

    business) • Important to choose who can get credit: current credit score, account balance, age of the owner, savings. When new clients • Start with manual check of the clients • Hire new analyst (more expenses) • Check data and find pattern + repeat • Are the rules correct? • Is there too much complexity? • Are you adapting your rules?
  4. Collecting the data • Research • Understanding the business •

    Understanding the data • Is the data raw or structured? • Finding sources • Monitor • Label the data
  5. Preprocessing of the data • Prepare the data • Data

    mining • Build training sets • Remove noisy data • Fill or ignore missing data • Merge fields to computed fields • Split fields
  6. Features selection Features PassengerId, Pclass, Name, Sex, Age, Siblings/Spouses abroad,

    Parents/Children Abroad, Ticket, Fare, Cabin (with data preprocessing?), Port Embrarked Label Survived
  7. Training & Testing • Choosing the algorithm • Supervised •

    Most of the problems are solved using supervised ML • Regression – output is real value, like amount of money, or weight, or percentage of success • Classification – output is a category, like red or blue, or survived or not, or dog or not dog • Unsupervised • Clustering – to find grouping of the data, like grouping customers according to previous purchases • Association – associations of the data on large scales. Like if you buy X, you will probably like to buy Y
  8. ML.NET • Microsoft has a new product (at least for

    us) ML.NET, a free, cross platform, open source machine learning framework / library built for you, .NET developers. • Framework can extend to add popular ML Libraries like TensorFlow, Accord.NET, and CNTK. • It’s not that new for Microsoft. Excel, PowerPoint, Bing, Windows 10 use it
  9. ML.NET Pros and Cons • Pros: • Microsoft have a

    clear vision for this product • They are working and improving hard • Community is very active • With latest version 0.7.0, released a week ago, they improved customizability of ML.NET pipelines • Custom transforms • Cons • 1 month ago with version 0.6.0 Microsoft deprecated LearningPipeline API • Still a lot is missing, many bugs