<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>AI - A Personal Blog</title>
<link>https://farid.partonia.ir/</link>
<atom:link href="://farid.partonia.ir/index.php?category=programming%2Fartificial-intelligence&amp;do=cat&amp;mod=rss" rel="self" type="application/rss+xml" />
<language>en</language>
<description>AI - A Personal Blog</description>[shortrss]<item turbo="{allow-turbo}">
<title>ML.NET: Credit Card Fraud Detection</title>
<guid isPermaLink="true">https://farid.partonia.ir/index.php?newsid=14</guid>
<link>https://farid.partonia.ir/index.php?newsid=14</link>
<description><p>As we know, ML.NET is an <b>open-source</b> and <b>cross-platform</b> (Windows, macOS, Linux) machine learning framework in which you can create custom ML models using C# or F# without having to leave the .NET ecosystem.<br>ML.NET lets reusing all the knowledge, skills, code, and libraries you already have as a .NET developer so that you can easily integrate machine learning into your web, mobile, desktop, games, and IoT apps.<br>Moreover, it has been designed as an extensible platform so that you can consume other popular ML frameworks (TensorFlow, ONNX, Infer.NET, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.<br>Finally, according to Microsoft's tests, it has high performance and accuracy. <br>Using a 9GB Amazon review data set, ML.NET trained a sentiment analysis model with 95% accuracy. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, ML.NET demonstrated the highest speed and accuracy.<br>I will discuss the fundamentals of ML.NET, explore some sample codes, and explain the basics of the Microsoft Machine-Learning framework with a sample code.</p></description>
[allow-turbo]<turbo:content><![CDATA[<p>The starting point for any ML.NET app is a class named MLContext. It begins by creating a new instance of MLContext class, and when you do so, you have the option to seed for a random number generator.<br>If you don't specify a seed, you'll get different results each time you train and score the model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L18"></div> <h1 class="kb kc gr bf kd ke kf ja kg kh ki je kj kk kl km kn ko kp kq kr ks kt ku kv kw ho" id="9119">Loading a data set and creating a data pipeline</h1> <p class="iv iw gr ix b iy kx ja jb jc ky je jf jg kz ji jj jk la jm jn jo lb jq jr js gk ho" id="e944">Preprocessing data in ML.NET is unique and different from other frameworks because it requires an explicit class of our data structure. To do so, we create a class called<span> InputModel</span>, and we will state all the columns of our data set.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho" id="6841">For this article, we have used the<span> </span><a class="ek jt" href="https://www.kaggle.com/mlg-ulb/creditcardfraud" rel="nofollow noopener ugc external" target="_blank">Credit Card Fraud Detection</a> data set from <a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener external">Kaggle</a>. This data set contains 31 columns. The class of the transaction, either 0 or 1, the amount of the transaction, the time the transaction occurred, and 28 other columns.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelInput.cs"></div> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"><span>Now that we have our data modeled, we need also to model what our output should look like; The below script can achieve this.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelOutput.cs"></div> <p><span>The next step should be loading downloaded .csv data; Having defined model input and datafile path, and other constructor options.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L24-L30"></div> <p>Afterward, we will define the data process configuration with pipeline data transformations.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L32-L36"></div> <h1>Training and saving the Model</h1> <p>Next, setting the training algorithm and evaluating the quality of the Model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Program.cs#L11"></div> <p>Usage of the saved model and prediction of credit card fraud are included in <b>program.cs</b> on <a href="https://github.com/ymg2006/ML.NET-AnomalyDetection" target="_blank" rel="noopener external">Github page</a>.</p>]]></turbo:content>[/allow-turbo]
<category>AI, .NET</category>
<dc:creator>FariD</dc:creator>
<pubDate>Tue, 28 Sep 2021 09:04:52 +0330</pubDate>
</item>[/shortrss]
[fullrss]<item turbo="{allow-turbo}">
<title>ML.NET: Credit Card Fraud Detection</title>
<guid isPermaLink="true">https://farid.partonia.ir/index.php?newsid=14</guid>
<link>https://farid.partonia.ir/index.php?newsid=14</link>
<category><![CDATA[AI, .NET]]></category>
<dc:creator>FariD</dc:creator>
<pubDate>Tue, 28 Sep 2021 09:04:52 +0330</pubDate>
<description><![CDATA[<p>As we know, ML.NET is an <b>open-source</b> and <b>cross-platform</b> (Windows, macOS, Linux) machine learning framework in which you can create custom ML models using C# or F# without having to leave the .NET ecosystem.<br>ML.NET lets reusing all the knowledge, skills, code, and libraries you already have as a .NET developer so that you can easily integrate machine learning into your web, mobile, desktop, games, and IoT apps.<br>Moreover, it has been designed as an extensible platform so that you can consume other popular ML frameworks (TensorFlow, ONNX, Infer.NET, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.<br>Finally, according to Microsoft's tests, it has high performance and accuracy. <br>Using a 9GB Amazon review data set, ML.NET trained a sentiment analysis model with 95% accuracy. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, ML.NET demonstrated the highest speed and accuracy.<br>I will discuss the fundamentals of ML.NET, explore some sample codes, and explain the basics of the Microsoft Machine-Learning framework with a sample code.</p>]]></description>
[allow-turbo]<turbo:content><![CDATA[<p>The starting point for any ML.NET app is a class named MLContext. It begins by creating a new instance of MLContext class, and when you do so, you have the option to seed for a random number generator.<br>If you don't specify a seed, you'll get different results each time you train and score the model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L18"></div> <h1 class="kb kc gr bf kd ke kf ja kg kh ki je kj kk kl km kn ko kp kq kr ks kt ku kv kw ho" id="9119">Loading a data set and creating a data pipeline</h1> <p class="iv iw gr ix b iy kx ja jb jc ky je jf jg kz ji jj jk la jm jn jo lb jq jr js gk ho" id="e944">Preprocessing data in ML.NET is unique and different from other frameworks because it requires an explicit class of our data structure. To do so, we create a class called<span> InputModel</span>, and we will state all the columns of our data set.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho" id="6841">For this article, we have used the<span> </span><a class="ek jt" href="https://www.kaggle.com/mlg-ulb/creditcardfraud" rel="nofollow noopener ugc external" target="_blank">Credit Card Fraud Detection</a> data set from <a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener external">Kaggle</a>. This data set contains 31 columns. The class of the transaction, either 0 or 1, the amount of the transaction, the time the transaction occurred, and 28 other columns.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelInput.cs"></div> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"><span>Now that we have our data modeled, we need also to model what our output should look like; The below script can achieve this.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelOutput.cs"></div> <p><span>The next step should be loading downloaded .csv data; Having defined model input and datafile path, and other constructor options.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L24-L30"></div> <p>Afterward, we will define the data process configuration with pipeline data transformations.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L32-L36"></div> <h1>Training and saving the Model</h1> <p>Next, setting the training algorithm and evaluating the quality of the Model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Program.cs#L11"></div> <p>Usage of the saved model and prediction of credit card fraud are included in <b>program.cs</b> on <a href="https://github.com/ymg2006/ML.NET-AnomalyDetection" target="_blank" rel="noopener external">Github page</a>.</p>]]></turbo:content>[/allow-turbo]
[allow-dzen]<content:encoded><![CDATA[<p>The starting point for any ML.NET app is a class named MLContext. It begins by creating a new instance of MLContext class, and when you do so, you have the option to seed for a random number generator.<br>If you don't specify a seed, you'll get different results each time you train and score the model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L18"></div> <h1 class="kb kc gr bf kd ke kf ja kg kh ki je kj kk kl km kn ko kp kq kr ks kt ku kv kw ho" id="9119">Loading a data set and creating a data pipeline</h1> <p class="iv iw gr ix b iy kx ja jb jc ky je jf jg kz ji jj jk la jm jn jo lb jq jr js gk ho" id="e944">Preprocessing data in ML.NET is unique and different from other frameworks because it requires an explicit class of our data structure. To do so, we create a class called<span> InputModel</span>, and we will state all the columns of our data set.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho" id="6841">For this article, we have used the<span> </span><a class="ek jt" href="https://www.kaggle.com/mlg-ulb/creditcardfraud" rel="nofollow noopener ugc external" target="_blank">Credit Card Fraud Detection</a> data set from <a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener external">Kaggle</a>. This data set contains 31 columns. The class of the transaction, either 0 or 1, the amount of the transaction, the time the transaction occurred, and 28 other columns.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelInput.cs"></div> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"><span>Now that we have our data modeled, we need also to model what our output should look like; The below script can achieve this.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelOutput.cs"></div> <p><span>The next step should be loading downloaded .csv data; Having defined model input and datafile path, and other constructor options.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L24-L30"></div> <p>Afterward, we will define the data process configuration with pipeline data transformations.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L32-L36"></div> <h1>Training and saving the Model</h1> <p>Next, setting the training algorithm and evaluating the quality of the Model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Program.cs#L11"></div> <p>Usage of the saved model and prediction of credit card fraud are included in <b>program.cs</b> on <a href="https://github.com/ymg2006/ML.NET-AnomalyDetection" target="_blank" rel="noopener external">Github page</a>.</p>]]></content:encoded>[/allow-dzen]
</item>[/fullrss]
[yandexrss]<item turbo="{allow-turbo}">
<title>ML.NET: Credit Card Fraud Detection</title>
<link>https://farid.partonia.ir/index.php?newsid=14</link>
<description><p>As we know, ML.NET is an <b>open-source</b> and <b>cross-platform</b> (Windows, macOS, Linux) machine learning framework in which you can create custom ML models using C# or F# without having to leave the .NET ecosystem.<br>ML.NET lets reusing all the knowledge, skills, code, and libraries you already have as a .NET developer so that you can easily integrate machine learning into your web, mobile, desktop, games, and IoT apps.<br>Moreover, it has been designed as an extensible platform so that you can consume other popular ML frameworks (TensorFlow, ONNX, Infer.NET, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.<br>Finally, according to Microsoft's tests, it has high performance and accuracy. <br>Using a 9GB Amazon review data set, ML.NET trained a sentiment analysis model with 95% accuracy. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, ML.NET demonstrated the highest speed and accuracy.<br>I will discuss the fundamentals of ML.NET, explore some sample codes, and explain the basics of the Microsoft Machine-Learning framework with a sample code.</p></description>
<category>AI, .NET</category>
<pubDate>Tue, 28 Sep 2021 09:04:52 +0330</pubDate>
<yandex:full-text><p>The starting point for any ML.NET app is a class named MLContext. It begins by creating a new instance of MLContext class, and when you do so, you have the option to seed for a random number generator.<br>If you don't specify a seed, you'll get different results each time you train and score the model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L18"></div> <h1 class="kb kc gr bf kd ke kf ja kg kh ki je kj kk kl km kn ko kp kq kr ks kt ku kv kw ho" id="9119">Loading a data set and creating a data pipeline</h1> <p class="iv iw gr ix b iy kx ja jb jc ky je jf jg kz ji jj jk la jm jn jo lb jq jr js gk ho" id="e944">Preprocessing data in ML.NET is unique and different from other frameworks because it requires an explicit class of our data structure. To do so, we create a class called<span> InputModel</span>, and we will state all the columns of our data set.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho" id="6841">For this article, we have used the<span> </span><a class="ek jt" href="https://www.kaggle.com/mlg-ulb/creditcardfraud" rel="nofollow noopener ugc external" target="_blank">Credit Card Fraud Detection</a> data set from <a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener external">Kaggle</a>. This data set contains 31 columns. The class of the transaction, either 0 or 1, the amount of the transaction, the time the transaction occurred, and 28 other columns.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelInput.cs"></div> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"><span>Now that we have our data modeled, we need also to model what our output should look like; The below script can achieve this.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelOutput.cs"></div> <p><span>The next step should be loading downloaded .csv data; Having defined model input and datafile path, and other constructor options.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L24-L30"></div> <p>Afterward, we will define the data process configuration with pipeline data transformations.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L32-L36"></div> <h1>Training and saving the Model</h1> <p>Next, setting the training algorithm and evaluating the quality of the Model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Program.cs#L11"></div> <p>Usage of the saved model and prediction of credit card fraud are included in <b>program.cs</b> on <a href="https://github.com/ymg2006/ML.NET-AnomalyDetection" target="_blank" rel="noopener external">Github page</a>.</p></yandex:full-text>
[allow-turbo]<turbo:content><![CDATA[<p>The starting point for any ML.NET app is a class named MLContext. It begins by creating a new instance of MLContext class, and when you do so, you have the option to seed for a random number generator.<br>If you don't specify a seed, you'll get different results each time you train and score the model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L18"></div> <h1 class="kb kc gr bf kd ke kf ja kg kh ki je kj kk kl km kn ko kp kq kr ks kt ku kv kw ho" id="9119">Loading a data set and creating a data pipeline</h1> <p class="iv iw gr ix b iy kx ja jb jc ky je jf jg kz ji jj jk la jm jn jo lb jq jr js gk ho" id="e944">Preprocessing data in ML.NET is unique and different from other frameworks because it requires an explicit class of our data structure. To do so, we create a class called<span> InputModel</span>, and we will state all the columns of our data set.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho" id="6841">For this article, we have used the<span> </span><a class="ek jt" href="https://www.kaggle.com/mlg-ulb/creditcardfraud" rel="nofollow noopener ugc external" target="_blank">Credit Card Fraud Detection</a> data set from <a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener external">Kaggle</a>. This data set contains 31 columns. The class of the transaction, either 0 or 1, the amount of the transaction, the time the transaction occurred, and 28 other columns.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelInput.cs"></div> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"><span>Now that we have our data modeled, we need also to model what our output should look like; The below script can achieve this.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelOutput.cs"></div> <p><span>The next step should be loading downloaded .csv data; Having defined model input and datafile path, and other constructor options.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L24-L30"></div> <p>Afterward, we will define the data process configuration with pipeline data transformations.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L32-L36"></div> <h1>Training and saving the Model</h1> <p>Next, setting the training algorithm and evaluating the quality of the Model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Program.cs#L11"></div> <p>Usage of the saved model and prediction of credit card fraud are included in <b>program.cs</b> on <a href="https://github.com/ymg2006/ML.NET-AnomalyDetection" target="_blank" rel="noopener external">Github page</a>.</p>]]></turbo:content>[/allow-turbo]
[allow-dzen]<content:encoded><![CDATA[<p>The starting point for any ML.NET app is a class named MLContext. It begins by creating a new instance of MLContext class, and when you do so, you have the option to seed for a random number generator.<br>If you don't specify a seed, you'll get different results each time you train and score the model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L18"></div> <h1 class="kb kc gr bf kd ke kf ja kg kh ki je kj kk kl km kn ko kp kq kr ks kt ku kv kw ho" id="9119">Loading a data set and creating a data pipeline</h1> <p class="iv iw gr ix b iy kx ja jb jc ky je jf jg kz ji jj jk la jm jn jo lb jq jr js gk ho" id="e944">Preprocessing data in ML.NET is unique and different from other frameworks because it requires an explicit class of our data structure. To do so, we create a class called<span> InputModel</span>, and we will state all the columns of our data set.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho" id="6841">For this article, we have used the<span> </span><a class="ek jt" href="https://www.kaggle.com/mlg-ulb/creditcardfraud" rel="nofollow noopener ugc external" target="_blank">Credit Card Fraud Detection</a> data set from <a href="https://www.kaggle.com/datasets" target="_blank" rel="noopener external">Kaggle</a>. This data set contains 31 columns. The class of the transaction, either 0 or 1, the amount of the transaction, the time the transaction occurred, and 28 other columns.</p> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelInput.cs"></div> <p class="iv iw gr ix b iy iz ja jb jc jd je jf jg jh ji jj jk jl jm jn jo jp jq jr js gk ho"><span>Now that we have our data modeled, we need also to model what our output should look like; The below script can achieve this.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelOutput.cs"></div> <p><span>The next step should be loading downloaded .csv data; Having defined model input and datafile path, and other constructor options.</span></p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L24-L30"></div> <p>Afterward, we will define the data process configuration with pipeline data transformations.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Data/ModelBuilder.cs#L32-L36"></div> <h1>Training and saving the Model</h1> <p>Next, setting the training algorithm and evaluating the quality of the Model.</p> <div id="emgh--ymg2006--ML.NET-AnomalyDetection--master--Credit%20Card%20Fraud%20Detection/Program.cs#L11"></div> <p>Usage of the saved model and prediction of credit card fraud are included in <b>program.cs</b> on <a href="https://github.com/ymg2006/ML.NET-AnomalyDetection" target="_blank" rel="noopener external">Github page</a>.</p>]]></content:encoded>[/allow-dzen]
</item>[/yandexrss][shortrss]<item turbo="{allow-turbo}">
<title>Introduction to Machine Learning; Why should you use ML.NET</title>
<guid isPermaLink="true">https://farid.partonia.ir/index.php?newsid=12</guid>
<link>https://farid.partonia.ir/index.php?newsid=12</link>
<description><p>In this article, I will try to explain the basics and benefits of ML.NET. Firstly, the Types of Machine Learning have been discussed afterward the Architecture and High-Level Overview are considered, Finally the question "Why should we use ML.NET?" is answered.</p></description>
[allow-turbo]<turbo:content><![CDATA[<div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light" id="types"><div class="et_pb_text_inner"><h2><span>Types of Machine Learning</span></h2><p><span>One of the most important concepts that we have brought up in the </span><b><span>training</span></b><span> or learning process. This is a necessary step for every machine learning algorithm during which the algorithm uses the data to </span><b><span>learn</span></b><span> how to solve the task at hand. In practice, we usually have some collected data based on which we need to create our predictions, or classification, or any other processing. This data is called a </span><b><span>training set</span></b><span>. </span></p><p><br></p><p><span>As we were able to see based on behavior during the training and the nature of the training set, we have a few types of learning:</span></p><ul><li><b><span>Unsupervised learning</span></b><span> – The training set contains only inputs. The network attempts to identify similar inputs and to put them into categories. This type of learning is biologically motivated but it is not suitable for all the problems.</span></li><li><b><span>Supervised learning</span></b><span> – The training set contains inputs and desired outputs. This way the network can check its calculated output the same as the desired output and take appropriate actions based on that. In this article, we focus on this type of learning since it is used the most in the industry.</span></li><li><b><span>Reinforcement learning</span></b><span> – The training set contains inputs, but the network is also provided with additional information during the training. What happens is that once the network calculates the output for one of the inputs, we provide information that indicates whether the result was right or wrong and possibly, the nature of the mistake that the network made. Sort of like the concept of reward and punishment for artificial neural networks. This concept is very interesting, but it is out of the scope of this book, so, in general, we will have only the first two types of training.</span></li></ul><h2><span>Architecture and High-Level Overview</span></h2><p><span>Building an application with </span><i><span>ML.NET</span></i><span> consists of several steps:</span></p><ul><li><b><span>Loading Data</span></b><span> – Raw data must be loaded into memory and for this IDataView is used.</span></li><li><b><span>Creating a pipeline</span></b><span> – The pipeline is composed of steps that either transform data or train a machine learning algorithm. </span><i><span>ML.NET</span></i><span> provides various transformational steps, like one-hot encoding and various machine learning algorithms.</span></li><li><b><span>Training a machine learning model</span></b><span> – Once the pipeline is created, the training can be started. This is done using the </span><i><span>Fit()</span></i><span> method that is supported in all algorithms.</span></li><li><b><span>Evaluate</span></b><span> – The model can be evaluated at any point and additional decisions can be made based on the evaluations.</span></li><li><b><span>Save</span></b><span> – Once trained, the model is saved into a file. In general, the complete application should be built in a way that one microservice trains and evaluates the machine learning model, and the other microservice utilizes it.</span></li><li><b><span>Load</span></b><span> – The machine learning model can be loaded and utilized for predictions.</span></li></ul><p><span>Apart from the mentioned classes, there are several more components that we need to mention. The </span><i><span>Estimator</span></i><span> is the object we create during the creation of the pipeline. This model is not trained. The </span><i><span>Transformer</span></i><span> instance, on the other hand, is a trained model and it is also in charge of loading the model back into the memory.</span></p><h2><span>Why should we use ML.NET?</span></h2><p><span>In the end, let’s just see why should we consider </span><i><span>ML.NET</span></i><span> for our project. As it turned out </span><i><span>ML.NET</span></i><span> has really good performance. </span><i><span>ML.NET</span></i><span> trained a sentiment analysis model with </span><b><span>95% accuracy</span></b><span> using a 9GB Amazon review data set. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, </span><i><span>ML.NET</span></i><span> demonstrated the highest speed and accuracy. The performance evaluation found similar results in other machine learning scenarios. Apart from that, ML.NET is easily </span><b><span>extendable</span></b><span> with different models from different technologies.</span></p><p><a class="highslide" href="https://farid.partonia.ir/uploads/posts/2021-08/1629121429_mlnet-high-performance.png" target="_blank"><img src="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" alt="" class="fr-fic fr-dib"></a></p><h2><span>Extended with TensorFlow &amp; more</span></h2><p><span>ML.NET has been designed as an extensible platform so that you can consume other popular ML frameworks (<b>TensorFlow</b>,<b> ONNX</b>,<b> Infer.NET</b>, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.</span></p><p><span>Moreover, ML.NET is an </span><b><span>open-source</span></b><span> and cross-platform machine learning framework for .NET.</span></p><p><span><b>References:</b></span></p><ul><li><span><a href="https://docs.microsoft.com/en-us/dotnet/machine-learning/" rel="external noopener">ML.NET Documentation - Tutorials, API Reference</a></span></li><li><span><a href="https://rubikscode.net/2021/01/04/machine-learning-with-ml-net-introduction/" rel="external noopener">Machine Learning with ML.NET - Introduction</a></span></li></ul></div></div>]]></turbo:content>[/allow-turbo]
<category>AI</category>
<dc:creator>FariD</dc:creator>
<pubDate>Mon, 16 Aug 2021 16:53:27 +0430</pubDate>
</item>[/shortrss]
[fullrss]<item turbo="{allow-turbo}">
<title>Introduction to Machine Learning; Why should you use ML.NET</title>
<guid isPermaLink="true">https://farid.partonia.ir/index.php?newsid=12</guid>
<link>https://farid.partonia.ir/index.php?newsid=12</link>
<category><![CDATA[AI]]></category>
<dc:creator>FariD</dc:creator>
<pubDate>Mon, 16 Aug 2021 16:53:27 +0430</pubDate>
<description><![CDATA[<p>In this article, I will try to explain the basics and benefits of ML.NET. Firstly, the Types of Machine Learning have been discussed afterward the Architecture and High-Level Overview are considered, Finally the question "Why should we use ML.NET?" is answered.</p>]]></description>
[allow-turbo]<turbo:content><![CDATA[<div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light" id="types"><div class="et_pb_text_inner"><h2><span>Types of Machine Learning</span></h2><p><span>One of the most important concepts that we have brought up in the </span><b><span>training</span></b><span> or learning process. This is a necessary step for every machine learning algorithm during which the algorithm uses the data to </span><b><span>learn</span></b><span> how to solve the task at hand. In practice, we usually have some collected data based on which we need to create our predictions, or classification, or any other processing. This data is called a </span><b><span>training set</span></b><span>. </span></p><p><br></p><p><span>As we were able to see based on behavior during the training and the nature of the training set, we have a few types of learning:</span></p><ul><li><b><span>Unsupervised learning</span></b><span> – The training set contains only inputs. The network attempts to identify similar inputs and to put them into categories. This type of learning is biologically motivated but it is not suitable for all the problems.</span></li><li><b><span>Supervised learning</span></b><span> – The training set contains inputs and desired outputs. This way the network can check its calculated output the same as the desired output and take appropriate actions based on that. In this article, we focus on this type of learning since it is used the most in the industry.</span></li><li><b><span>Reinforcement learning</span></b><span> – The training set contains inputs, but the network is also provided with additional information during the training. What happens is that once the network calculates the output for one of the inputs, we provide information that indicates whether the result was right or wrong and possibly, the nature of the mistake that the network made. Sort of like the concept of reward and punishment for artificial neural networks. This concept is very interesting, but it is out of the scope of this book, so, in general, we will have only the first two types of training.</span></li></ul><h2><span>Architecture and High-Level Overview</span></h2><p><span>Building an application with </span><i><span>ML.NET</span></i><span> consists of several steps:</span></p><ul><li><b><span>Loading Data</span></b><span> – Raw data must be loaded into memory and for this IDataView is used.</span></li><li><b><span>Creating a pipeline</span></b><span> – The pipeline is composed of steps that either transform data or train a machine learning algorithm. </span><i><span>ML.NET</span></i><span> provides various transformational steps, like one-hot encoding and various machine learning algorithms.</span></li><li><b><span>Training a machine learning model</span></b><span> – Once the pipeline is created, the training can be started. This is done using the </span><i><span>Fit()</span></i><span> method that is supported in all algorithms.</span></li><li><b><span>Evaluate</span></b><span> – The model can be evaluated at any point and additional decisions can be made based on the evaluations.</span></li><li><b><span>Save</span></b><span> – Once trained, the model is saved into a file. In general, the complete application should be built in a way that one microservice trains and evaluates the machine learning model, and the other microservice utilizes it.</span></li><li><b><span>Load</span></b><span> – The machine learning model can be loaded and utilized for predictions.</span></li></ul><p><span>Apart from the mentioned classes, there are several more components that we need to mention. The </span><i><span>Estimator</span></i><span> is the object we create during the creation of the pipeline. This model is not trained. The </span><i><span>Transformer</span></i><span> instance, on the other hand, is a trained model and it is also in charge of loading the model back into the memory.</span></p><h2><span>Why should we use ML.NET?</span></h2><p><span>In the end, let’s just see why should we consider </span><i><span>ML.NET</span></i><span> for our project. As it turned out </span><i><span>ML.NET</span></i><span> has really good performance. </span><i><span>ML.NET</span></i><span> trained a sentiment analysis model with </span><b><span>95% accuracy</span></b><span> using a 9GB Amazon review data set. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, </span><i><span>ML.NET</span></i><span> demonstrated the highest speed and accuracy. The performance evaluation found similar results in other machine learning scenarios. Apart from that, ML.NET is easily </span><b><span>extendable</span></b><span> with different models from different technologies.</span></p><p><a class="highslide" href="https://farid.partonia.ir/uploads/posts/2021-08/1629121429_mlnet-high-performance.png" target="_blank"><img src="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" alt="" class="fr-fic fr-dib"></a></p><h2><span>Extended with TensorFlow &amp; more</span></h2><p><span>ML.NET has been designed as an extensible platform so that you can consume other popular ML frameworks (<b>TensorFlow</b>,<b> ONNX</b>,<b> Infer.NET</b>, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.</span></p><p><span>Moreover, ML.NET is an </span><b><span>open-source</span></b><span> and cross-platform machine learning framework for .NET.</span></p><p><span><b>References:</b></span></p><ul><li><span><a href="https://docs.microsoft.com/en-us/dotnet/machine-learning/" rel="external noopener">ML.NET Documentation - Tutorials, API Reference</a></span></li><li><span><a href="https://rubikscode.net/2021/01/04/machine-learning-with-ml-net-introduction/" rel="external noopener">Machine Learning with ML.NET - Introduction</a></span></li></ul></div></div>]]></turbo:content>[/allow-turbo]
[allow-dzen]<content:encoded><![CDATA[<div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light" id="types"><div class="et_pb_text_inner"><h2><span>Types of Machine Learning</span></h2><p><span>One of the most important concepts that we have brought up in the </span><b><span>training</span></b><span> or learning process. This is a necessary step for every machine learning algorithm during which the algorithm uses the data to </span><b><span>learn</span></b><span> how to solve the task at hand. In practice, we usually have some collected data based on which we need to create our predictions, or classification, or any other processing. This data is called a </span><b><span>training set</span></b><span>. </span></p><p><br></p><p><span>As we were able to see based on behavior during the training and the nature of the training set, we have a few types of learning:</span></p><ul><li><b><span>Unsupervised learning</span></b><span> – The training set contains only inputs. The network attempts to identify similar inputs and to put them into categories. This type of learning is biologically motivated but it is not suitable for all the problems.</span></li><li><b><span>Supervised learning</span></b><span> – The training set contains inputs and desired outputs. This way the network can check its calculated output the same as the desired output and take appropriate actions based on that. In this article, we focus on this type of learning since it is used the most in the industry.</span></li><li><b><span>Reinforcement learning</span></b><span> – The training set contains inputs, but the network is also provided with additional information during the training. What happens is that once the network calculates the output for one of the inputs, we provide information that indicates whether the result was right or wrong and possibly, the nature of the mistake that the network made. Sort of like the concept of reward and punishment for artificial neural networks. This concept is very interesting, but it is out of the scope of this book, so, in general, we will have only the first two types of training.</span></li></ul><h2><span>Architecture and High-Level Overview</span></h2><p><span>Building an application with </span><i><span>ML.NET</span></i><span> consists of several steps:</span></p><ul><li><b><span>Loading Data</span></b><span> – Raw data must be loaded into memory and for this IDataView is used.</span></li><li><b><span>Creating a pipeline</span></b><span> – The pipeline is composed of steps that either transform data or train a machine learning algorithm. </span><i><span>ML.NET</span></i><span> provides various transformational steps, like one-hot encoding and various machine learning algorithms.</span></li><li><b><span>Training a machine learning model</span></b><span> – Once the pipeline is created, the training can be started. This is done using the </span><i><span>Fit()</span></i><span> method that is supported in all algorithms.</span></li><li><b><span>Evaluate</span></b><span> – The model can be evaluated at any point and additional decisions can be made based on the evaluations.</span></li><li><b><span>Save</span></b><span> – Once trained, the model is saved into a file. In general, the complete application should be built in a way that one microservice trains and evaluates the machine learning model, and the other microservice utilizes it.</span></li><li><b><span>Load</span></b><span> – The machine learning model can be loaded and utilized for predictions.</span></li></ul><p><span>Apart from the mentioned classes, there are several more components that we need to mention. The </span><i><span>Estimator</span></i><span> is the object we create during the creation of the pipeline. This model is not trained. The </span><i><span>Transformer</span></i><span> instance, on the other hand, is a trained model and it is also in charge of loading the model back into the memory.</span></p><h2><span>Why should we use ML.NET?</span></h2><p><span>In the end, let’s just see why should we consider </span><i><span>ML.NET</span></i><span> for our project. As it turned out </span><i><span>ML.NET</span></i><span> has really good performance. </span><i><span>ML.NET</span></i><span> trained a sentiment analysis model with </span><b><span>95% accuracy</span></b><span> using a 9GB Amazon review data set. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, </span><i><span>ML.NET</span></i><span> demonstrated the highest speed and accuracy. The performance evaluation found similar results in other machine learning scenarios. Apart from that, ML.NET is easily </span><b><span>extendable</span></b><span> with different models from different technologies.</span></p><p><a class="highslide" href="https://farid.partonia.ir/uploads/posts/2021-08/1629121429_mlnet-high-performance.png" target="_blank"><img src="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" alt="" class="fr-fic fr-dib"></a></p><h2><span>Extended with TensorFlow &amp; more</span></h2><p><span>ML.NET has been designed as an extensible platform so that you can consume other popular ML frameworks (<b>TensorFlow</b>,<b> ONNX</b>,<b> Infer.NET</b>, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.</span></p><p><span>Moreover, ML.NET is an </span><b><span>open-source</span></b><span> and cross-platform machine learning framework for .NET.</span></p><p><span><b>References:</b></span></p><ul><li><span><a href="https://docs.microsoft.com/en-us/dotnet/machine-learning/" rel="external noopener">ML.NET Documentation - Tutorials, API Reference</a></span></li><li><span><a href="https://rubikscode.net/2021/01/04/machine-learning-with-ml-net-introduction/" rel="external noopener">Machine Learning with ML.NET - Introduction</a></span></li></ul></div></div>]]></content:encoded>[/allow-dzen]
</item>[/fullrss]
[yandexrss]<item turbo="{allow-turbo}">
<title>Introduction to Machine Learning; Why should you use ML.NET</title>
<link>https://farid.partonia.ir/index.php?newsid=12</link>
<description><p>In this article, I will try to explain the basics and benefits of ML.NET. Firstly, the Types of Machine Learning have been discussed afterward the Architecture and High-Level Overview are considered, Finally the question "Why should we use ML.NET?" is answered.</p></description>
<category>AI</category>
<enclosure url="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" type="image/png" />
<pubDate>Mon, 16 Aug 2021 16:53:27 +0430</pubDate>
<yandex:full-text><div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light" id="types"><div class="et_pb_text_inner"><h2><span>Types of Machine Learning</span></h2><p><span>One of the most important concepts that we have brought up in the </span><b><span>training</span></b><span> or learning process. This is a necessary step for every machine learning algorithm during which the algorithm uses the data to </span><b><span>learn</span></b><span> how to solve the task at hand. In practice, we usually have some collected data based on which we need to create our predictions, or classification, or any other processing. This data is called a </span><b><span>training set</span></b><span>. </span></p><p><br></p><p><span>As we were able to see based on behavior during the training and the nature of the training set, we have a few types of learning:</span></p><ul><li><b><span>Unsupervised learning</span></b><span> – The training set contains only inputs. The network attempts to identify similar inputs and to put them into categories. This type of learning is biologically motivated but it is not suitable for all the problems.</span></li><li><b><span>Supervised learning</span></b><span> – The training set contains inputs and desired outputs. This way the network can check its calculated output the same as the desired output and take appropriate actions based on that. In this article, we focus on this type of learning since it is used the most in the industry.</span></li><li><b><span>Reinforcement learning</span></b><span> – The training set contains inputs, but the network is also provided with additional information during the training. What happens is that once the network calculates the output for one of the inputs, we provide information that indicates whether the result was right or wrong and possibly, the nature of the mistake that the network made. Sort of like the concept of reward and punishment for artificial neural networks. This concept is very interesting, but it is out of the scope of this book, so, in general, we will have only the first two types of training.</span></li></ul><h2><span>Architecture and High-Level Overview</span></h2><p><span>Building an application with </span><i><span>ML.NET</span></i><span> consists of several steps:</span></p><ul><li><b><span>Loading Data</span></b><span> – Raw data must be loaded into memory and for this IDataView is used.</span></li><li><b><span>Creating a pipeline</span></b><span> – The pipeline is composed of steps that either transform data or train a machine learning algorithm. </span><i><span>ML.NET</span></i><span> provides various transformational steps, like one-hot encoding and various machine learning algorithms.</span></li><li><b><span>Training a machine learning model</span></b><span> – Once the pipeline is created, the training can be started. This is done using the </span><i><span>Fit()</span></i><span> method that is supported in all algorithms.</span></li><li><b><span>Evaluate</span></b><span> – The model can be evaluated at any point and additional decisions can be made based on the evaluations.</span></li><li><b><span>Save</span></b><span> – Once trained, the model is saved into a file. In general, the complete application should be built in a way that one microservice trains and evaluates the machine learning model, and the other microservice utilizes it.</span></li><li><b><span>Load</span></b><span> – The machine learning model can be loaded and utilized for predictions.</span></li></ul><p><span>Apart from the mentioned classes, there are several more components that we need to mention. The </span><i><span>Estimator</span></i><span> is the object we create during the creation of the pipeline. This model is not trained. The </span><i><span>Transformer</span></i><span> instance, on the other hand, is a trained model and it is also in charge of loading the model back into the memory.</span></p><h2><span>Why should we use ML.NET?</span></h2><p><span>In the end, let’s just see why should we consider </span><i><span>ML.NET</span></i><span> for our project. As it turned out </span><i><span>ML.NET</span></i><span> has really good performance. </span><i><span>ML.NET</span></i><span> trained a sentiment analysis model with </span><b><span>95% accuracy</span></b><span> using a 9GB Amazon review data set. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, </span><i><span>ML.NET</span></i><span> demonstrated the highest speed and accuracy. The performance evaluation found similar results in other machine learning scenarios. Apart from that, ML.NET is easily </span><b><span>extendable</span></b><span> with different models from different technologies.</span></p><p><a class="highslide" href="https://farid.partonia.ir/uploads/posts/2021-08/1629121429_mlnet-high-performance.png" target="_blank"><img src="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" alt="" class="fr-fic fr-dib"></a></p><h2><span>Extended with TensorFlow &amp; more</span></h2><p><span>ML.NET has been designed as an extensible platform so that you can consume other popular ML frameworks (<b>TensorFlow</b>,<b> ONNX</b>,<b> Infer.NET</b>, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.</span></p><p><span>Moreover, ML.NET is an </span><b><span>open-source</span></b><span> and cross-platform machine learning framework for .NET.</span></p><p><span><b>References:</b></span></p><ul><li><span><a href="https://docs.microsoft.com/en-us/dotnet/machine-learning/" rel="external noopener">ML.NET Documentation - Tutorials, API Reference</a></span></li><li><span><a href="https://rubikscode.net/2021/01/04/machine-learning-with-ml-net-introduction/" rel="external noopener">Machine Learning with ML.NET - Introduction</a></span></li></ul></div></div></yandex:full-text>
[allow-turbo]<turbo:content><![CDATA[<div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light" id="types"><div class="et_pb_text_inner"><h2><span>Types of Machine Learning</span></h2><p><span>One of the most important concepts that we have brought up in the </span><b><span>training</span></b><span> or learning process. This is a necessary step for every machine learning algorithm during which the algorithm uses the data to </span><b><span>learn</span></b><span> how to solve the task at hand. In practice, we usually have some collected data based on which we need to create our predictions, or classification, or any other processing. This data is called a </span><b><span>training set</span></b><span>. </span></p><p><br></p><p><span>As we were able to see based on behavior during the training and the nature of the training set, we have a few types of learning:</span></p><ul><li><b><span>Unsupervised learning</span></b><span> – The training set contains only inputs. The network attempts to identify similar inputs and to put them into categories. This type of learning is biologically motivated but it is not suitable for all the problems.</span></li><li><b><span>Supervised learning</span></b><span> – The training set contains inputs and desired outputs. This way the network can check its calculated output the same as the desired output and take appropriate actions based on that. In this article, we focus on this type of learning since it is used the most in the industry.</span></li><li><b><span>Reinforcement learning</span></b><span> – The training set contains inputs, but the network is also provided with additional information during the training. What happens is that once the network calculates the output for one of the inputs, we provide information that indicates whether the result was right or wrong and possibly, the nature of the mistake that the network made. Sort of like the concept of reward and punishment for artificial neural networks. This concept is very interesting, but it is out of the scope of this book, so, in general, we will have only the first two types of training.</span></li></ul><h2><span>Architecture and High-Level Overview</span></h2><p><span>Building an application with </span><i><span>ML.NET</span></i><span> consists of several steps:</span></p><ul><li><b><span>Loading Data</span></b><span> – Raw data must be loaded into memory and for this IDataView is used.</span></li><li><b><span>Creating a pipeline</span></b><span> – The pipeline is composed of steps that either transform data or train a machine learning algorithm. </span><i><span>ML.NET</span></i><span> provides various transformational steps, like one-hot encoding and various machine learning algorithms.</span></li><li><b><span>Training a machine learning model</span></b><span> – Once the pipeline is created, the training can be started. This is done using the </span><i><span>Fit()</span></i><span> method that is supported in all algorithms.</span></li><li><b><span>Evaluate</span></b><span> – The model can be evaluated at any point and additional decisions can be made based on the evaluations.</span></li><li><b><span>Save</span></b><span> – Once trained, the model is saved into a file. In general, the complete application should be built in a way that one microservice trains and evaluates the machine learning model, and the other microservice utilizes it.</span></li><li><b><span>Load</span></b><span> – The machine learning model can be loaded and utilized for predictions.</span></li></ul><p><span>Apart from the mentioned classes, there are several more components that we need to mention. The </span><i><span>Estimator</span></i><span> is the object we create during the creation of the pipeline. This model is not trained. The </span><i><span>Transformer</span></i><span> instance, on the other hand, is a trained model and it is also in charge of loading the model back into the memory.</span></p><h2><span>Why should we use ML.NET?</span></h2><p><span>In the end, let’s just see why should we consider </span><i><span>ML.NET</span></i><span> for our project. As it turned out </span><i><span>ML.NET</span></i><span> has really good performance. </span><i><span>ML.NET</span></i><span> trained a sentiment analysis model with </span><b><span>95% accuracy</span></b><span> using a 9GB Amazon review data set. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, </span><i><span>ML.NET</span></i><span> demonstrated the highest speed and accuracy. The performance evaluation found similar results in other machine learning scenarios. Apart from that, ML.NET is easily </span><b><span>extendable</span></b><span> with different models from different technologies.</span></p><p><a class="highslide" href="https://farid.partonia.ir/uploads/posts/2021-08/1629121429_mlnet-high-performance.png" target="_blank"><img src="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" alt="" class="fr-fic fr-dib"></a></p><h2><span>Extended with TensorFlow &amp; more</span></h2><p><span>ML.NET has been designed as an extensible platform so that you can consume other popular ML frameworks (<b>TensorFlow</b>,<b> ONNX</b>,<b> Infer.NET</b>, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.</span></p><p><span>Moreover, ML.NET is an </span><b><span>open-source</span></b><span> and cross-platform machine learning framework for .NET.</span></p><p><span><b>References:</b></span></p><ul><li><span><a href="https://docs.microsoft.com/en-us/dotnet/machine-learning/" rel="external noopener">ML.NET Documentation - Tutorials, API Reference</a></span></li><li><span><a href="https://rubikscode.net/2021/01/04/machine-learning-with-ml-net-introduction/" rel="external noopener">Machine Learning with ML.NET - Introduction</a></span></li></ul></div></div>]]></turbo:content>[/allow-turbo]
[allow-dzen]<content:encoded><![CDATA[<div class="et_pb_module et_pb_text et_pb_text_10 et_pb_text_align_left et_pb_bg_layout_light" id="types"><div class="et_pb_text_inner"><h2><span>Types of Machine Learning</span></h2><p><span>One of the most important concepts that we have brought up in the </span><b><span>training</span></b><span> or learning process. This is a necessary step for every machine learning algorithm during which the algorithm uses the data to </span><b><span>learn</span></b><span> how to solve the task at hand. In practice, we usually have some collected data based on which we need to create our predictions, or classification, or any other processing. This data is called a </span><b><span>training set</span></b><span>. </span></p><p><br></p><p><span>As we were able to see based on behavior during the training and the nature of the training set, we have a few types of learning:</span></p><ul><li><b><span>Unsupervised learning</span></b><span> – The training set contains only inputs. The network attempts to identify similar inputs and to put them into categories. This type of learning is biologically motivated but it is not suitable for all the problems.</span></li><li><b><span>Supervised learning</span></b><span> – The training set contains inputs and desired outputs. This way the network can check its calculated output the same as the desired output and take appropriate actions based on that. In this article, we focus on this type of learning since it is used the most in the industry.</span></li><li><b><span>Reinforcement learning</span></b><span> – The training set contains inputs, but the network is also provided with additional information during the training. What happens is that once the network calculates the output for one of the inputs, we provide information that indicates whether the result was right or wrong and possibly, the nature of the mistake that the network made. Sort of like the concept of reward and punishment for artificial neural networks. This concept is very interesting, but it is out of the scope of this book, so, in general, we will have only the first two types of training.</span></li></ul><h2><span>Architecture and High-Level Overview</span></h2><p><span>Building an application with </span><i><span>ML.NET</span></i><span> consists of several steps:</span></p><ul><li><b><span>Loading Data</span></b><span> – Raw data must be loaded into memory and for this IDataView is used.</span></li><li><b><span>Creating a pipeline</span></b><span> – The pipeline is composed of steps that either transform data or train a machine learning algorithm. </span><i><span>ML.NET</span></i><span> provides various transformational steps, like one-hot encoding and various machine learning algorithms.</span></li><li><b><span>Training a machine learning model</span></b><span> – Once the pipeline is created, the training can be started. This is done using the </span><i><span>Fit()</span></i><span> method that is supported in all algorithms.</span></li><li><b><span>Evaluate</span></b><span> – The model can be evaluated at any point and additional decisions can be made based on the evaluations.</span></li><li><b><span>Save</span></b><span> – Once trained, the model is saved into a file. In general, the complete application should be built in a way that one microservice trains and evaluates the machine learning model, and the other microservice utilizes it.</span></li><li><b><span>Load</span></b><span> – The machine learning model can be loaded and utilized for predictions.</span></li></ul><p><span>Apart from the mentioned classes, there are several more components that we need to mention. The </span><i><span>Estimator</span></i><span> is the object we create during the creation of the pipeline. This model is not trained. The </span><i><span>Transformer</span></i><span> instance, on the other hand, is a trained model and it is also in charge of loading the model back into the memory.</span></p><h2><span>Why should we use ML.NET?</span></h2><p><span>In the end, let’s just see why should we consider </span><i><span>ML.NET</span></i><span> for our project. As it turned out </span><i><span>ML.NET</span></i><span> has really good performance. </span><i><span>ML.NET</span></i><span> trained a sentiment analysis model with </span><b><span>95% accuracy</span></b><span> using a 9GB Amazon review data set. Other popular machine learning frameworks failed to process the dataset due to memory errors. Training on 10% of the data set, to let all the frameworks complete training, </span><i><span>ML.NET</span></i><span> demonstrated the highest speed and accuracy. The performance evaluation found similar results in other machine learning scenarios. Apart from that, ML.NET is easily </span><b><span>extendable</span></b><span> with different models from different technologies.</span></p><p><a class="highslide" href="https://farid.partonia.ir/uploads/posts/2021-08/1629121429_mlnet-high-performance.png" target="_blank"><img src="https://farid.partonia.ir/uploads/posts/2021-08/medium/1629121429_mlnet-high-performance.png" alt="" class="fr-fic fr-dib"></a></p><h2><span>Extended with TensorFlow &amp; more</span></h2><p><span>ML.NET has been designed as an extensible platform so that you can consume other popular ML frameworks (<b>TensorFlow</b>,<b> ONNX</b>,<b> Infer.NET</b>, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.</span></p><p><span>Moreover, ML.NET is an </span><b><span>open-source</span></b><span> and cross-platform machine learning framework for .NET.</span></p><p><span><b>References:</b></span></p><ul><li><span><a href="https://docs.microsoft.com/en-us/dotnet/machine-learning/" rel="external noopener">ML.NET Documentation - Tutorials, API Reference</a></span></li><li><span><a href="https://rubikscode.net/2021/01/04/machine-learning-with-ml-net-introduction/" rel="external noopener">Machine Learning with ML.NET - Introduction</a></span></li></ul></div></div>]]></content:encoded>[/allow-dzen]
</item>[/yandexrss]</channel></rss>