banner

从 Azure Machine Learning 开始进入机器学习

作者: 大数据观察来源: 大数据观察时间:2017-03-29 17:12:570

什么是机器学习?

Machine Learning(机器学习)不是什么新技术,至少我在十几年前(远目)在大学时修这门课是就已经是发展一段时间的领域,而用最简单的说法来解释「机器学习」,就是让机器拥有学习能力,能够建立自己的「智慧」,进而在真实世界中进行推论(预测)、分类或是分群等动作,当然,就像我们人类学习一样,要嘛是读书破万卷,要嘛是从师长口中、生活当中得到经验,然后把这些内容、经验归纳出自己的智慧,机器要学习也需要大量的资料才能进行学习,而之所以最近会成为一个热门的话题,自然也是因为资通讯的发达后,人们开始想从大量资料(Big Data)中找出商业智慧或是利用这些资产来建立智慧,于是争相开始讨论机器学习。

 

具体来说,到底机器学习的是什么呢?科学家们将学习的模型分成几种类型,以上图为例,它是一种学习「分类」(classification) 的问题,透过合适的学习方法(学习演算法)建立起来的模型,就像图中的虚线一样,能够判断哪些资料是哪一个类别。以现实生活来举例,邮件伺服器可以透过机器学习来学会判断一封信是否为垃圾邮件,学习的资料就是过往大量的邮件,以及导师(例如你手动标记哪些信是垃圾信)标记哪些信是垃圾信,让邮件伺服器愈来愈有能力主动地判断一封新信件是否为垃圾邮件,这就是机器学习的应用之一。所以我们可以知道,机器学习是让机器(当然包含软体)有能力对于未来的事物或情境採取行动的方式。

Azure Machine Learning

 

Azure machine learning overview from Lin-Chieh Shangkuan

Azure 机器学习(Azure ML)是 Microsoft Azure 平台上其中一个服务,这个服务为想要进行机器学习的开发团队,提供了处理大数据的基础建设、机器学习的演算法、硬体运算资源、以及将模型变成 Web Service 等服务,让开发团队可以专注在资料的蒐集、要解决的问题、判断要「学习」什么问题,其它运算的工作就让 Azure 机器学习这个平台来完成。在这个服务下,不管你的资料放在哪裡(放在 Azure 上或不在 Azure 上),都可以拉进 Azure ML 来进行学习的工作,这裡我们以实际的操作来做说明。

上图是 Azure Machine Learning Studio 的首页,可以看到一些影片介绍,如果想要立刻免费体验 Azure ML(是的,有免费方案),可以点右上角的 Sign In 连结,使用 Microsoft 帐号(也就是之前的 Windows Live ID、MSN 帐号等)登入,就会进入 Azure ML Studio 的操作画面(或是你要称它为实验室也可以):

 

在这个 Studio 中,Machine Learning 的操作都是称作「实验」(experiments),你可以在一个实验裡训练一个或多个模型。

 

进入实验的操作画面,你可以看到中间的区域可以让你排列组织资料流的动线,还有要使用的资料操作、演算法、验证模型等等,而这些区块都是从左侧的面板拖拉进来的,像是选择适用的学习演算法:

 

这样就可以把 Bayesian Linear Regression 的演算法拉进来,再与其它的资料操作流程来连接。而右边的面板就是针对不同的区块进行设定:

 

在训练模型之前,你可能会想到先整理一下资料(data cleansing),像是删掉一些不用的栏位、或是只拿其中几个栏位来进行学习,这些都可以在 Azure ML Studio 中拖拉操作,如果有必要的话,也可以套入 R script 来自己写 code 处理:

 

除了可以处理资料之中,训练模型也可以使用由微软研究院研发多年的演算法模组来使用,你只要调整这些演算法的参数即可,如同这个例子想要做「预测」的学习,就可以直接套用 Regression 类的演算法,这裡我选了用 Linear Regression。

 

而训练好的模型也不是只有在实验室裡可以玩而已,可以直接设定 input/output 后,发佈成 Web Service:

 

看到这裡你也想玩一下 Azure ML 了吗?如同前面提到的,现在可以免费体验 Azure ML,而 Azure 官方网站也提供了一些 Lab 让你感受一下 Machine Learning 以及 Azure ML 提供的模组,可以到这裡试试看!

常见问题

Q: Machine Learning 很神吗?

A: 机器学习其实跟我们人类学习一样,你餵给它什么资料它就学什么,学习资料够不够多、学习方法(学习演算法)好不好、是否有抓到重点(选择训练的资料栏位)等等都会影响学习的成果,机器学习只是可以大量、快速学习,不代表它就一定会完全正确喔。

Q: 用 Azure ML 需要事先安装软体吗?还是限定作业系统呢?

A: Azure ML Studio 是一个完全以 HTML 技术开发的平台,只要在浏览器中就可以操作。

Q: 我的资料一定要放在 Azure 上才能学习吗?

A: 在 Azure ML Studio 中的 Data Reader 或 Hive Query 都可以让您从各个地方将资料透过 HTTP 匯入,并不限制一定得放在 Azure 上。不过 Azure HDInsight、Azure SQL Database 或是 Azure Storage 都很适合处理大数据,也很方便整合。

banner
看过还想看
可能还想看
热点推荐

永洪科技
致力于打造全球领先的数据技术厂商

申请试用
Copyright © 2012-2024开发者:北京永洪商智科技有限公司版本:V10.2
京ICP备12050607号-1京公网安备110110802011451号 隐私政策应用权限