- 博客(27)
- 收藏
- 关注
原创 VAEX库学习笔记
Vaex 是一个开源的 DataFrame 库(类似于Pandas),采用内存映射、高效的核外算法和延迟计算等概念,可对50GB甚至500GB以上的数据集高效进行可视化、探索、分析。1. 将CSV文件转换为HDF5文件import vaeximport numpy as npimport pandas as pdfor i ,chunk in enumerate(pd.read_csv...
2020-03-19 19:02:01
3152
原创 pandas vs excel学习笔记
#-*- coding: utf-8 -*-import pandas as pdimport numpy as np#1#####1.1创建一个dataframe并保存为excel文件# =============================================================================# df = pd.DataFrame...
2020-03-03 20:09:41
253
原创 DL基于Pytorch Day8 DCGAN
Deep Convolutional Generative Adversarial Networkswe introduced the basic ideas behind how GANs work. We showed that they can draw samples from some simple, easy-to-sample distribution, like a unifor...
2020-02-25 13:00:21
183
原创 DL基于Pytorch Day8 GAN
Generative Adversarial NetworksThroughout most of this book, we have talked about how to make predictions. In some form or another, we used deep neural networks learned mappings from data points to l...
2020-02-25 12:47:36
149
原创 DL基于Pytorch Day8 图像分类案例2
Kaggle上的狗品种识别(ImageNet Dogs)在本节中,我们将解决Kaggle竞赛中的犬种识别挑战,比赛的网址是https://www.kaggle.com/c/dog-breed-identification 在这项比赛中,我们尝试确定120种不同的狗。该比赛中使用的数据集实际上是著名的ImageNet数据集的子集。#使用后续设置的参数在完整训练集上训练模型,大致需要40-50分钟...
2020-02-25 12:46:40
149
原创 DL基于Pytorch Day7 图像分类案例1
Kaggle上的图像分类(CIFAR-10)运用在前面学到的知识来参加Kaggle竞赛,该竞赛解决了CIFAR-10图像分类问题。比赛网址是https://www.kaggle.com/c/cifar-10#本节的网络需要较长的训练时间#可以在Kaggle访问:#https://www.kaggle.com/boyuai/boyu-d2l-image-classification-cifa...
2020-02-25 12:46:00
197
原创 DL基于Pytorch Day7 图像风格迁移
样式迁移滤镜能改变照片的颜色样式,从而使风景照更加锐利或者令人像更加美白。但一个滤镜通常只能改变照片的某个方面。如果要照片达到理想中的样式,经常需要尝试大量不同的组合,其复杂程度不亚于模型调参。如何使用卷积神经网络自动将某图像中的样式应用在另一图像之上,即样式迁移(style transfer)。这里我们需要两张输入图像,一张是内容图像,另一张是样式图像,我们将使用神经网络修改内容图像使其在样...
2020-02-25 12:45:21
420
原创 DL基于Pytorch Day7 目标检测基础
边界框%matplotlib inlinefrom PIL import Imageimport syssys.path.append('/home/kesci/input/')import d2lzh1981 as d2l#展示用于目标检测的图d2l.set_figsize()img = Image.open('/home/kesci/input/img2083/img/ca...
2020-02-25 12:44:38
138
原创 DL基于Pytorch Day6 梯度下降
梯度下降(Boyd & Vandenberghe, 2004)%matplotlib inlineimport numpy as npimport torchimport timefrom torch import nn, optimimport mathimport syssys.path.append('/home/kesci/input')import d2lzh...
2020-02-25 12:43:43
127
原创 DL基于Pytorch Day6 凸优化
优化与深度学习优化与估计尽管优化方法可以最小化深度学习中的损失函数值,但本质上优化方法达到的目标与深度学习的目标并不相同。优化方法目标:训练集损失函数值深度学习目标:测试集损失函数值(泛化性)%matplotlib inlineimport syssys.path.append('/home/kesci/input')import d2lzh1981 as d2lfrom m...
2020-02-25 12:43:10
156
原创 DL基于Pytorch Day6 批量归一化和残差网络
批量归一化(BatchNormalization)对输入的标准化(浅层模型)处理后的任意一个特征在数据集中所有样本上的均值为0、标准差为1。标准化处理输入数据使各个特征的分布相近批量归一化(深度模型)利用小批量上的均值和标准差,不断调整神经网络中间输出,从而使整个神经网络在各层的中间输出的数值更稳定。对全连接层做批量归一化位置:全连接层中的仿射变换和激活函数之间。全连接...
2020-02-25 12:42:27
183
原创 DL基于Pytorch Day5 卷积神经网络进阶
1.深度卷积神经网络(AlexNet)LeNet: 在大的真实数据集上的表现并不尽如⼈意。1.神经网络计算复杂。2.还没有⼤量深⼊研究参数初始化和⾮凸优化算法等诸多领域。机器学习的特征提取:手工定义的特征提取函数神经网络的特征提取:通过学习得到数据的多级表征,并逐级表⽰越来越抽象的概念或模式。神经网络发展的限制:数据、硬件AlexNet首次证明了学习到的特征可以超越⼿⼯设计的特征,...
2020-02-18 18:18:01
197
原创 DL基于Pytorch Day5 LeNet
1.Convolutional Neural Networks使用全连接层的局限性:图像在同一列邻近的像素在这个向量中可能相距较远。它们构成的模式可能难以被模型识别。对于大尺寸的输入图像,使用全连接层容易导致模型过大。使用卷积层的优势:卷积层保留输入形状。卷积层通过滑动窗口将同一卷积核与不同位置的输入重复计算,从而避免参数尺寸过大。2.LeNet 模型LeNet...
2020-02-18 18:06:00
103
原创 DL基于Pytorch Day5 卷积神经网络基础
1.二维卷积层二维卷积层,常用于处理图像数据。二维互相关运算二维互相关(cross-correlation)运算的输入是一个二维输入数组和一个二维核(kernel)数组,输出也是一个二维数组,其中核数组通常称为卷积核或过滤器(filter)。卷积核的尺寸通常小于输入数组,卷积核在输入数组上滑动,在每个位置上,卷积核与该位置处的输入子数组按元素相乘并求和,得到输出数组中相应位置的元素。图1展示...
2020-02-18 17:54:45
184
原创 DL基于Pytorch Day4 Transformer
1.Transformer主流的神经网络架构如卷积神经网络(CNNs)和循环神经网络(RNNs)的特点:CNNs 易于并行化,却不适合捕捉变长序列内的依赖关系。RNNs 适合捕捉长距离变长序列的依赖,但是却难以实现并行化处理序列。为了整合CNN和RNN的优势,[Vaswani et al., 2017] 创新性地使用注意力机制设计了Transformer模型。该模型利用attentio...
2020-02-18 17:26:16
158
原创 DL基于Pytorch Day4 注意力机制与Seq2seq模型
1.注意力机制解码器在各个时间步依赖相同的背景变量(context vector)来获取输⼊序列信息。当编码器为循环神经⽹络时,背景变量来⾃它最终时间步的隐藏状态。将源序列输入信息以循环单位状态编码,然后将其传递给解码器以生成目标序列。然而这种结构存在着问题,尤其是RNN机制实际中存在长程梯度消失的问题,对于较长的句子,我们很难寄希望于将输入的序列转化为定长的向量而保存所有的有效信息,所以随着所...
2020-02-18 16:55:01
274
原创 DL基于Pytorch Day4 机器翻译及相关技术
1.机器翻译和数据集机器翻译(MT):将一段文本从一种语言自动翻译为另一种语言,用神经网络解决这个问题通常称为神经机器翻译(NMT)。 主要特征:输出是单词序列而不是单个单词。 输出序列的长度可能与源序列的长度不同。import osos.listdir('/home/kesci/input/')//['fraeng6506', 'd2l9528', 'd2l6239']import...
2020-02-18 16:15:50
278
原创 DL基于Pytorch Day3 循环神经网络进阶
1.GRURNN存在的问题:梯度较容易出现衰减或爆炸(BPTT)⻔控循环神经⽹络:捕捉时间序列中时间步距离较⼤的依赖关系RNN:GRU:• 重置⻔有助于捕捉时间序列⾥短期的依赖关系;• 更新⻔有助于捕捉时间序列⾥⻓期的依赖关系。载入数据集import osos.listdir('/home/kesci/input')Out[1]:['d2lzh1981', 'housep...
2020-02-18 15:53:03
116
原创 DL基于Pytorch Day3 梯度消失和梯度爆炸
1.梯度消失和梯度爆炸深度模型有关数值稳定性的典型问题是消失(vanishing)和爆炸(explosion)。当神经网络的层数较多时,模型的数值稳定性容易变差。假设一个层数为L的多层感知机的第l层H(l)的权重参数为W(l),输出层H(L)的权重参数为W(L)。为了便于讨论,不考虑偏差参数,且设所有隐藏层的激活函数为恒等映射(identity mapping)ϕ(x)=x。给定输入X,多层...
2020-02-18 10:41:45
166
DL基于Pytorch Day3 过拟合和欠拟合及其解决方案
1.过拟合和欠拟合欠拟合现象:模型无法达到一个较低的误差过拟合现象:训练误差较低但是泛化误差依然较高,二者相差较大训练误差和泛化误差通俗来讲,前者指模型在训练数据集上表现出的误差,后者指模型在任意一个测试数据样本上表现出的误差的期望,并常常通过测试数据集上的误差来近似。计算训练误差和泛化误差可以使用之前介绍过的损失函数,例如线性回归用到的平方损失函数和softmax回归用到的交叉熵损失函...
2020-02-18 10:31:31
155
原创 DL基于Pytorch Day2 循环神经网络
1.循环神经网络循环神经网络实现语言模型是基于当前的输入与过去的输入序列,预测序列的下一个字符。循环神经网络引入一个隐藏变量H,用Ht表示H在时间步t的值。Ht的计算基于Xt和Ht−1,可以认为Ht记录了到当前字符为止的序列信息,利用Ht对序列的下一个字符进行预测。循环神经网络的构造我们先看循环神经网络的具体构造。假设Xt∈Rn×dX_t∈R^{n×d}Xt∈Rn×d是时间步t的小批量输...
2020-02-14 20:30:32
129
原创 DL基于Pytorch Day2 语言模型
1.语言模型基本定义一段自然语言文本可以看作是一个离散时间序列,给定一个长度为T的词的序列w1,w2,…,wT,语言模型的目标就是评估该序列是否合理,即计算该序列的概率:P(w1,w2,…,wt)P(w1,w2,…,wt)P(w1,w2,…,wt)语言模型假设序列w1,w2,…,wT中的每个词是依次生成的,我们有P(w1,w2,…,wT)=∏t=1TP(wt∣w1,…,wt−1)=P(...
2020-02-14 19:43:59
97
原创 DL基于Pytorch Day2 文本预处理
1.文本预处理文本是一类序列数据,一篇文章可以看作是字符或单词的序列,文本预处理通常包括四个步骤:1.读入文本2.分词3.建立字典,将每个词映射到一个唯一的索引(index)4.将文本从词的序列转换为索引的序列,方便输入模型读入文本我们用一部英文小说,即H. G. Well的Time Machine,作为示例,展示文本预处理的具体过程。import collectionsimpo...
2020-02-14 18:41:00
138
原创 DL基于Pytorch Day1 多层感知机
1.多层感知机的基本知识多层感知机(multilayer perceptron,MLP)的神经网络图中含有隐藏层。公式给定一个小批量样本X∈Rn×d,其批量大小为n,输入个数为d。假设多层感知机只有一个隐藏层,其中隐藏单元个数为h。记隐藏层的输出(也称为隐藏层变量或隐藏变量)为H,有H∈Rn×h。因为隐藏层和输出层均是全连接层,可以设隐藏层的权重参数和偏差参数分别为Wh∈Rd×h和 bh∈...
2020-02-14 18:21:04
161
原创 DL基于Pytorch Day1 softmax和分类模型
1.softmax和分类模型softmax的基本概念分类问题一个简单的图像分类问题,输入图像的高和宽均为2像素,色彩为灰度。图像中的4像素分别记为 x1,x2,x3,x4x1,x2,x3,x4x1,x2,x3,x4x1,x2,x3,x4x1,x2,x3,x4x1,x2,x3,x4假设真实标签为狗、猫或者鸡,这些标签对应的离散值为y1,y2,y3y1,y2,y3 y1,y2,y3y1,y2...
2020-02-14 17:51:00
184
原创 DL基于Pytorch Day1 从线性回归理解神经网络底层构建
1.线性回归主要内容包括:线性回归的基本要素线性回归模型从零开始的实现线性回归模型使用pytorch的简洁实现线性回归的基本要素模型为了简单起见,这里我们假设价格只取决于房屋状况的两个因素,即面积(平方米)和房龄(年)。接下来我们希望探索价格与这两个因素的具体关系。线性回归假设输出与各个输入之间是线性关系:price=warea⋅area+wage⋅age+bprice=ware...
2020-02-14 16:29:15
132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人