R语言机器学习迷你课程
在这个迷你课程中,你将发现如何开始,构建精确的模型,并自信地完成在14天内使用R预测建模机器学习项目。
这是一个重要而重要的文章。你可能想把它书签。
了解如何准备数据,拟合机器学习模型,并用我的新书评估他们在r上的预测,包括14步教程、3个项目和完整源代码。
我们开始吧。
谁需要这个迷你课程?
在我们开始之前,让我们确保你处在正确的位置。下面的清单提供了一些关于谁设计的课程的一般指导方针。
如果你不完全匹配这些点,不要惊慌,你可能只是需要在某个区域或者其他地方刷一下才能跟上。
- 知道如何编写小代码的开发人员。这意味着一旦你知道基本语法,就可以选择一个像R这样的新编程语言并不是件大事。
- 了解一点机器学习的开发人员。这意味着你可以了解机器学习的基本知识,比如交叉验证、一些算法和偏差-方差折衷。这并不意味着你是一名机器学习博士,只是你知道路标或者知道去哪里找他们。
这个迷你课程既不是一本教科书,也不是机器学习的教科书。
这将是一个开发人员从另一个开发人员那里了解使用R语言的知识。R是机器学习最强大和最流行的平台。
迷你课程概览(预期的)
这个迷你课程被分成14门课,我称之为“天”。
你可以每天完成一堂课(推荐)或者完成一天的所有课程(硬核!)。这真的取决于你所能拥有的时间和你的热情水平。
下面是14个课程,你可以开始学习,并且在r上学习机器学习:
- 第1天:下载并安装R。
- 第2天:用基本语法来学习R。
- 第3天:加载数据和标准机器学习数据集。
- 第4天:用描述性统计来理解数据。
- 第5天:用可视化来理解数据。
- 第6天:准备预先处理数据建模。
- 第7天:采用重采样方法进行算法评价。
- 第8天:算法评价度量。
- 第9天:现场检查算法。
- 第10天:模型比较和选择。
- 第11天:通过算法调整提高精确度。
- 第12天:通过集成预测提高精确度。
- 第13天:最后确定并保存你的模型。
- 第14天:helloworld端到端项目。
每堂课都可以花60秒或30分钟。慢慢来,以自己的速度完成课程。问问题,甚至在下面的评论中发表结果。
我确实在早期课上提供了更多帮助,因为我希望你能建立起一些自信和惰性。坚持住,不要放弃!
第1天:下载并安装R
在你可以访问平台之前,你无法开始在R上进行机器学习。
今天的课很简单,你必须下载并安装你的计算机上的R平台。
- 访问R主页并下载R用于操作系统(linux、osx或windows)。
- 在你的计算机上安装R。
- 通过键入“R”,从命令行开始第一次R。
如果你需要安装R,请结帐:
第2天:用基本语法来学习R
你需要能够读取和编写基本的R脚本。
作为开发人员,你可以快速地拾取新的编程语言。R是大小写敏感,使用散列(#)来评论注释,并使用箭头操作符(<-)赋值,而不是单个equals(=)赋值。 今天的任务是在R交互环境中练习r编程语言的基本语法。
- 使用箭头运算符(<-)中的语言中的实践赋值。
- 使用基本数据结构如向量、列表和数据帧进行实践。
- 练习使用流控制结构,如If-Then-Else还有循环。
- 练习调用函数、安装和加载软件包。
例如,下面是创建一个数字列表并计算平均值的示例。
numbers <- c(1, 2, 3, 4, 5, 6) mean(numbers)
如果你需要使用基本R语法的帮助,请参阅以下文章:
第3天:加载数据和标准机器学习数据集
机器学习算法需要数据。你可以从csv文件加载自己的数据,但是当你在R开始使用机器学习时,你应该在标准机器学习数据集上练习。
你今天的课的任务是让你轻松地加载数据到R,并找到和加载标准机器学习数据集。
带有R的数据集包包含许多标准数据集,其中包括著名的虹膜花卉数据集。在包还包含人的标准机器学习数据集。
- 使用在read.csv函数将csv文件加载到R中。
- 实践加载标准机器学习数据集,从数据集和mlbench包。
帮助:你可以通过键入?函数名或调用help()函数来获取函数的帮助,并作为参数传递需要帮助的函数名。
为了使你开始运行,下面的代码段将安装并加载在包,列出它提供的所有数据集,并将在数据集附加到环境中供你使用。
install.packages("mlbench") library(mlbench) data(package="mlbench") data(PimaIndiansDiabetes) head(PimaIndiansDiabetes)
第4天:用描述性统计来理解数据
一旦你将数据加载到r中,你就需要能够理解它。
你能更好地理解你的数据,你可以建立更好更精确的模型。理解数据的第一步是使用描述性统计信息。
今天,你的课是学习如何使用描述性统计来理解你的数据。
- 使用head()函数了解你的数据,以查看前几行。
- 使用dim()函数来检查数据的维度。
- 使用summary()函数来检查数据的分布情况。
- 使用cor() 函数计算变量之间的对相关性。
下面的示例加载了虹膜数据集,并总结了每个属性的分布。
data(iris) summary(iris)
第5天:用可视化理解数据
继续从昨天的课上继续学习,你必须花时间更好地理解你的数据。
第二种提高你对数据理解的方法是使用数据可视化技术(如绘图)。
今天,你的课就是学习如何使用绘图来理解属性和它们之间的交互。
- 使用hist()函数创建每个属性的直方图。
- 使用boxplot())函数创建每个属性的框和晶须块。
- 使用pairs()函数创建所有属性的一对智能子函数。
例如,下面的代码片段将加载在数据集并创建数据集的一个scatterplot矩阵。
data(iris) pairs(iris)
第6天:准备预先处理数据建模
你的原始数据可能无法设置为建模最佳形状。
有时你需要预先处理数据,以便最好地将你数据中问题的内在结构呈现给建模算法。在今天的课中,你将使用插入符号包提供的预处理功能。
插入包提供了preprocess()函数,该函数使用方法参数来指示要执行的预处理类型。一旦从数据集中准备好预处理参数,那么可以将相同的预处理步骤应用到你可能拥有的每个数据集中。
请记住,你可以安装并加载插入符号包如下:
install.packages("caret") library(caret)
- 使用标度和中心选项规范数值数据(如0和标准差1)。
- 使用范围选项规范数值数据(例如,范围为0到1)。
- 探索更先进的功率转换,如box-cox功率变换与非参数选择。
例如,下面的代码片段加载了虹膜数据集,计算规范化数据所需的参数,然后创建数据的规范化副本。
# load caret package library(caret) # load the dataset data(iris) # calculate the pre-process parameters from the dataset preprocessParams <- preProcess(iris[,1:4], method=c("range")) # transform the dataset using the pre-processing parameters transformed <- predict(preprocessParams, iris[,1:4]) # summarize the transformed dataset summary(transformed)