R语言︱H2o深度学习的一些R语言实践——H2o包
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~
———————————————————————————
R语言H2o包的几个应用案例
笔者寄语:受启发想了解H2o平台的一些R语言实现,网上已有一篇H2o的demo文件。笔者在这多贴一些案例,并且把自己实践的一些小例子贴出来。
关于H2o平台长啥样,可以看H2o的官网,关于深度学习长啥样,可以看一些教程,比如ParallelR博客之中的解析。
下面主要是贴几个案例,让大家看看。
————————————————————————————————————————————————————————————
Matt︱R语言调用深度学习架构系列引文
R用户的福音︱TensorFlow:TensorFlow的R接口
本文中介绍的H2o包在调用的过程主要有以下简要步骤:
连接、搭建H2o环境(heo.init())——数据转换成h2o格式(as.h2o)——模型拟合(h2o.deeplearning)——预测(h2o.predict)——数据呈现(h2o.performance)。
一、H2o包的demo(glm)
网上已经有了,博客笔者看了并做了简单的中文注释。详情可以见std1984博客。
二、来自ParallelR博客的案例
博客中主要是为了说明深度学习要比其他普通学习方法的精度高。数据是H2o网站数据,笔者windows系统下没有能够下载到该数据,所以后续的分析都没有办法继续进行了。
library(h2o)
# single thread
h2o.init()
#连接h2o平台
train_file <- "https://h2o-public-test-data.s3.amazonaws.com/bigdata/laptop/mnist/train.csv.gz"
test_file <- "https://h2o-public-test-data.s3.amazonaws.com/bigdata/laptop/mnist/test.csv.gz"
train <- h2o.importFile(train_file)
test <- h2o.importFile(test_file)
# To see a brief summary of the data, run the following command
summary(train)
summary(test)
y <- "C785"
x <- setdiff(names(train), y)
# We encode the response column as categorical for multinomial
#classification
train[,y] <- as.factor(train[,y])
test[,y] <- as.factor(test[,y])
# Train a Deep Learning model and valid
system.time(
model_cv <- h2o.deeplearning(x = x,
y = y,
training_frame = train,
distribution = "multinomial",
activation = "Rectifier",
hidden = c(32),
l1 = 1e-5,
epochs = 200)
)
三、最简单的案例——基于iris数据集的深度学习
本案例主要来自h2o官方手册中,h2o.deeplearning包的示例,比较简单易懂。如果你想看预测的数据可以用as.data.frame来变成R能识别的数据框格式。
##参考来自:h2o官方手册,h2o.deeplearning函数的示例 library(h2o) h2o.init() iris.hex <- as.h2o(iris) iris.dl <- h2o.deeplearning(x = 1:4, y = 6, training_frame = iris.hex) #模型拟合 # now make a prediction predictions <- h2o.predict(iris.dl, iris.hex) #预测 as.data.frame(predictions) #预测数据变成数据框 performance = h2o.performance(model = iris.dl) print(performance)
输出的结果长成下面这个样子。
大概构成是:模型评价指标+混淆矩阵+一些指标的阈值(这个是啥??)
看到混淆矩阵,你就差不多懂了~
> print(performance)
H2OBinomialMetrics: deeplearning
** Reported on training data. **
Description: Metrics reported on full training frame
MSE: 0.01030833
R^2: 0.9536125
LogLoss: 0.05097025
AUC: 1
Gini: 1
Confusion Matrix for F1-optimal threshold:
0 1 Error Rate
0 100 0 0.000000 =0/100
1 0 50 0.000000 =0/50
Totals 100 50 0.000000 =0/150
Maximum Metrics: Maximum metrics at their respective thresholds
metric threshold value idx
1 max f1 0.983179 1.000000 49
2 max f2 0.983179 1.000000 49
3 max f0point5 0.983179 1.000000 49
4 max accuracy 0.983179 1.000000 49
5 max precision 0.999915 1.000000 0
6 max recall 0.983179 1.000000 49
7 max specificity 0.999915 1.000000 0
8 max absolute_MCC 0.983179 1.000000 49
9 max min_per_class_accuracy 0.983179 1.000000 49
Gains/Lift Table: Extract with `h2o.gainsLift(<model>, <data>)` or `h2o.gainsLift(<model>, valid=<T/F>, xval=<T/F>)`
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~
———————————————————————————
R语言︱H2o深度学习的一些R语言实践——H2o包的更多相关文章
- 碎片︱R语言与深度学习
笔者:受alphago影响,想看看深度学习,但是其在R语言中的应用包可谓少之又少,更多的是在matlab和python中或者是调用.整理一下目前我看到的R语言的材料: ---------------- ...
- 推荐《深入浅出深度学习原理剖析与python实践》PDF+代码
<深入浅出深度学习原理剖析与Python实践>介绍了深度学习相关的原理与应用,全书共分为三大部分,第一部分主要回顾了深度学习的发展历史,以及Theano的使用:第二部分详细讲解了与深度学习 ...
- MxNet+R︱用R语言实现深度学习(单CPU/API接口,一)
MxNet有了亚马逊站台之后,声势大涨,加之接口多样化,又支持R语言所以一定要学一下.而且作为R语言的fans,为啥咱们R语言就不能上深度学习嘞~ -------------------------- ...
- R语言快速深度学习进行回归预测(转)
深度学习在过去几年,由于卷积神经网络的特征提取能力让这个算法又火了一下,其实在很多年以前早就有所出现,但是由于深度学习的计算复杂度问题,一直没有被广泛应用. 一般的,卷积层的计算形式为: 其中.x分别 ...
- 极限学习机︱R语言快速深度学习进行回归预测
本文转载于张聪的博客,链接:https://ask.hellobi.com/blog/zason/4543. 深度学习在过去几年,由于卷积神经网络的特征提取能力让这个算法又火了一下,其实在很多年以前早 ...
- ML平台_小米深度学习平台的架构与实践
(转载:http://www.36dsj.com/archives/85383)机器学习与人工智能,相信大家已经耳熟能详,随着大规模标记数据的积累.神经网络算法的成熟以及高性能通用GPU的推广,深度学 ...
- 深度学习:原理与应用实践(张重生) - Caffe
如今,深度学习是国际上非常活跃.非常多产的研究领域,它被广泛应用于计算机视觉.图像分析.语音识别和自然语言处理等诸多领域.在多个领域上,深度神经网络已大幅超越了已有算法的性能. 本书是深度学习领域的一 ...
- 深度学习DeepLearning核心技术理论与实践
深度学习DeepLearning核心技术开发与应用时间地点:2019年11月01日-04日(北京) 联系人杨老师 电话(同微信)17777853361
- 机器学习和深度学习笔记(Matlab语言实现)
不多说,直接上干货! 这里,对于想用matlab语言来做的朋友,强烈推荐 http://www.cnblogs.com/tornadomeet/
随机推荐
- 08_Python编码与解码
一.编码的由来 因为计算机只能处理010101二进制数据,如果要处理文本,图像,视频等,需要我们把数据转换成01010二进制格式才能被计算机处理 最先出现的是ASCII,用8位一个字节来表示,成为单字 ...
- centos 6.3安装ssh
centos 6.3安装ssh 安装ssh服务器端软件 yum install openssh-server 安装ssh客户端软件 yum install openssh-clients ...
- JavaScript之惰性函数
前不久看到javascript的性能优化的这里,有关惰性函数 假如同一个函数有许多判断来检测函数,而我们每一次调用,都会判断检测函数 例如: function addEvent (type, elem ...
- ubuntu+mono+PetaPoco+Oracle+.net 程序部署
前言:将windows 下开发的 .net 控制台程序(连接Oracle数据库)部署到 ubuntu 下步骤记录 2017-09-19 实验所用机器为虚拟机Ubuntu16.04 amd64 安装 ...
- Hadoop学习笔记二
一.设置无密码sudo权限,不用在普通用户和root用户间来回切换 chmod u+w /etc/sudoers vim /etc/sudoers #首行添加如下的内容: hadoop ALL=(ro ...
- BZOJ 2419: 电阻 [高斯消元 物理]
http://www.lydsy.com/JudgeOnline/problem.php?id=2419 题意: n个点m个电阻构成一张图,求1到n的等效电阻 第一节课看一道题弃疗,于是来做这道物理题 ...
- BZOJ 3998: [TJOI2015]弦论 [后缀自动机 DP]
3998: [TJOI2015]弦论 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 2152 Solved: 716[Submit][Status] ...
- django-rest-framework之基于类的视图
前言:上一篇博客中,主要讲的是请求和响应,项目里面views.py中的视图函数都是基于函数的,并且我们介绍了@api_view这个很有用的装饰器.同时,我们还介绍了APIView这个类,但是还没使用它 ...
- XSD详解一 - 基本概念
本分类下的文章主要是对W3School的文档进行整理:http://www.w3school.com.cn/x.asp XML Schema 是基于 XML 的 DTD 替代者. XML Schema ...
- OpenLayer3调用天地图,拖拽后,地图消失的问题[已解决]
拖拽后,地图直接消失了,而且右上角的坐标变成了NaN,NaN 后来经过测试发现,原来是自己封装有问题,坐标点一定要用parseFloat()转换下,但不清楚为什么页面刚开始加载的时候没有问题,总之能解 ...