02 2020 档案

摘要:目标检测和边界框 在图像分类任务里,我们假设图像里只有一个主体目标,并关注如何识别该目标的类别。然而,很多时候图像里有多个我们感兴趣的目标,我们不仅想知道它们的类别,还想得到它们在图像中的具体位置。在计算机视觉里,我们将这类任务称为目标检测(object detection)或物体检测。 目标检测在 阅读全文
posted @ 2020-02-20 19:01 Jaww 阅读(1339) 评论(0) 推荐(0) 编辑
摘要:梯度下降和随机梯度下降 梯度下降在深度学习中很少被直接使用,但理解梯度的意义以及沿着梯度反方向更新自变量可能降低目标函数值的原因是学习后续优化算法的基础。随后,将引出随机梯度下降(stochastic gradient descent)。 一维梯度下降 以简单的一维梯度下降为例,解释梯度下降算法可能 阅读全文
posted @ 2020-02-20 17:07 Jaww 阅读(486) 评论(0) 推荐(0) 编辑
摘要:优化与深度学习 优化与估计 尽管优化方法可以最小化深度学习中的损失函数值,但本质上优化方法达到的目标与深度学习的目标并不相同。 优化方法目标:训练集损失函数值 深度学习目标:测试集损失函数值(泛化性) 1 %matplotlib inline 2 import sys 3 import d2lzh1 阅读全文
posted @ 2020-02-20 12:01 Jaww 阅读(656) 评论(0) 推荐(0) 编辑
摘要:批量归一化 批量归一化(batch normalization)层,它能让较深的神经网络的训练变得更加容易。对图像处理的输入数据做了标准化处理:处理后的任意一个特征在数据集中所有样本上的均值为0、标准差为1。标准化处理输入数据使各个特征的分布相近:这往往更容易训练出有效的模型。 通常来说,数据标准化 阅读全文
posted @ 2020-02-18 22:27 Jaww 阅读(1598) 评论(0) 推荐(0) 编辑
摘要:编码器—解码器(seq2seq) 在自然语言处理的很多应用中,输入和输出都可以是不定长序列。以机器翻译为例,输入可以是一段不定长的英语文本序列,输出可以是一段不定长的法语文本序列,例如 英语输入:“They”、“are”、“watching”、“.” 法语输出:“Ils”、“regardent”、“ 阅读全文
posted @ 2020-02-17 11:10 Jaww 阅读(1619) 评论(0) 推荐(1) 编辑
摘要:深度卷积神经网络(AlexNet) 在LeNet提出后的将近20年里,神经网络一度被其他机器学习方法超越,如支持向量机。虽然LeNet可以在早期的小数据集上取得好的成绩,但是在更大的真实数据集上的表现并不尽如人意。一方面,神经网络计算复杂。虽然20世纪90年代也有过一些针对神经网络的加速硬件,但并没 阅读全文
posted @ 2020-02-16 17:35 Jaww 阅读(1155) 评论(0) 推荐(0) 编辑
摘要:CNN-二维卷积层 卷积神经网络(convolutional neural network)是含有卷积层(convolutional layer)的神经网络。卷积神经网络均使用最常见的二维卷积层。它有高和宽两个空间维度,常用来处理图像数据。 二维互相关运算 虽然卷积层得名于卷积(convolutio 阅读全文
posted @ 2020-02-16 16:33 Jaww 阅读(952) 评论(1) 推荐(0) 编辑
摘要:门控循环单元(GRU) 循环神经网络中的梯度计算方法。当时间步数较大或者时间步较小时,循环神经网络的梯度较容易出现衰减或爆炸。虽然裁剪梯度可以应对梯度爆炸,但无法解决梯度衰减的问题。通常由于这个原因,循环神经网络在实际中较难捕捉时间序列中时间步距离较大的依赖关系。 门控循环神经网络(gated re 阅读全文
posted @ 2020-02-15 20:08 Jaww 阅读(3220) 评论(0) 推荐(1) 编辑
摘要:正向传播 正向传播的计算图 通常绘制计算图来可视化运算符和变量在计算中的依赖关系。下图绘制了本节中样例模型正向传播的计算图,其中左下角是输入,右上角是输出。可以看到,图中箭头方向大多是向右和向上,其中方框代表变量,圆圈代表运算符,箭头表示从输入到输出之间的依赖关系。 反向传播 训练深度学习模型 在训 阅读全文
posted @ 2020-02-15 14:54 Jaww 阅读(898) 评论(0) 推荐(0) 编辑
摘要:训练误差和泛化误差 需要区分训练误差(training error)和泛化误差(generalization error)。前者指模型在训练数据集上表现出的误差,后者指模型在任意一个测试数据样本上表现出的误差的期望,并常常通过测试数据集上的误差来近似。计算训练误差和泛化误差可以使用之前介绍过的损失函 阅读全文
posted @ 2020-02-15 11:45 Jaww 阅读(904) 评论(0) 推荐(0) 编辑
摘要:循环神经网络 下图展示了如何基于循环神经网络实现语言模型。目的是基于当前的输入与过去的输入序列,预测序列的下一个字符。循环神经网络引入一个隐藏变量𝐻,用𝐻𝑡表示𝐻在时间步𝑡的值。𝐻𝑡的计算基于𝑋𝑡和𝐻𝑡−1,可以认为𝐻𝑡记录了到当前字符为止的序列信息,利用𝐻𝑡对序列的下 阅读全文
posted @ 2020-02-14 17:18 Jaww 阅读(349) 评论(0) 推荐(0) 编辑
摘要:语言模型 一段自然语言文本可以看作是一个离散时间序列,给定一个长度为𝑇的词的序列𝑤1,𝑤2,…,𝑤𝑇,语言模型的目标就是评估该序列是否合理,即计算该序列的概率: 本节我们介绍基于统计的语言模型,主要是𝑛元语法(𝑛-gram)。 语言模型 假设序列𝑤1,𝑤2,…,𝑤𝑇中的每个词是 阅读全文
posted @ 2020-02-14 09:15 Jaww 阅读(476) 评论(0) 推荐(0) 编辑
摘要:文本预处理 读入文本 分词 建立字典,将每个词映射到一个唯一的索引(index) 将文本从词的序列转换为索引的序列,方便输入模型 读入文本 import collections import re def read_time_machine(): with open('/home/kesci/inp 阅读全文
posted @ 2020-02-14 08:50 Jaww 阅读(579) 评论(0) 推荐(0) 编辑
摘要:多层感知机 深度学习主要关注多层模型,现在以多层感知机(multilayer perceptron,MLP)为例,介绍多层神经网络的概念。 隐藏层 多层感知机在单层神经网络的基础上引入了一到多个隐藏层(hidden layer)。隐藏层位于输入层和输出层之间。图展示了一个多层感知机的神经网络图。 模 阅读全文
posted @ 2020-02-13 10:35 Jaww 阅读(21307) 评论(0) 推荐(0) 编辑
摘要:一、模型举例 1. 预测政治倾向例子 模型1 模型1对于样本1和样本2以非常微弱的优势判断正确,对于样本3的判断则彻底错误。 模型2: 型2对于样本1和样本2判断非常准确,对于样本3判断错误,但是相对来说没有错得太离谱。 二、模型分类 1、Classification Error 损失函数定义为: 阅读全文
posted @ 2020-02-13 09:46 Jaww 阅读(616) 评论(0) 推荐(0) 编辑
摘要:softmax的基本概念 分类问题 一个简单的图像分类问题,输入图像的高和宽均为2像素,色彩为灰度。图像中的4像素分别记为𝑥1,𝑥2,𝑥3,𝑥4。假设真实标签为狗、猫或者鸡,这些标签对应的离散值为𝑦1,𝑦2,𝑦3。我们通常使用离散的数值来表示类别,例如𝑦1=1,𝑦2=2,𝑦3=3 阅读全文
posted @ 2020-02-12 21:22 Jaww 阅读(939) 评论(0) 推荐(0) 编辑
摘要:安装各种机器学习包的时候,经常出现无法下载安装包的问题,而导致安装失败。清华的镜像速度很快,下面对本方法进行讲解。 命令法 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple packages 注:把packages替换为安装模块。 配置法 阅读全文
posted @ 2020-02-12 11:18 Jaww 阅读(2420) 评论(0) 推荐(1) 编辑
摘要:一、线性回归 1、模型 2、损失函数 3、优化函数-梯度下降 #!/usr/bin/env python # coding: utf-8 import torch import time # init variable a, b as 1000 dimension vector n = 1000 a 阅读全文
posted @ 2020-02-12 11:17 Jaww 阅读(568) 评论(0) 推荐(0) 编辑