- 长尾问题是什么:长尾问题是实际生产数据中的一种数据分布。其中关键的特点在于占据影响比例相对较小的部分分布着较多的实例。一个例子是统计指定话题下的100w的微博,其中的字按频次排期,除了头部的数据外,频次较低的字有着极大的数量。一个典型的分布如下:百科长尾
- 常见的长尾问题解决方案:对于长尾问题的解决,主要分为两部分
- 高频部分通过人工筛选 + 人工标注,产出高质量可用数据。
- 低频部分,通过自动化构建的方式,产出一份可用的指定质量的数据。
- 长尾问题的相关理论研究:
- 齐普夫定律:文档中单词出现频次的一个定理,简单来说就是一篇文档中的单词按照词频排序后,词频P * 位序i,其值趋向于一个固定值。
附:文档的TF-IDF统计之python
docs = [] # 文档集合,二维数组,每个元素是一篇文档,其中已经切词完成。
def get_tfidf(docs):
"""
基于给定的文档,产出TF-IDF词典
"""
TF = defaultdict(int)
IDF = defaultdict(float)
[TF[word] += 1 for doc in docs for word in doc]
[IDF[word] += 1 for doc in docs for word in set(doc)]
IDF = {key: math.log(len(docs)/(value + 1)) for key, value in IDF.items()}
TF_IDF = {key: 1.0 * TF[key] * IDF[key] for key in TF}
return TF_IDF
网友评论