微软机器学习Azure Machine Learning入门概览
Azure Machine Learning(简称“AML”)是微软在其公有云Azure上推出的基于Web使用的一项机器学习服务,机器学习属人工智能的一个分支,它技术借助算法让电脑对大量流动数据集进行识别。这种方式能够通过历史数据来预测未来事件和行为,其实现方式明显优于传统的商业智能形式。微软的目标是简化使用机器学习的过程,以便于开发人员、业务分析师和数据科学家进行广泛、便捷地应用。这款服务的目的在于“将机器学习动力与云计算的简单性相结合”。AML目前在微软的Global Azure云服务平台提供服务,用户可以通过站点:https://studio.azureml.net/ 申请免费试用。
登录到试用账号之后可以看到如下的界面:
对于初次使用者,可以通过选择左侧菜单的“Experiments”,然后选择左下角的New,弹出菜单后选择新增一个“Experiments Tutorial”,就能够启动一个内置的示例。这是一个根据已有数据包括年龄、教育层度、婚姻状态、职业、现收入等分析预测任何一类人群收入是否能超过50k的模型。通过点击下一步,用户就能轻而易举的了解如何导入数据、如何做数据的预处理、如何将数据分离用于训练模型和验证模型、如何选择算法训练模型以及如何评估模型的效果。整个过程无需编程,完全是通过拖拽和配置完成,非常的简单。能让用户快速上手AML用法,从而把更多的精力放在理解数据和算法上,工具本身并不会给你带来任何额外的学习成本。
同时,用户还可以通过 https://azure.microsoft.com/en-us/documentation/articles/machine-learning-import-data/ (英文)了解所有关于微软Azure机器学习相关的知识。我这里针对几个大家普遍关心的问题做一些解释,帮助大家快速了解AML并快速上手。
- 数据如何导入及数据的类型。
对于所要用于训练及验证模型的数据,需要导入到AML的Studio中。目前支持的数据导入方式如下:
•本地文件上传
•Azure BLOB storage, table
•Azure SQL database
•Hadoop using HiveQL
•A web URL using HTTP
•A data feed provider(OData)
支持的数据类型如下:
• CSV 文件,包括.csv和.nh.csv;
• TSV文件,包括.tsv和.nh.tsv;
• Hadoop Hive table
• SQL database table
• OData values
• SVMLight data (.svmlight) (具体描述见链接:http://svmlight.joachims.org/ )
• Attribute Relation File Format (ARFF) data (.arff) (具体描述见链接:http://weka.wikispaces.com/ARFF )
• Zip file (.zip)
• R object or workspace file (.RData)
2. 内置的算法
概括的说,微软Azure机器学习内置了基于监督学习和非监督学习的分类、回归、聚类等的20多种算法,详细的算法描述详见链接:https://msdn.microsoft.com/en-us/library/azure/dn905812.aspx 。我也会在后面的博文中陆续向大家介绍。除了算法之外, AML还集成了400+多个R语言的程序包。
对于选择什么样的算法,无论是对于初学者还是有经验的数据科学家,其实都是很让人费脑筋的事情。微软也提供了很多资料帮助大家判断应该选择哪些算法。如下是几个非常有用的链接(英文):
•Microsoft Azure Machine Learning Algorithm Cheat Sheet - https://azure.microsoft.com/en-us/documentation/articles/machine-learning-algorithm-cheat-sheet/
•Choosing a Learning Algorithm in Azure Machine Learning - http://blogs.technet.com/b/machinelearning/archive/2015/05/20/choosing-a-learning-algorithm-in-azure-ml.aspx
•Choosing a Machine Learning Classifier - http://blog.echen.me/2011/04/27/choosing-a-machine-learning-classifier/
•Choosing the right estimator - http://scikit-learn.org/stable/tutorial/machine_learning_map/
3. 内置的应用模块
为了方便微软Azure机器学习让更多的人很容易的上手和使用,AML原生内置了很多业务场景的原始数据和机器学习模块及API。用户可直接使用它们,或者做少量的修改为自己所用。主要的业务场景包括但不限于如下(还在持续增加中)。初学者可以先从这些已有的模块理解和掌握机器学习的使用。可以从登录首页上方菜单的“Gallery”中找到这些已经构建好的模型。
• 文本分析;
• 客户流失预测;
• 推荐系统;
• 预测性维护;
• 欺诈监测;
4. 如何计费
AML作为一个云服务,通过Web访问的方式提供。目前提供免费和标准两种服务提供方式。标准级别按照使用时长计费,具体可参考:http://azure.microsoft.com/en-us/pricing/details/machine-learning/
本文仅对微软的Azure机器学习服务做概要引导式的介绍,帮助大家对该服务有一个初步的了解。另外还有很多内容包括构建好机器学习模型之后如何发布等会在后面的博客中再向大家详细介绍。