自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (1)
  • 收藏
  • 关注

原创 NLLLoss和CrossEntropyLoss的区别和联系

NLLLossNLLLoss的全称是Negative Log Likelihood Loss,也就是最大似然函数。在图片进行单标签分类时,【注意NLLLoss和CrossEntropyLoss都是用于单标签分类,而BCELoss和BECWithLogitsLoss都是使用与多标签分类。这里的多标签是指一个样本对应多个label.】假设输入m张图片,输出一个m*N的tensor,其中N是分类的个数,比如N为词表大小。比如,输入3张图片,分三类,最后的输出是一个3∗33*33∗3的tensor,举一个例子

2020-11-02 16:15:14 5574 8

原创 使用kenlm训练语言模型,并对句子进行打分

我们可以使用一个kenlm的python包去训练一个语言模型,并对每个句子进行打分。安装kenlm:pip install https://github.com/kpu/kenlm/archive/master.zip训练语言模型首先下载语言数据,我们可以下载Bible数据:wget https://github.com/vchahun/notes/raw/data/bible/bible.en.txt.bz2然后创建一个process.py文件,对数据进行分词等预处理:import sy

2020-11-02 14:28:28 2058

原创 Linux paste合并文件,使用多个字符作为间隔符

有时我们想将两个文件按行合并。比如机器翻译中常用的source文件和target文件。这时我们可以使用paste -d命令进行合并,但是paste -d命令只能采取单个字符作为间隔符,如果我们想采用多个字符,如###做分隔符,我们可以使用/dev/null作为空文件,来实现这一目标。比如有file1和file2,那么如果我们想使用abc作为分隔符,那么我们可以使用如下的命令:paste -d abc file1 /dev/null /dev/null file2这个命令也等价于:paste -d

2020-08-25 19:10:08 1299 1

原创 本地配置java8和java11并存的环境

有时有的软件需要jdk8,有的需要jdk11,那么我们可以在本地配偶jdk8和jdk11并存的环境的。首先现在jdk11,下载地址:https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_osx-x64_bin.tar.gz然后解压,解压后默认安装在/Library/Java/JavaVirtualMachines/下。下面就是实现jdk8和jdk11并存的方法,主要是修改~/.bash_profile的配置。原来的~/.bash_

2020-08-21 13:11:45 3454

原创 线性回归总结

我们先来了解下最小二乘的思想。**简单的来说,最小二乘的思想就是要使得观测点和估计点的距离的平方和达到最小。**这里的二乘指的是用平方来度量观测点与估计点之间的远近,最小则指的是参数的估计值要保证各个观测点与估计点之间的距离的平方和达到最小。一元线性回归假设我们的模型只有一维数据时,模型就是一条直线f(x)=ax+bf(x)=ax+bf(x)=ax+b,我们有mmm条训练数据,训练损失函数为误差平方和的平均数:L(a,b)=1m∑i=1m[(axi+b)−yi]2L(a,b) = \frac{1}{m

2020-08-07 18:19:39 228

原创 Shell中使用seq生成等差数组

在shell编程里,要想生成一个动态的数组,可以使用seq命令;比如要生成一个从1,开始一直到10的等差数组:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传比如要生成一个从0开始,一直到1,间隔为0.01的等差数组:可以看到这里的间隔与python里的range函数不一样,将间隔放在了start和end中间。...

2020-08-07 11:01:01 2731

原创 SVM算法的总结--从原理理解SVM算法

#! https://zhuanlan.zhihu.com/p/166385749SVM算法总结本文是看了几个博客后,写的总结笔记。SVM由线性分类开始给定一个训练样本集D={(x1,y1),(x2,y2),...,(xn,ym)},y∈{−1,1}D=\{(x_1,y_1),(x_2,y_2),...,(x_n,y_m)\}, y \in \{-1,1\}D={(x1​,y1​),(x2​,y2​),...,(xn​,ym​)},y∈{−1,1}.线性分类器基于训练样本DDD在二维空间中找到一个

2020-08-03 18:21:16 1041

原创 conda创造、删除、复制环境

参考地址:https://blog.csdn.net/H_O_W_E/article/details/77370456

2020-08-03 17:27:36 68143

原创 Logistics Regression算法小结

当目标变量时分类变量时,常常使用Logistic Regression(LR)算法。例如:预测邮件是否为垃圾邮件(是垃圾邮件标记为1,否则为0)预测肿瘤是否为恶性的(是恶性的为1,否则为0)模型LR算法主要利用sigmoid函数,其图像如下:模型的输入是xi=(xi1,xi2,...,xim)x_i=(x^1_i,x^2_i,...,x^m_i)xi​=(xi1​,xi2​,...,xim​),xix_ixi​是一个向量,其具体的计算方法如下:h(x)=11+e−z,z=θx+bh(x)

2020-08-03 17:17:19 214

原创 数据结构十大排序算法Java实现

#! https://zhuanlan.zhihu.com/p/165489682对于经典的十大排序算法做了一个总结,并用java实现。下面是我们将要实现的排序算法:冒泡排序(Bubble sort)插入排序(insert sort)选择排序(selection sort)希尔排序(Shell sort)归并排序(merge sort)堆排序(Heapsort)快速排序(Quicksort)桶排序(Bucket Sort)计数排序(Count Sort)基数排序(Radix Sor

2020-07-31 11:13:43 237

转载 Jacobian矩阵和Hessian矩阵,以及牛顿法

Jacobian矩阵和Hessian矩阵,以及牛顿法Jacobian矩阵在向量分析中,雅可比矩阵是一阶偏导数以一定方式排列成的矩阵,其行列式称为雅克比行列式。雅可比矩阵雅克比矩阵的重要性在于它体现了一个可微方程与给出点的最优线性逼近。因此,雅克比矩阵类似于多元函数的导数假设F:Rn→RmF:R_n \rightarrow R_mF:Rn​→Rm​是一个从欧式nnn维空间转换到mmm维空间...

2020-01-19 09:13:16 1791

原创 KKT的来源与推导

KKT条件KKT条件是非线性规划最佳解的必要条件,KKT条件将拉格朗日乘数法所处理的等式约束优化问题推广到不等式。等式约束优化问题给定一个目标函数f:Rn→Rf:R^n \rightarrow Rf:Rn→R,我们希望找到x∈Rnx \in R^nx∈Rn,在满足约束条件g(x)=0g(x)=0g(x)=0的前提下,使得f(x)有最小值,这个约束优化问题记为:min⁡f(x)s.t.g(x...

2020-01-16 17:29:34 884

原创 拉格朗日对偶性

拉格朗日对偶性在约束最优化的问题中,常常需要利用拉格朗日对偶性(Language duality)将原始问题转为对偶问题,通过解决对偶问题来得到原始问题的解。拉格朗日乘数法拉格朗日乘数法是用来求条件极值的,极值问题可以分为两类:求函数在给定区间上的极值,对自变量没有其他的要求,这种极值称为无条件极值。对自变量有一些附加的约束条件限制下的极值,称为条件极值比如给定椭球x2a2+y2b...

2020-01-16 16:06:43 338

原创 感知机原理从入门到精通

感知机原理感知机的原理及预备知识感知机是一个二分类的模型,它的输入是一个样本的特征向量,输出的是这个样本所属的类别,一般可以认为是一个二分类模型。感知机有一个假设默认成立,即认为数据集是线性可分的,因为感知机学习的目标就是寻找一个能够将训练集中正例和负例能够完全分开的超平面,注意这里只是找到一个能完全分离正负例的超平面,没有要求是最优的,所以感知机算法可以有多个解。这是由感知机算法的迭代过程...

2020-01-16 15:56:44 372

原创 论文笔记《Controllable Unsupervised Text Attribute Transfer via Editing Entangled Latent Representation》

论文《Controllable Unsupervised Text Attribute Transfer via Editing Entangled Latent Representation》阅读笔记论文来源:2019 NIPS论文主要贡献:提出了一种非监督方式的文本属性转换框架,通过改变文本属性分类器的属性来对latent representation【就是原始风格文本经过encoder部...

2020-01-14 22:04:46 1250

原创 论文笔记《Paraphrase generation with latent bag of words》

论文笔记《Paraphrase generation with latent bag of words》论文来源:2019 NIPS论文代码:https://github.com/FranxYao/dgm_latent_bow论文主要内容作者提出了一个a latent bag of words(BOW)模型来进行paraphrase生成。作者首先使用source word取预测他们自己的邻...

2020-01-14 22:01:21 1507

原创 论文笔记《Incorporating Copying Mechanism in Sequence-to-Sequence Learning》

论文笔记《Incorporating Copying Mechanism in Sequence-to-Sequence Learning》论文来源:2016 ACL论文主要贡献:提出了copy net机制,从source sentence中直接copy到target sentence中的网络模型结构论文主要内容CopyNet依然是一个encoder-decoder的框架。Encoder...

2020-01-14 21:57:17 410

转载 Argparse模块

里面的参数分为可选参数和定位参数.包括action选择不同的默认值。 参考地址:https://blog.ixxoo.me/argparse.html

2018-06-15 13:53:19 168

转载 torch初学

参考地址:https://www.jianshu.com/p/cde4a33fa129按照图中的代码敲一遍(注意view层的使用方法,以及最后计算参数数量的方式。) 参数数量的计算结果:

2018-06-12 16:29:30 198

转载 python中dot乘积(按照矩阵乘法,行列分别相乘相加等)、element-wise对位相乘的实现

参考地址:https://blog.csdn.net/u012609509/article/details/70230204/注意其中dot乘积对于一维矩阵,也是按着对位相乘得到的。 element-wise的对位相乘实现方式有两种,分别是直接*和用np.multiply...

2018-06-12 10:55:41 21912

转载 分类和回归的区别

输入变量与输出变量均为连续变量的预测问题是回归问题; 输出变量为有限个离散变量的预测问题成为分类问题;其实回归问题和分类问题的本质一样,都是针对一个输入做出一个输出预测,其区别在于输出变量的类型。 分类问题是指,给定一个新的模式,根据训练集推断它所对应的类别(如:+1,-1),是一种定性输出,也叫离散变量预测; 回归问题是指,给定一个新的模式,根据训练集推断它所对应的输出值(实数)是...

2018-06-08 11:00:05 17084 1

转载 python中json读写

参考地址:https://www.cnblogs.com/bigberg/p/6430095.html

2018-06-07 09:04:28 128

原创 常用linux命令

参考地址:https://blog.csdn.net/chendaoqiu/article/details/45077703

2018-06-07 08:52:45 201

转载 python re.sub模块清洗数据

re.sub()有三个必选的参数:pattern(要匹配的字符等),repl(要替换成的字符),string(源数据).还有两个可选参数count,flags.比如要去掉字符串末尾的’,’,’?’,’.’等符号时,可以选择下面的代码实现: 其中[]里面可以用来填要匹配的字符集,’\’是转义字符,让它后面的字符还原它原有的含义,*表示匹配多次,$表示只在字符末尾进行匹配。具体re模块的...

2018-06-01 10:19:56 5886

转载 tf-idf --转载

参考地址:https://www.cnblogs.com/chenbjin/p/3851165.html 一个句子的tf-idf是由句子中的每一个词的tf-idf概率和相加得到的。

2018-05-31 14:24:51 155

原创 python 2.7判断数据编码是unicode还是其他的

python 2.7判断数据data编码是unicode还是其他的 :用type(data)来查看

2018-05-30 16:25:35 4637

原创 python 看包所在的位置

1,输入python 2,第一行代码 (假如是sys模块)import sys 3,第三行代码: sys.path 这样就显示了sys模块在你的电脑中的存储位置

2018-05-29 20:18:09 13184 1

转载 python安装包的几种方式 -- pip等

参考地址:https://www.jianshu.com/p/9acc85d0ff16

2018-05-29 19:30:17 2327

原创 用conda创建的虚拟环境所在位置

放在了anaconda下面了,比如我的电脑就放在了/Users/username/anaconda3下了

2018-05-29 18:48:04 26699 1

转载 numpy以及pandas中axis = 0及axis = 1时的运算方向

axis = 0表示运算是按照上下方向来的;axis=1表示运算时按照左右方向来的。 参考地址:https://www.zhihu.com/question/58993137

2018-05-10 16:37:35 644

原创 vim界面去掉^M符号

1、txt文件在vim界面中有^M字符,我们可以通过:%s/^M $//g命令,来去掉^M(其中^M是通过ctrl+M来实现的。) 2、如果想把^M字符换成回车符,可以使用命令:%s/^M/\r/g ,这个可以实现将^M替换成回车。 参考地址:https://www.cnblogs.com/lipijin/p/3837619.html 参考地址:https://linuxtoy.or...

2018-05-04 15:33:27 3066

转载 LSTM的深入理解

LSTM最主要的就是对cell的理解,最初看的是这篇经典博客,看完感觉自己每个分部都看懂了,但是整体整合不起来,然后看到了这位大神写的总结博客,把整个lstm的结构整合起来了。1,LSTM cell最常见的结构图: 注:LSTM中可以理解为有三个门、一个cell。其中输入门控制输入(新记忆)的输入幅度;遗忘门控制之前记忆状态的输入幅度;输出门控制最终记忆的输出幅度。2,我觉得最帮...

2018-05-03 16:35:09 2234

原创 模型中的一些细节问题

embedding层:在导入预训练的词典后,embedding层的参数是怎么来的,以及参数数目是怎么计算的。添加dropout层【将dropout层单独加进去】,没有产生额外要训练的参数。LSTM、GRU等RNN,当return_sequences=False时表示不会将所有的时刻的隐层输出最终输出出来,所以会发生降维;当return_sequences=True时,表示会将所有的时刻输出,...

2018-05-03 10:57:52 305

原创 张量、向量、标量的区别

标量是0阶张量(一个数),是1*1的; 向量是一阶张量,是1*n的; 张量可以给出所有坐标间的关系,是n*n的。 所以通常有人说将张量(n*n)reshape成向量(1*n),其实reshape过程中并没有发生大的变化。参考地址:https://www.zhihu.com/question/22232943...

2018-04-26 14:14:53 36050 9

原创 CNN的具体卷积过程

参考地址:https://blog.csdn.net/caicaiatnbu/article/details/72792684?locationNum=7&fps=1 由上面的博客可以得出,二维卷积过程就是:比如输入通道数为3,每个图像的大小为7*7,那么当卷积核的数目为2个的时候,卷积核的大小为3*3时。 具体的卷积过程就是用一个3*3大小的卷积核分别和这3个通道的7*7图像做...

2018-04-25 15:27:48 3319

原创 python sort函数

python中的sort函数,sorted()函数,一般默认reverse = false,即表示升序,当reverse= true时,表示降序。

2018-04-17 09:49:29 1140

转载 全连接层的作用

全连接层(fully connected layers,FC),在整个卷积神经网络中起到”分类器”作用。如果说卷积层、池化层和激活函数层等操作是将原始数据映射到隐层特征空间的话,全连接层则起到”将学到的分布式特征表示”映射到样本标记空间的作用。 同时由于全连接层参数冗余(仅全连接层的参数就可占整个网络参数80%左右),近期一些性能优异的网络模型如ResNet和GoogLeNet等均用全局平...

2018-04-09 14:15:44 8304

转载 神经网络的几个常用的激活函数及其公式

首先我们要明白激活函数的作用是:简而言之,增加模型的非线性表达能力。为什么能增加非线性能力,看参考地址。 几大激活函数的具体公式如上图。如上所示,sigmoid只会输出正数,以及它靠近0的输出变化率最大。tanh与sigmoid不同的是,tanh输出可以是负数。Relu是输入只能大于0,如果你输入含有负数,Relu就不合适,如果你的输入是图片格式,Relu就挺常用的。参考地址:h...

2018-04-09 13:46:04 1839

转载 word2vec中对于Negative Sampling的理解

参考地址:http://www.cnblogs.com/pinard/p/7249903.html 上一篇转载的博客详细介绍了基于Hierarchical Softmax的word2vec模型是如何产生词向量的。这篇论文则是针对那些”偏僻词”采用的用negative sampling方法产生词向量的具体步骤。1,Hierarchical Softmax对的缺点与改进 Hierarchi...

2018-04-04 17:20:45 8489

转载 word2vec基于Hierarchical softmax的模型细节

参考地址:http://www.cnblogs.com/pinard/p/7243513.html1,基于Hierarchical softmax的模型的改进点 首选回顾传统的神经网络词向量语言模型,里面一般有三层:输入层(词向量),隐藏层,输出层(softmax层)。里面最大的问题就是在于从隐藏层到输出层的softmax层的计算量太大,因为他是要计算所有词的softmax概率,然...

2018-04-03 16:28:25 3126

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除