数据科学中最好的5个机器学习API
机器学习作为大数据的前沿无疑是让人生畏的,因为只有技术极客和数据科学领域的专家才能驾驭机器学习算法和技术,对于大部分企业和组织而言,过去这一直都是一个遥不可及的事情。但是现在这种情况正在发生改变,正如标准的API简化了应用程序的开发一样,机器学习API也降低了这一领域的门槛,让越来越多的人和企业能够借助技术底蕴深厚的公司所提供的API试水机器学习。
机器学习API隐藏了创建和部署机器学习模型的复杂性,让开发者能够专注于数据挖掘和用户体验。同时,将机器学习商业化成云服务也是当今的趋势,IBM、 Microsoft、Google、Amazon以及BigML等公司都为业务分析师和开发人员提供了自己的机器学习即服务(MLaaS),最近 Khushbu Shah 在KDnuggets上发表了一篇文章,介绍了 这5个公司的机器学习API 。
IBM Watson Developer Cloud 于2013年十一月推出,它提供了一套完整的API,简化了数据准备的流程,让开发者能够更容易地运行预测分析。作为一个认知服务,IBM Watson API允许开发人员利用机器学习技术,如自然语言处理、计算机视觉以和预测功能,来构建更加智能的产品、服务或者应用程序,通过在应用中嵌入IBM Watson,开发者还能够更好地理解用户是如何与应用程序交互的。
IBM Watson是一个包含听、看、说以及理解等感知功能的扩展工具集,它提供的API超过了25个,涵盖了近50种技术,其中最主要的服务包括:
- 机器翻译——帮助翻译不同语言组合中的文本
- 消息共振——找出短语或单词在预定人群中的流行度
- 问答——为主文档来源触发的查询提供直接的答案
- 用户模型——根据给定的文本预测人们的社会特征
Microsoft Azure机器学习API
Microsoft Azure机器学习 是一个用于处理海量数据并构建预测型应用程序的平台,该平台提供的功能有自然语言处理、推荐引擎、模式识别、计算机视觉以及预测建模等,为了迎合数据科学家的喜好,Microsoft Azure机器学习平台还增加了对Python的支持,用户能够直接将Python代码片段发布成API。借助于Microsoft Azure机器学习API,数据科学家能够更容易地构建预测模型并缩短开发周期,其主要特性包括:
- 支持创建自定义的、可配置的R模块,让数据分析师或者数据科学家能够使用自己的R语言代码来执行训练或预测任务
- 支持自定义的Python脚本,这些脚本可以使用SciPy、SciKit-Learn、NumPy以及Pandas等数据科学类库
- 支持PB级的数据训练,支持Spark和Hadoop大数据处理平台
Google预测API
Google预测API 是一个云端机器学习和模式匹配工具,它能够从BigQuery和Google云存储上读取数据,能够处理销售机会分析、客户情感分析、客户流失分析、垃圾邮件检测、文档分类、购买率预测、推荐和智能路由等用户场景。使用Google预测API的用户不需要人工智能的知识,只需要有一些基础的编程背景即可。 Google预测API支持众多的编程语言,比如 .NET、Go、Google Web Toolkit、JavaScript、Objective C、PHP、Python、Ruby和Apps Script,基本覆盖了主流的编程语言。
Amazon机器学习API
Amazon机器学习 API让用户不需要大量的数据专家就能够实现模型构建、数据清洗和统计分析等工作,简化了预测的实现流程。虽然该API有一些UI界面或者算法上的限制,但是却是用户友好和向导驱动的,它为开发者提供了一些可视化工具,让相关API的使用更直观、也更清晰。
Amazon机器学习API支持的用户场景包括:
- 通过分析信号水平特征对歌曲进行题材分类
- 通过对智能设备加速传感器捕获的数据以及陀螺仪的信号进行分析识别用户的活动,是上楼、下楼、平躺、坐下还是站立不动
- 通过分析用户行为预测用户是否能够成为付费用户
- 分析网站活动记录,发现系统中的假用户、机器人以及垃圾邮件制造者
BigML
BigML 是一个对用户友好、对开发者友好的机器学习API,该项目的动机是让预测分析对用户而言更简单也更容易理解。BigML API提供了3种重要的模式:命令行接口、Web接口和RESTful API,其支持的主要功能包括异常检测、聚类分析、决策树的SunBurst可视化以及文本分析等。
借助于BigML,用户能够通过创建一个描述性的模型来理解复杂数据中各个属性和预测属性之间的关系,能够根据过去的样本数据创建预测模型,能够在BigML平台上维护模型并在远程使用。