深度学习入门——神经网络的学习(1)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本章的主题是神经网络的学习。这里所说的“学习”是指从训练数据中自动获取最优权重参数的过程。本章将引入损失函数这一指标。而学习的目的就是以该损失函数为基准,找出能使它的值达到最小的权重参数。

一、从数据中学习

神经网络的特征就是可以从数据中学习。所谓从数据中学习,是指可以由数据自动决定权重参数的值。

1.数据驱动

数据是机器学习的命根子。从数据中寻找答案、从数据中发现模式,根据数据讲故事,这些都是举起学习所做的事,如果没有数据的话,就无从下手。因此,数据是机器学习的核心。这种数据驱动的方法,也可以说脱离了过往以人为中心的方法。
通常要解决某个问题,特别是需要发现某种模式时,人们一般会考虑各种因素后再给出回答。而机器学习的方法则避免人为介入,尝试从收集到的数据中发现答案(模式)。神经网络或深度学习则比以往的机器学习方法更能避免认为介入。
如果让我们自己来设计一个能将5正确分类的程序,就会意外的发现这是一个很难的问题。人可以简单的识别5,但却很难明确说出是基于何种规律识别出了5。
因此,与其绞尽脑汁,从零想出一个可以识别5的算法,不如考虑通过有效利用数据来解决这个问题。一种方案是,先从图像中提取特征量,再用机器学习技术学习这些特征量的模式。在计算机视觉领域,常用的特征量包括SIFT,SURFHOG等。使用这些特征量将图像数据转换为向量,然后对转换后的向量使用机器学习中的SVM,KNN等分类器进行学习。
机器学习的方法中,由机器收集到的数据找出规律性。与从零想出算法相比,这种方法可以更高效的解决问题,也能减轻人的负担,但是需要注意的是,将图像转换为向量时使用的特征量仍是由人设计的。也就是说,即使使用特征量和机器学习的方法,也需要针对不同问题人工考虑合适的特征量。
而在神经网络中,量图像中包含的重要特征量也是由机器来学习的。

2、训练数据和测试数据

本章主要是介绍神经网络的学习,不过在这之前,我们先来介绍有关机器学习中数据处理的一些注意事项。
机器学习中,一般将数据分为训练数据测试数据两部分来进行学习和实验等。首先,使用训练数据进行学习,寻找最优的参数;然后,使用测试数据评价训练得到的模型的实际能力。为什么需要将数据分为训练数据和测试数据呢?因为我们追求的是模型的泛化能力。为了正确评价模型的泛化能力,就必须划分训练数据和测试数据。另外,训练数据也可以成为监督数据
泛化能力是指未被观察过的数据(不包括在训练数据中的数据)的能力。获得泛化能力是机器学习的终极目标。
因此,仅仅使用一个数据集去学习和评价参数,是无法进行正确评价的。这样会导致可以顺利地处理某个数据集,但无法处理其他数据集的情况。顺便说一下,只对某个数据集过度拟合的状态称为过拟合(over fitting)。避免过拟合也是机器学习的一个重要课题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值