六款最热门微软机器学习工具,你值得拥有
本文将简要介绍微软发布的供数据科学家和开发者们使用的最新机器学习工具,其中包括在微软全球开发者(Build)大会2019上发布的最新产品。
微软的一些工具能够将数据科学普及开来,还有一些可以减轻数据科学家的工作。最棒的是,每个人都能找到适合自己水平的工具。
1. AutoML — 自动机器学习
自动机器学习近期一直颇受关注,它是一款可以自动选择并训练机器学习模型的软件。一些人认为其取代了数据科学家的工作,然而AutoML的能力其实是有限的。
目前,微软的AutoML能够自动构建一组机器学习模型并智能选择训练模型,然后基于机器学习的问题和数据种类推荐最佳模型。通常来说,一位具有专业知识的数据科学家会亲手制作几十个模型并将它们进行对比。简言之,AutoML就是能够选择正确的算法,帮助调整超参数。AutoML当前仅支持解决分类、预测以及回归问题。
AutoML可以和Azure机器学习服务或ML.NET一起使用。要进行自动化机器学习训练,首先确定机器学习的问题,然后详述已标记训练数据的来源和格式,为模型训练配置计算目标,并在最后配置自动机器学习参数。
适用于:分类、预测或回归问题
不适用于:无监督学习和复杂数据类型
使用难易度:中
是否需要数据科学知识:需要
费用:免费。AutoML与Azure机器学习服务或ML.NET一同使用时,需支付与之相关的费用。
2. Azure机器学习服务 — 云服务
云服务是使用云供应商有关数据储存和加工的资源,不受本地设备或资源的限制。云服务具有高度的可操作性和全面的技术支持服务。
Azure机器学习服务提供软件开发工具包和服务以快速准备数据,训练和部署自定义机器学习模型。Azure机器学习服务还支持Python开源框架,如PyTorch,TensorFlow和scikit-learn。而且任何一种机器学习都可以兼容,包括传统机器学习、深度学习、监督学习和无监督学习。此服务包含创建机器学习流水线所需的一切。
这项服务还整合了几项有用的功能:AutoML、MLOps(适用于机器学习的DevOps)、模型互操作性、使用FPGA(现场可编程门阵列)以及使用ONNX(开放神经网络交换)优化模型得分。
使用此服务时需要通过Azure门户界面,Python软件开发工具包,ResourceManager template或命令行界面创建工作区。可以在工作区使用本地(Jupyter)笔记本服务器或在Azure机器学习工作室可视界面在云端进行操作。
适用于:需构建自定义模型或需与深度学习模型配合使用
不适用于:不习惯使用Python工作或想要简洁一些的服务
使用难易度:高
是否需要数据科学知识:需要
费用:仅需为训练模型的资源付费。部署模型的定价请参阅AzureKubernetes服务(AKS)。
图片来源:pexels.com
3. Azure机器学习工作室 — 可视界面
可视界面是无代码平台或低代码平台,不编程也能使用机器学习等功能。其中一些是下拉列表,所以在这种情况下,它只是一个拖放工具。
Azure机器学习工作室是一款拖放式机器学习工具,允许构建、训练和自定义模型,从上传一组自定义数据开始,到在图形界面处评估结果。一旦有了训练过的模型,就可以直接通过工作室(Studio)将其用于Web服务(Web Service)。然后会获得一个端点和API密钥,可以在任何应用程序中使用。目前,它只能处理分类、回归和聚合问题。
创建一个Azure机器学习工作室账户,然后开始操作吧。选择一个现有的数据集或上传自己的数据集,处理数据、选择算法,然后训练、评分并且评估模型。对模型满意的话,可以将其部署到Web服务中用于应用程序。这虽然不是代码,但是仍需要一些基本的数据科学知识。
适用于:使用无代码或低代码平台处理分类、回归和聚合问题。
不适用于:倾向于使用编程,认为编程比将内容拖放到界面上更容易。
使用难易度:低
是否需要数据科学知识:需要
费用:免费版或标准版每月每位9.99美元,工作室实验每小时1美元。ProductionWeb API需额外付费。
4. 认知服务 — 机器学习Web API
Web API服务一般通过HTTP运行,第三方可以通过WebAPI修改他人的代码。它可以用于访问第三方收集或创建的数据。例如,天气数据或由语音转换为文本。
微软的API服务被称为认知服务。这些服务可以直接部署于Azure,可用于五个领域——视觉、语言、语音、搜索和决策。这些都是预先训练过的模型,如果需要自定义模型,它们就没什么用。这些模型适合那些对数据科学了解甚少但却对机器学习极有热情的开发者。认知服务最伟大的一点是它是一个与语言无关的平台。
如需使用,请进入Azure门户并搜索所需服务,然后启用新服务。完成后会获得可用于任何应用程序的一个端点和API密钥。
适用于:不想学习数据科学,但想在应用程序中嵌入机器学习
不适用于:需自定义模型
使用难易度:低
是否需要数据科学知识:不需要
费用:费用不等。所有的认知服务都有免费版。
图片来源:pexels.com
5. BotFramework — 聊天机器人框架
Bot framework是用于制作机器人的骨架代码,大多为聊天机器人。它可以制作简单的机器人——为客户提供选择,也可以制作很高级的机器人——能用语言交流,感觉上和听觉上都像人类。BotFramework有无限的可能性。
Bot Framework是微软用于创造聊天机器人的一项服务。它一般与LUIS和QnA Maker一同使用。LUIS是微软开发的的智能语言语义理解服务,为机器人提供自然语言处理功能以理解意义和语义。QnAMaker允许使用问答对训练机器人。在微软全球开发者(Build)大会2019上,发布了一项名为ProjectPersnality Chat的实验服务,用户可以设置机器人以特定性格类型进行闲聊,如友好型或幽默型。
使用BotFramework的方式有很多,如软件开发工具包(SDK)、VisualStudio 模板或在Azure中创建并部署一个WebAPP bot。使用LUIS和QnAMaker的图形用户界面,可以分别设置意图、实体和问答对。
适用于:不断调整你的聊天机器人
不适用于:不想编程人群
使用难易度:中
是否需要数据科学知识:不需要
费用:免费版每月上限为10000条信息,S1版每1000条信息0.5美元。额外附加费用取决于托管服务,包括WebAPP bot,Functions Bot或BotChannels Registration。
6. ML.NET — 机器学习框架
框架是可以在上面使用并构建个人应用程序的通用骨架代码。框架可以自动监视低级别的功能,因此用户只需注意应用程序逻辑。
ML.NET是微软为.NET开发者提供的最新开源跨平台机器学习库。它支持Windows,Linux和macOS系统的C#或F# 训练。其最新版发布于微软全球开发者(Build)大会2019。它是CNTK——已被弃用的机器学习框架,的替代品。
在微软全球开发者(Build)大会2019上,他们发布了ML.NETModel Builder,这是一个集成了AutoML以构建并训练模型的可视界面,是目前为止的最好发明。ML.NET拥有分类、回归、异常检测和推荐训练算法,可以使用Tensorflow和ONNX进行扩展。
首先通过nuget下载安装包,在代码中添加对包的引用,然后访问库内可用函数或类函数。
适用于:.NET开发者并且能轻松地构建个人的机器学习流水线。
不适用于:使用Python开发
使用难易度:高
是否需要数据科学知识:需要
费用:免费
这些机器学习工具你绝对值得拥有!如果想要更好地进行机器学习,就单凭以上6个工具,也值得你去关注微软。
留言 点赞 关注
我们一起分享AI学习与发展的干货
欢迎关注全平台AI垂类自媒体 “读芯术”