随笔分类 - NLP
摘要:1.TensorFlow的模型文件 --checkpoint_dir | |--checkpoint | |--MyModel.meta | |--MyModel.data-00000-of-00001 | |--MyModel.index 2.meta文件 该文件保存的是图结构,meta文件是pb
阅读全文
摘要:使用预训练词向量和随机初始化词向量的差异还是挺大的,现在说一说我使用预训练词向量的流程。 一、构建本语料的词汇表,作为我的基础词汇 二、遍历该词汇表,从预训练词向量中提取出该词对应的词向量 三、初始化embeddings遍历,将数据赋值给tensor 样例代码:
阅读全文
摘要:在自然语言处理中,主要使用一维的卷积。 API inputs: 输入数据,如(?, 80, 300) filters: 滤波器的个数 kernel_size: 卷积核的大小,指定一个维度即可,即卷积核的高。宽是数据的维度,自动匹配。
阅读全文
摘要:最近在用到数据筛选,观看代码中有tf.where()的用法,不是很常用,也不是很好理解。在这里记录一下 Return the elements, either from x or y, depending on the condition. 理解:where嘛,就是要根据条件找到你要的东西。 con
阅读全文
摘要:我们在处理矩阵数据时,需要用到数据的均值和方差,比如在batch normalization的时候。 那么,tensorflow中计算均值和方差的函数是:tf.nn.moments(x, axes) x: 我们待处理的数据 axes: 在哪一个维度上求解,是一个list,如axes=[0, 1, 2
阅读全文
摘要:注意力机制本质: 注意力机制的具体计算过程,可以归纳为两个过程。 第一个过程:根据query和key计算权重系数 第二个过程:根据权重系数对value进行加权求和
阅读全文
摘要:一层的lstm效果不是很好,使用两层的lstm,代码如下。
阅读全文
摘要:Batch_size参数的作用:决定了下降的方向 极端一: batch_size为全数据集(Full Batch Learning): 好处: 1.由全数据集确定的方向能够更好地代表样本总体,从而更准确地朝向极值所在的方向。 2.由于不同权重的梯度值差别巨大,因此选择一个全局的学习率很困难。Full
阅读全文
摘要:1.CNN网络中的池化方式选择 池化方式有两种:1)最大池化;2)平均池化 在实验中我发现,最大池化要比平均池化慢很多,效果也不如平均池化好。所以,池化的方式我们尽量选择平均池化。 2.CNN卷积核的设计 卷积的大小,遵守奇数设计原则,如【1,3,5,7】 3.CNN和RNN网络输出到全连接层数据s
阅读全文
摘要:有时我们的样本标签,都是标记从0开始直至到类别的个数。在模型训练的时候,这些标签需要变成one_hot向量,这样才能够跟softmax出来的概率做互熵损失,计算loss。 那么,映射的方法如下: y: 类型是list,样本的类别标签序列 n_class: 类别的个数 输出:
阅读全文
摘要:我们在文本数据预处理前,要将数据统一整理成需要的格式,其中有回车(\t)或者(\n)符号,会对我们的数据保存有影响,那么就需要将其过滤掉。 比较简单的方法,用replace()将这些符号替换为空,一定要一个一个的替换 这样就删除了你想要删除的符号
阅读全文
摘要:输出: {1: 3, 2: 2, 3: 1}
阅读全文
摘要:36.什么时候你应该在不同分布上做训练和测试 当你的猫app已经上传10000张图,你已经人工标记它们有没有猫,同时你有200000张互联网上下载的图,这时你要怎么划分训练开发测试集呢? 当你训练深度学习模型时,可能必须用到那200000张图,那么训练和测试集的分布就不同,这会怎样影响你的工作呢?
阅读全文
摘要:命名实体的标注有两种方式:1)BIOES 2)BIO 实体的类别可以自己根据需求改变,通常作为原始数据来说,标注为BIO的方式。自己写了一套标注方法,大家可以参考下 原文:1.txt Inspired by energy-fueled phenomena such as cortical cytos
阅读全文
摘要:在进行模型训练前,我们要将数据打乱,以获得更好的训练效果。可以使用sklearn.utils中的shuffle,获得打乱后的数据索引,最后,迭代生成打乱后的batch数据,一个写好的模块如下。 思路是:1.先shuffle 2.再迭代生成
阅读全文
摘要:tf.abs() 求tensor中数据的绝对值 tf.sign() 每一个数据都执行sigmod函数,得到对应的数值 tf.reduce_sum() 对不同维度数据求和。注意:1:求和每一行 0:求和每一列 tf.cast() 数值转换 演示: 输出:
阅读全文
摘要:官网API是这么说的 This operation outputs a Tensor that holds the new value of 'ref' after the value has been assigned. This makes it easier to chain operatio
阅读全文
摘要:cross_val_score(model_name, x_samples, y_labels, cv=k) 作用:验证某个模型在某个训练集上的稳定性,输出k个预测精度。 K折交叉验证(k-fold) 把初始训练样本分成k份,其中(k-1)份被用作训练集,剩下一份被用作评估集,这样一共可以对分类器做
阅读全文
摘要:当我们训练的词向量保存为txt时候,如果不是直接读取到内存,找对应词的向量,这样会非常耗时 方法1.用gensim读取成model的形式,从内存中获得数据 方法2.读取txt文件,用enumerate()将数据放到字典里面,后期查找的时候用这个字典,主要代码如下:
阅读全文
摘要:一、深度学习模型 1.CNN 2.LSTM 3.Attention 二、与传统机器学习模型的比较 1.SVM 2.LR 3.GBDT 4.XGBoost 5.RandomForest 6.LightGBM 三、文本特征选择 1.一般短文本的长度在200字符左右,需要更加精巧的模型来判别 2.对于网络
阅读全文