|
http://1.ML.NET 介绍

.NET 引入http://ML.NET,非常简单,只需要安装包即可。
<PackageReference Include=&#34;Microsoft.ML&#34; Version=&#34;2.0.0&#34; />
微软官方的目的就是,让你无需离开 .NET 生态系统,便可以使用 C# 或 F# 创建自定义 ML 模型。并让你可以轻松地将机器学习集成到 Web、移动、桌面、游戏和物联网应用中。
所以如果你刚好有Python训练好的模型,而正在烦恼怎么应用到.NET平台上时,那么刚好可以使用http://ML.NET,使用你的模型,它基本兼容市面上所有常见的数据格式,http://ML.NET支持TensorFlow和ONNX模型。
如果你已经有了模型,那么你现在可以导入,并使其开始运行和预测产出。
目前http://ML.NET运行在 Windows,linux和macOS上,当然需要.NET Core/5/6/7等支持。
临时加更干货分享
大家能看到这里,已是对我们的支持了。分享一组11月录制的.NET6零基础教程。我们喜欢做这样的分享,它足够的基础,对新手友好。如果需要的话,就来免费领取吧!

资料免费自取:
由于内容过多不便呈现,需要视频教程和配套源码的小伙伴,点击下方卡片!
也可点击下方卡片:点击后自动复制威芯号,并跳转到威芯。搜索威芯号添加,内容已做打包,备注知乎
即可免费领取,注意查收!
2.AutoML
全称是自动机器学习,给定数据集后,它可以运行 AutoML 来循环访问不同的数据转换、机器学习算法和超参数,以选择最佳模型,微软出品,就这么牛逼。
一般传统的机器学习工作流程如下:

其中预处理、训练和评估是一个实验性和迭代过程,需要多次试验,直到获得满意的结果。
由于这些任务往往是重复的,因此 AutoML 可以帮助自动执行这些步骤。除了自动化之外,在训练和评估过程中还使用优化技术来查找和选择算法和超参数。

3 http://ML.NET能力范畴
http://ML.NET提供了预测模型,可以做以下工作。

4 使用http://ML.NET的流程
使用http://ML.NET来进行机器学习,其流程还是比较简单的。
1. 将训练数据收集并加载到 IDataView 对象中
2. 指定操作的管道,以提取特征并应用机器学习算法
3. 通过在管道上调用 Fit() 来训练模型 评估模型并通过迭代进行改进
4. 将模型保存为二进制格式,以便在应用程序中使用
5. 将模型加载回 ITransformer 对象 通过调用
6. CreatePredictionEngine.Predict() 进行预测

5. 一个小例子
来源自官网的一个例子,使用拟合斜线预测房价。
MLContext mlContext = new MLContext();
HouseData[] houseData = {
new HouseData() { Size = 1.1F, Price = 1.2F },
new HouseData() { Size = 1.9F, Price = 2.3F },
new HouseData() { Size = 2.8F, Price = 3.0F },
new HouseData() { Size = 3.4F, Price = 3.7F } };
IDataView trainingData = mlContext.Data.LoadFromEnumerable(houseData);
// 2. Specify data preparation and model training pipeline
var pipeline = mlContext.Transforms.Concatenate(&#34;Features&#34;, new[] { &#34;Size&#34; })
.Append(mlContext.Regression.Trainers.Sdca(labelColumnName: &#34;Price&#34;, maximumNumberOfIterations: 100));
// 3. Train model
var model = pipeline.Fit(trainingData);
var testPriceDataView = model.Transform(trainingData);
var metrics = mlContext.Regression.Evaluate(testPriceDataView, labelColumnName: &#34;Price&#34;);
// 4. Make a prediction
var size = new HouseData() { Size = 2.5F };
var price = mlContext.Model.CreatePredictionEngine<HouseData, Prediction>(model).Predict(size);
Console.WriteLine($&#34;Predicted price for size: {size.Size * 1000} sq ft= {price.Price * 100:C}k&#34;);
public class HouseData
{
public float Size { get; set; }
public float Price { get; set; }
}
public class Prediction
{
[ColumnName(&#34;Score&#34;)]
public float Price { get; set; }
}

拟合回归是最简单的一个,也是入门最好的算法了。
模型也很简单,就是计算出

总结
一切看起来比较顺畅,祝你好运!
让我们每天进步一点点!
原文链接:系列ML.Net 学习篇【一】——初识机器学习 |
|