Download presentation
Presentation is loading. Please wait.
Published byDwight Maxwell Modified over 6 years ago
2
Machine Learning for dotNET Developer Bahrudin Hrnjica, MVP
3
Agenda Intro to ML Types of ML dotNET and ML-tools and libraries
Demo01: ANN with C# Demo02: GP with C# .NET Tools – Acord.NET, GPdotNET Summary
4
Machine Learning? method of teaching computers to make predictions based on data. branch of Artificial intelligence semi-automated extraction of knowledge from data always starts from data, and the goal is knowledge extraction, involves some amount of automation in form of algorithm and computer to do the job, not fully automated, it requires many smart decisions by a human.
5
Data Computer Output Program Data Computer Program Output
Traditional Programming Machine Learning Computer Data Output Program Computer Data Program Output
6
Magic? No, more like gardening Seeds = Algorithms Nutrients = Data
Gardener = You Plants = Programs
7
Sample Applications Web search Engineering Finance E-commerce
Space exploration Robotics Information extraction Social networks Debugging [Your favorite area]
8
ML in a Nutshell Tens of thousands of machine learning algorithms
Hundreds new every year Every machine learning algorithm has three components: Representation Evaluation Optimization
9
Representation Chromosomes in genetics (GA/GP) Neural networks
Decision trees Sets of rules / Logic programs Instances Graphical models (Bayes/Markov nets) Support vector machines Etc.
10
Evaluation Accuracy Precision and recall Squared error Likelihood
Posterior probability Cost / Utility Margin Entropy K-L divergence Etc.
11
Optimization/Learners
Combinatorial optimization E.g.: Greedy search Convex optimization E.g.: Gradient descent Constrained optimization E.g.: Linear programming General optimization E.g.: Genetic Algorithm E.g.: Particle Swarm Optimization
12
Types of Learning Supervised (inductive) learning
Training data includes desired outputs Unsupervised learning Training data does not include desired outputs Semi-supervised learning Training data includes a few desired outputs
13
Machine learning structure
Supervised learning
14
Machine learning structure
Unsupervised learning
15
Training and testing Data acquisition Practical usage Universal set
(unobserved) Training set (observed) Testing set (unobserved)
16
Training and testing Training is the process of making the system able to learn. No free lunch rule: Training set and testing set come from the same distribution Need to make some assumptions or bias
17
What are we seeking? Supervised: Low E-out or maximize probabilistic terms Unsupervised: Minimum quantization error, Minimum distance, MAP, MLE(maximum likelihood estimation) E-in: for training set E-out: for testing set
18
What are we seeking? Under-fitting VS. Over-fitting (fixed N) error
(model = hypothesis + loss functions)
19
dotNET and ML Learning API - Accord .NET - GPdotNET-
20
DEMO- Simple ANN and GP C# Program
IRIS DATA DEMO
21
Accord .NET
22
DEMO ACCORD .NET
23
LearningAPI
24
GPdotNET GP and ANN
25
Existing ML tools are difficult or impossible to integrate into a software system.
Commercial and Open Source API libraries work well for some machine learning tasks but are extremely limited for neural networks. To develop neural networks using Visual Studio you must understand seven core concepts: feed- forward, activation, data encoding, error, training, free parameters, and over-fitting. Once the concepts are mastered, implementation with Visual Studio is not difficult (but not easy either).
26
Reference http://bhrnjica.net/gpdotnet http://accord-framework.net/
pi C# ANN sample us/magazine/mt149362?author=james+mccaffrey
27
HVALA NA PAŽNJI!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.