英语轻松读发新版了,欢迎下载、更新

使用 AI 和机器学习进行 R 编程:您需要了解的内容

2025-01-13 09:30:00 英文原文

作者:Jeff Cogswell

R 是一种专门从事数据分析、统计和数据可视化的编程语言。R 和 Python 是数据分析师和数据科学家的两种首选语言。除了非常适合数据之外,R 还拥有一套丰富的人工智能工具。

让我们探索可用的工具,并了解如何将 AI 添加到 R 编程技能中。

从学习人工智能概念开始

在开始使用适用于 R 的 AI 软件包和工具之前,您需要花一些时间学习 AI 概念。对于 R,最重要的概念是:

此外,我们希望引起您对一种您肯定需要学习的 ML 类型的关注:梯度提升。这是一个先进的概念,涉及按顺序训练模型,每次训练都会比前一次训练更好。它在 AI 中与 R 一起被大量使用。

专业提示:ChatGPT 也是了解此类主题的绝佳场所。它对自己的技术了解很多。例如,您可以询问它“请向我提供机器学习概念的基本介绍”,然后您可以继续询问它更多高级概念。当然,我们都知道 ChatGPT 会犯错误;根据您自己的网络发现仔细检查其输出总是有帮助的。

与 R 交互的 AI

R 是一款出色的工具,可用于与数据交互、运行分析和可视化数据。如果您还想与 AI 交互工作,则需要首先学习一些基本软件包。(请注意,虽然其他语言使用库等术语,但 R 使用术语包。)

  • 数据清理包:当您处理数据时(无论是否使用人工智能),您的数据需要清理。来自随机源和多个管道的数据可能会出现一些问题,这些问题会影响您的分析以及您从中构建的任何内容(一个常见问题是空值,这可能会被解释为零)。dplyr 是一个值得学习的好包。(请注意,dplyr 不仅仅是一个数据清理器,因为它还用于过滤、选择、排列、变异和汇总数据。)
  • 数据可视化包:由于 R 在数据可视化方面非常流行,因此这里有很多选择。一些最受欢迎的是

学习完这些内容后,您就可以开始进行机器学习了。以下是一些需要学习的库:

  • 插入符:这可能是最流行的 R ML 库。它用于构建预测模型。它易于使用并且具有一整套功能。(请注意,我们链接到的页面包括一些很棒的书籍和其他资源,用于了解 Caret 和类似的库。)
  • MLR3:这是一个较新的机器语言库。它是面向对象的并且非常易于使用。创作者甚至写了一本关于它的精彩在线书
  • 梯度提升:如前所述,这是 R 中 AI 的重要组成部分。有一个专门为其构建的库称为XGBoost

深度学习是机器学习的一种特殊类型。深度学习的三个最重要的库是:

  • 喀拉斯:这可能是三个学习中的第一个,因为它实际上提供了一种使用列表中的下一个 TensorFlow 的简化方法。Keras 越来越受欢迎,许多人比 TensorFlor 和 Torch 更喜欢它。
  • 张力流:这是谷歌创建的机器语言和人工智能框架。我们链接到的 R 文档非常出色,包含完整的安装指南和大量示例。
  • 火炬:Torch 是一个较旧的机器学习库。它最初创建于 2002 年,开发人员不断对其进行扩展。如今,它符合最新的人工智能工具。它主要用于研究和教育环境。

其中每一个都可以通过多种不同的语言进行访问,包括 R(我们为每一个提供的链接都是 R 包的链接)。我们建议您从 Keras 开始,然后学习 TensorFlow;如果您有同事使用 Torch,那么您也可能会学习它。

自然语言处理(NLP)是指读取和生成听起来像是来自真人的语言的过程。如果您使用过 ChatGPT 的各种功能并注意到它听起来(大部分)是人类的,那么您就已经见证了 NLP。您可以学习多个 NLP 软件包。以下是一些重要的内容:

  • TM (小写,代表文本挖掘):这是一个用于处理各种格式文本文档的包,包括纯文本和PDF。虽然从技术上讲它不是 AI 包,但它对于预处理文档很有用,例如在将文档发送到 NLP 包之前删除多余的空格。它还可以执行称为术语文档矩阵创建的操作,这是一种奇特的说法,它可以构建跨多个文档使用的不同单词的表。
  • 广泰达:这是一个流行且有些复杂的 NLP 包。它包括核心 NLP 功能,以及 tm 中的预处理功能。它甚至包括可视化功能来绘制有关文本的信息。自然语言处理
  • (是的,它代表自然语言处理)是一个相当完整的NLP处理包。 它提供标记化、语言处理、注释等。该文档包括代码示例,可以 PDF 下载

还有更多与 NLP 相关的库,包括一些用于情感分析和词性标记的库。Geeks for Geeks 有一个关于它的很好的页面

计算机视觉是另一个对 AI 很重要的领域,可以从 R 内部访问。除了前面提到的 torch 和 keras 之外,还有一个重要的计算机视觉库称为开放式计算机视觉。它是用 C++ 编写的,但您可以通过 opencv 包从 R 访问它。

最后,我们想提请注意一个特殊的包,它允许您在 R 应用程序中使用 Python 库。它被称为网状。这开启了通常是 Python 独有的人工智能工具的整个世界。

用 R 编写的生产 AI 应用程序

与其他语言相比,R 有点独特,因为它通常以交互方式使用,最常使用在名为 R Studio 的应用程序内。但是,您也可以使用它来构建生产应用程序。如果您有兴趣发布 AI 应用程序,您会想了解 Shiny。闪亮的

是一个包,可以简化在 R 中构建 Web 应用程序的过程。这意味着如果您想构建网站,可以使用 R 作为后端,而不是使用 JavaScript、Java 和 C# 等更流行的语言。这可能是一个巨大的好处,因为这意味着您可以从您习惯使用的后端访问所有这些 R 软件包(不仅仅是 AI 软件包),如果您是 R 程序员的话。

Shiny 的一个很酷的方面是它还包括一个可用于构建交互式数据导向仪表板的前端。这意味着您不必学习单独的前端框架。

结论

除了人工智能应用程序之外,R 还为构建数据和统计应用程序提供了丰富的环境。您可能想要使用 R Studio,它是事实上的标准 IDE。

学习人工智能需要时间,所以不要着急。花时间研究我们在这里介绍的内容;足够支付几个月的学习时间。边实践边练习,很快您就会成为 R 的 AI 专家,并以良好的状态找到一份好工作。

关于《使用 AI 和机器学习进行 R 编程:您需要了解的内容》的评论


暂无评论

发表评论

摘要

R 是一种与 Python 一起用于数据分析、统计和可视化的编程语言。它提供了广泛的人工智能 (AI) 工具,包括机器学习、深度学习、自然语言处理和计算机视觉。主要软件包包括用于数据清理的 dplyr、用于机器学习的 Caret 和 Mlr3、用于深度学习的 Keras 和 TensorFlow、用于 NLP 的 tm 和 Quanteda,以及用于计算机视觉的通过 opencv 软件包的 OpenCV。此外,reticulate 允许将 Python 库集成到 R 应用程序中。Shiny 是 R 中的一个框架,可简化 Web 应用程序的构建,包括交互式数据仪表板。使用 R 掌握 AI 需要随着时间的推移研究这些工具和概念,从而熟练地开发生产级 AI 应用程序。