- 博客(32)
- 收藏
- 关注
原创 《动手学深度学习》 word2vec with gluon
word2vec跳字模型:基于中心词来生成文本序列周围的词;连续词袋模型:基于文本序列周围的词来生成中心词mxnet里面主要通过nn.Embedding(input_dim, output_dim)来实现,input_dim是词典大小,output_dim是词向量的维度(超参),给出一个词的索引i就返回嵌入层的第i行为它的向量代码import collectionsimport d2l...
2019-09-10 22:28:30 267
原创 《动手学深度学习》 RNN & GRU & LSTM with gluon
RNN循环神经网络,时间步t的隐藏变量的计算由当前时间步的输入和上一个时间步的隐藏状态共同决定。GRU门控循环单元,引入了重置门和更新门的概念。重置门输出R与上一时间步的隐藏状态按元素乘法,产生候选隐藏状态,决定是否drop上一时间步的隐藏状态。更新们对上一步的隐藏状态以及候选隐藏状态做加权平均,产生当前时间步的隐藏状态。LSTM长短期记忆,引入输入门,遗忘门,输出门。记住有6个公...
2019-08-30 19:23:58 469
原创 《动手学深度学习》 SSD Pikachu with gluon
SSDSingle Shot multibox Detection,单发多框检测,这个单发single shot指的是把bounding box的选择(锚框的学习)和图像类别的预测(识别的学习)放在同一步内,用沐神的话说是一个很fancy的方法。启发最大的就是把锚框也作为了一个学习的过程,不断修正框的大小,BBox Regression把锚框变为更加真实的框,Softmax做num_class...
2019-08-14 21:38:37 293
原创 《动手学深度学习》 DenseNet with gluon
DenseNet相比于ResNet,DenseNet把最后的+改为concat,然后为了解决output_channels增长过快的问题使用了transition_blocks每次使用1x1 Conv来减小output_channels以及用avg_pooling来减半高和宽。代码import d2lzh as d2lfrom mxnet import gluon, init, nd, a...
2019-07-28 13:09:45 227
原创 《动手学深度学习》 ResNet with gluon
ResNet误差反传过程中,梯度会越来越小,权重更新量也会变小,ResNet增加跨层连接解决梯度回传过小的问题。使用额外的1x1 Conv来做通道变化,设置strides=2使得长宽减半,输出通道增加。代码import d2lzh as d2lfrom mxnet import gluon, init, nd, autogradfrom mxnet.gluon import nnimp...
2019-07-28 11:37:56 201
原创 《动手学深度学习》 GoogLeNet with gluon
GoogLeNetInception中4个path并行,每条path的输出concat到一起,path中的三个1,3,5的卷积层以及3的max_pooling可以抓取到不同区域大小上的信息,剩余的部分对input_channel进行变换,减小运算量。代码import d2lzh as d2lfrom mxnet import gluon, init, nd, autogradfrom m...
2019-07-27 12:06:39 127
原创 《动手学深度学习》 NIN with gluon
NINNet in Net利用1x1的Conv来代替Dense,Conv的输入输出维数是4维,Dense的输入输出维数是2维,这样就避免了在Dense后接Conv时还需要将输出的维数从2维改至4维,数据量过大,导致计算负荷过重。最重要的是提出了一种思想。代码import d2lzh as d2lfrom mxnet import gluon, init, nd, autogradfrom...
2019-07-26 21:45:49 131
原创 《动手学深度学习》 VGG with gluon
VGG重复的简单基础模块来搭建复杂的神经网络连续使用数个相同的填充为1、窗口形状3x3的卷积层后接上一个步幅为2、窗口形状2x2的max_pooling。卷积层使输入的高和宽不变,池化层则对其减半,输出通道翻倍。代码import d2lzh as d2lfrom mxnet import gluon, init, autogradfrom mxnet.gluon import nni...
2019-07-25 22:06:58 168
原创 《动手学深度学习》 AlexNet with gluon
AlexNetAlexNet感觉是LeNet的加强版,8层变换,5层卷积3层全连接,并且用dropout防止过拟合。注释掉的部分也可以运行!只是有现成的或者自己想写的就自己写了。算法很fancy,就是跑起来笔记本在哀嚎代码import d2lzh as d2lfrom mxnet import gluon, init, nd, autogradfrom mxnet.gluon imp...
2019-07-25 21:52:03 193
原创 《动手学深度学习》 LeNet with gluon
LeNetLeNet分为卷积层块和全连接层块两个部分。基本单位是卷积层后接max_pool:卷积层用于识别图像里的空间模式,max_pool用于降低卷积层对位置的敏感性。代码import d2lzh as d2limport mxnet as mxfrom mxnet import autograd, gluon, init, ndfrom mxnet.gluon import los...
2019-07-22 22:37:41 159
原创 《动手学深度学习》 1x1 Convolution with mxnet
1x1 Convolution1x1卷积层与全连接层等价,输出中的每个元素来自输入中在行列上相同位置的元素在不同通道之间的按权重累加。代码import d2lzh as d2limport mxnet as mxdef corr2d_multi_in(X, K): # 多输入通道 return mx.nd.add_n(*[d2l.corr2d(x, k) for x, k ...
2019-07-22 22:30:04 141
原创 《动手学深度学习》 Drop_out with gluon
Drop_out双隐层,丢弃法,每层以drop_prob1, drop_prob2的概率丢弃隐层中的神经元,同时放大未被丢弃的神经元1/(1-drop_prob)倍,不改变输入的期望值。代码import d2lzh as d2lfrom mxnet import gluon, init, autogradfrom mxnet.gluon import loss as gloss, nn...
2019-07-20 10:34:20 215
原创 《动手学深度学习》 L2_Regularization with gluon
L2_Regularization(Weight Decay)权重衰减等价于L2范数正则化,令权重自乘小于1的数再减去不含惩罚乡的梯度。w = w - lr*grad - w * wd代码import d2lzh as d2lfrom mxnet import autograd, gluon, init, ndfrom mxnet.gluon import data as gdata,...
2019-07-20 10:30:02 197
原创 《动手学深度学习》 MLP with gluon
Multilayer Perceptron多层感知机,一个隐层代码import d2lzh as d2lfrom mxnet import gluon, init, autogradfrom mxnet.gluon import loss as gloss, nnbatch_size = 256train_iter, test_iter = d2l.load_data_fashi...
2019-07-20 10:22:54 158
原创 《动手学深度学习》 Softmax with gluon
Linear Regression用mxnet写softmax, epoch_num没有设置的太大,跑几次看看结果。因为引入exp函数,在数字太大时会报错,可能不收敛。代码import mxnetimport d2lzh as d2lfrom mxnet import autogradbatch_size = 256train_iter, test_iter = d2l.loa...
2019-07-18 17:20:06 149
原创 《动手学深度学习》 Linear_Regression with gluon
Linear Regression用mxnet写了最简单的线性回归代码from mxnet import autograd, ndfrom mxnet.gluon import data as gdatafrom mxnet.gluon import nnfrom mxnet import initfrom mxnet.gluon import loss as glossfrom ...
2019-07-18 17:15:40 205
原创 《机器学习》西瓜书课后题13.4
《机器学习》课后题13.4根据书上给的算法写出来的TSVM,标准化了一下,针对有标记样本的是绿色的那根线,最后的支持向量机是黄色的那根线。python代码import numpy as npimport pandas as pdfrom sklearn.datasets import load_irisfrom sklearn import svmimport matplotlib....
2019-07-06 17:32:07 1059
原创 《机器学习》西瓜书课后题11.1
《机器学习》课后题11.1根据书上的算法写出来的relief,连续值没有做预处理,以后再做,好像sklearn里面的preprocessing可以直接处理?python代码import pandas as pdimport numpy as npdata = np.array([ [1, 1, 1, 1, 1, 1, 0.697, 0.460, 1], [2, 1, ...
2019-06-26 16:46:05 196
原创 《机器学习》西瓜书课后题10.1
《机器学习》课后题10.1KNN,在数据集3.0上完全正确python代码import pandas as pdimport numpy as npimport matplotlib.pyplot as pltdata = [[0.697, 0.460, 1], [0.774, 0.376, 1], [0.634, 0.264, 1], ...
2019-06-24 21:33:50 1299
原创 《机器学习》西瓜书课后题9.4
《机器学习》课后题9.4K_means还是比较容易写的。选的初始点离得越远越容易收敛。python代码import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport randomimport timedata = [[0.697, 0.460, 1], [0.774, 0.37...
2019-06-21 20:39:25 1381
原创 《机器学习》西瓜书课后题8.5
《机器学习》课后题8.5同8.3,第一次写bagging,模仿了一下有个大牛的写法。python代码import mathimport random as rdimport pandas as pdimport numpy as npimport matplotlib.pyplot as plt# 单层决策树class DTStump(object): """docs...
2019-06-20 15:34:13 1324
原创 《机器学习》西瓜书课后题8.3
《机器学习》课后题8.3没有完全自己写,网上找个模板发现有点问题,主要修改了一下数据读取方式以及权重改变的部分,改成了书上的权重改变法,不过准确度没有改之前高。python代码import pandas as pdfrom numpy import *import matplotlib.pyplot as pltdata = [[0.697, 0.460, 1], [...
2019-06-20 15:28:49 1693
原创 《机器学习》西瓜书课后题7.6
《机器学习》课后题7.6本来想要像7.3一样,通过数据再推最后的答案,发现可能需要一个特别特别大的字典型列表,而且会计算出很多不需要的数字,最后计算的时候调用的话也非常麻烦,所以换了一种做法,通过测试数据出发,只计算自己需要的值,这样确实方便了许多,一个大循环里面套两个小循环就可以解决问题。被我大段得注释掉得部分是在求D_c_xi,这个还是容易求的,但是D_c_xi_xj分分钟算到头秃,所以才换...
2019-06-13 15:20:49 597
原创 《机器学习》西瓜书课后题7.3
《机器学习》课后题7.3拉普拉斯修正后的朴素贝叶斯要特地提醒一下,pandas的方差是无偏样本方差,numpy的方差是样本方差书上152页用的显然是pandas中的,不然算出来连续属性的条件概率会有误差关于这里的方差具体用哪一种暂时还没有看到特别的说法,只要始终用同一种应该不会影响最后的判断结果python代码import numpy as npimport pandas as pd...
2019-06-12 22:01:23 1904
原创 《机器学习》西瓜书课后题6.8
《机器学习》课后题6.8高斯核该怎么画呢从图片来看拟合得不太好,还是跟数据本来更相关吧python代码import pandas as pdfrom sklearn import svmimport matplotlib.pyplot as pltimport numpy as npdata = [[0.697, 0.460, 1], [0.774, 0.376...
2019-06-10 17:33:15 938
原创 《机器学习》西瓜书课后题6.3
《机器学习》课后题6.3iris线性可分所以肯定正确率会分的很高pybrain一直安装报错不清楚为什么,C4.5之前的还没写完,先继续往下写,欠着吧python代码import numpy as npimport pandas as pdfrom sklearn.datasets import load_irisfrom sklearn.model_selection import ...
2019-06-10 15:24:09 1400
原创 《机器学习》西瓜书课后题6.2
《机器学习》课后题5.7不知道为什么别人拟合出来跟我的不太一样近期应该看一看matpoltlib,感觉把支持向量的边界画出来应该很有意思然后这几天写一个自己的SVM出来,试试看,感觉会很复杂!希望可以!python代码import pandas as pdfrom sklearn import svmdata = [[0.697, 0.460, 1], [0.774...
2019-06-09 21:04:57 3151 1
原创 《机器学习》西瓜书课后题5.7
《机器学习》课后题5.7看了很多别人写的,有部分人直接规定隐层神经元数量为4,感觉怪怪的?隐层神经元数量只要是一个大于2的值就行了,越大越好倒是真的!python代码import numpy as npimport timex = [[0, 0], [0, 1], [1, 0], [1, 1]] # 异或训练集y = [[0], [1], [1], [0]] # 异或输出...
2019-06-02 11:39:36 518
原创 《机器学习》西瓜书课后题5.5
《机器学习》课后题5.5写完了才知道有个库叫pybrain,感觉有点厉害。下次研究一下!python代码import numpy as npimport timeclass BP: def __init__(self, data): self.data = np.array(data) self.input_neurons = len(self...
2019-05-31 17:36:18 1811
原创 《机器学习》西瓜书课后题3.5
《机器学习》课后题3.5这个比较容易,注意一下矩阵求逆之前要先声明np.mat()不然求逆会报错。python代码import numpy as npimport matplotlib.pyplot as pltdensity = np.array( [0.697, 0.774, 0.634, 0.608, 0.556, 0.430, 0.481, 0.437, 0.666,...
2019-05-23 21:00:26 1266 1
原创 《机器学习》西瓜数课后题3.4
《机器学习》课后题3.4这次选了梯度下降法,结论就是10折法跟留一法差不多,正确率都挺高的!没有用网上的数据,用了sklearn里面自带的iris花的数据,可能数据比较好,所以出来结果也比较好!python代码from math import expimport numpy as npimport pandas as pdfrom sklearn.datasets import loa...
2019-05-23 14:20:50 412
原创 《机器学习》西瓜书课后题3.3
《机器学习》课后题3.3最后选了牛顿法,学习率太低会拟合得非常难看,sklearn自带的方法比较简略,就不放了,能自己写还是自己写吧python代码from math import expimport numpy as npimport matplotlib.pyplot as pltfrom sklearn.model_selection import train_test_spli...
2019-05-21 18:03:20 1121 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人