C# 机器学习
前言:
提起人工智能,机器学习。大家都是一脸懵的样子。其实呢,就是根据数据进行训练。然后可以大概的预测结果。Visual Studio2019 Preview中提供了图形界面的ML.Net,所以,只要我们安装Visual Studio2019 Preview就能简单的使用ML.Net了。
话不多说,开撸!
使用说明:
首先新建一个任意项目,我这里使用的是控制台项目。然后右键项目->添加机器学习。
点击机器学习时,如果我们没有开启MLNET模型创建功能,则会弹出提示,让我们开启。
当然我们也可以手动在选项中开启,如下图:
点击【机器学习】之后会有图形界面,如下图:
这里的话我们点击第一个,进行情绪训练分析。
1,方案&环境
2,数据:
然后我们需要进行添加数据源来训练。这里提供一个官网自带的数据 可以直接使用。其中1:代表开心 的意思 0 :代表愤怒的意思
3,训练:
这里节省时间,这是简单的用默认时间来训练一下。训练时长越多,那推演预测的数据越准确!
4,评估:
训练结束后,点击评估我们可以进行输入一些内容进行预测心情。大家可以看到准确率还是很高的。
5,代码:
这是vs自带的训练类库。然后我们该如何使用呢?使用也很简单,点击代码 ,然后选择添加项目。你就会看到多了两个项目。如图:
6,使用:
然后下面给大家一个main函数的代码 可以自行复制 使用。
/// <summary>
/// 分析 人语言的情绪 1 开心, 0 愤怒;
/// </summary>
/// <param name="args"></param> static void Main(string[] args)
{
while (true)
{
var str = Console.ReadLine();
if (str == "exit")
{
break;
}
//// Add input data
var input = new ModelInput();
input.Col0 = str;
// Load model and predict output of sample data
ModelOutput result = ConsumeModel.Predict(input);
Console.WriteLine($"Col0: {input.Col0}"); //Console.WriteLine($"\n\nPredicted Col1 value {result.Prediction} \nPredicted Col1 scores: [{String.Join(",", result.Score)}]\n\n"); var value0 = result.Score[0].ToString();
decimal.TryParse(value0, out decimal res0); var value1 = result.Score[1].ToString();
decimal.TryParse(value1, out decimal res1); if (res0 > res1)
{
Console.WriteLine("愤怒"); }
else
{
Console.WriteLine("开心");
}
Console.WriteLine("\r\n");
Console.WriteLine("输入exit,以退出");
Console.WriteLine("\r\n");
} }
运行结果:
最后,本人还是特别稀罕人工智能方面的技术的。奈何能力有限,只能慢慢接触,慢慢学习。希望能给大家带来一些帮助。
关于这篇文章推荐观看这篇文章:https://www.cnblogs.com/kiba/p/14097006.html
感谢博主给的启发接触这块。
C# 机器学习的更多相关文章
- .NET平台开源项目速览(13)机器学习组件Accord.NET框架功能介绍
Accord.NET Framework是在AForge.NET项目的基础上封装和进一步开发而来.因为AForge.NET更注重与一些底层和广度,而Accord.NET Framework更注重与机器 ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- 借助亚马逊S3和RapidMiner将机器学习应用到文本挖掘
本挖掘典型地运用了机器学习技术,例如聚类,分类,关联规则,和预测建模.这些技术揭示潜在内容中的意义和关系.文本发掘应用于诸如竞争情报,生命科学,客户呼声,媒体和出版,法律和税收,法律实施,情感分析和趋 ...
- Android开发学习之路-机器学习库(图像识别)、百度翻译
对于机器学习也不是了解的很深入,今天无意中在GitHub看到一个star的比较多的库,就用着试一试,效果也还行.比是可能比不上TensorFlow的,但是在Android上用起来比较简单,毕竟Tens ...
- 【NLP】基于机器学习角度谈谈CRF(三)
基于机器学习角度谈谈CRF 作者:白宁超 2016年8月3日08:39:14 [摘要]:条件随机场用于序列标注,数据分割等自然语言处理中,表现出很好的效果.在中文分词.中文人名识别和歧义消解等任务中都 ...
- 机器学习实战笔记(Python实现)-08-线性回归
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-06-AdaBoost
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-05-支持向量机(SVM)
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-04-Logistic回归
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-03-朴素贝叶斯
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
随机推荐
- 图片验证码识别,标签中onehot编码对应多个1怎么做?
一张验证码图片直接做整体识别 也就是图片的最后输出节点有4*26=104个,经过一个softmax,使用交叉熵损失,与真实值4*26=104个标签做计算,然后反向传播 104个onehot编码真实值当 ...
- Django框架——模版层之标签、自定义过滤器 标签及inclusion_tag(了解)、模版的继承与导入、模型层之前期准备、ORM常用关键字
模版层之标签 {% if 条件1(可以自己写也可以用传递过来的数据) %} <p>今天又是周三了</p> {% elif 条件2(可以自己写也可以用传递过来的数据) %} &l ...
- 【Oracle】PL/SQL制作唯一标识,固定字段+日期+流水码,流水码每日重置
[Oracle]PL/SQL制作唯一标识,固定字段+日期+流水码,流水码每日重置 首先创建序列 create sequence sequence_name minvalue 0 maxvalue 99 ...
- 力扣603(MySQL)-连续空余座位(简单)
题目: 几个朋友来到电影院的售票处,准备预约连续空余座位. 你能利用表 cinema ,帮他们写一个查询语句,获取所有空余座位,并将它们按照 seat_id 排序后返回吗? 对于如上样例,你的查询语句 ...
- 牛客网-SQL专项训练23
①假设创建新用户nkw,现在想对于任何IP的连接,仅拥有user数据库里面的select和insert权限,则列表语句中能够实现这一要求的语句是(B) 解析: 考察知识点-数据库授权命令: GRANT ...
- 性能透明提升 50%!SMC + ERDMA 云上超大规模高性能网络协议栈
简介: 新的协议栈是不是重新发明轮子?一个协议栈能否解决所有问题?适配所有场景? 编者按:当前内核网络协议栈有什么问题?新的协议栈是不是重新发明轮子?一个协议栈能否解决所有问题?适配所有场景?本文整理 ...
- 有效预警6要素:亿级调用量的阿里云弹性计算SRE实践
简介: 关注保持良好的预警处理,持续解决系统隐患,促进系统稳定健康发展. 编者按:随着分布式系统和业务需求的飞速发展,监控告警在我们保障系统稳定性和事故快速恢复的全周期中都是至关重要的.9月3号,阿里 ...
- 巧用友盟+U-APM 实现移动端性能优化—启动速度
简介: 移动端性能对用户体验.留存有着至关重要的影响,作为开发者是不是被这样吐槽过,"这个 APP 怎么这么大?"."怎么一直在 APP 封面图转悠,点不进去" ...
- dotnet 使用增量源代码生成技术的 Telescope 库导出程序集类型
本文将告诉大家在 dotnet 里面使用免费完全开源的基于增量源代码生成技术的 Telescope 库,进行收集导出项目程序集里面指定类型.可以实现性能极高的指定类型收集,方便多模块对接入自己的业务框 ...
- SAP集成技术(四)五种集成架构
本文中,我们将介绍并解释五个主要的模型.我们主要区分直接集成.中间件导向集成以及两个一般的架构概念.直接集成(例如点对点集成)中的标准化很少,但中间件导向的拓扑(例如中心辐射型拓扑以及企业服务总线)追 ...