我当初研究生在学习人工智能的时候,就是因为一些基础知识掌握的不行,走了很多弯路!
在硬生生走的过程中,我慢慢入门了人工智能,积累了一些经验,为了不让大家再重蹈我的老路,这个回答我就好好给大家分享一下!
人工智能是计算机科学的一个分支,它是一个很大的方向。
从人工智能的研究范围就可见一斑,它是一门研究如何使计算机能够模拟且实现人类智能的学科。
直白点说就是,它通过模拟人的认知过程和思维意识,使计算机具有类似人的智力水平,去做人可以做的事情。
要达成这个目的,要做方方面面的努力,这又使得人工智能产生了很多的分支。
比如如何模拟人的认知过程和思维意识,帮助计算机能像人类那样思考,就产生了「机器学习」这门计算机理论。
通过训练数据和算法模型让机器具有人工智能的方法,比如大家都知道的深度学习,是机器学习的其中一个研究方向,它是使用神经网络模拟人类大脑的工作方式。
比如如何让计算机和人对话,这就需要计算机能够理解人类语言的含义,并进行回复,这就产生了 NLP 「自然语言处理」。
用来研究计算机与人类自然语言之间的交互,比如一些智能客服,问答系统,手机上常用的 Hi Siri。
比如如何让计算机具备感知视觉信息,理解它看到的东西,就产生了「[计算机视觉]」。
从图像或视频中提取有用的特征,进行识别、分析和理解,现在应用在视频监控、自动驾驶、[医学影像诊断] 等方面。
比如通过智能体与环境的交互学习最优行为的「强化学习」,比如改进人与机器之间交互方式的「[人机交互]」,比如…
这些都是人工智能领域中的研究方向。
随着人工智能的快速发展,ChatGPT、GPT-4等新产品和新技术的发布,再次让人工智能变的火热,在夸克发布的《2023高考志愿》报告中,人工智能相关专业的关注度上升最快,我很高兴大家能够去关注 AI,尤其是在当今这个时代,AI 正在成为各行各业的核心驱动力。
我一直认为在当今,人人都应该去了解一下 AI 技术,借着这股技术热潮助力自己,不同的研究领域侧重点各不相同,需要的基础知识也是不同的。
你拿机器学习来说,它需要的基础知识:
1、数学基础
像微积分、线性代数、概率论与数理统计,用来理解和计算机器学习中算法的数学原理与推导,以及优化方法。
2、编程基础
掌握编程语言,用来实现机器学习的算法,比如 Python、R、C++ 等。
3、数据结构与算法基础
机器学习算法中使用了很多的数据结构和算法,了解常用的数据结构与算法能更好的理解和实现机器学习算法和模型。
你像自然语言处理,它需要的基础知识:
1、数学基础
微积分、线性代数、概率论与数理统计这些内容,有助于理解 NLP 模型以及学会用它们来处理文本数据,
2、编程基础
掌握编程语言,常见的是 Python、C++ 这些可以用来编写和运行程序。
3、数据结构与算法基础。
数据结构和算法对于处理和分析文本数据非常重要,掌握常见的数据结构与算法能让自己写出更高效的 NLP 算法和模型。
4、语言学基础
这个是学习自然语言处理必须的,了解基本的语言学概念和语言结构,比如像语法、句法、语义,对于自然语言处理来说是很重要的。
再者像计算机视觉,它需要的基础知识:依然是数学基础、编程基础、数据结构与算法基础以外,你需要额外具有数字图像处理基础,熟悉数字图像技术处理的基本技术。
因为篇幅原因,再多就不列了。
你可以看到,人工智能的每个研究方向具体要做的内容不同,具体要求可能也会有所不同,但还是存在着交叉和重叠的知识内容。
也就是数学基础、编程基础、数据结构与算法。
这些也是学习人工智能所需要的前置知识,最好在你学习某个具体方向之前要快速学一下,只需要学习我们能用到的就好。
不要求到精通的程度,但最少你要了解,起码在后续的学习中碰到这个知识,就算你不熟,也知道可以去哪里找到这个知识学。
数学对于人工智能的学习至关重要,我们需要理解和应用相关的模型算法,有了数学基础,可以帮助我们理解算法模型背后的数学原理,以及后续在训练模型或者评估模型时涉及的计算过程。
大家也不要害怕,主要的就是微积分、线性代数、概率论与数理统计,这都是大学中学过的数学课程。
1、微积分
微积分是高数中的内容,重点是在微分方面,重点看一下极限、导数、偏导数、梯度。
2、线性代数
线性代数对于人工智能的学习很重要,涉及到很多矩阵的运算,重点在向量、矩阵、线性方程组、特征值、特征向量。
3、概率论与数理统计
人工智能中很多算法涉及到概率论与数理统计中的内容,比如最大似然估计,高斯分布。
这里需要看概率分布(正态分布、均匀分布、伯努利分布)、抽样分布(t 分布、卡方分布)、统计量(均值、方差、置信区间)、假设检验等。
看着挺多,其实都是学过的内容,重新复习一下就想起来。
编程这个的重要性就不必多说了吧,不会编程啥也干不了。
刚开始你就先掌握 Python 就好了,Python 具有完善的人工智能生态系统,很多模型的代码都是基于 Python 实现的。
各种配套的第三方库和工具也很完善,比如强大的数据处理库 Numpy、Pandas,比如丰富的数据可视化库 Matplotlib、Seaborn。
如何学习 Python,提高 Python 的编程能力,不是本文的重点,后续等你到了一个更高的阶段,应该也会用到 C++,它是一种编译型语言,可以直接访问和控制底层硬件以及内存,进行精细化的内存管理和优化,在处理大规模数据时至关重要。
在本科阶段,数据结构与算法就是最重要的计算机基础课之一,不管是后续考研还是找工作都很重要,没想到吧,在人工智能的学习中,数据结构与算法依然重要。
比如常见的社交网络分析,需要使用图算法处理和分析复杂的图结构数据,使用搜索算法解决推荐系统问题,或者使用排序算法生成最终的推荐结果。
对于学习人工智能的同学,或者想以后走研究这条路,数据结构与算法一定要如臂使指。
数据结构主要就是数组、链表、栈、队列和树等。算法重要的就是排序算法、搜索算法、图等。最低要求就是大家一定要掌握原理,至于暂时写不出来,也没关系。