初识机器学习和深度学习

参考课程:

人工智能的数学基础_同济大学_中国大学MOOC(慕课)

李哥深度学习实战


  • 人工智能:机器展现的人类智能
  • 机器学习:计算机利用已有的数据,得出了某种模型,并利用此模型预测未来的一种方法。
  • 深度学习:实现机器学习的一种技术

生活中一个常见的例子:

当你打算注册一个账号,系统会弹出一个验证是否是真人的滑动框:

我们滑动对应拼图的时候是根据日常经验来完成的,那么对于机器来说他看到就是一个向量,想让他完成拼图就需要深度学习。现在的大模型都是几亿几百亿的参数,人的经验是有限的,而这些数据只要在合适的训练下可以被大模型迅速识别输出,这就是机器学习的优势。

机器学习

机器学习研究的是计算机怎样模拟人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身。

计算机从数据中学习出规律和模式,以应用在新数据上做预测的任务。

机器学习算法可以按照不同的标准来进行分类。比如

  1. 按函数的不同,机器学习算法可以分为线性模型和非线性模型;
  2. 按照学习准则的不同,机器学习算法也可以分为概率模型和非概率模型。

一般来说,我们会按照训练样本提供的信息以及反馈方式的不同,将机器学习算法大致分类为有监督学习、无监督学习和弱监督学习。(所谓的监督,你可以理解为一个标签)
分类问题(监督学习)

• 根据数据样本上抽取出的特征,判定其属于有限个类别中的哪一个
• 垃圾邮件识别(结果类别: 1 、垃圾邮件 2 、正常邮件)
• 文本情感褒贬分析(结果类别: 1 、褒 2 、贬)
• 图像内容识别(结果类别: 1 、喵星人 2 、汪星人 3、人类 4 、草泥马 5、都不是)
你可以看成是选择题。
回归问题(监督学习)
• 根据数据样本上抽取出的特征,预测连续值结果
• 电影票房值
• 魔都房价具体值
• 刘德华和吴彦祖的具体颜值得分
你可以看成是填空题。
聚类问题 ( 无监督学习 )
• 根据数据样本上抽取出的特征,挖掘数据的关联模式
• 相似用户挖掘 / 社区发现
• 新闻聚类
强化学习 ( 弱监督学习 )
• 研究如何基于环境而行动,以取得最大化的预期利益
• 游戏 (" 吃鸡 ") 最高得分
• 机器人完成任务

K最近邻居(K-Nearest Neighbors):

简称KNN,一种监督学习算法,用于分类和回归问题。它的基本思想是通过测量不同数据点之间的距离来进行预测。
现在要判断小明是清华的还是北大的

取离他位置最近的 100 个人出来, 100 个都是北大的------推测小明来自北大
取离他位置最近的 100 个人出来, 89个都是清华的------推测小明来自清华
取离他位置最近的 200 个人出来, 111 个都是清华的, 89个北大的。------推测小明来自清华
取离他位置最近的 200 个人出来, 180个都是川大的。------推测小明来自清华或北大,但不能是川大,因为输出集中没有川大这个选项

" 近朱者赤,近墨者黑"

机器学习

机器学习,具有数学上的可解释性,但准确率不是百分百,且不灵活。

对于象棋来说,你可以使用多重if......else......循环来穷尽,这是传统的系统可以做到的。

但对于围棋来说ifelse是无法穷尽的,让你写一个程序实现是不可能的,如何让机器自己学习,这就是深度学习实现的机器学习。

深度学习就是找一个函数f。

设计一个很深的网络架构让机器自己学。

他是怎么学的,我不知道,只要答案是对的,就没毛病,中间过程要多复杂有多复杂,但我不需要知道这个函数,这就黑匣子。

神经网络

常见的神经网络的输入, 一般有三种数据形式
1 : 向量:比如说一个人的身高、体重、财富( 180 , 140 , -1000)
2 : 矩阵/张量 :一个像素点是RGB向量,一张照片就是一个矩阵
3 : 序列: **按时间顺序或特定顺序排列的数据,单个数据没有意义,必须是前后有关系的数据,**常见于自然语言、时间序列、音频、DNA序列等领域。

这是一张图片,第一个像素点是由(a11,b11,c11)组成

序列:但把"你"字拎出来是没有意义的,必须放到句子中,前后关系中才能推断出实际含义


输出 ( 任务类别 ) 一般也有下面几种:
1 : 回归任务(填空题): 根据以前的温度推测明天的温度大概有多高 。
2: 分类任务(选择题):判断图片: 猫/狗、分类时, 是用数字来表示类别,比如猫0/狗1
3:结构化任务(简答题):deepseek

根据种子的大小,重量等属性预测发芽概率------输入向量(大小、重量等)输出(回归任务)
根据视频生成字幕------输入序列(音频)输出(结构化任务)
自动填充代码。------输入序列(代码)输出(结构化任务)
判断图片中人物是谁。------输入矩阵(图片)输出(分类任务)
根据内容判断两部动漫是否为同一部。------输入序列(音频)输出(分类任务)
判断动漫声优是否为同一个人。------输入序列(音频)输出(分类任务)
判断淘宝商品的配图和文字标题是否是一致的?------输入序列(文字、图片)输出(分类任务)
圈出图片中的羊,并且识别为羊。------输入矩阵(图片)输出(圈出羊是回归任务、识别羊是分类任务)
根据车摄像头看到的画面,把人,路,车的轮廓准确的画出来。------输入矩阵(图片)输出(结构化任务)
ChatGPT------输入序列(文字描述)输出(结构化任务)

以上你已经对深度学习有了基本认识,你可以发现:分类和回归就是结构化的基础。
当你需要多个类型的数据时,就是多模态了,比如 图片, 文字, 声音


回归与神经元

大家都说深度学习需要数据,为什么? 因为要从数据中找到函数
如何从数据中找到想要的函数? 实践和认识的辩证运动:实践、认识、再实践、认识

如何开始深度学习?
第一步:定义一个函数f(模型)
第二步:定义一个合适的损失函数(loss)
第三步:根据损失函数,不断调整模型,优化模型
如何找一个函数呢?

这是一辆小车,x表示时间,y表示当前速度,我们只有多组的(x,y)值,如何推断出y和x之间的函数关系?

我们可以先假设一个最简单的线性模型,通过调整权重和偏差来优化模型,优化的标准就是loss函数,如果预测的值和实际的值最接近,说明函数优化调整越接近真实函数。

Loss 就是这些未知参数的函数。
Loss: 判断我们选择的这组参数怎么样。
loss最小值就是优化最佳值

现在我们选取 𝑤 0 = 3、 𝑏 0 = 2 ,计算出每组数据对应的loss值,取平均得到的loss值为4.8,误差较大,需要优化


优化是盲目的取w和b吗? 求偏导

明确目标:我们要找的是loss最小值
如果求出来的偏导大于0,说明随着w的增大,loss随之增大,应该减小w
如果求出来的偏导小于0,说明随着w的减小,loss随之增大,应该增大w
在不断的尝试中,loss趋于最小,函数趋于最优解

w增大或者减小多少呢?

超参数是不变的,事先人为决定的


梯度大,移动的远,梯度小,移动的近
定义一个函数

有 torch 框架可以帮我们自动计算。
(模型)

线性函数与多层神经元

现实中的问题,往往不是一个线性函数就能解决的,我们引入多层神经元

神经网络通常由多层神经元组成,主要分为输入层、隐藏层和输出层:

  1. 输入层(Input Layer):接收原始数据输入,每个输入节点对应数据的一个特征。
  2. 隐藏层(Hidden Layer):位于输入层和输出层之间的一层或多层神经元。隐藏层对输入进行非线性变换和特征提取,使得网络能够学习到更复杂的模式和表示。
  3. 输出层(Output Layer):输出层的节点产生最终的模型输出,通常对应任务的预测结果。例如,在分类任务中,输出层的节点表示各个类别的预测概率。
相关推荐
找方案2 小时前
我的 hello-agents 学习笔记:框架开发实践,从调用到玩转的进阶之路
人工智能·笔记·学习·hello-agents
蓝海星梦2 小时前
【论文笔记】DeepSeekMath-V2: 基于自我验证的数学推理新范式
论文阅读·人工智能·自然语言处理·数学推理·deepseek
数字供应链安全产品选型2 小时前
悬镜源鉴SCA开源威胁管控平台:织密供应链“防护网”,实现开源风险可知、可控、可治
人工智能·安全·开源
程序员陆通2 小时前
2周上线AI电商图片系统开发实战教程
人工智能
Codebee2 小时前
Ooder框架规范执行计划:企业级AI实施流程与大模型协作指南
人工智能
菜鸟冲锋号2 小时前
适配AI大模型非结构化数据需求:数据仓库的核心改造方向
大数据·数据仓库·人工智能·大模型
重生之我要成为代码大佬2 小时前
深度学习2-在2024pycharm版本中导入pytorch
人工智能·pytorch·深度学习
深圳佛手2 小时前
阿里ModelScope 与 DashScope 的区别
机器学习·自然语言处理·ai编程
汽车仪器仪表相关领域2 小时前
亲历机动车排放检测升级:南华NHA-604/605测试仪的实战应用与经验沉淀
人工智能·功能测试·测试工具·安全·汽车·压力测试