从零开始如何学习人工智能?

[复制链接]
leonx-iii 发表于 2023-8-16 20:27:25|来自:中国 | 显示全部楼层 |阅读模式
人工智能
全部回复5 显示全部楼层
若无琦事 发表于 2023-8-16 20:27:44|来自:中国 | 显示全部楼层
作为一个从安卓开发转型,研究生三年磕磕绊绊一路走来,成功转型,已经工作快5年的算法工程师。回首当年的学习之路,常常因为人工智能入门知识繁多,走在半路因看不到终点而焦虑不已,从而怀疑走上这条路的正确性,“要不要转行去做开发”、“要不要转行去做前端” 等半途转行的思想一直萦绕脑海中。
这篇文章讲讲入门人工智能的路线和前景,希望能给同样满怀热情想要学习的有志之士,一点点帮助。同时,希望大家认清自己的优劣势,不要用战术上的勤奋,掩盖战略上的懒惰,选择这条路就要全身心all in。因为只有all in,才有更大的概率在激烈的就业市场上胜出同侪。
总的来说,真的从“零”开始的入门之路分为“三步走”。
第一步:学习Python,熟悉Python 基础语法;
第二步:学习机器学习基础知识,实战kaggle;
第三步:选择人工智能具体方向,阅读业界论文。
下面来具体谈谈每一步的具体该如何走,有哪些好的学习资料,究竟要学到什么地步。
学习之路——“三步走”

一. 学习Python

Python 是最简单的入门语言,对于没有编程基础的朋友也非常友好。最重要的是,Python开源社区非常丰富,有很多开源工具和模型,后续人工智能模型开发都是使用Python语言。
Python入门只需要学习基础语法,不需要了解Python GUI、CGI、网络编程等等高级部分,因为这些高级部分都是做后端开发才需要了解的知识点。
这里推荐《Python核心编程第二版》,只需要掌握这本书的第一部分,基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程、模块、面向对象编程这些内容。不推荐《Python核心编程第三版》,是因为第三版没有这些基本内容了,全部都是GUI、网络、数据库等高阶知识。
Python 要学到什么程度呢?学到能使用 Python 写 leetcode easy 题即可,其实就是熟练使用Python 中的 for/while 循环,字符串,数组等。
二. 机器学习基础知识

人工智能与机器学习并不完全等同,但它们密切相关。人工智能是一个更宽泛的概念,代表可让机器或系统像人类一样感知、推理、行动或适应。而机器学习是人工智能的一种方法,它主要使用归纳、综合而不是演绎。机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。


机器学习是人工智能所有方向都必须学习的基础知识,因为无论是机器视觉还是语音识别都是通过神经网络进行分类或者回归,只是网络更加复杂、目标更加细分。
根据监督信息从无到有,各种机器学习算法,可以分为三类:有监督学习、无监督学习和强化学习。
1) 无监督学习
在没有label的数据下学习数据之间的异同。由于没有给定正确的答案,模型无法知道数据的结果是什么,因此将学习数据之间的关系。 当想要检测异常或对数据进行分类时,通常会使用无监督学习。
2)有监督学习
给定学习数据和label,需要从指定数据中发现划分label的规律。对于给定数据,进行足够的训练,能够学习到数据和label 之间的关系,并预测没有label的数据的结果。因此用于预测场景和目标识别对象。
3)强化学习
与监督学习略有不同,给定数据,选择动作以最大化长期奖励 。如果模型尝试的行动导致了好的结果则给出正向反馈,如果导致不好的结果则给出负向反馈。强化学习用于围棋游戏、自动驾驶和机器人控制的人工智能。 那机器学习有什么好的学习资料呢?
经典的西瓜书和李航的统计学习法方法就是非常好的入门材料。注意,不需要看完全部章节,因为有的知识可能你整个算法生涯都不会用到,一开始我们只学普适知识,后面有用到其他的知识点再转过头学。西瓜书只用看到第九章 聚类,《统计学习方法》只用看到第九章 EM算法即可。


在具体看的过程中,一定有很多困难,虽然公式不要求每一步都看懂,但是推到思路一定要啃下去。书看完了,感觉也懂了,但是你一考我,我好像又忘了。


这时候可以看吴恩达的机器学习视频,Coursera上就有,温习一遍。一定要记笔记,跟着推导一遍。记笔记是因为在以后学习生涯中你一定会回过来翻看,记下来就不用再去翻视频了,大大节省了时间。


三.人工智能具体方向

学习完基础知识,就需要选择一个具体的方向,深入了解业内通用的解决方案。关于选择什么方向这个问题,可以看我主页里写的另一篇文章,这里只讨论如何学习。
想要在人工智能算法这条路上成长,一定要培养自己阅读论文的能力。在学习的初期,可以阅读综述性论文,了解这个领域什么算法解决什么问题;在学习的过程中,阅读经典论文,这样能了解到非常多的细节;在已经精通之后,也要不断阅读前沿论文,时刻保持新的视野,将前沿的思想运用在自己的工作中。
金融风控/数据分析
金融风控应该是比较简单的方向,因为它的领域知识比较少,只需要将之前学到的机器学习基础知识会实战即可。机器学习实战阶段需要学习pandas , numpy, sklearn 这三个包的使用,模型主要使用xgboost 和 lightgbm, 代码上主要进行特征构造、特征筛选、特征工程,思维上培养分析模型的能力。
kaggle 是一个业界备受认可的机器学习比赛平台,我推荐下面这本书,这本书不仅教各个库的使用方式,而且使用kaggle 题目举例,给出了如何加载数据,构造特征,交叉验证,调参各个阶段的代码范式,看完之后你就可以组队去kaggle上一显身手了。


大语言模型
大语言模型是近期最火的算法方向。llm大语言模型是最近新兴的方向,国内不仅有百川智能、光年之外等明星创业公司从零开始做中国的llm,而且各个公司的业务部门也开始使用llm 解决原先的业务问题。这意味着技术范式已经升级,原先这部分业务是nlp 工程师使用nlp 技术解决,而如今llm 工程师逐步替代了nlp 工程师。


如何快速入门大语言模型呢?我的方法是从网上找视频教程来看。
我在知乎上找到了针对程序员入门的大语言模型的免费课程和资料,具体操作方式为:点击下面卡片,添加助教老师微信,他会发给AI 大模型资料包和无需翻墙的好用AI工具和网址。关键这个课程是大模型评测软件ChatALL.ai 的作者编写的,有实战经验的大佬总结的经验对于刚入门的朋友是非常宝贵的,无需翻墙的AI工具也能加速我们的工作学习效率。
吴恩达联合openai 出品的三个课程同样非常值得学习,每个课程短小精悍,直击要点。
1.《面向开发者的chatgpt 提示工程》
链接<a href="http://link.zhihu.com/?target=https%3A//www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/" class=" external" target="_blank" rel="nofollow noreferrer">https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/


2.《使用chatgpt api 构建系统》
链接https://www.bilibili.com/video/BV1zX4y187dw/?spm_id_from=333.788.recommend_more_video.12&vd_source=18fbb3e7f363c57cfeac5e175b356e96


3.《LLM应用程序开发的LangChain》
链接:吴恩达最新ChatGPT课程《LLM应用程序开发的LangChain》中文字幕由ChatGPT翻译_哔哩哔哩_bilibili

本帖子中包含更多资源

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

×
zhuixun11 发表于 2023-8-16 20:27:58|来自:中国 | 显示全部楼层
说说我自己的情况:我接触AI的时候,是在研一。那个时候AlphaGo战胜围棋世界冠军李世石是大新闻,人工智能第一次出现我面前,当时就想搞清楚背后的原理以及这些技术有什么作用。
就开始找资料,看视频。随着了解的深入,对AI的兴趣就越大。这儿总结一些我学习的心得、学习路径以及资源,帮助大家快速入门,少走弯路。
在智能化时代,越来越多的人想要学习人工智能,提高自己的核心竞争力。
人工智能是什么?

人工智能(AI),是“Artificial Intelligence”的缩写。是一种人类创造出来的拥有才智的东西,让机器模拟人类的行为、思维,来处理人类面临的特定问题。
现阶段学习人工智能学什么?

AI展现出的能力越来越多,在某些方面的能力能媲美甚至超过人类。现在学习人工智能,在我看来可以分为两个方向:
一个是学习人工智能的原理,比如学习自然语言处理(NLP)、机器学习(ML)、深度学习(DL);
二是学习AI的应用工具,比如现在很火的各种大模型
现在有很多大模型,有聊天类的CHATGPT、claude、文心一言等,也有绘画类的MJ、SD,此外还有很多行业通用大模型。这些大模型将普通人和AI前沿技术之间的距离拉近了很多,大模型也是这次AI技术的主要内容。
大模型可以极大的提高我们工作和学习效率,给大家带来了很多机会,但要高效使用这些AI大模型,也要给足够的准确的提示词。通过不断的学习,在这次AI技术中赚到更多的技术红利。
大家可以看看这一门专门讲AI大模型的公开课,也是知乎知学堂官方发布的,【程序员的AI大模型进阶之旅】公开课也邀请了圈内技术大佬来解读前沿AI技术,通过两天的学习,让大家更加淡定面对AI技术。现在参加还可以领取AI大模型、免魔法就可以使用的AI工具,点击下面的卡片就可以参加:
学习方法

更多关于AI的学习,是想要学习AI的原理,然后拓展自己的技术面。下面这个图可以说明人工智能、机器学习、深度学习之间的关系,此外,还有一些其他的分支,比如计算机视觉、自然语言处理等。


整个AI的学习路径,推荐按着这个步骤来学习:
基础知识(统计学知识、概率论、编程语言、高数)——算法和策略(机器学习、深度学习)——基于自己的兴趣方法找到深耕方向(计算机视觉、自然语言处理等)
基础知识

高数
数学是AI 的基石,这些是理解各种算法的基础。学习AI需要学习的高数知识主要有:
函数、函数极限(无穷小与无穷大、极限的四则运算、导数)、可导和连续(导数的四则运算、复合函数求导法、高阶导数、偏导数)、微分、中值定理、泰勒展开式、不定积分、函数单调性与极值、曲线的凹凸与拐点等。
概率论和统计学知识
AI需要大量的数据和数学模型来分析和决策,统计学可以帮助AI快速来处理这些信息。下面来举一些学习AI必须知道的概率论和统计学知识:
1.了解随机变量的类型,并清楚随机事件的基本定义、随机变量的基本概念
2.掌握概率、概率密度的概念及其表示
3.会计算随机变量的联合分布、边缘分布、条件分布
4.掌握先验概率、后验概率的基本概念及其计算方法
5.掌握随机变量的均值、方差、协方差、协方差矩阵、矩、相关系数的基本概念及其计算方法
6.掌握常见的随机变量的分布函数及其特征
7.掌握统计模型的参数估计的基本方法,重点掌握极大似然估计、最大后验概率估计等
8.理解假设检验的基本概念、作用,掌握进行假设检验的基本方法
9.理解多元统计分析与常规统计分析的区别、难点
10.掌握多元高斯随机变量的均值向量、方差矩阵、协方差矩阵、相关系数矩阵的推导
11.掌握随机过程的基本概念、作用及其统计描述
12.掌握马尔科夫链基本概念、作用及其统计描述
13.掌握马尔科夫随机场基本概念、作用及其统计描述
编程语言
AI的编程语言有很多中,不过推荐大家学习python,主要有三个原因:
1.python的语法相对来说比较简单,更适合零基础入门;
2.python有很多AI的库,这些库极大的方便了AI的学习;
3.在当前的市场上,python的使用面更广一些。
基础的python知识主要包括:基本数据类型、关键字、标识符和内置函数、运算符、语句
算法和策略

在有了一定得基础后,就可以深入学习机器学习、深度学习了。
我在另一个如何学习机器学习得回答中详细介绍了机器学习的流程、机器学习应用方向、需要哪些知识等等,在这儿就不赘述了。大家可以看看我这个回答:
<a href="http://www.zhihu.com/question/266291909/answer/3145588549" data-draft-node="block" data-draft-type="link-card" data-image="http://pic2.zhimg.com/v2-0761a3cf76f391241aca4582aca27451_180x120.jpg" data-image-width="490" data-image-height="236" class="internal">如何系统学习机器学习?基于自己兴趣继续深入学习

了解机器学习、深度学习后,有了 算法基础,就可以根据自己的兴趣爱好做更专业的研究了,比如自然语言处理、计算机视觉等。
自然语言处理
自然语言处理属于人工智能的一个子领域,是指用计算机对自然语言的形、音、义等信息进行处理,即对字、词、句、篇章的输入、输出、识别、分析、理解、生成等的操作和加工。
目前各类的聊天类大模型都可以说是基于自然语言处理生成的。
计算机视觉
计算机视觉是指让计算机和系统能够从图像、视频和其它视觉输入中获取有意义的信息,并根据该信息采取行动或提供建议。
计算机视觉可以做很多事情,包括:图像分类、目标检测、语义分割、实例分割、目标追踪等。
优质资源

AI发展至今,也有很多优质的资源。总结了一些推荐给大家:
视频课

DeepLearning.AI ——《Machine Learning》
这个课程是机器学习入门的经典课程,大家在入门的时候可以看看这个课程。


DeepLearning.AI ——《Deep Learning》


谷歌生成式 AI 课程
对于想要学习现在生成式AI如何使用的同学可以看看这个课程:《生成式 AI 学习路径》,教授生成式 AI 的产品和技术学习内容,覆盖了大语言模型的基础知识,以及如何在 Google Cloud 上创建和部署生成式 AI 解决方案等内容。


DeepLearning.AI ——《面向开发人员的 ChatGPT  Prompt 工程课程》
这个课程是DeepLearning.AI 与 OpenAI 共同制作的,课程主要是学习如何使用大型语言模型 (LLM) 快速构建新的强大应用程序。学习如何编制有效的prompt。



此外还有很多优质的课程:
林轩田《机器学习基石》
林轩田《机器学习技法》
李宏毅 《机器学习课程》
Fast.ai《程序员深度学习实战》
吴恩达 CS229
书籍

周志华《机器学习》
经典入门书籍,需要慢慢啃得一本书。


李航《统计学习方法》


《机器学习实战》


《Scikit-Learn 与 TensorFlow 机器学习实用指南》


《利用python进行数据分析》


《深度学习》
又被称为花书,深度学习领域最经典的畅销书。从浅入深介绍了基础数学知识、机器学习经验以及现阶段深度学习的理论和发展,帮助学习者全方位得了解深度学习。



此外,还有很多优质得资源,比如各大python数据库得官方文档,也还有很多优质得社区,比如CSDN、GITHUB等,在学习的过程中,都可以根据自己的需要找资料完善自己的知识体系。
最后还是要提醒大家的是,一定要多实战、多练习。只有实战出真知。
以上就是本次的分享,欢迎大家点赞收藏,想看的人多的话,更新更多AI信息。

本帖子中包含更多资源

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

×
chnnic 发表于 2023-8-16 20:28:40|来自:中国 | 显示全部楼层
当前人工智能正受到越来越多的关注,随着“新基建计划”把人工智能作为一个重点发展内容,人工智能领域也将获得更多的资源支撑,所以当前不论是学生还是职场人,学习人工智能都是不错的选择。当前人工智能正处在发展的初期,当前积极拥抱人工智能也会有更多的机会来获取人工智能前期的发展红利。
长期以来,人工智能领域的人才培养一直以研究生教育为主,一方面原因是人工智能是一个典型的交叉学科,涉及到数学、控制学、计算机、神经学、语言学等诸多学科,另一方面原因是人工智能技术体系尚不成熟,有大量的研究课题需要攻克。目前随着人工智能领域的技术体系逐渐被建立起来,不少高校在本科阶段也连续开设了人工智能专业,相信未来会有更多的高校,包括普通本科高校也会开设人工智能专业。
随着人工智能平台开始逐渐落地应用,人工智能领域对于人才的需要也将逐渐多元化,将逐渐从研发型(创新型)人才向应用型和技能型人才覆盖,这就会在很大程度上促使更多人开始学习人工智能技术。未来学习人工智能技术的渠道也会越来越多,普通人也完全可以通过自学的方式来学习基本的人工智能技术。
对于普通人来说,学习人工智能技术可以先从编程语言开始学起,比如从Python开始学起就是不错的选择。Python语言目前在人工智能领域有非常广泛的应用,不论是计算机视觉领域,还是自然语言处理领域和机器人领域,Python语言都是非常重要的工具之一。
学习Python语言完全可以自学,即使没有任何编程基础的人,也可以通过自学来掌握,但是在学习资料的选择上,普通人要尽量选择知识量适中的书籍,尽量不要在学习的初期就选择那种知识量非常大(非常厚)的书籍,这些书籍并不适合基础比较薄弱的初学者,普通人在没有专业人士的指导下,也很难理解其中的一些专业讲解。对于基础比较薄弱的初学者来说,可以重点关注一下这本书:
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!
zwjnet 发表于 2023-8-16 20:29:36|来自:中国 | 显示全部楼层
想要学习人工智能?这里有一条完整路径资源
在本文中,《Analytics India》杂志给出了学习AI的最佳途径。...

科技领域的天平正在向人工智能倾斜,IT领域的技术人员正在将AI应用到现有产品中。但是对于企业来说, AI人才才是关键。企业培训应有意识地建立在线项目,帮助员工适应新的角色。
虽然很多程序员都可以编写代码,但他们还不精通机器学习。尽管行业的炒作和初创公司层出不穷,开发人员或AI新手还是不知道如何开始人工智能的学习。企业家和产品爱好者Shival Gupta提出了一个有趣的观点:在行业不断变化的情况下,全行业开发人员的相互联系和交流远远不够,在未来两年内,如果没有成熟的AI技能,整个行业将裹足不前。
在本文中,《Analytics India》杂志给出了学习AI的最佳途径。






1. 寻找一些免费的书籍

Shival Gupta分享自己初学AI的经验时,强调了熟悉基本AI术语和方法的重要性。寻找一些免费的AI书籍作为自己学习人工智能的开始,是正确的做法。Peter Norvig和Stuart J. Russell所著的《Artificial Intelligence: A Modern Approach》一书就很不错。本书不仅介绍了基本的人工智能概念和算法(专家系统、深度优先和广度优先搜索、知识表示等),而且还包括基础知识如贝叶斯推理,一阶逻辑,语言建模等。
对于那些对深度学习感兴趣的人, Ian Goodfellow、Yoshua Bengio和Aaron Courville 所写的《深度学习》(自适应计算和机器学习系列)一书是不错的选择。
此外,可以看看《Logic For Computer Science》这本免费书,它解释了计算机科学的数学逻辑,并强调了求解证明的算法方法。
注:想要获取上述提到的几本书,可私信智能观。

2.把需要的数学知识整理一下

由于微积分和线性代数在AI / ML技术上有广泛的应用,学习它将是一个很好的方法。人工智能爱好者认为,大多数机器学习技术可以简化为线性代数和微积分,比如训练神经网络的反向传播算法。
还有,想要深入研究AI / ML,需掌握离散数学、微积分(微分、积分和多变量)、概率和统计、线性代数、回归分析和随机过程(泊松过程、马尔科夫链和布朗运动)。
您可以在网上查找免费的学习资源,了解概率理论,了解基于R 语言、推理和算法的统计学习。






3.熟悉Python,(C / C ++)和数据结构

人工智能从业者相信,任何主流语言和非主流语言都能应用于AI / ML。最大的区别在于库/工具的性能和可用性。例如,C++的所有设置都优于Java或Python,并帮助开发人员最大化硬件的功能。另一方面,Python有一个非常好的FFI,并且经常与C或C++结合使用。与此同时,Octave / MATLAB、R、Python、C++、Java、R和其他一些语言都有高质量的库,如何使用取决于你想要做什么。
一般的共识是,必须熟悉一些流行的语言,如Python,它有一个很好的工具箱/库。

4.尝试使用开源框架

你可以选择一个开源框架,实现基本分类。根据开发人员Akash Paul的说法,选择框架可能是一项具有挑战性的任务,因为这些框架都是基于不同目的构建的。他举了一个例子:Caffe使用了一种声明式的方法来定义模型,而TensorFlow允许通过编程创建和使用模型,甚至跨平台可视化和部署模型。
对硬件的一些建议是,购买一个强大的Pascal系列GPU(10606gb)、i3、8GB RAM和SSD,以获得对AI工作负载的最低配置要求。你可以看一下英伟达的CUDA工具包,这是开始实验的好地方。

5.使用GitHub平台,搜索热门项目

GitHub拥有世界上最大的开源数据集合,它为机器学习爱好者提供了大量资源。你也可以在GitHub上查看最受欢迎的项目。试着每个月做一个项目。

6.创建你的第一个聊天机器人






尝试构建自己的聊天机器人作为第一个人工智能项目。在开始编程机器人前,你要知道制作聊天机器人的3个步骤——输入文本、发送按钮和输出文本。根据AI从业者的说法,搜索引擎巨头谷歌使用的网络爬虫是高级机器人的最佳范例。在你开始编程机器人之前,看看这些:
xpath:开发人员使用xpath根据各种标准选择XML节点或节点集。
Regex:正则表达式是用于描述搜索模式的特殊文本字符串,用于构建基本的聊天机器人。
此外,还可以查看这些用于bot项目的API:谷歌云预测API文档、DiffBot、用于语言工具包的机器学习、Wolfarm Alpha API等。

7.免费资源

在学习网站上开设账户,做一些项目增长知识和经验。
一些免费的人工智能学院,如英特尔的AI学院,为初学者提供必要的学习材料、工具和技术。
英伟达的自学实验室也是免费的,提供最新的技术培训,如在广泛的应用程序中部署神经网络。

本帖子中包含更多资源

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

×
墨香 发表于 2023-8-16 20:29:51|来自:中国 | 显示全部楼层
Andrew Ng 的”机器学习“在线课程是一个很好的开始~

快速回帖

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

本版积分规则