NLP中的hashing trick是什么?

  统计/机器学习 自然语言处理 数据预处理 数据降维    浏览次数: 892
2

NLP中经常用到hashing trick,和一般分类或者回归问题中使用的hashing trick是一回事吗?

 

汪王往望   2017-04-09 10:49



   1个回答 
4

本质上其实是一回事。也是通过合并来降维的。

语句1: "There is a dog. The dog is running."

语句2: "There is a cat. It is running, too."

1 there

2 is

3 a

4 dog

5 the

6 running

7 cat

8 it

9 too

语句1: "1 2 3 4 5 4 2 6"

语句2: "1 2 3 7 8 2 6 9"

如果用OneHotEncode的话,我们需要两个9维的向量存放这两句话。如果有其他m个语句,出现k个单词,那么我们就需要一个长度为k的向量来表示每个语句。这样的话,维数会特别大,数据也会特别sparse。

如果我们采用hashing trick,比如用mod 4作为hashing function,那么

1 there

2 is

3 a

0 dog

1 the

2 running

3 cat

0 it

1 too

语句1: "1 2 3 0 1 0 2 2"

语句2: "1 2 3 3 0 2 2 1"

不管是多大的词汇量,语句都可以被表示为一个四维向量

v1 = [2, 2, 3, 1]

v2 = [1, 2, 3, 2]

雷猴   2017-04-10 22:40



  相关主题

分类变量,进行One hot编码,维度升高,如何处理?   3回答

hashing trick或者feature hashing是什么   1回答

维数大于样本数的问题   3回答

请问NLP中这种编码方式有没有什么术语?   1回答

python去掉中文文本中所有的标点符号   3回答

求python里得到n-grams的包?   2回答

python里怎么实现t-SNE降维?   1回答

数据批量分析提取,求指点迷津   4回答

文本处理中的tf是什么意思?如何计算?   1回答

文本处理中stop word什么意思   2回答

自然语言处理中的Tf-idf是什么意思   1回答

python里怎么把中文字符串转化为成list   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!