找回密码
 立即注册
查看: 1152|回复: 5

人工智能所需要学习的技能有哪些?

[复制链接]

1

主题

3

回帖

17

积分

新手上路

积分
17
发表于 2023-9-8 18:09:58 | 显示全部楼层 |阅读模式
其他行业想转行AI的,对于人工智能的现状很不了解且不知如何入门
回复

使用道具 举报

0

主题

1

回帖

0

积分

新手上路

积分
0
发表于 2023-9-8 18:10:39 | 显示全部楼层
这是一份来自5年调参侠的血泪史,讲一讲这几年我在人工智能领域都需要哪些知识。
老规矩, @TopGeeky 持续输出干货文章,建议收藏、点赞、关注后再看,并欢迎私信讨论,关注后私信将我这些年收藏的学习资源全部送到你的网盘吃灰。
人工智能需要的六大技能

先简述一下,人工智能需要数学基础技能、编程技能、数据工程能力、机器学习基础算法、深度学习算法、开发框架及项目等六大核心技能,聚集此六大技能多半就能站在人工智能最顶尖的一批人了。当然,千万不要对这六大技能感到畏惧,人工智能行业最应该具备的能力就是持续的终身学习的能力。
接下来将对以下技能一一拆解并附上学习资源,入门人工智能行业大概需要1-2年时间的学习,未来的道路很长千万别忘记初心,保持终身学习的能力。



人工智能核心能力图谱

上图详细的说明了人工智能所需要的知识点,但是千万别害怕,入门人工智能并不需要把所有知识点全部学会,只需要记住整体脉络即可,在真实场景遇到的时候再去补相关的知识点,切记保持终身学习的能力!切记!
认识人工智能

人工智能 (AI) 是计算机科学的一个广泛分支,涉及构建能够执行通常需要人类智能的任务的智能机器。虽然人工智能是一门具有多种方法的跨学科科学,但尤其是机器学习和深度学习的进步正在为科技行业的几乎每个领域带来范式转变。

  • 将人工智能称之为机器可以具有人类思维相关认知能力的愿景
  • 目前解决的方式是通过机器学习的方法来逼近人工智能这一个愿景
  • 其中深度学习是机器学习中目前效果较好且最火热的一个技术分支



人工智能关系

数学基础技能

深度学习的第一步或技能是 数学技能。它可以帮助您了解深度学习和机器学习算法的工作原理。当你尝试着去理解一个像机器学习(ML)一样的交叉学科的时候,主要问题是理解这些技术所需要的数学知识的量以及必要的水平。
数学有多重要同学们肯定都十分清楚,尤其是在人工智能(数据科学)领域,不懂数学想必寸步难行。
简单来说,数学能力是决定未来人工智能从业长远的必备条件。但是并不建议从头到尾花大量时间去一步一个脚印学习,这样会让你持续走弯路。
对于数学学习的最佳方式,就是将所有的知识点+学习资源整合,当遇到相关知识点成为拦路虎的时候回过头,利用学习资源重新复习这个知识点
线性代数

线性代数是 21 世纪的数学。在机器学习领域,线性代数无处不在。主成分分析(PCA)、奇异值分解(SVD)、矩阵的特征分解、LU 分解、QR 分解、对称矩阵、正交化和正交归一化、矩阵运算、投影、特征值和特征向量、向量空间和范数(Norms),这些都是理解机器学习中所使用的优化方法所需要的。

  • 由 MIT Courseware 提供的线性代数课程(Gilbert Strang 教授的讲授的课程),备受广大学生的喜欢,精品中的精品,首推、强推。这门课的精彩程度在于它能够让你从空间的角度去考虑问题,而不仅仅是方程。而且书中大量的讲到线性代数的应用
  • 3Blue1Brown出品的这个线性代数的本质系列视频就是开胃菜,总共14个小视频,视频控制在9-18分钟之间,很适合短时间快速温习线性代数知识点,更适合基础不好同学入手。
  • immersivemath这个是最容易理解线性代数和空间关系的一种交互式网站,通过可以活动的图像,你可以观察和理解难懂的数学理论,课程看不懂的时候过来看一看帮助理解
  • 关于教学课程强推清华大学马辉老师出品的线性代数是目前当中最难、品质保证最高,适合对数学有极度兴趣或者准备考研的同学。
  • 《线性代数的艺术》一共只有12页纸,而且一半都是图解,小白也不用担心看不懂,阅读完这本书其实就算是完成线性代数的入门,建议由此入手,在遇到其他问题学习其他课程即可。
PS: 这篇文章耗时一周整理全网最具有代表性的线性代数学习资源,如果觉得有所帮助收藏、点赞、关注三连是对我最大的支持。
概率论与统计学

机器学习需要的一些概率和统计理论分别是:组合、概率规则和公理、贝叶斯定理、随机变量、方差和期望、条件和联合分布、标准分布(伯努利、二项式、多项式、均匀和高斯)、 矩母函数 (Moment Generating Functions)、最大似然估计(MLE)、先验和后验、最大后验估计(MAP)和抽样方法。
微积分

当确立好一个算法模型之后,问题的最终求解往往都会涉及到优化问题。在探寻数据空间极值的过程中,如果没有微分理论和计算方法作为支撑,任何漂亮的模型都无法落地。当然如果不具备基础的微积分知识,在理解机器学习算法的优化上同样困难,
因此,夯实多元微分的基本概念,掌握最优化的实现方法,是通向最终解决方案的必经之路。
凸优化

机器学习中广泛使用的凸优化方法主要分为梯度下降法和拟牛顿法,学习凸优化在机器学习中具有重要的地位,能够帮助我们更有效地训练模型、提高模型的性能,并且提供了坚实的数学基础和工具,用于解决各种优化问题
推荐看看这篇文章理解凸优化
编程技能

Python 是迄今为止最流行、最好的机器学习语言,超过 60% 的机器学习开发人员使用并优先使用它进行开发。 Python 如此有吸引力有几个关键方面。 一方面,它很容易学习,这对于那些想要开始机器学习的人来说至关重要。 它还具有可扩展性和开源性。入门机器学习需要学习一门编程语言,这门编程语言主推python,如果有编程学习经验的同学可以自行学习。
数据工程能力

数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。特征工程很少在机器学习相关的书中阐述,包括很多网络课程当中,这个需要很多实际经验才能得出处理数据的知识。这里推荐几本特征工程的图书,可以自行阅读
数据工程包括数据获取,存储和处理。因此,工程师的主要任务是为数据提供可靠的基础架构。如果我们看一下需求的层次结构,数据工程将进入其中的前2-3个阶段:收集,移动和存储,数据准备。
还需要使用和了解绝大多数大数据存储工具,下面总结了大多数用于存储和处理大量数据的工具:

  • Apache Kafka(Scala)
  • Hadoop,HDFS(Java)
  • Apache Spark(Scala)
  • Apache Cassandra(Java)
  • HBase(Java)
  • Apache Hive(Java)
要了解这些工具的工作方式,您需要了解它们所使用的语言。Scala的函数式编程使您可以有效地解决并行数据处理的问题,在性能方面,python远远比不上Scala。还可以使用Java来对这些工具进行操作,不管怎么样你至少需要学会一种手段来操作这些工具。
机器学习基础算法

按照机器学习算法分类可以将机器学习划分为:
监督学习
非监督学习
按照难度划分,可以通过下面内容详细说明一下不同算法之间的难度和入行需要掌握的程度。
知识点内容概述
分类算法逻辑回归,决策树,支持向量机,集成算法,贝叶斯算法准备面试的同学们必须掌握
回归算法线性回归,决策树,集成算法有些算法既能做分类也能做回归
聚类算法k-means,dbscan等无监督是实在没标签的时候才考虑的
降维算法主成分分析,线性判别分析等重在理解降维的思想
进阶算法GBDT提升算法,lightgbm,,EM算法,隐马尔科夫模型进阶算法有时间精力的同学们可以挑战
监督学习

监督学习是指在给定的训练集中“学习”出一个函数(模型参数),当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求包括输入和输出,即特征值和目标值(标签),训练集中数据的目标值(标签)是由人工事先进行标注的,下面给出监督学习算法的发展时间线。



监督学习发展历史

监督学习再次划分下去也包括两个类别,分别是分类和回归
分类方法可预测离散响应 - 例如,电子邮件是真正邮件还是垃圾邮件,肿瘤是恶性还是良性的。分类模型将输入数据划分成不同类别。典型的应用包括医学成像、语音识别和信用评分。
如果您的数据能进行标记、分类或分为特定的组或类,则使用分类。例如,笔迹识别应用会使用分类来识别字母和数字。在图像处理和计算机视觉方面,无监督模式识别方法被用于目标检测和图像分割。
回归方法可用于预测连续响应,例如电池荷电状态等难以测量的物理量,电网的电力负荷或金融资产价格。典型的应用包括虚拟传感、电力负荷预测和算法交易。
2.无监督学习

无监督学习算法利用未标记的数据自行从数据中发现模式。该系统能够从提供的输入数据中识别隐藏的特征。一旦数据更具可读性,模式和相似性就会变得更加明显。
下面是一个使用未标记数据训练模型的无监督学习方法的示例。在这种情况下,数据由不同的车辆组成。该模型的目的是对每种车辆进行分类。



无监督学习流程

无监督学习的一些示例包括 k 均值聚类、层次聚类和异常检测,下面详细介绍了无监督学习的类别和应用
算法名称类型特点应用
K-means基于划分方法的聚类将数据分为K组,随机选取K个对象作为初始的聚类中心,计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心客户分析与分类、图形分割
Birch基于层次的聚类通过扫描数据库,建立一个聚类特征树,对聚类特征树的叶节点进行聚类图片检索、网页聚类
Dbscan基于密度的聚类将密度大的区域划分为族,在具有噪声的空间数据库中发现任意形状的簇,并将簇定义为密度相连的点的最大集合社交网络聚类、电商用户聚类
Sting基于网格的聚类将空间区域划分为矩形单元,对于不同级别的分辨率,存在多个矩形单元,高层单元被划分为多个低层单元,计算和存储每个网格单元属性的统计信息语音识别、字符识别
主成分分析(PCA)线性降维通过正交变换将一组可能存在相关性的变量数据转换为组线性不相关的变量,转换后的变量被称为主成分数据挖掘、图像处理
线性判别分析(LDA)线性降维将高维空间中的数据投影到低维空间中,投影后各个类别的类内方差小,而类间均值差别大人脸识别、舰艇识别
局部线性嵌入(LLE)非线性降维在保持原始数据性质不变的情况下,将高维空间的信号映射到低维空间,从而进行特征值的二次提取图像识别、高维数据可视化
拉普拉斯映射(LE)非线性降维从局部近似的角度构建数据之间的关系,对要降维的数据构建图,图中的每个节点和距离它最近的K个节点建立边关系故障检测
深度学习算法

深度学习基础知识

算法名称内容概述
神经网络神经网络是最基础的,为后方网络的学习打下基础
本质神经网络大家听起来很熟悉吧,深度学习中的大哥大!计算机视觉的核心网络
神经网络北乔峰,南慕容,这就是自然语言处理中的大哥大了!
对抗生成网络现在比较火的模型,玩起来很有趣,可以进行各种图像融合
序列网络模型NLP中常用架构,机器学习翻译模型,应用点比较多
两大经典网络架构刚才说的CNN和RNN都是比较基础的网络模型,在其基础上还有很多拓展需要大家掌握
如果想要实战深度学习建议参考这本书 《动手学深度学习》, ⾯向希望了解深度学习,特别是对实际使⽤深度学习感兴趣的⼤学⽣、⼯程师和研究⼈员。
深度学习论文

如果你是深度学习领域的新手,你可能会遇到的第一个问题是“我应该从哪篇论文开始阅读?”下面是一个深入学习论文的阅读路线图!
这份深度学习论文阅读路线分为三大块:
Deep Learning History and Basics
Deep Learning Method
Applications


当然如果想要理解今年最热最火的深度学习大模型知识的话,真心的建议你参加知学堂推出的《程序员的AI大模型进阶之旅》一共2天的课程,里面有业内技术大佬全面解读目前的机器学习技术以及应用,可以提升对于模型的认知和掌握,更快速的了解这门工具。更更更更重要的是,学习要跟对教程老师,这门课的老师来源于科研界和工业界大牛授课,帮助你展望AI未来发展趋势。
最重要的是这个课程是完全免费的,白嫖党的福利。不需要钱就可以和大牛对话,这种机会实属难得, 更能体验自主训练的机器学习模型,实践理论相结合。上面的链接就是公开课的链接!!另外,添加课程之后一定一定一定要添加助教小姐姐的微信,可以私聊助教领取今年最火最热的大模型学习资源!!
开发框架及项目

开发框架

Sklearn:


scikit-learn 库是日常机器学习和数据科学最受欢迎的平台之一。原因是它是基于 Python 构建的,这是一种功能齐全的编程语言。这边有一个经典的Sklearn学习资源
PyTorch:


PyTorch中文官方文档其中讲述了很多有用的知识点。阅读英文文档比较困难的同学也不要紧,PyTorch相关的中文文档也很丰富,中文文档非常详细的介绍了各个函数,可作为一份PyTorch的速查宝典。
TensorFlow:


这是 YouTube 视频的 TensorFlow 教程,非常生动有趣。有视频讲解,文字教程,还有代码供你学习和练习。


tensorflow_cookbook:GitHub 5200 + Star这是一本 TensorFlow 英文书的代码,你在网上可以搜到这本书来看看,也可以在这直接使用这些代码进行学习。一共十一章,讲解十分详细


tensorflow2_tutorials_chinese:GitHub 2900+ Star
中文课程,详解讲解了tensorflow的使用教程。


<hr/>Hi,这里是 @TopGeeky,一位持续输出计算机相关精品文章的热爱流程序员,如果本文对你有很大的帮助的话,请点赞、收藏、关注三连。因知乎平台规范本文没有提供资源外链,如果想要完整资源外链的话,关注+私信,领取资源汇总

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

0

主题

4

回帖

0

积分

新手上路

积分
0
发表于 2023-9-8 18:10:54 | 显示全部楼层
人工智能(Artificial Intelligence,缩写为AI)是一种模拟人类智能的技术和系统。

人工智能的目标是使计算机能够执行类似人类的智能任务,包括学习、推理、问题解决、感知和语言理解等。人工智能可以分为强人工智能和弱人工智能。强人工智能指的是具有与人类智能相当的智能水平,能够在各种任务中表现出类似人类的智能;而弱人工智能则是指针对特定任务设计的智能系统,只能在特定领域内表现出智能。人工智能的发展涉及多个领域,包括机器学习、自然语言处理、计算机视觉和专家系统等。
Python编程基础

熟练掌握人工智能Python语言,建立编程思维以及面向对象程序设计思想
基础:  Python基础语法/Python数据处理/函数/文件读写/异常处理/模块和包
进阶:面向对象 /网络编程 /多任务编程 /高级语法 /Python数据结构
Python 入门教程完整版(全 547 集) - 1. ubuntu 基本安装

Python 深入浅出进阶课程 - 1. 今日目标数据处理与统计分析

掌握SQL及Pandas完成数据分析与可视化操作。
Linux /MySQL与SQL /Numpy矩阵运算库 /Pandas数据清洗 /Pandas数据整理 /Pandas数据可视化 /Pandas数据分析项目
Python 进阶之 MySQL 入门教程 - 1. Mysql 入门课程介绍机器学习与多场景案例实战

掌握机器学习基本概念,利用多场景案例强化机器学习建模。
机器学习简介 /K近邻算法 /线性回归 /逻辑回归 /决策树 /聚类算法 /集成学习 /机器学习进阶算法 用户画像案例 /电商运营数据建模分析案例
Python 3 天快速入门机器学习项目 - 1. 人工智能概述深度学习与NLP自然语言处理基础

掌握深度学习基础及神经网络经典算法;掌握全球热门的PyTorch技术,完成自然语言处理基础算法,诸如RNN、LSTM、GRU等技术
深度学习基础 /BP神经网络 /经典神经同络结构(CNN&RNN) /深度学习多框架对比 /深度学习正则化和算法优化 /深度学习Pytorch框架 /NLP任务和开发流程 /文本预处理 RNN及变体原理与实战 Transformer原理与实战 /Attention机制原理与实战 /传统序列模型 /迁移学习实战
Python 深度学习之神经网络 - 1. 上节回顾CV计算机视觉综合项目

掌握人脸支付项目或智慧交通项目或实时人脸识别项目
解决方案列表 /项目架构及数据采集 /人脸检测与跟踪 /人脸姿态任务 /人脸多任务 /系统集成
人工智能教程|零基础学习计算机视觉快速入门_哔哩哔哩_bilibili书籍推荐

机器学习推荐吴恩达老师的机器学习手册



李航老师的统计学习方法



还有周志华老师的机器学习和图解机器学习





由于李航老师的统计学习方法涉及到一些公式推导,如果看不懂的同学可以优先学习另外几本书;
关于机器学习实战部分,推荐去看看Kaggle竞赛网站上面的各种已完成竞赛任务,多多学习各路大神的代码


如果觉得英文看起来吃力,也可以读读



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

0

主题

4

回帖

6

积分

新手上路

积分
6
发表于 2023-9-8 18:11:19 | 显示全部楼层
1、得掌握python。如果之前没接触过python可以参考莫烦python。
2、学会看论文,arxiv.org 关注顶会的论文。
3、善于使用github。能有复现代码的能力。如果自己没有GPU,可以去智星云租用GPU
4、在现在有最好项目的基础上做出修改提升。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

0

主题

6

回帖

12

积分

新手上路

积分
12
发表于 2023-9-8 18:11:30 | 显示全部楼层
对于那些想要从事人工智能项目的开发人员来说,他们需要具备哪些必要的技能?我们就这个问题采访了22位相关企业的高管,以下就是对他们采访的总结归纳。
关于数学


  • 数学方面技能的掌握取决于研究深度。人工智能并不依赖与任何编程语言,这意味着开发人员需要掌握处理数据相关的其他技术,其中包括了算法,代数和微积分。具备这些技能的重要性显而易见。同时我们还需要了解人类对于自然语言处理的思维过程,其中的上下文联系,隐含意图以及所描述事物间的联系等等。这需要深入洞察人类的思维过程。
  • 数学专业的学生更容易成为一名人工智能项目中的软件开发人员,因为他们已经具备了统计学的基础,而这对人工智能或机器学习是非常重要的。相反一名普通的软件开发人员不可能简单的通过某些Python库的运用就能解决实际问题。
  • 统计学,数据建模,大数据,深度学习和递归神经网络等知识与一种或多种编程语言相结合,对于试图进入人工智能的开发人员来说是一个比较好的出发点。进而把实际问题从更高层次的角度抽象出来,从而使的计算机能够理解并进行处理。
  • 良好的数学知识和数据科学的学术背景,通过不同方式(各种研讨会,个人博客等)跟上这个快速发展的领域。擅长处理大数据集。能够快速掌握机器学习的工具集并将其集成到更大的项目中。
  • 对众多相关数学知识进行梳理,并建立自己的人工智能知识体系。比如, 了解数据类型,掌握机器学习,相关算法,决策树和神经网络。还要了解业界的知名项目(开源项目,Apache,谷歌,IBM,微软,R,Python等等)。
关于数据科学


  • 能够读懂数据,挖掘数据中信息,发现数据中的问题,对数据敏感,能够绘制数据地图。精通Python和Java。了解TensorFlow,Café和Torch等主流人工智能库。 能够从HDFS数据湖或数据库中提取正确的数据。 知道如何使用过滤器。 数据的质量很重要。 了解如何策划和准备数据。
  • 通过各种渠道获取理论基础知识(比如Coursera上的相关课程)。 开始为一家人工智能公司工作或在现有工作中进行一些人工智能方面的实践。 我们只是让开发人员使用神经网络来构建应用程序,以了解图像何时被完全正确呈现。了解人工智能框架和Spark。
  • 数据科学家要具备计算机科学,分析部署,ETL等知识。注重可用数据,掌握训练系统的方法,从而获得最佳的训练结果。通过相关培训或黑客马拉松提升自身技能。 如果从事机器学习算法研究,与语言学团队合作对机器学习数据进行预处理。
  • 能够灵活熟练地使用开源工具,专注于业务问题解决。通过R和Python进行迭代建模,并使用Scala进行分布式计算。
其他


  • 后端开发人员需要了解机器学习和大量关于人工智能的开源技术。 前端开发人员需要了解聊天机器人及其会话流程。
  • 开始尝试任意一种人工智能技术,进行不同于传统的思维方式来解决问题。这点非常重要。人工智能开发人员主要的工作就是“教”机器。把问题进行分解并思考如何提高训练的有效。然后观察训练的过程并对并重新成为学习基础。 想想你需要系统理解的核心概念是什么。 有很多途径可以做你正在寻找的东西。 获得不同的心态并解决手头的问题。
  • 如今,由于人工智能的最新应用需要高度专业化的理论和实践知识,通过研读相关的博士学位正迅速成为最基本要求。

以上为译文,由阿里云云栖社区组织翻译。
译文链接
文章原标题《what-skills-do-developers-need-for-ai?》
译者:friday012,审校:。
文章为简译,更为详细的内容,请查看原文
更多技术干货敬请关注云栖社区知乎机构号:阿里云云栖社区 - 知乎
本文为云栖社区原创内容,未经允许不得转载。
回复

使用道具 举报

0

主题

4

回帖

20

积分

新手上路

积分
20
发表于 2023-9-8 18:12:23 | 显示全部楼层

首先要有一些基本数学知识,高等数学中的微积分,线性代数中的矩阵等。
然后要掌握基本的编程技能。
然后可以从我画的这张图中开始学习机器学习、深度学习的内容,推荐看吴恩达的网课。
最后可以跟着各种框架官网的教程学习如何基本使用这些框架,并适当参加kaggle等比赛来锻炼实际应用的能力。
(欢迎关注微信公众号:机器工匠,不定时发布关于人工智能的技术、资讯文章,更有针对初学者的系列入门文章)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|T9AI - 深度人工智能平台 ( 沪ICP备2023010006号 )

GMT+8, 2024-12-22 01:48 , Processed in 0.060739 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表