ml.net

人工智能?.NetCore一样胜任!

不羁岁月 提交于 2020-11-01 06:24:03
提起 AI ,大家都会先想到 Python ,确实 Python 作为一门好几十年的老语言,上一波的 AI 大流行使它焕发了青春。大家用 Phtyon 来做 AI ,最主要的原因无非就是编码量更少,很多数学和 AI 相关的 Api 都是现成的。但是随着 ML.net 的问世,我们现在可以在 .netcore 平台上使用比 Python 更少的代码来实现 AI 的功能了。 ML 是 Machine Learning 的缩写,从命名上可以看出微软对于对于 AI 的现状还是有非常清醒的认识的。目前我们所有声称的人工智能其实只是机器学习,离真正意义上的人工智能还差的很远。这也是为什么, AI 这个概念几乎每十年就火一次,然后陷入沉寂,因为我们在算法上其实始终没有突破,只是硬件比以前强大了,算的比以前快了而已。 上一波的 AI 创业大军已经纷纷倒下了,这也使我们认识到目前 AI 的水平是很难独立支撑一块完整的创新业务的,但是作为已有系统的补充,作为数据分析的工具, AI 还是很有用的,尤其是在图像识别,语义分析,数值预测等已有成熟算法的领域。 读到这里是不是以为这篇文章是喷概念的?必须不是啊,干货来了: ML.Net 主要特点: 跨平台,开源,使用简单,支持 Tensorflow 等扩展 一、 使用 ML.Net 的图形化工具生成机器学习代码 目前的 Visual Studio 2019

人工智能?.netcore一样胜任!

喜你入骨 提交于 2020-10-24 20:14:05
提起 AI ,大家都会先想到 Python ,确实 Python 作为一门好几十年的老语言,上一波的 AI 大流行使它焕发了青春。大家用 Phtyon 来做 AI ,最主要的原因无非就是编码量更少,很多数学和 AI 相关的 Api 都是现成的。但是随着 ML.net 的问世,我们现在可以在 .netcore 平台上使用比 Python 更少的代码来实现 AI 的功能了。 ML 是 Machine Learning 的缩写,从命名上可以看出微软对于对于 AI 的现状还是有非常清醒的认识的。目前我们所有声称的人工智能其实只是机器学习,离真正意义上的人工智能还差的很远。这也是为什么, AI 这个概念几乎每十年就火一次,然后陷入沉寂,因为我们在算法上其实始终没有突破,只是硬件比以前强大了,算的比以前快了而已。 上一波的 AI 创业大军已经纷纷倒下了,这也使我们认识到目前 AI 的水平是很难独立支撑一块完整的创新业务的,但是作为已有系统的补充,作为数据分析的工具, AI 还是很有用的,尤其是在图像识别,语义分析,数值预测等已有成熟算法的领域。 读到这里是不是以为这篇文章是喷概念的?必须不是啊,干货来了: ML.Net 主要特点: 跨平台,开源,使用简单,支持 Tensorflow 等扩展 一、 使用 ML.Net 的图形化工具生成机器学习代码 目前的 Visual Studio 2019

微软即将发布的.NET 5,蕴藏哪些最新特性?

自闭症网瘾萝莉.ら 提交于 2020-09-30 07:23:46
作者 | Paul Krill 编译 | 郑丽媛 头 图 | CSDN 下载自 视觉中国 出品 | CSDN(ID:CSDNnews) 以下为译文: 为了统一.NET平台,.NET 5改进了RyuJIT中代码质量、垃圾收集和JSON序列化等功能。 Preview 8 微软已经发布了功能完整的.NET 5的第8个预览版,除了bug修复外,几乎所有的功能都是最终版本。 .NET 5中 .NET Framework和.NET Core已合并,旨在一统.NET平台。 最新版本预计将于2020年11月10日正式发布。 日前,.NET 5的第8个预览版在8月25号已发布。而在11月的正式版发布前,还将有两个候选版本发布。 .NET 5更高层次的目标包含提供统一的.NET SDK体验,即在所有.NET 5应用程序中使用一个BCL(基类库),并支持跨多个操作系统的本地和web应用程序。一个.NET 5本地应用程序项目将使用这些平台上的本地控件来支持Windows、Microsoft Duo (Android)和Apple iOS等目标。 .NET 5的其他目标还有:允许构建高性能的云应用程序、在BCL中实现更快的算法、运行时中为容器提供更好地支持、以及对HTTP3的支持。.NET 5.0通过Mono的运行时和.NET库,将支持WebAssembly二进制格式,还提供了一组可为空的引用类型注释。

基于 ONNX 在 ML.NET 中使用 Pytorch 训练的垃圾分类模型

对着背影说爱祢 提交于 2020-08-19 04:26:08
ML.NET 在经典机器学习范畴内,对分类、回归、异常检测等问题开发模型已经有非常棒的表现了,我之前的 文章 都有过介绍。当然我们希望在更高层次的领域加以使用,例如计算机视觉、自然语言处理和信号处理等等领域。 图像识别是计算机视觉的一类分支,AI研发者们较为熟悉的是使用TensorFlow、Pytorch、Keras、MXNET等框架来训练深度神经网络模型,其中会涉及到CNN(卷积神经网络)、DNN(深度神经网络)的相关算法。 ML.NET 在较早期的版本是无法支持这类研究的,可喜的是最新的版本不但能很好地集成 TensorFlow 的模型做 迁移学习 ,还可以直接导入 DNN 常见 预编译模型 :AlexNet、ResNet18、ResNet50、ResNet101 实现对图像的分类、识别等。 我特别想推荐的是,ML.NET 最新版本对 ONNX 的支持也是非常强劲,通过 ONNX 可以把众多其他优秀深度学习框架的模型引入到 .NET Core 运行时中,极大地扩充了 .NET 应用在智能认知服务的丰富程度。在 Microsoft Docs 中已经提供了一个基于 ONNX 使用 Tiny YOLOv2 做对象检测的例子。为了展现 ML.NET 在其他框架上的通用性,本文将介绍使用 Pytorch 训练的垃圾分类的模型,基于 ONNX 导入到 ML.NET 中完成预测。

走向统一的 .NET 旅程

可紊 提交于 2020-08-11 10:27:42
这是微软第一次完全线上举办的Build大会,也是第一次完全属于开发者的大会。几乎所有的新产品都是属于开发者,开发者成为了唯一的主角。 现在的微软比以往任何时候都贴近开发者,重视开发者的作用,为他们打造平台和工具。因为没有开发者,就没有微软的生态平台,也就没有微软的一切, 今年的Build大会究竟都宣布了很多新产品,自然也少不了.NET, 两个Scott 在 统一 .NET 平台的旅程 视频里揭晓.NET 的发展现状和未来。 发布了.NET 5 Preview4 , Blazor WebAssembly RTM, ML.NET Model Builder、云原生应用开发的tye 以及 docker 改进等。在dotnet团队的官方博客上连续发了好几篇篇文章: Announcing .NET 5 Preview 4 and our journey to one .NET Introducing .NET Multi-platform App UI Windows Forms Designer for .NET Core Released ML.NET Model Builder is now a part of Visual Studio Announcing Entity Framework Core 5.0 Preview 4 ASP.NET Core updates in

dotnet 从零开始写一个人工智能 从一个神经元开始

↘锁芯ラ 提交于 2020-08-10 19:58:49
现在小伙伴说的人工智能都是弱智能,可以基于神经网络来做。而神经网络是有多层网络,每一层网络都有多个神经元。那么最简单的神经网络就是只有一层,而这一层只有一个神经元,也就是整个神经网络只是有一个神经元。一个神经元可以用来做什么?可以用来做基础的与或逻辑运算器。在我没有告诉神经元与或的逻辑时,只是通过我传输的输入的值和输出的值,此时神经元经过训练就能自己学会与或的逻辑。本文就在不使用现成的人工智能框架下一步步和大家写这一个神经元和告诉大家这是如何运行的。本文特别适合小伙伴入门神经网络,或者适合小伙伴入手写代码 在所有逻辑开始之前,先要了解一下在代码可以如何组织。很多时候都不需要整个逻辑都了解就可以开始写代码了,一边写一边修改才是最具小项目效率的。在开始之前,先约定好本文要做的内容,本文就是来写一个神经网络,这个神经网络其实只有一个神经元而这个网络做的事情就是训练出一个 或 逻辑的计算库 什么是 或 运算呢?其实就是输入两个布尔值,只要存在一个值是 1 那么输出就是 1 除非两个输入都是 0 才能输出 0 的值。那么什么时布尔值呢?就是表示一个数字只有两个取值,在本文这里就使用 0 和 1 两个值。所以 或 运行就是输入两个值,这两个值要么是 0 要么是 1 而输出也相同 来小伙伴,请做一道初中学生题目。我有两个值 a 和 b 可以输入,这两个值要么是 0 要么是 1 的值

人工智能?.netcore一样胜任!

旧时模样 提交于 2020-08-10 10:07:16
提起 AI ,大家都会先想到 Python ,确实 Python 作为一门好几十年的老语言,上一波的 AI 大流行使它焕发了青春。大家用 Phtyon 来做 AI ,最主要的原因无非就是编码量更少,很多数学和 AI 相关的 Api 都是现成的。但是随着 ML.net 的问世,我们现在可以在 .netcore 平台上使用比 Python 更少的代码来实现 AI 的功能了。 ML 是 Machine Learning 的缩写,从命名上可以看出微软对于对于 AI 的现状还是有非常清醒的认识的。目前我们所有声称的人工智能其实只是机器学习,离真正意义上的人工智能还差的很远。这也是为什么, AI 这个概念几乎每十年就火一次,然后陷入沉寂,因为我们在算法上其实始终没有突破,只是硬件比以前强大了,算的比以前快了而已。 上一波的 AI 创业大军已经纷纷倒下了,这也使我们认识到目前 AI 的水平是很难独立支撑一块完整的创新业务的,但是作为已有系统的补充,作为数据分析的工具, AI 还是很有用的,尤其是在图像识别,语义分析,数值预测等已有成熟算法的领域。 读到这里是不是以为这篇文章是喷概念的?必须不是啊,干货来了: ML.Net 主要特点: 跨平台,开源,使用简单,支持 Tensorflow 等扩展 一、 使用 ML.Net 的图形化工具生成机器学习代码 目前的 Visual Studio 2019

ML.NET机器学习、API容器化与Azure DevOps实践(二):案例

…衆ロ難τιáo~ 提交于 2020-08-05 05:14:46
在上文中,我简单地介绍了机器学习以及ML.NET的相关知识,从本讲开始,我会基于一个简单的案例:学生成绩预测,来介绍使用ML.NET进行机器学习以及API部署的基本过程。 学生成绩预测案例 本案例的数据来源为加州大学尔湾分校的机器学习公开样本数据集,数据介绍页面和下载地址为: https://archive.ics.uci.edu/ml/datasets/Student+Performance 。该数据集包含了来自两所学校的学生的问卷调查结果,以及每位学生的综合成绩。数据集为CSV格式,每个字段的含义在官网上都有详细介绍,因此,在这里就不再赘述了。 确定问题类型 我们的任务很简单,就是基于这套已有的学生问卷调查结果以及综合成绩,进行机器学习模型训练,然后,再根据一套给定的学生情况信息,来预测该名学生的综合成绩。不难发现,我们需要使用监督学习中的回归算法来进行模型训练,因为我们需要得到一个连续的预测值,而不是离散的二元或者多元值。在确定了我们的任务之后,就可以对得到的数据集进行一些预处理,以便机器学习的过程能够顺利进行。 数据预处理与数据分析 在得到训练数据集之后,通常不能直接拿来进行机器学习,需要对数据进行一些处理。数据预处理任务大致有: 数据格式规整化:对每一列的数据进行类型和单位统一,比如,“浓度”字段有些行使用的是ug/mL,有些行使用的是g/L,需要对单位进行统一,并将

ML.NET机器学习、API容器化与Azure DevOps实践(一):简介

為{幸葍}努か 提交于 2020-07-29 06:08:20
打算使用几篇文章介绍一下.NET下的机器学习框架ML.NET的具体应用,包括一些常用的业务场景、算法的选择、模型的训练以及RESTful API的创建、机器学习服务容器化,以及基于Azure DevOps的容器化部署等等相关的内容。如果你从来没有玩过机器学习,也从来没有了解过ML.NET,那么,本文将会是一个很好的开始。 机器学习 机器学习是一种对算法和统计数据模型进行科学学习的方式,通过使用这种方式,计算机系统能够有效地基于模式与推断,而非遵循特定的指令序列来完成一项特定的任务。机器学习是人工智能科学的一个分支,属于人工智能范畴。 (参考: https://en.wikipedia.org/wiki/Machine_learning )。 分类 机器学习可以分为如下几类: 监督学习(Supervised Learning) 无监督学习(Unsupervised Learning) 半监督学习(Semi-supervised Learning) 增强学习(Reinforcement Learning) 监督学习 从给定的训练数据集中学习出一种算法,当的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求是包括输入和输出,也可以说是特征和目标。训练集中的目标是由人标注的。常见算法分为: 统计分类 (Classification,根据训练模型,通过给定的特征属性

ML.NET案例详解:在.NET下使用机器学习API实现化学分子式数据格式的判定

纵然是瞬间 提交于 2020-07-28 20:19:59
半年前写过一篇类似的文章,题目是:《 在.NET中使用机器学习API(ML.NET)实现化学分子式数据格式的判定 》,在该文中,我介绍了化学分子式数据格式的基本知识,同时给出了一个案例,展示了如何在.NET/.NET Core中,使用微软开源的ML.NET框架,通过机器学习,实现化学分子式数据格式的预测。 时隔半年,ML.NET有了很大的发展。在阅读我之前那篇文章的时候,或许还会对给出的案例代码有些疑问,ML.NET经过几个版本的更新之后,API的设计变得更为合理易用,所开放的接口也越来越多(比如,新版本的ML.NET中,对机器学习引擎的OutputSchema进行了完全开放,开发者可以根据自己的需要进行调用),因此,本文就再一次回到这个话题并进行更为详细的介绍,用新版本的ML.NET重新实现化学分子式数据格式的判定。 有关化学分子式的相关知识,在这里也就不多说了,直接看代码实现部分。 准备数据 我们的数据仍然是一个CSV文件,通过逗号分隔,文件包含两个字段:结构式数据(ChemicalStructure),以及该结构式数据的类型(Type),以下是这个文件的部分片段,注意,在这个文件中,我们没有定义CSV头,不过这不重要,只要记得在后面的代码实现中,将这个设置体现出来就可以了。 [O-]C(CCCCCCCCCCCCCCCCC)=O.[Na+],SMILES O=C(C1)N(C2