songbinxu的博客

学无止境,跬步千里

Ubuntu 常用解压与压缩命令

Ubuntu 常用解压与压缩命令 .tar 文件 # 仅打包,并非压缩 tar -xvf FileName.tar # 解包 tar -cvf FileName.tar DirName # 将DirName和其下所有文件(夹)打包 .gz文件 # .gz gunzip Fi...

2018-05-24 15:51:57

阅读数:532

评论数:2

Mac下Terminal指定用Sublime打开文件

Mac下Terminal指定用Sublime打开文件 方法一:open -a $ open -a /Applications/Sublime\ Text.app test.txt 缺点:麻烦 方法二:软链接 先建立软连接 $ ln /Applications/Sublime\ Text...

2018-05-24 11:28:38

阅读数:176

评论数:0

Python中字典根据多项规则排序

Python中字典根据多项规则排序   在SQL中或者用pandas可以轻松地对一列数据按照多个规则进行排序,那么有没有办法直接用python的sorted实现呢?答案是肯定的。 key value b 10 c 10 a 10 d ...

2018-05-23 11:44:49

阅读数:344

评论数:0

FP-growth 算法与Python实现

FP-growth 算法 介绍   打开你的搜索引擎,输入一个单词或一部分,例如“我”,搜索引擎可能会去统计和“我”一块出现得多的词,然后返回给你。其实就是去找频繁项集,而且需要相当地高效,像Apriori那样的速度肯定是不行的了。   本文要介绍的是FP-growth算法,它被用于...

2018-05-23 11:21:13

阅读数:1156

评论数:0

Apriori算法与python实现

Apriori算法   Apriori算法用于关联分析,其目标包括两个:发现频繁项集,发现关联规则。首先需要发现频繁项集,然后才能发现关联规则。 发现频繁项集   频繁项集指那些经常出现在一起的集合。若某个项集是频繁项集,则它的所有子集也是频繁的。反之,若一个项集是非频繁项集,则它的所有超集...

2018-05-22 08:57:22

阅读数:124

评论数:0

实现一个CountVectorizer

实现一个CountVectorizer   最近在一个nlp问题中使用了sklearn的CountVectorizer库进行分词,目的是对一个多值离散型特征进行编码并转换成稀疏矩阵(csr_matrix),使用过程中发现CountVectorizer的速度非常慢,相当的耗时,因此决定提取最核心的...

2018-05-18 17:20:59

阅读数:457

评论数:0

Python中in和has_key的性能比较

Python中in和has_key的性能比较   最近写了一个代码中需要判断一个字典D是否包含某个键值item,然后我使用了if item in D:,结果发现耗时很严重,于是改成if D.has_key(item),速度马上变快了很多。查阅了一些资料后,发现有一种说法是has_key是pyth...

2018-05-18 10:16:23

阅读数:578

评论数:0

3Idiots-2014-Kaggle 比赛源码走读

3Idiots-2014-Kaggle比赛源码走读   最近在研究ffm,自然要找回3Idiots在2014年kaggle比赛的解决方案。主要是研究他们的特征提取方案,写下此文记录走读大佬代码的过程,目的是方便以后查询,免得忘记。 3Idiots代码下载 git clone https://...

2018-05-17 19:28:41

阅读数:138

评论数:0

《Attention Is All You Need 》阅读笔记

Attention Is All You Need 阅读笔记 Introduction   这是谷歌发表的文章,针对nlp里的机器翻译问题,提出了一种被称为”Transformer”的网络结构,基于注意力机制。文章提出,以往nlp里大量使用RNN结构和encoder-decoder结构,R...

2018-05-16 17:40:44

阅读数:224

评论数:0

用Sklearn实现Affinity Propagation Clustering (AP聚类)

用Sklearn实现Affinity Propagation Clustering (AP聚类)   调用sklearn.cluster.AffinityPropagation即可实现AP聚类,不仅能接受原始数据作为输入,也可以预先计算好相似度矩阵,然后再送入。 原始数据输入 from ...

2018-05-15 12:12:54

阅读数:134

评论数:0

并行转换csv文件为libffm格式

并行转换csv文件为libffm格式   在使用libffm或者xlearn时,需要数据文件是libffm格式的,而我们一般拿到的数据都是csv格式或类csv格式的,所以需要转换。最简单的做法是把csv一行一行地读入,然后对每个特征进行编码处理,然后拼接成完整的一行,但是这样做是在是太慢了。本文...

2018-05-13 15:33:57

阅读数:523

评论数:1

Tensorflow指定显卡GPU运行

Tensorflow指定显卡GPU运行   有些工作站配备了不止一块显卡,比如4路泰坦。TensorFlow会默认使用第0块GPU,而以TensorFlow为Backend的Keras会默认使用全部GPU资源。有时候有多个人需要跑实验,如果一个人占用了全部GPU,其他人就不能跑了。因此需要能够指...

2018-05-13 10:06:01

阅读数:525

评论数:0

python import 上级目录

python import 上级目录   有时候我们可能需要import另一个路径下的python文件,例如下面这个目录结构,我们想要在_train.py里import在networks目录下的_lstm.py和上级目录下的_config.py。 _config.py networks ...

2018-05-12 10:48:07

阅读数:2096

评论数:1

Keras实现支持masking的Flatten层

Keras实现支持masking的Flatten层   不知道为什么,我总是需要实现某种骚操作,而这种骚操作往往是Keras不支持的。例如,我有一个padding过的矩阵,那么它一定是带masking的,然后我想要把它Flatten,再输入到Dense层。然而Keras的Flatten层不支持m...

2018-05-09 15:17:58

阅读数:587

评论数:0

Keras中Embedding层masking与Concatenate层不可调和的矛盾

Keras中Embedding层masking与Concatenate层不可调和的矛盾 a = Input(shape=[15]) # None*15 b = Input(shape=[30]) # None*30 emb_a = Embedding(10, 5, mask_zero=True)...

2018-05-08 17:03:30

阅读数:341

评论数:0

自然语言处理NLP中的N-gram模型

自然语言处理NLP中的N-gram模型 自然语言处理NLP中的N-gram模型 Naive Bayes N-gram N-gram简介 N-gram中的概率计算 N-gram的用途 用途一:词性标注 用途二:垃圾短信分类 用途三:分词器 用途四:机器翻译和语音识别 机器翻译 语音识别 ...

2018-05-07 21:00:03

阅读数:408

评论数:0

用Keras实现一个DeepFM

用Keras实现一个DeepFM 一、数据格式   在设计模型之间,首先要明确数据的格式应该是怎样的。我们假设现在要解决的问题是一个CTR预估问题,数据集是 (X,y)(X,y)(X,y),每一个样本都是高度稀疏的高维向量。假设我们有两种 field 的特征,连续型和离散型,连续型 fie...

2018-05-01 22:33:20

阅读数:1989

评论数:4

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