神经网路与深度学习

发布于:2024-05-10 ⋅ 阅读:(18) ⋅ 点赞:(0)

1 深度学习简述

机器学习:相当于把公式实现出来了而已。

深度学习:

(1)中的特征工程使机器学习更智能。

(2)真正能学什么样的特征才是最合适的。
(3)主要应用于计算机视觉和自然语言处理
(4)最大的问题在于参数太多,计算速度太慢了

深度学习与传统人工智能算法对比 

2 计算机视觉任务

2.1 图像表示

在计算机中一张图片被表示成三维数组的形式,每个像素点的值从0到255,例如:300*100*3【表示:图片高度为300像素(即有300个像素点),宽度为100像素,其中3表示有3个颜色通道,如RGB】

RGB:RGB颜色模式中,每个像素都由三个8位整数表示,分别代表红、绿、蓝三个通道的强度值。这三个通道可以分别控制图像中红色、绿色和蓝色部分的颜色强度和变化,从而实现对图像颜色的准确控制和调整。

2.2 计算机视觉面临的挑战

机器学习常规套路:

  1. 收集数据并给定标签
  2. 训练一个分类器
  3. 测试,评估

数据库推荐:CIFAR-10,这个数据库并不大,但分类多,数据量多,很适合用来测试。

K近邻算法(KNN)

假如我们对图像采用KNN算法进行识别,其中距离计算采用如下方式(test-image像素值减去pixel-wise absolute value differences像素值得到training image像素值

结果: 

问题在于图像中的背景起到了很大的干扰作用!

3.1 实例计算

3.1.1 引言

思考其他的距离函数?

考虑像素点的权重:W是权重参数,x表示输入图像像素值,b是偏置参数(微调)

10*1表示输入图像在10个类别中各自的得分

10*3072表示每个类别对于每个像素点的权重值

3072*1表示输入图像总的像素(注意不是像素值)

3.1.2 实际计算过程

神经网路做的事情

神经网络在整个生命周期中,就在做:什么样的W能更适合于咱们的数据去做当前这个任务,我就怎么样去改变这个W。

迭尔塔相当于容忍程度的意思。

Sj:其他错误类别 Syj:正确类别  +1:表示容忍程度为1,也就是说只有当正确类别至少比错误类别高1才能说这个结果是正确的。

例如第一组数据中,Sj:5.1   Syj:3.2

损失值为0表示无损失,计算结果正确。

很明显,模型A只关注某一个数据,这样偏差太大,这是变异的

正则化惩罚项:由权重参数所带来的损失,蓝色方框为计算公式,λ表示惩罚系数,系数越大表示我不要那些变异的;系数越小表示变异的数据我也能接受。

不希望模型复杂的原因:

神经网络的优点在于能解决的问题多,缺点也在于它过于强大了。

过拟合是指模型在训练数据上表现很好,但在未见过的测试数据上表现较差的情况。

如何分类呢?

回归任务是由得分值去计算损失,分类任务由概率值计算损失 

以上计算过程都是前向传播。反向传播是说得到的损失大的W该如何调整呢?(为了能让损失下降,即优化的过程)


网站公告

今日签到

点亮在社区的每一天
去签到