​这些常见的机器学习工具,不知道的快来补课

  1. 云栖社区>
  2. 博客>
  3. 正文

​这些常见的机器学习工具,不知道的快来补课

异步社区 2018-09-25 15:29:18 浏览1451
展开阅读全文
随着人工智能的火热,很多企业甚至是数据挖掘爱好者开始尝试自己动手来挖掘数据中的价值。机器学习的基础设施包括数据、算法和工具。前面已经介绍了数据和算法方面的内容,本文将重点介绍机器学习工具。

机器学习工具从计算能力上来讲可以分为两种,即单机计算和集群计算。本文会分别对单机版机器学习工具、开源分布式机器学习工具以及企业级云机器学习工具进行介绍,如图1-1所示。

061e669397ebea7b6602200bd88a2a05

图1-1 机器学习工具

首先介绍单机版的机器学习工具。如果读者有过数据挖掘的经历,一定会对下面几款工具都有一定了解:SPSS和R。这些都是单机版机器学习工具的代表,每一款产品都有自己的特点,SPSS的操作更方便,R的画图功能比较简洁。

单机版工具的特点就是安装方便,比较好上手,因为单机版工具不依赖于底层计算集群的配置。

但是单机版工具在计算能力上不能与分布式机器学习工具相提并论,往往只能进行一些数据的实验或者画图展示,在企业级数据处理和业务服务上相对比较乏力。

介绍完单机版机器学习工具之后,接下来讲一下分布式机器学习工具。笔者认为,真正的智能计算平台一定是具备处理大规模数据、提供丰富算法能力的计算平台。通常来讲,一套完整的机器学习工具的架构包括4层,如图1-2所示。

465376d100444fc502f9a72e4357b130

图1-2 智能机器学习工具的架构

从上向下看,例如有一些业务上的需求,如搭建广告DSP系统、搭建商品推荐引擎。这些业务场景的需求建立在底层的机器学习算法上,如同之前讲到的业务场景抽象的内容。

底层的这些机器学习算法,如K-means、LR和RF等,需要映射到分布式计算架构上,通过MPI和MapReduce等分布式的代码架构来实现这些算法。最后分布式的代码架构把任务部署到底层的计算引擎上。

目前随着云计算和智能算法的发展,智能机器学习算法的架构搭建也有了多种选择,有集群+Spark+Mlib的开源组合,也可以使用一些云计算服务商的企业级机器学习平台服务,比较成熟的包括亚马逊的AWS Machine Learning、微软Azure的Machine Learning Studio以及阿里云机器学习PAI。

使用开源架构搭建算法平台可能会提升自身对数据流转和算法订制方面的灵活性,但是在集群运维以及算法开发方面的开销也会比较大。

接下来将分别对单机版机器学习工具、开源分布式机器学习工具和企业级云机器学习工具进行介绍进行介绍,主要从相关依赖、操作的易用性及算法丰富程度等方面展开(注:本文的实验环境为Mac OS系统)。

单机版机器学习工具

对普通用户来讲,特别是一些算法能力还不扎实的数据挖掘初学者来讲,使用单机版的机器学习工具可以更快速地上手。本节将重点介绍两款工具,分别是SPSS和RStudio。

1.1.1 SPSS

(1)简介。统计产品与服务解决方案(SPSS)软件是世界上最早的统计分析软件,由美国斯坦福大学的3位研究生Norman H. Nie、C. Hadlai (Tex) Hull 和 Dale H. Bent于1968年研究开发成功,同时成立了SPSS公司,并于1975年成立法人组织,在芝加哥组建了SPSS总部。

2009年7月28日,IBM公司宣布用12亿美元现金收购统计分析软件提供商SPSS公司。如今 SPSS 已出至版本 22.0,而且更名为IBM SPSS。迄今,SPSS公司已有40余年的成长历史。

SPSS软件的主要特点是操作界面极为友好。它将几乎所有的功能都以统一、规范的界面展示出来,使用Windows的窗口方式展示各种管理和分析数据方法的功能,对话框展示出各种功能选择项。用户只要掌握一定的Windows操作技能,熟悉统计分析原理,就可以使用该软件进行科研工作。

(2)安装。SPSS是付费软件,具体安装方法简便。登录官网下载SPSS工具,并且购买许可证,直接安装注册即可。这里演示使用的是SPSS 21.0版本,进入产品界面,如图1-3所示。

e5e194592402b67b23b1ce90a2edba06

图1-3 SPSS界面

(3)运行实验。打开SPSS软件,提示导入数据源。SPSS支持多种数据源输入,如图1-4所示。

5b1dffb7070fdf92e2012368b64d9da4

图1-4SPSS数据源

这里导入的是UCI开源数据集的一组数据,是一个二分类的场景。利用这组数据做一个逻辑回归二分类的模型计算。把数据导入SPSS中,其中dioxide_A字段是目标列(目标列分为0和1两种值),其他字段是特征列,如图7-5所示。

9e2b523d12541c56befd46562ba8ea11

图1-5 数据导入

打开菜单栏中的“分析”菜单,如图1-6所示,选择“二元logistic回归”。这里面的“因变量”表示目标列,“协变量”表示特征字段,单击“确定”按钮开始模型训练。

a9fba32cf6d00221a16fc7551be11163

图1-6 逻辑回归设置

最终的输出结果可以通过输出查看器来显示,模型的评估模块如图1-7所示。

8a4c9e6d63718ff94e5786e8f9fd1d21

图1-7 模型评估

逻辑回归的模型评估模块针对每一个特征都有多维度的表示。在这些统计指标中,下面4个指标比较关键。

“B”:偏回归系数,也就是生成的线性模型的系数。

“S.E”:标准误差。

“Wals”:Wald统计量。

“EXP(B)”:变量的有时比。

最终这次实验生成的逻辑回归模型可以表示为:logistic=0.399*fixed-3.895*acidity_A-2.884*volatile-0.006*acidity-2.473*citric+0.039*acid-0.026*residual-15.696*sugar+0.847*chlorides+1.925*free+0.879*sulfur_A+3.056从SPSS的总体设计角度来看,SPSS还是一款偏统计的软件。数据通过类Excel表格的方式进行操作,大大降低了数据操作者的使用门槛,但是如果想针对数据进行自定义的开发,无论是通过脚本还是数据转换工具都显得比较困难。

要想进行大规模的数据挖掘工作,从算法自由度或是效率上来看,SPSS还是有一定局限性的。

1.1.2 R语言

(1)简介。如果读者是做数据挖掘相关工作的,一定会听说过R语言,现在很多对数据挖掘工程师的基本要求都包含这一条:熟悉R语言。

R语言究竟有哪些特性?

我们通过本文简单地了解一下。先来介绍背景,R是一款集统计计算和绘图功能于一体的软件。R语言的前身是S语言,S语言是由著名的AT&T贝尔实验室开发的用来数据分析和绘图的语言。

后来经过新西兰奥克兰大学的Robert Gentleman等人在S语言的基础上继续开发,诞生了R语言的雏形。

R语言主要具备下面一些优点。

开源。R语言是一款完全开放源码的工具。因为开源,数据开发工作者可以自由地阅读R语言的源码,而且可以基于R语言的代码进行扩展,这也是R语言能在短时间内得到快速发展的原因。

每天都有来自全世界的开源爱好者为R语言贡献代码包,使用者可以通过install命令轻松地安装这些扩展算法。R语言不同于SPSS等软件,它可以自如地修改已有的算法,使算法跟自己的业务场景更加贴合。

跨平台。R语言的跨平台特性大大加快了这项技术的传播,目前无论是在 Mac OS、Windows或者Linux系统上都有较为稳定的版本可供使用。用户只需要一套代码,就可以把业务逻辑运行在不同的平台上。

较为完善的资料。因为目前R语言的开源贡献者众多,而且R语言无论在学术界或是工业界都有很多的应用,已经有大量的使用者贡献了许多可以参考的学习资料或者实例代码。关于R语言的一些应用,已经有相关图书资源可供参考。

可视化。R语言在数据可视化方面也独具特色,提供了很多种画图包以及丰富的绘图功能,使生成的数据可以清晰地可视化展现出来。例如,画一条定义域为[-3,3]的Sigmoid函数曲线。Sigmoid函数公式为

ffc467bb690a8f0b174440f9753b2629

用户只需要输入如下指令,就可以得到如图1-8所示的截图。

78991b475d51b4831199a5f26d0356b5

图1-8 R绘图

  > x<-seq(-3,3,by=0.01)

 > y<-1/(1+exp(-x))

 > plot(x,y)

R语言的使用方式是通过命令行的形式来实现的。R语言的特点是比较简单、容易理解,配合上丰富的算法包,初学者基本上学习半天时间就可以跑通一整套复杂的数据挖掘实验。RStudio是针对R语言的一款IDE工具,下面会通过一个案例,详细介绍如何通过RStudio跑通逻辑回归算法。

(2)安装。本书的实验环境是Mac OX 10.11.1 EI Capitan系统。使用RStudio需要首先安装R语言包,读者可以去官方网站下载R语言,地址为https://www.r-project.org/,安装成功后,打开R看到的是一个命令行终端界面,如图1-9所示。

3b6c987a256425fd49fb17fab33d6c21

图1-9 R终端

安装R语言之后,就可以安装RStudio,下载地址为https://www.rstudio.com/,进入界面,如图1-10所示。

26d962b4e7ada43cc4befa202d9ce7a9

图1-10 RStudio界面

(3)运行实验。安装RStudio完成之后,本次实验将会针对一份开源数据集进行逻辑回归模型训练实验。首先导入数据,RStudio支持多种数据格式的导入,部分格式可能需要安装对应的函数包。

本次实验导入的是CSV格式文件,导入方法有两种,可以使用RStudio提供的Import Dataset按钮,也可以通过如下函数实现。

> data <- read.csv

("~/Documents/work/book/data/data.csv", sep=";")
>View(data)

导入数据之后,用户就可以可视化查看数据,如图1-11所示。

ee0881bdbe2d786de1361a0e5abba89d

图1-11 R数据导入

下面介绍如何对数据进行逻辑回归处理。其实在RStudio里面只需要以下一行代码就可以实现。

 mylogit <- glm(label ~ ., data = data, family =binomial(link='logit'))

mylogit表示逻辑回归对象名称。

glm是线性模型函数。

abel是目标列,~表示除目标列以外的字段。

data表示数据集。

binomial表示二分类。

link='logit'表示逻辑回归。

用户可以通过summary函数查看生成的模型。

 summary(mylogit)

结果如图1-12所示。

d8c769fbb8246c18e48ec1c4a991eed1

图1-12 逻辑回归结果

结果(见图1-12)中的Estimate字段就是生成的逻辑回归模型系数,我们可以得到最终的逻辑回归模型如下。

logit=3.05+0.39*fixed.acidity-3.89*volatile.acidity-2.88*citric.acid-0.006*residual.sugar-2.47*chlorides+0.03*free.sulfur.dioxide-0.02*total.sulfur.dioxide-15.69*density+0.84*pH+1.92*sulphates+0.87*alcohol

另外,用户还可以通过R语言强大的图形展示功能查看一下模型的拟合情况。

> plot(mylogit)

此时可以看到结果如图1-13所示。

e5bef0648dec11ce85143183caf15c37

图1-13 图形拟合曲线

通过上面的实验,读者可以简单了解RStudio以及R语言的语法和操作方式,可以看到R语言的语法是非常容易理解的,而且对结果的图形化展示功能也能让数据操作者更直观地观察结果输出。

在数据源支持方面,RStudio支持导入本地数据源,同时也支持服务器连接。具体支持的格式可以通过安装相应的插件来扩展,基本包含了 SPSS 的全部格式,对各种数据库文件也有良好的支持。

在算法支持方面,因为R语言是建立在开源社区之上的,所以有很多算法包可供选择,基本涵盖了特征工程、分类算法、聚类算法、回归算法和神经网络算法等常规机器学习算法,而且在算法扩展性方面,也支持对算法进行更大幅度的自定义改造。

因为R语言具备如此多的优良特性,所以近期有越来越多的分布式系统正在对R语言进行改造,期盼R语言也可以实现分布式的计算,从而突破目前所遇到的计算资源上的瓶颈,未来的云RStudio会更加令人期待。

总之,R语言对于做数据挖掘的工程师来讲,是一个非常理想的实验环境,特别是在计算结果可视化呈现方面。

开源分布式机器学习工具

前面介绍了一下单机版的机器学习工具SPSS软件和RStudio,作为单机版的工具,不用关心集群配置和运维等操作,所以SPSS软件和RStudio都具有容易安装和上手的特点。

但是在实际的使用过程中,特别是数据量比较大的情况下,就会出现效率低下的问题。对大规模的机器学习计算,需要通过分布式架构进行处理,本节将重点介绍一下目前比较流行的两种支持分布式机器学习工具,分别是Spark MLib和Tensorflow。

1.2.1 Spark MLib

1.简介

MLib是Spark的机器学习算法库,是完全开源的。以Spark框架为基础构建的机器学习算法系统目前正在广泛地运用到各种领域当中。

既然要从处理实际的工业界场景的角度出发,Spark和Hadoop的MapReduce框架是目前业内最主流的两种开源分布式架构,难免要对它们进行一下对比,我们单从对机器学习算法的支持方面考虑如下。

(1)对多步迭代的支持。通过算法章节对算法的介绍,我们了解到大部分算法需要通过多步骤的迭代计算才可以实现,如梯度下降算法,需要通过多次迭代计算损失函数,然后才可以逐步逼近最优解。

传统的Hadoop的MapReduce计算框架,在每次迭代的过程中都需要对硬盘进行读写,这样就造成了很大的I/O消耗,降低了效率。

而Spark分布式计算框架是基于计算机内存来进行迭代计算的,通过将大量的计算工作在内存中处理的方式,可以大大减少对硬盘的数据读写,从而提高迭代类算法的计算效率。

(2)从集群通信的角度分析。Spark的Akka和Netty通信系统在信息传递和数据传递两方面,从效率上来讲都远远优于Hadoop的JobTracker间的通信机制。

以上两点是从分布式计算架构的角度分析得到的Spark相较于MapReduce的优势,下面介绍Spark MLib库的一些属性。

MLib 作为分布式机器学习算法库,设计的初衷是使机器学习算法更容易使用和扩展。

对数据集的支持方面,Spark MLib 支持本地的一些向量和矩阵数据,同时支持底层的弹性分布式数据集(RDD)。RDD是分布式内存的一个抽象概念,提供一种高度受限的内存模型,可以看作Spark MLib 的一个对象,运行在内存中。

以上是对Spark MLib的基础介绍,下面介绍如何构建Spark MLib机器学习系统。

2.安装配置环境

(1)首先下载Spark,实验环境为Mac OS,需要安装jdk。Spark下载地址为http://spark.apache.org/downloads.html,下载完成后解压,在命令行终端进入Spark目录,执行如下命令就可以启动Spark。

./sbin/start-master.sh

启动Spark之后,用户可以登录浏览器的localhost://8080 查看,如图1-14所示。

db739957c218c53bbf3c2d0b18828b7a

图1-14 登录Spark

(2)我们发现此时的Workers和Running Applications都是空的,因为Spark是基于分布式系统的计算框架,所以需要添加Worker才能让这个系统运行起来,否则是不能使用的。

为了方便讲解,这里把本机添加成Worker,添加其他集群机器的原理是相同的。添加Worker需要deploy worker的命令如下。

./bin/spark-class  org.apache.spark.deploy.worker.Worker spark://IP:PORT

如果添加的是本机,IP:Port可以通过图中的框线处得到,如图1-15所示。

9b8c4c0db1024f52186ece0f8e6c7350

 图1-15  IP图

将本机添加成Worker之后,再次刷新localhost:8080就可以看到Worker出现在列表中了,如图1-16所示。

92795f6578d3fc1bd61914174c5bd50c

图1-16 添加Worker

1.2.2 TensorFlow

1.简介

TensorFlow,是一个开源的机器学习框架,是基于著名的DistBelief开发的。最初的TensorFlow由“谷歌大脑”团队的研发人员开发,是用来研究深度神经网络的工具,但是随着架构的不断完善,整个系统已经被改造得可以适用于多种不同的场景。

Google在2015年将TensorFlow开源后,迅速得到来自IT行业各界的强烈反应。Android作为Google开源产品的标杆,已经占领了移动端市场,人们都在猜测,TensorFlow或许是Google进军人工智能市场的一把“尖刀”。

目前来看,TensorFlow具备着优良的特性,而且在新的版本中已经支持了分布式计算。在未来一段时间里,TensorFlow势必要引领机器学习的一段潮流。

先来简单介绍一下什么是TensorFlow,从字面意思来理解,Tensor 表示张量,是指任意维度的数据。在TensorFlow中,数据是通过数据流的形式在算法节点中流转的。我们通过深度学习的一张架构流程图(见图7-24)来解释。

f1f1dc99f4e7e698aa90ba8df16cc1f8

图1-17 深度学习

通过这张深度学习的架构图来分析,图1-17中竖形单元表示算法层,有输入层、隐藏层和输出层,每个圆形的单元是计算节点。

TensorFlow中的数据以数据流的形式在计算节点中流动。从前向后流,就是前向传播,从后向前流,就是后向传播,Flow表示的就是数据的这种流动。仅从字面意思来看,TensorFlow的具体计算形式已经表现得很清楚了。

下面简单介绍下TensorFlow的一些特性。

(1)灵活性。TensorFlow的灵活性不只表现在对算法的支持上,也表现在架构方面。TensorFlow支持单机计算和分布式计算,同时也可以将计算在CPU和GPU之间灵活切换。

在对算法的支持方面,TensorFlow不单单是一个神经网络库,它还可以看作机器学习的编程架构,开发者可以将自己的算法逻辑写成流图的形式,然后就可以把自己定义的算法运行在TensorFlow的架构中去。

(2)易用性。TensorFlow可以自动计算梯度,只需要手动设置好计算架构,设置好目标函数,然后向系统中灌入数据即可,中间的计算和参数权重变化都是自动完成的,同时系统也提供了办法帮助用户监督整个计算流程。

在具体使用方面,虽然TensorFlow的底层代码是通过C++来编写的,但是可以通过Python接口来创建计算流图。用户在逻辑代码的计算框架编写方面也比较容易上手。

(3)良好的资源调度能力。TensorFlow可以帮助开发者充分利用计算资源。对计算资源的调度可以高度自定义,可以自由调用CPU和GPU,同时也支持线程、队列和异步计算等。

TensorFlow让开发者可以充分利用自身的硬件资源,而且可以让数据流在不同的机器上自由流转。

2.实验环境搭建

前面介绍了TensorFlow的一些概要和基本性能,接下来介绍搭建TensorFlow的实验环境,并且跑通程序员们最熟悉的程序——Hello World。

(1)安装pip。pip是Mac系统中的一个Python的安装工具,TensorFlow可以通过pip自动安装,具体命令如下。

sudo easy_install pip 
sudo easy_install --upgrade six

如果已经安装了pip,可以忽略这一步.

(2)安装Virtualenv。Virtualenv是一个用于隔离本地Python环境的工具,因为TensorFlow在使用过程中需要对环境参数做一定的调整,所以推荐安装Virtualenv来进行隔离。

具体的操作步骤是首先安装Virtualenv,命令如下。

sudo pip install --upgrade virtualenv

然后在Virtualenv环境中创建一个tensorflow目录,命令如下。

virtualenv --system-site-packages ~/tensorflow

激活环境,可以通过activate和activate.csh两种方式,命令如下。

source ~/tensorflow/bin/activate# If using bash 
source ~/tensorflow/bin/activate.csh# If using csh

(3)安装TensorFlow。现在就可以通过pip在这个环境下安装TensorFlow了,根据Python的版本不同而选择不同的安装命令如下。

# Python 2
 (tensorflow)$ pip install --upgrade $TF_BINARY_URL 
# Python 3
(tensorflow)$ pip3 install --upgrade $TF_BINARY_URL

命令中的TF_BINARY_URL需要根据系统版本,Python版本是否支持GPU来进行选择。

# Mac OS X, CPU only, Python 2.7: 
(tensorflow)$export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-0.10.0-py2-none-any.whl

# Mac OS X, GPU enabled, Python 2.7: (tensorflow)$export 

TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/gpu/tensorflow-0.10.0-py2-none-any.whl

# Mac OS X, CPU only, Python 3.4 or 3.5:
(tensorflow)$export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-0.10.0-py3-none-any.whl 
 # Mac OS X, GPU enabled, Python 3.4 or 3.5: 
(tensorflow)$export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/gpu/tensorflow-0.10.0-py3-none-any.whl

(4)示例。前面已经把TensorFlow的计算环境安装完毕,我们激活Virtualenv下面的TensorFlow后,会进入到Python的隔离环境中,命令行终端的最前端会出现“tensorflow”的字样。下面介绍Hello world的执行代码。

#tf
import tensorflow as tf
hello = tf.constant('Hello world!') 
sess = tf.Session()
print(sess.run(hello))

constant是TensorFlow的一种数组,这里就不详细介绍了。下面主要来说一下Session的概念,Session表示会话的概念,在TensorFlow系统中,用户通过会话来与TensorFlow系统交互。一般的模式是先建立会话,然后在会话中添加节点和边,再通过Session来与TensorFlow交互。执行上面的这个代码文件,就会看到返回的结果,如图7-25所示。

d7ac09267f77ebaed57d1b550a0dc870

图1-18 结果

综上,一个单机版的TensorFlow就已经安装成功,并且跑通了Hello World实验。

企业级云机器学习工具

前面介绍的分别是单机版的机器学习工具和开源的分布式机器学习工具,虽然这些工具大多都具备友好的操作方式和丰富的算法,但是在企业级服务方面还是存在一些缺陷。接下来详细介绍亚马逊机器学习平台和阿里云机器学习平台PAI。

1.3.1 亚马逊AWS ML

Amazon Web Service(AWS)是亚马逊在2006年推出的云计算服务,主要优势是能够以根据业务发展来扩展的较低可变成本来替代前期资本基础设施费用。根据亚马逊提供的数据,AWS已经为全球 190 个国家和地区的企业提供支持。

AWS目前是云计算行业的领军者,曾经击败过IBM获得美国中情局的云服务大额订单。亚马逊机器学习,是2015年4月份推出的一款能够帮助开发者使用历史数据开发并部署预测模型的服务。

这些模型有广泛的用途,包括对欺诈行为的检测、防止用户流失并改进用户支持。亚马逊机器学习是通过向导的方式为开发者提供关于机器学习模型的创建和调试流程的指导,从而部署并扩展模型,支持数十亿级别数据量的预测。

亚马逊通过向导的方式建立实验,并且把机器学习服务和Amazon Simple Storage Service(Amazon S3)、Amazon Redshift、Amazon Relational Database Service(Amazon RDS)集成,让客户使用存储在AWS云服务上的数据,做到整个云服务的生态打通。

1.3.2 阿里云机器学习PAI

前面介绍了亚马逊的企业级机器学习服务AWS ML,接下来将介绍一款国内目前比较成熟的机器学习平台,来自阿里云的机器学习PAI。

阿里云机器学习PAI是一款几乎涵盖了所有种类机器学习算法的机器学习平台。阿里云机器学习的底层计算引擎是阿里云研发的飞天分布式计算引擎,可以处理EB级别的数据。

算法平台本身涵盖了从数据预处理、特征工程、机器学习算法、模型评估、预测和部署一整套的机器学习算法解决方案,因为打通了整条数据挖掘的链路,使得阿里云机器学习可以不单作为一款科学研究的工具,也可以作为企业级的算法解决方案来使用。

我们先来了解下这款产品的功能架构,如图1-19所示。

4a644609095076e1ed6ca08f21acef5c

图1-19 机器学习平台架构

自下向上来分析架构图,阿里云机器学习的最底层是支持异构调度(指CPU和GPU混合分布)的分布式计算引擎,支持GPU主要是为了更好地支持上层的深度学习算法。

在计算基础设施上面的计算架构层支持了几款主流的分布式架构MR和PS等。在实际的操作中,用户对计算框架和基础设施这两层是无感知的,用户只需要考虑自己的场景适用于哪些算法即可,做到了算法和计算架构的解耦。

相较于 AWS ML 的向导式算法模型搭建流程,如图1-20所示,阿里云机器学习平台采用拖拉拽的方式搭建实验流程,向导式的模型训练建立方式能更容易上手,但是阿里云这种拖拉拽式的操作对实验的扩展性和自定义性更有保证。

4af578775db82ee7dba108d98b70d177

图1-20 阿里云机器学习平台界面

进入操作界面,我们可以看到左边是一个个算法组件可供拖曳,把组件拖拽到中间的画布上,然后按照算法逻辑连线,在最右边的设置框中定义每一个组件的参数。

这样的体验给人一种搭积木式的感觉,不需要去考虑底层的计算资源和运维这些因素,算法工程师只要把精力聚焦到业务的场景以及算法的搭配即可。

在使用阿里云机器学习平台进行实验的时候有一点需要注意,因为在搭建数据预处理、特征工程和机器学习算法等环节时都有很多的组件供选择(AWS ML选择余地相对单一),所以要求使用者具备一定的机器学习基础。

9ccc0ca9gy1fvlszzh0d5j206y0a4gqd.jpg

《机器学习实践应用》

李博 著

本书通过对机器学习的背景知识、算法流程、相关工具、实践案例以及知识图谱等内容的讲解,全面介绍了机器学习的理论基础和实践应用。书中涉及机器学习领域的多个典型算法,并详细给出了机器学习的算法流程。 

本书适合任何有一定数据功底和编程基础的读者阅读。通过阅读本书,读者不仅可以了解机器学习的理论基础,也可以参照一些典型的应用案例拓展自己的专业技能。同时,本书也适合计算机相关专业的学生以及对人工智能和机器学习感兴趣的读者阅读。 ​

9ccc0ca9gy1furttxbnvtj206y08pn0j.jpg

​《人工智能(第2版)》

[美] 史蒂芬·卢奇(Stephen Lucci) 著

美国经典入门书,被誉为人工智能领域百科全书。人工智能领域近十年来最前沿教程,2018年全新更新。

本书基于人工智能的理论基础, 向读者展示全面、新颖、丰富多彩且易于理解的人工智能知识体系。本书给出诸多的示例、应用程序、全彩图片和人物轶事,以激发读者的阅读和学习兴趣;还引入了机器人和机器学习的相关高级课程,包括神经网络、遗传算法、自然语言处理、规划和复杂的棋盘博弈等。

e66294aa7ac7713b0722e781de8e411d

长按二维码,可以关注我们哟

每天与你分享IT好文。​

在“异步图书”后台回复“关注”,即可免费获得2000门在线视频课程

异步图书福利送不停​

邀请10名好友关注10天直接获取异步图书一本(点击文字获取活动详情哦)

点击阅读原文,购买机器学习实践应用

阅读原文

网友评论

登录后评论
0/500
评论
异步社区
+ 关注