问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

机器学习与深度学习基础知识

创作时间:
作者:
@小白创作中心

机器学习与深度学习基础知识

引用
CSDN
1.
https://m.blog.csdn.net/m0_68519894/article/details/144857362

机器学习与深度学习是人工智能领域的核心技术,它们通过算法和模型让计算机具备学习和决策能力。本文将从基础知识出发,深入浅出地介绍机器学习与深度学习的核心概念、算法原理及其应用场景,帮助读者建立对这一领域的全面理解。

深度学习是什么

深度学习是机器学习的一个重要分支,主要利用多层神经网络通过输入大量的数据,让机器自己学习。下图是一个多层神经网络的简单示意图:

在这个示意图中:

  • 黄色的圆点代表输入
  • 绿色的圆点是神经网络中输入层和输出层之间的神经元层
  • 红色的圆点是输出

神经元层是一系列函数构成的。

机器学习算法简介

机器学习算法一般是基于数学或者统计学的方法,具有很强的解释性。这里先简单介绍几个机器学习的传统算法。

KNN

KNN(k-Nearest Neighbors)是一种监督学习算法,用于分类和回归问题。其基本思想是通过测量不同数据点之间的距离来进行预测。

步骤:

  1. 确定距离度量。KNN使用距离度量(通常是欧氏距离)来衡量数据点之间的相似性
  2. 确定邻居数量k
  3. 投票机制

举例说明

在这个图中有两个群体,ClassA和ClassB。现在要求我们通过KNN判断红点是哪个群体的。

首先确定距离度量,那就是欧氏距离。其次确定距离邻居数量k,图中我们分别选择了k = 3和k = 6两种。最后确定投票机制,投票机制就是确定每一个点的权重。

关于投票机制我们可以简单举两个例子:

一、选每一个点权重都是1

每一个点的权重都是1,那么在k = 3时,显然红点是属于ClassB;而在k = 6时,红点是属于ClassA的

二、ClassA权重为0.3,ClassB权重为1

如果这么选权重那么,无论是k = 3 / 6,红点都是属于ClassB的

决策树

决策树就是通过建立出一棵树,来判断当前的输入是属于什么类型的数据。决策树不善于处理未见过的特征,因为它是根据已有特征来判断当前输入是属于什么类型数据。

朴素贝叶斯

朴素贝叶斯就是概率论里贝叶斯公式的应用。

深度学习

从上面的机器学习传统算法可以知道虽然机器学习具有数学上的可解释性,但准确率不是百分百且不是很灵活,无法处理很多异常情况。而深度学习与机器学习不同,深度学习是设计一个很深的网络架构让机器自己学。本质是找一个函数f让输入通过f得到想要的结果y。

输入和输出

常见的深度学习输入有三种:

  1. 向量:就是多维的参数。例如(身高,体重,财富)
  2. 矩阵/张量
  3. 序列:有顺序的数据。例如一段视频,视频由有顺序的帧构成

常见的输出:

  1. 回归任务:根据之前的数据推测目前的输入是什么
  2. 分类任务:给出一个选项,判断当前输入是属于哪个
  3. 生成任务:输出一段有结构的数据。例如chatGPT

尝试判断一下面的任务是什么输入和输出

3(2)表示,想要形成结构化的数据首先要执行分类任务。

例如根据车摄像头看到的画面,把人,路,车的轮廓准确的画出。首先要根据像素点分类,找出画面中哪些像素点构成了人,哪些是路,最后输出一个结构化的具有人、路、车轮廓的图

根据上面的学习,我们可以看出分类和回归是结构化的基础。

深度学习任务

如何开始一个深度学习任务。主要由三步构成。

首先,我们先需要定义一个函数,也就是模型。

然后由于我们定义的模型和实际的数据构成模型存在一些误差,那么我们就需要再定义一个合适的损失函数。

最后,通过这个损失函数来帮助我们慢慢优化模型直到靠近实际的数据模型。

例子

x y
1 3.1
2 5.1
3 6.9
4 8.7
5 10.8
6 13.5
7 ?

假设存在一个未知的实际数据模型是上述表格所示。我们需要找到y = f(x)的函数(模型)来推测出x = 7时,y是多少。

第一步,我们要定义一个函数,这个函数使我们自己觉得可以让其满足之前的x和y的关系。先假设为,然后随机选择一些w和b,让其成为一个线性函数判断出x = 7应该是多少。

第二步,定义一个合适的损失函数

损失函数就是w和b这种未知参数的函数

Loss =

就比如取w = 3,b = 2。通过计算我们可以得到Loss = 4.48。显然这个Loss很大,w和b取得不好。

第三步,优化

首先,loss函数是一个绝对值函数,所以一定会有一个最小值。那么可以通过执行梯度下降算法,分别找到最合适的w和b,使模型越来越接近实际的数据模型。

例如对w或b求偏导,发现此时梯度小于0,那么为了让loss最小,我们要增大 或 。也就是下面这个公式

最后更新w和b,得到优化过的模型。然后通过不断的优化得到最后与实际模型相符的模型函数。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号