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)

00

机器学习入门

发表评论

电子邮件地址不会被公开。 必填项已用*标注

什么阻碍了你实现迈入机器学习领域的目标?

什么阻碍了你实现迈入机器学习领域的目标?

2020-04-22 机器学习

如果你在为进入机器学习领域而挣扎,感觉到有什么东西阻止了自己的开始,那么你应该看看这篇文章。 在这篇文章中,我们会讨论阻止进入机器学习领域的自我限制的信念,让你明白面临的问题。 几乎总是一种自我限制的信念阻碍了你们的进步。 也许你会在一个或多个这样的信念中看到自己。如果是这样的话, [......]

了解详情

如何在Python中从头开始实现线性回归

如何在Python中从头开始实现线性回归

2020-07-27 机器学习

许多机器学习算法的核心是优化。 机器学习算法使用优化算法来找到给定训练数据集的一组良好的模型参数。 机器学习中最常用的优化算法是随机梯度下降。 在本教程中,你将了解如何使用Python从头开始实现随机梯度下降来优化线性回归算法。 完成本教程后,你将了解: [......]

了解详情

关于机器学习的几点思考

关于机器学习的几点思考

2020-04-26 机器学习

机器学习是一个大的、跨学科的研究领域。 你可以通过机器学习获得令人印象深刻的结果,并找到非常具有挑战性的问题的解决方案。但这只是更广泛的机器学习领域的一小部分,通常被称为预测建模或预测分析。 在这篇文章中,你将发现如何改变你对机器学习的思考方式,以便更好地为你提供机器学习实践者的服务。 [......]

了解详情

找到你的机器学习部落

找到你的机器学习部落

2020-04-26 机器学习

机器学习是一个充满算法和数据的迷人而强大的研究领域。 问题是,有这么多不同类型的人对机器学习感兴趣,每个人都有不同的需求。重要的是要了解你想要从机器学习中得到什么,并根据这些需求调整你的自学。 如果你不这样做,你很容易就会陷入困境,迷失方向,失去兴趣,得不到你想要的东西。 找到 [......]

了解详情

应用机器学习过程

应用机器学习过程

2020-04-26 机器学习

随着时间的推移,在处理应用机器学习问题时,你会开发出一种模式或流程,以快速获得良好的正常结果。 一旦开发完成,你就可以在一个又一个项目上反复使用此过程。你的流程越健壮、越发达,你就能越快地获得可靠的结果。 在这篇文章中,我想与你分享我解决机器学习问题的过程框架。 你可以将其用作下一 [......]

了解详情