
深度学习
文章平均质量分 62
明日何其多_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
如何使用huggingface微调模型
1 安装包pip install transformers[sentencepiece]pip install datasets2 导入数据from datasets import load_datasetraw_datasets = load_dataset("glue", "sst2")raw_datasets这里使用的是GLUE中SST2数据集,主要针对电影评论来做情感分类(二分类)。3 pipeline整个流程是先分词,将文本转化为向量,输入到模型,得到输出后再进行后处理原创 2021-11-29 15:35:30 · 5455 阅读 · 6 评论 -
生成对抗网络(GAN)及pytorch小例子
GAN是一种生成模型,包含两个部分,生成器G(Generator)和鉴别器D(Discriminator)。生成器用来产生虚假数据,鉴别器是用来判断该数据是否真实(输出是0到1之间的数字,值越大表示越接近真实数据)。生成器试图用虚假数据骗过鉴别器,而鉴别器又不断提高自己判别真假的能力。这是一个相互博弈的过程。经过多轮训练后,生成器产生的数据会越来越接近真实数据,这就是我们想要的结果了。生成器和鉴...原创 2020-04-16 20:31:11 · 4797 阅读 · 16 评论 -
端到端的深度学习(end-to-end deep learning)
端到端的深度学习就是用单个神经网络代替多阶段的处理过程。以语音识别为例,传统方法的步骤是首先提取一些特征,然后应用机器学习算法在音频片段中找到音位,再把这音位提取出来构成独立的词,最后将词串起来构成音频片段的听写文本。而端到端的方法不需要这些步骤,只要把音频作为神经网络的输入,输出就是听写文本。我们不需要知道神经网络是如何拟合数据的,只要得到最后的输出。端到端深度学习的优点让数据说话只要有...原创 2020-04-15 14:06:28 · 3276 阅读 · 0 评论 -
强化学习(reinforcement learning)笔记
强化学习就是一个agent学习如何在一定条件下采取相应action从而获得最大期望reward的过程。原创 2020-04-14 22:53:51 · 879 阅读 · 0 评论 -
gensim 训练中文语料 word2vec
导入包import pandas as pdimport jiebafrom gensim.models import word2vec 分词# 分词def tokenizer(text): # zh_pattern = re.compile(u'[^\u4e00-\u9fa5]+') # text = re.sub(zh_pattern,"", text) ...原创 2020-03-27 10:10:22 · 950 阅读 · 1 评论 -
神经网络的参数初始化
权重初始化是为了缓解深层神经网络中产生的梯度消失和梯度爆炸问题,加快收敛速率。它主要有以下几种方式。零值初始化这是一种非常不可取的初始化方式。因为这样一来,所有的隐藏单元都是一样的(对称性),也就意味着它们计算的是同样的函数,对输出单元有同样的影响。无论经过多少次迭代,所有隐藏单元学习到的内容都是相同的,这样的神经网络效果和简单的线性分类器无异。随机初始化随机初始化打破了对称性,效果远优于...原创 2020-03-14 22:51:20 · 260 阅读 · 0 评论 -
困惑度 perplexity
在自然语言处理中,困惑度是用来衡量语言模型优劣的一个方法。它的值是对交叉熵损失函数做指数运算后得到的结果。交叉熵损失函数单个训练样本的损失:loss=−1n∑i=1nyilogyi^=−logyj^loss=-\frac{1}{n}\sum_{i=1}^{n}y_{i}log\hat{y_{i}}=-log\hat{y_{j}}loss=−n1∑i=1nyilogyi^=−logy...原创 2020-02-26 12:55:30 · 3326 阅读 · 0 评论 -
模型微调
迁移学习是将已经学习到的知识应用到其他领域。微调是迁移学习中的一种常见技术,由以下四步构成。在源数据集(如ImageNet数据集)上预训练一个神经网络模型,即源模型。创建一个新的神经网络模型,即目标模型。它复制了源模型上除了输出层外的所有模型设计及其参数。我们假设这些模型参数包含了源数据集上学习到的知识,且这些知识同样适用于目标数据集。我们还假设源模型的输出层跟源数据集的标签紧密相关,因此在...原创 2020-02-25 19:24:46 · 303 阅读 · 0 评论 -
优化算法
梯度下降算法批量梯度下降是最原始的形式,它是指在每一次迭代时使用所有样本来进行梯度的更新。其优点是一次迭代是对所有样本进行计算,此时利用矩阵进行操作,实现了并行,缺点是每次自变量迭代的计算开销为O(n),随着n线性增长,当训练数据样本数很大时,梯度下降每次迭代的计算开销很高。随机梯度下降是每次迭代使用一个样本来对参数进行更新,每次迭代的计算开销降到了常数O(1),缺点是不易于并行实现,可能无法...原创 2020-02-25 19:24:22 · 222 阅读 · 0 评论 -
批量归一化与残差网络
批量归一化数据标准化预处理对于浅层模型就足够有效了。但随着模型训练的进行,当每层中参数更新时,靠近输出层的输出较难出现剧烈变化。但对深层神经网络来说,即使输入数据已做标准化,训练中模型参数的更新依然很容易造成靠近输出层输出的剧烈变化。这种计算数值的不稳定性通常令我们难以训练出有效的深度模型。批量归一化的提出正是为了应对深度模型训练的挑战。在模型训练时,批量归一化利用小批量上的均值和标准差,不断...原创 2020-02-25 19:23:53 · 641 阅读 · 0 评论 -
机器翻译与Seq2Seq模型
机器翻译(MT):将一段文本从一种语言自动翻译为另一种语言,用神经网络解决这个问题通常称为神经机器翻译(NMT)。 主要特征:输出是单词序列而不是单个单词。 输出序列的长度可能与源序列的长度不同。...原创 2020-02-21 15:18:36 · 613 阅读 · 0 评论 -
关于激活函数
1.为什么要使用激活函数因为线性函数能拟合的模型太少,多层线性神经网络的叠加仍然为线性,加上非线性可以改善拟合效果。2.激活函数的要求非线性,可微(反向传播)。3.常用的激活函数4.激活函数的选择当隐藏层数量较少时,选择可以比较随意。当隐藏层数量较多时,为了避免梯度消失或梯度爆炸,要谨慎选择。在卷积神经网络隐藏层一般使用relu,在循环神经网络中,一般使用relu或者tanh。si...原创 2020-02-17 11:40:22 · 392 阅读 · 0 评论