R语言深度学习-1-深度学习入门(H2O包安装报错解决及接入/H2O包连接数据集)

本教程参考《RDeepLearningEssential》

1.1 深度学习概念

深度学习是机器学习的一个子集,它特别指的是那些试图模拟人脑工作原理的算法和技术。这种类型的机器学习通过使用多层的人工神经网络来学习和表示数据的内在规律和层次结构。深度学习已经在多个领域取得了显著的成功,特别是在图像和语音识别、自然语言处理以及推荐系统等方面。之前学习深度学习,我一直使用python,但是实际上R语言也是不错的选择,作为简单语言实现复杂功能的尝试。本教程主要聚焦于神经网络的学习。

1.2神经网络概念

深度学习是一种特殊的机器学习方法,它基于人工神经网络的原理,特别是那些具有多层结构的神经网络模型。神经网络,又称为人工神经网络或模拟神经网络,是由大量神经元(或称为节点)相互连接而成的网络结构,旨在模仿人类大脑处理和记忆信息的方式。

在深度学习中,神经网络通常包含输入层、隐藏层和输出层等多个层级,每一层都由若干个神经元组成,相邻层之间通过权重连接。训练这样一个神经网络的关键在于调整这些连接的权重来优化模型的性能,使其能够在给定的数据集上学到有效的特征表示和复杂的模式。

以一个简单的房价预测网络为例,输入层接收房屋的各种属性作为输入,经过隐藏层的处理后,输出层给出房价的预测结果。在这个过程中,隐藏层能够自动从输入数据中提取出有用的特征,并在一定程度上模拟了人类专家在分析类似问题时所依赖的直觉和经验。

经常选择的激活函数是sigmoid函数: 以及双曲正切函数

1.3基于深度学习的R包

我们需要安装一些深度学习的包,如RCurl、jsonlite、caret、e1071、statmod、MASS、H2O、nnet等,我们一口气安装一下:其中h2o包的安装和运行比较复杂,报错不要慌

install.packages('RCurl')
install.packages('jsonlite')
install.packages('caret')
install.packages('e1071')
install.packages('statmod')
install.packages('MASS')
install.packages('nnet')
install.packages('neuralnet')
install.packages('deepnet')
install.packages('h2o')

1.4 H2O包安装的报错解决方案

H2O包在直接用install安装可能会报错,因为包有点大,比如这样: Warning in install.packages : 下载程序包'h2o'时出了问题

我们尝试官网给出的解决方法:Downloading & Installing H2O --- H2O 3.44.0.3 documentation

#以下两个命令删除以前为 R 安装的任何 H2O 包。
if ("package:h2o" %in% search()) { detach("package:h2o", unload=TRUE) }
if ("h2o" %in% rownames(installed.packages())) { remove.packages("h2o") }

#接下来,下载 H2O 依赖的软件包
pkgs <- c("RCurl","jsonlite")
for (pkg in pkgs) {
  if (! (pkg %in% rownames(installed.packages()))) { install.packages(pkg) }
}

#安装最新及适合的包
install.packages("h2o", type="source", repos=(c("http://h2o-release.s3.amazonaws.com/h2o/latest_stable_R")))

如果也报错的话就在本地安装,这是本地下载链接:下载后运行代码本地安装:Download H2O 3.47.0.6510 (h2o-release.s3.amazonaws.com)

install.packages("C:/Users/Huzhuocheng/Desktop/h2o_3.47.0.6510.tar.gz", repos = NULL, type = "source")

这样就安装成功了。

1.5 H2O包的初始化和接入(包括报错解决)

library(h2o)
c1 <- h2o.init(
  max_mem_size = '3G',
  nthreads = 2
)

这样就完成了初始化,当然你也会遇到报错:

Error in h2o.init(max_mem_size = "3G", nthreads = 2) : H2O failed to start, stopping execution.

这一般是电脑防火墙或者IP地址的问题,那么就运行:

h2o.init(nthreads = 2, max_mem_size = '3g', ip = "127.0.0.1", port = 54321)

然后在自己的浏览器中输入网址接入H2O

http://127.0.0.1:54321/flow/index.html

1.6 H2O连接数据集

我们可以在R语言中导入后使用as.h2o()函数载入,示例一下:

hdata <- as.h2o(iris[1:100, 1])

但是我们可以不用这么复杂,我们也可以让H2O读取数据

write.csv(mtcars , 'C:/Users/Huzhuocheng/Desktop/mtcar.csv')
hdata <- h2o.importFile(path = 'C:/Users/Huzhuocheng/Desktop/mtcar.csv')

1.7小结

我们安装了深度学习所需要的包,学习了深度学习的一般概念,下一篇我们将开始训练自己的神经网络并进行预测!

相关推荐
环能jvav大师几秒前
基于R语言的统计分析基础:使用SQL语句操作数据集
开发语言·数据库·sql·数据分析·r语言·sqlite
YesPMP平台官方2 小时前
AI+教育|拥抱AI智能科技,让课堂更生动高效
人工智能·科技·ai·数据分析·软件开发·教育
Data-Miner2 小时前
196页满分PPT | 集团流程优化及IT规划项目案例
大数据·数据分析
大耳朵爱学习3 小时前
掌握Transformer之注意力为什么有效
人工智能·深度学习·自然语言处理·大模型·llm·transformer·大语言模型
qq_15321452643 小时前
【2023工业异常检测文献】SimpleNet
图像处理·人工智能·深度学习·神经网络·机器学习·计算机视觉·视觉检测
B站计算机毕业设计超人6 小时前
计算机毕业设计Python+Flask微博情感分析 微博舆情预测 微博爬虫 微博大数据 舆情分析系统 大数据毕业设计 NLP文本分类 机器学习 深度学习 AI
爬虫·python·深度学习·算法·机器学习·自然语言处理·数据可视化
羊小猪~~6 小时前
深度学习基础案例5--VGG16人脸识别(体验学习的痛苦与乐趣)
人工智能·python·深度学习·学习·算法·机器学习·cnn
limingade9 小时前
手机实时提取SIM卡打电话的信令和声音-新的篇章(一、可行的方案探讨)
物联网·算法·智能手机·数据分析·信息与通信
编程零零七9 小时前
Python数据分析工具(三):pymssql的用法
开发语言·前端·数据库·python·oracle·数据分析·pymssql
AI大模型知识分享9 小时前
Prompt最佳实践|如何用参考文本让ChatGPT答案更精准?
人工智能·深度学习·机器学习·chatgpt·prompt·gpt-3