启程与远征Ⅸ--如何自学AI

如果您的手触摸键盘来工作,那么人工智能将在未来几年改变您的工作。

在这篇博文中,我将与您分享扩展您的 AI 技能的路线图以及学习资源。

这个路线图深入基础,所以即使你没有任何机器学习、数学或编程背景,我希望你也能从中获得一些有用的入门想法。

现在,让我们开始吧!💪

为什么要学习人工智能?

人工智能、机器学习和深度学习自 20 世纪 50 年代就已出现。由于算法、计算能力以及尤其是数据的丰富性方面的进步,该领域在过去十年(以及最近几年)蓬勃发展。

我们今天经常谈论的人工智能是生成式人工智能,它是机器学习和深度学习的一个子集。

生成式人工智能现在可以编写代码、生成令人惊叹的图像、创作音乐、诊断罕见疾病、创建演示大纲、阅读图像等等。

世界各地的公司都在竞相从生成式人工智能中获取价值,试图利用它来创造更好的服务和产品、改进流程并自动执行耗时的任务。

大型企业正在争相实施人工智能解决方案来解决他们的具体问题。这是一个金矿,因为一切都还很新。如果你有知识,知道如何用人工智能构建事物,你就能产生巨大的影响。

就像任何早期事物一样,人工智能模型仍有许多问题需要解决。它们还不可靠或不稳定,它们可能存在偏见等。这就是为什么我们需要更多对技术有深入了解并能深入了解技术的人来解决各种问题。这些知识可以帮助你避免很多误解和错误信息,比如“只要你有正确的插件,人工智能就能做任何事情!”😅

路线图

(1)技术方面

>>> Python 和 IDE:

从根本上讲,你需要学习编程的基础知识。Python机器学习和神经网络中最常用的语言之一(如果不是最常用的话),因此掌握一些 Python 编码知识是必不可少的。

使用 Python,您甚至可以使用Numpy库从头开始编写一个简单的神经网络,这将帮助您了解神经网络内部的工作原理。

如何自学AI

有了对 Python 编程的一些基本了解,您可以阅读流行的开源 Python 库的源代码并很好地了解其工作原理。

要使用 Python,您可以使用多个IDE (集成开发环境),例如VSCodePycharmJupyter Notebook。Jupyter Notebook 是我最喜欢的开始学习 Python 的环境,但您可以使用其中任何一个 IDE。它们完全免费!

如果您以前从未使用过 Python,请务必熟悉Python 的 4 个基础知识

  • 数据类型(整数、浮点数、字符串)以及可以对它们执行的操作
  • 数据结构(列表、元组和字典)及其使用方法
  • 条件、循环、函数
  • 面向对象编程和使用外部库。

学习 Python 时,需要学习的最重要的是:

  • Numpy用于计算和处理数值数据。
  • Pandas用于处理表格数据或数据框。

当您已经熟悉这些库时,您可以探索项目所需的其他库。例如,matplotlib库可用于数据可视化,spacy可用于基本文本处理功能,等等。对于使用语言模型,Langchain是一个非常有用的库,可用于学习在 LLM 之上开发多个应用程序。

Python 的优点在于它有许多开源库,你可以用它们来开发几乎任何你想要的东西。

>>> Git 版本控制:

我建议学习的下一个内容是Git版本控制。

如何自学AI

Git 是一个用于跟踪项目变化的开源软件。

当您与其他人合作完成大型或复杂的项目时,版本控制至关重要。实际上,您只需要了解一些概念即可开始使用 Git,如下图所示。

如何自学AI

图片来自作者。

实际上,许多人将 Git 与 GitHub 混淆了。Github是 Git 存储库的托管平台,以便您可以通过互联网与其他人共享您的项目。而 Git 本身就是软件

我认为开始使用 Git 的最简单方法是使用Github Desktop,它是 Git 的用户界面工具。如果您更喜欢使用命令行/终端,也可以通过这种方式使用 Git。

>> API

另一个需要学习的重要知识是 API (应用程序编程接口)。知道如何使用 API 是一项神奇的技能,可以开启一个充满可能性的全新世界!

API 是计算机程序相互通信的一种方式。基本上,您需要学习 2 个术语:

  • API 请求(也称为“API 调用”),以及;
  • API 响应。

每次打开 Instagram 并向下滚动 Instagram 动态时,您基本上都是向 Instagram 应用程序背后的推荐模型的 API 发出请求,并得到响应。

根据 API,您可以请求数据模型预测(仅在使用OpenAI API 的情况下)等。如果不知道如何使用 API,您将仅限于聊天界面(例如 OpenAI 网站)。ChatGPT 网站是使用 ChatGPT 模型的好方法,但您无法开发自己的工具或将 ChatGPT/GPT4 模型集成到您当前的系统中。为此,您需要使用他们的模型 API。

👉有用的资源:

(2)理论基础

好的,进入下一个层次——我们关注的是人工智能的理论基础。我们需要对人工智能及其子领域(如机器学习、神经网络/深度学习、计算机视觉、NLP、强化学习)有一些高层次的理论理解。我将为技术学习者描述主要的人工智能概念:

  • 神经网络基础
  • 神经网络架构,包括 Transformer 架构
  • “训练”语言模型的真正含义
  • 一些重要的 NLP 概念,例如“文本嵌入”

你想深入研究理论的深度完全取决于你。有时,高层次的理解正是你所需要的!

如上图所示,深度学习是机器学习的一个子集。传统的机器学习算法大多属于监督学习(即当你有目标标签来训练预测模型时);或无监督学习(即没有目标标签时)。

如何自学AI

图片来自作者。

一般来说,这些算法只适用于表格数据,想象一下数据表,其中每条记录是一行,每个数据特征是表中的一列。复习一些机器学习术语并了解流行的机器学习算法的高级概念可能会有所帮助。

但是,由于当今的人工智能使用深度学习,我认为你可以选择直接进入深度学习。在此过程中,你可能会学到基本的机器学习概念,并且如果需要,你还可以填补理解上的空白。

>>> 神经网络的工作原理

神经网络是深度学习背后的算法,尤其是我们今天看到的生成式人工智能。它对文本和图像等非结构化数据非常有效。

如何自学AI

对于神经网络,你需要了解以下主要概念:

  • 前向传播
  • 反向传播
  • 激活函数
  • 梯度下降算法
  • 如何更新权重

了解神经网络中的所有计算如何工作很有帮助。它们实际上并不太难理解。所以不要回避它!

>>> 神经网络架构

神经网络本身相当简单,从数学角度来看甚至可能略逊一筹。

然而,当你将许多网络层堆叠在一起形成某种复杂的架构时,令人惊讶的是,它们可以做出令人惊叹的事情,从识别数字,对猫和狗进行分类,到如今你要求它在LLM (大型语言模型)中做的几乎任何事情。

如何自学AI

 

卷积神经网络 (CNN)曾经在图像深度学习中非常流行,因为它可以识别图像上的模式。同时,循环神经网络 (RNN)曾经在文本建模中非常流行,因为它可以理解序列。

然而,自 2017 年Transformers发明以来,这些架构很快就过时了,Transformers 是当今大型语言模型背后的架构。

如何自学AI

Transformer 的表现优于早期的模型,因此如果您没有时间,可能想要跳过学习早期的架构。

我建议你先看几个 Youtube 视频,以获得高层次的理解,然后再深入了解其细节。如果你想深入了解细节,可以观看 Andrej Karpathy 的这段视频,它向你展示了如何从头开始编写 GPT。

>>> 训练语言模型

在使用 AI 模型时,您还希望对其底层基础模型的训练方式有一个高层次的了解。

例如,OpenAI 的 ChatGPT 模型使用 GPT3 作为基础模型,但它还经过一些额外的训练步骤,即监督微调带人类反馈的强化学习(RLHF)

我建议观看Andrej Karpathy 的LLM 简介视频,以进一步了解 LLM 培训背后的过程。

>>> 嵌入和向量数据库

在使用语言模型时,你可能会听到一个常用术语:文本嵌入。这是一个很有用的概念。

文本嵌入是文本的数值表示。它只是将文本转换为数字向量。

我们常常忘记,计算机实际上无法理解语言,而只能理解数字。因此,这个转换步骤是必要的。

如何自学AI

目前已创建了许多嵌入模型,并使用越来越智能的方式将含义捕获到这些向量中。

当你向 ChatGPT 提出问题时,你的问题会在底层自动转换为 ChatGPT 模型可以理解的数字向量。

该模型将使用此数字向量来“计算”响应。在底层,OpenAI 还为您的问题和响应存储了一个向量数据库,这样当您在 ChatGPT 中继续对话时,它就可以“记住”对话。

如果您使用语言模型构建 AI 应用程序,则需要使用所选的矢量数据库自行创建此矢量数据库。流行的开源矢量数据库包括 Chroma 和 FAISS,您可以简单地安装它们并将其用于 Python 中的 AI 项目。

如何自学AI

资料来源:https://www.linkedin.com/pulse/choosing-vector-database-your-gen-ai-stack-abhinav-srivastava/

👉有用的资源:

(3)构建真实项目并分享

无论您在这段旅程中处于什么位置,您都可以构建相关项目来亲自动手并进行实验。这有助于您将各个点联系起来并挑战您的理解。如果您正在学习 Python,您可以使用 Keras 或 Tensorflow 库在 Python 中构建您的第一个神经网络。这基本上就是几行代码!如果它太高级,您可以尝试编写一个神经网络并使用 Numpy 从头开始​​实现梯度下降!

如果你正在学习理论,那么一个现实世界的项目就是选择一个你觉得有趣的特定概念,并就此写一篇博客文章或制作一个视频。这可以帮助你更深入地理解它,也可以帮助其他人!

如果您已准备好应对更复杂的 AI 项目,您可以构建一个真实世界的应用程序。例如,您可以使用 Langchain 创建文档检索应用程序,基本上就是创建一个 ChatwithPDF 类型的应用程序,您可以在其中询问文档中的特定信息。或者,您可以在专门的领域主题中创建自己的聊天机器人。

无论您从事什么项目,无论大小,请务必记录下来以供将来参考,并通过文章和社交媒体帖子与其他人分享。你永远不知道有多少人会觉得它有用!

👉示例项目:

🎥使用 ChatGPT API 和 Reddit 数据构建聊天机器人

(4)心智模型和人工智能专业领域

我接下来建议的是围绕人工智能开发思维模型,并专攻人工智能内的某个领域。

如何自学AI

图片来自作者。

阅读有关人工智能的书籍是了解社交媒体上纷扰并获得更全面人工智能背景的好方法。这是我目前的人工智能书籍清单:

  1. 生命 3.0(马克斯·泰格马克)
  2. 超级智能(尼克·博斯特罗姆)
  3. 即将到来的浪潮(穆斯塔法·苏莱曼、迈克尔·巴斯卡)
  4. 人类兼容(斯图尔特·罗素)
  5. 对齐问题 (Brian Christian)
  6. 人工智能:现代方法,全球版(Peter Norvig、Stuart Russell)
  7. 我,人类:人工智能、自动化以及重新找回我们的独特之处的探索(托马斯·查莫罗·普雷穆齐)

这还为你提供了正确的框架和工具,以推理和解释你今天看到或听到的有关人工智能的事情。你可以在路线图中找到我的人工智能书籍列表。

就我个人而言,我发现主流媒体并没有更广泛地讨论很多与人工智能相关的重要内容,这真是太疯狂了。人工智能的许多不同领域都没有成为头条新闻。例如:

  • 先进的提示工程方法可以提高 LLM 响应的质量,例如自洽性、思路链提示或自动提示。
  • AutoGen(微软):一个框架,允许您使用多个可以相互交谈以解决任务的代理来开发 LLM 应用程序。
  • 高级文档 QA(或 检索增强生成 – RAG)具有多模式文档,可以很好地处理复杂的表格、图像和其他数据结构。
  • 人工智能安全和黑客:前几天,我观看了一段视频,视频中一位研究人员发现了机器学习模型的一些严重安全问题。到目前为止,这是一个被忽视的领域,所以如果你在计算机安全方面有专长,请为人类做点好事,研究一下这个问题!🤯
  • 人工智能安全是专注于将人工智能目标与人类目标相结合的研究领域。了解大型人工智能模型并知道如何确保其安全,已成为提高人工智能能力之后的首要任务。
  • 最后,如果你对法律感兴趣,可以看看人工智能法规和人工智能治理。在欧洲,欧盟人工智能法案是即将出台的规范人工智能使用的重大举措之一。同样,美国政府最近也通过了《关于安全、可靠和值得信赖的人工智能开发和使用的行政命令》(EO),以应对人工智能的潜在风险。

通常,通过阅读书籍、研究论文、文章和观看视频可以很容易地找到有关这些主题的信息。

📩有用的 AI 新闻通讯:

  1. 批次Deeplearning.ai
  2. 算法(《麻省理工技术评论》)
  3. 论文与代码通讯
  4. 人工智能伦理简报蒙特利尔人工智能伦理研究所

我们仍处于人工智能的早期阶段,不知道未来几年情况会如何。但有一件事我们可以肯定,那就是事情正在发生变化,而且越来越快。跟上潮流的唯一方法就是不断学习。

​​欢迎前往我们的公众号,阅读更多资讯

创作不易,觉得不错的话,点个赞吧!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值