自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 基于RNN的机器翻译

基于RNN的机器翻译1、训练2、翻译

2019-07-24 15:17:02 2163 8

原创 基于RNN的语言模型

基于RNN的语言模型1、训练2、计算一句话的概率3、输出下一个词4、给定初始种子,输出一句话

2019-07-24 15:15:07 776

原创 sentencepiece原理和使用

sentencepiece在中文上相当于分词+BPE

2018-11-30 11:03:55 12524 2

原创 BPE的原理及代码解析

BPE:在自然语言处理中,序列到序列模型中(机器翻译、对话)需要设置词表,使用较小的词表,有助于提高系统的性能。BPE在欧洲语系可能表现的更为有效一些,主要由于欧洲语系中存在词缀等概念。BPE训练 BPE的大概训练过程:首先将word分成一个一个的字符,然后统计字符对出现的次数,每次将次数最多的字符对保存起来,直到循环次数结束。BPE编码解码过程,经过训练过程,会得到codec文件,...

2018-05-29 19:58:53 20301 10

原创 文本相似度-词袋模型

1、词袋模型 将两篇文本通过词袋模型变为向量模型,通过计算向量的余弦距离来计算两个文本间的相似度。词袋模型的缺点: 词袋模型最重要的是构造词表,然后通过文本为词表中的词赋值,但词袋模型严重缺乏相似词之间的表达。 比如“我喜欢北京”“我不喜欢北京”其实这两个文本是严重不相似的。但词袋模型会判为高度相似。 “我喜欢北京”与“我爱北京”其实表达的意思是非常非常的接近的,但词袋模型不能表示“喜欢”和

2017-11-23 16:10:24 4595

原创 【文本聚类】用k-means对文本进行聚类

# -*- coding: utf-8 -*-"""Created on Thu Nov 16 10:08:52 2017@author: li-pc"""import jieba from sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.cluster import KMeansdef jieba_t

2017-11-18 16:00:40 16678 8

原创 文本分类系列-使用CNN和LSTM构建分类器的对比

晚了一步,有人已经完成。不过还是会添加一些自己的理解,再写写的。 贴上地址:https://gaussic.github.io/2017/08/30/text-classification-tensorflow/

2017-11-01 16:51:41 6974 2

原创 CNN和RNN在自然语言中的适用场景

是个问题,有没有人回答一下。

2017-10-31 18:19:41 4521

原创 样本方差的快速计算-遍历一遍样本集

在统计学中,经常需要样本的方差计算,比较麻烦的方式是 (1)第一次遍历计算出样本的平均值 (2)第二次遍历才能计算出样本的方差 上述方法在样本较少的情况下,非常合适,但如果样本非常大,这种方式就不可取了,而且如果样本是持续增长的,就都不适用了。先上代码#第一步:遍历一遍样本样本e in 样本集: self.n += 1 self.sum += e.val self.s

2017-10-12 16:09:51 4012 1

原创 大数乘法 python

def fun(num1,num2): #num1 type str #num2 type str a = map(int,list(reversed(num1))) b = map(int,list(reversed(num2))) result = [0]*(len(a) + len(b)) for ia,va in enumerate(a):

2017-09-25 17:16:37 3012 2

原创 python 字典排序

python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行:1 下面的是按照value的值从大到小的顺序来排序。dic = {‘a’:31, ‘bc’:5, ‘c’:3, ‘asd’:4, ‘aa’:74, ‘d’:0} dict= sorted(dic.iteritems(), key=lambda d:d[

2017-08-14 11:11:58 826

原创 n-gram统计 计算句子概率 SRILM安装使用

不是非要写一篇的,是这个网上太少了,而且貌似也没有其他工具来做这项工作了。因此本文主要写怎么使用SRILM统计n-gram,并使用该工具得到的语言模型进行句子概率的计算。当然如果有更好的工具请大家一定要推荐一下。1、安装安装官方写的很简单,遇到问题,又很少有解答的,难道其他人都一次性安装成功了吗。环境:unbuntu16.041.1 下载SRILM下载地址:http://www.speech.sri

2017-08-09 21:03:54 7679 2

原创 CRF++的使用 CRF用于中文分词

本文只讲CRF的应用,CRF的原理已经有足够多的人讲了。1、基石-数据机器学习到现在,最重要的莫过于数据了,模型就那么几个了,数据的规模、质量对模型的影响是非常非常大的。使用的数据为北京大学人民日报的语料,处理的格式如图所示,格式为“词 词性 可分标志”,其中可分标志分为,B为一个词的开始字,E为一个词的结束字,S为单独的字为一个词,句与句之间隔着一个换行符。 2、 CRF模板使用的软件为crf+

2017-07-31 18:21:43 5449 1

原创 tensorflow GPU使用问题

linux下查看GPU使用情况的命令nvidia-smi几个观察参数 Fan:代表显卡转速,以百分比显示; Temp:代表显卡温度; Perf:性能等级,p1~p12,数字越小,性能较好。 Pwr:usage/cap :当前功率/总功率。 Memory-Usage:显卡的显存使用容量跟显卡总的大小 GPU-Util:显卡计算单元使用率。 ok,多说一句,显卡也分为两部分,即显卡跟计算

2017-07-25 19:56:58 12673 1

原创 tf.reduce_sum tensorflow维度上的操作

tensorflow中有很多在维度上的操作,本例以常用的tf.reduce_sum进行说明。官方给的apireduce_sum( input_tensor, axis=None, keep_dims=False, name=None, reduction_indices=None)input_tensor:表示输入 axis:表示在那个维度进行sum操作。

2017-07-07 09:20:30 27990 4

转载 maven将本地jar包放在本地仓库

一般我们在使用maven添加jar的时候,都是直接在pom.xml中添加依赖,变可从中央仓库中下载该jar包。但是有时候偏偏中央仓库中没有我们需要的jar包,或者需要使用我们自己的jar包的时候,该怎么办呢? 解决办法就是把本地的jar包添加到本地仓库中,然后在pom.xml中添加依赖即可。具体如下: 本文以添加ZHConverter.jar为例。 1.把需要添加的jar文件ZHConvert

2017-05-22 09:57:29 5157

原创 tensorflow : 使用预训练词向量

目前使用深度网络进行文本任务模型训练时,第一步应该是将文本转为词向量进行处理。但一般词向量的效果跟语料的大小有关,而处理任务的语料不足支持我们的实验,这时就需要使用网上公开的大规模语料训练词向量。1、下载网上公开的词向量下载地址:https://github.com/xgli/word2vec-api glove的文件说明如何使用预训练词向量,文件格式如下:每行为一个单词和其对应的词

2017-05-19 10:21:46 37680 11

转载 分类问题中的数据不平衡问题

在很多机器学习任务中,训练集中可能会存在某个或某些类别下的样本数远大于另一些类别下的样本数目。即类别不平衡,为了使得学习达到更好的效果,因此需要解决该类别不平衡问题。Jason Brownlee的回答:原文标题:8 Tactics to Combat Imbalanced Classes in Your Machine Learning Dataset   当你在对一个类别不均衡的数据集进行分类

2017-05-09 11:22:43 12867

转载 机器学习中的过拟合

这几天在训练一个文本处理的机器学习算法,使用支持向量机和决策树算法在训练集上的数据的准确度特别高,但是在测试集上的数据的准确度确很低,于是陷入过度拟合的烦恼中,查找资料发现一些多度拟合的看法。仔细想想确实在训练时存在一些问题,第一:输入变量多,由于缺乏对问题的根本认识,使用了很多无关变量,这个问题打算从其它途径先认识变量和问题的关系;第二:数据的噪声可能是比较大,没有考虑到关键的特征和信息。下面的几

2017-05-09 11:09:25 834

原创 python 字典setdefault操作

#dict.setdefault(key, default=None)d = {'a':1,'b':2}b = d.setdefault('a',3)#b = 1b = d.setdefault('c',3)#b = 3d.setdefault('d',4)#d={'a':1,'b':2,'c':3,'d':4}从上述操作可以看出,setdefault的操作是取字典中的内容,如果key

2017-05-07 17:01:11 954

转载 python实现字典树

由小米面试引发的字典树,面试过程中,才知道有字典树这个玩意。字典树简单实现#coding=utf-8 class Trie: root = {} END = '/' def add(self, word): #从根节点遍历单词,char by char,如果不存在则新增,最后加上一个单词结束标志 node = self.root for c in wo

2017-05-02 16:13:06 2286

原创 池化操作 tensorflow tf.nn.max_pool

池化操作待补充tf.nn.max_pool(value, ksize, strides, padding, data_format='NHWC', name=None)value表示输入数据形式。data_format表示输入数据的格式,需要跟输入数据的格式保持一致。有”NHWC“和”NCHW“两种。默认是”NHWC“即[batch, in_height,in_wide,in_channels]ks

2017-04-21 10:08:48 3953

原创 卷积操作 tensorflow tf.nn.conv2d

tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, data_format=None, name=None)data_format:可选参数,表示输入数据的格式,有两种分别为:“NHWC”和“NCHW”,默认格式为”NHWC““NHWC”输入数据的格式为为[batch, in_height, in_width, i

2017-04-21 09:35:52 4499 1

原创 tensorflow保存网络参数 使用训练好的网络参数进行数据的预测

训练好网络后,重要的是后期的再训练和预测。所以本文主要讲如果存储训练好的参数以及使用训练好的参数。1、存储网络参数2、使用存储的网络参数

2017-04-12 15:17:32 10144

原创 python里面的set、list、tuple区别和使用方法

python中set,list,tuple。虽然很多人都已经写过了,但每个人都有每个人的理解。list可能在三种中list,列表是用的最多的了吧。下面简要说一下它的基本用法#1. 生成空的列表l = []#2. 生成带有默认值的列表l = [0]*20 #一维l = [[0]*20]*10 #二维.......#3.新增元素l.append(a) #a是什么形式的在l中就是什么形式,相当

2017-03-31 20:12:05 3996

原创 conda 创建虚拟环境 Anconda虚拟环境

1、创建虚拟python环境:通过构建虚拟环境,可避免与其他人的软件版本冲突。conda create -n name python=2.x.x例如创建名字为xgli的虚拟环境,python的版本为2.7.3,则命令为:conda create -n xgli python=2.7.3特别注意:在创建虚拟环境前,使用下面命令,查看是否会有重名的虚拟环境:conda env list2、激活虚拟环境s

2017-03-28 14:15:35 4996

原创 tensorflow tf.concat操作

在某个试验中,设置了步长为2,3的两个卷积网络,在得到最终结果的时候需要对这两个网络的结果进行拼接,就需要tf.concat函数了。 官方例子:t1 = [[1, 2, 3], [4, 5, 6]]t2 = [[7, 8, 9], [10, 11, 12]](1)tf.concat([t1, t2], 0) ==> [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10,

2017-03-12 22:11:34 3999

原创 文本分类系列-简单的使用cnn对新闻进行分类

为了学习cnn,本文将构建一个简单的cnn模型,对新闻文本进行分类。

2017-02-23 11:15:31 4088 1

原创 tensorflow tf.nn.embedding_lookup(embeddings, train_inputs)解释

embedding_lookup从表面意思看就是一个查找单词对应词向量的表, embeddings参数:词跟词向量的对应表 train_inputs参数:需要转换的文本(int类型) 类似下面的操作:embeddings = np.random.random([1024, 64]) # 64-dimensional embeddingstrain_inputs = np.array([0,

2017-02-22 11:00:27 1895

原创 PHP错误:call to undefined function imagecreatetruecolor

在使用php进行绘图的过程中,出现“call to undefined function imagecreatetruecolor”错误。 可能的原因是没有安装php5-gd<?php$testGD = get_extension_funcs("gd"); // Grab function list if (!$testGD){ echo "GD not even installed."; e

2017-02-17 11:41:23 3829

原创 ValueError: setting an array element with a sequence. tensorflow numpy

这种错误是numpy数组的维度不匹配导致的。 np.array([1,2,3,[4,5,6]])ValueError: setting an array element with a sequence.

2016-12-26 09:43:36 23642

原创 linux 批量杀掉程序 ps命令 grep命令 kill命令

遇到在后台运行一个程序的不同参数,又想将此类程序都停止。ps -ef|grep new_realtime_mkf|grep -v grep|awk '{print $2}'|xargs kill -9new_realtime_mkf 为想杀掉程序中包含的字符串,此字符串应尽量的精准。 此命令会将后台命令中包含new_realtime_mkf字符串的进程全部杀死。ps -ef #显示所有进程信息

2016-11-25 15:09:16 1729

原创 分本分类(六):使用LDA+SVM进行文本分类

经过分本分类(五)利用LDA成功的将文本的特征维数降低了,可以拿这些特征使用SVM分类器进行分类,查看一下效果。占位置。。。。

2016-11-23 21:33:26 9734 5

原创 TensorFlow的reshape操作 tf.reshape

初学tensorflow,如果写的不对的,请更正,谢谢!tf.reshape(tensor, shape, name=None) 函数的作用是将tensor变换为参数shape的形式。 其中shape为一个列表形式,特殊的一点是列表中可以存在-1。-1代表的含义是不用我们自己指定这一维的大小,函数会自动计算,但列表中只能存在一个-1。(当然如果存在多个-1,就是一个存在多解的方程了)好了我想说的

2016-11-03 15:26:29 104724 8

原创 python numpy.tile函数

由于思维定势,刚刚接触这个函数导致了理解错误. tile函数的作用是将矩阵进行扩展. 数组的扩展一定要从低维考虑。分为两种情况:A[2][2] = [[1,2],[1,2]]为一个2维数组1.如果矩阵的维数小于所需扩充的维数,则:tile(A,(2,1,2))其中A可以首先扩展到相同的维度,A的原来形状为2x2的二维数组,由于需要扩展的维度为三维,因此可首先将A变为形状为1x2x2的三维数组。t

2016-11-03 15:11:49 1052

原创 文本分类(六):使用fastText对文本进行分类--小插曲

需要注意的问题: 1、linux mac 平台 2、标签中的下划线是两个!两个!两个!环境说明:python2.7、linux 自己打自己脸,目前官方的包只能在linux,mac环境下使用。误导大家了,对不起。 测试facebook开源的基于深度学习的对文本分类的fastText模型 fasttext python包的安装:pip install fasttext第一步获取分...

2016-10-28 21:44:27 51804 72

转载 git命令大全

git init # 初始化本地git仓库(创建新仓库)git config --global user.name "xxx" # 配置用户名git config --global user.email "xxx@xxx.com"

2016-10-13 18:02:44 499

原创 文本分类(四):使用CHI进行文本的降维---提特征

先占一个位置,改天完善

2016-10-10 15:44:33 2620 1

原创 文本分类(五):使用LDA进行文本的降维---提特征

每个文本可以看作是又不同的主题构成了,各个主题

2016-10-10 15:36:28 10571 1

原创 文本分类(三):文本转为词袋模型

在第二篇中,提到了如何爬取网易的新闻文章,如果感觉比较麻烦,可以直接使用网上现有的资源。 比如:搜狗新闻数据,清华新闻数据。个人感觉搜狗新闻数据比较杂乱,清华的新闻数据应该是经过了初步的清洗。附上清华新闻的下载地址:地址 分享一下停用词表 ,可以用来去掉对文本影响不大的词语。

2016-10-10 11:52:48 7762

空空如也

空空如也

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

TA关注的人

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