• Bag-of-words模型、TF-IDF模型


    Bag-of-words model (BoW model) 最早出现在NLP和IR(information retrieval)领域. 该模型忽略掉文本的语法和语序, 用一组无序的单词(words)来表达一段文字或一个文档. 近年来, BoW模型被广泛应用于计算机视觉中. 与应用于文本的BoW类比, 图像的特征(feature)被当作单词(Word).

    应用于文本的BoW model:

    Wikipedia[1]上给出了如下例子:

       John likes to watch movies. Mary likes too.
    
       John also likes to watch football games.

    根据上述两句话中出现的单词, 我们能构建出一个字典 (dictionary):

    {"John": 1, "likes": 2, "to": 3, "watch": 4, "movies": 5, "also": 6, "football": 7, "games": 8, "Mary": 9, "too": 10}

    该字典中包含10个单词, 每个单词有唯一索引, 注意它们的顺序和出现在句子中的顺序没有关联. 根据这个字典, 我们能将上述两句话重新表达为下述两个向量:

      [1, 2, 1, 1, 1, 0, 0, 0, 1, 1]
    
      [1, 1, 1, 1, 0, 1, 1, 1, 0, 0]

    这两个向量共包含10个元素, 其中第i个元素表示字典中第i个单词在句子中出现的次数. 因此BoW模型可认为是一种统计直方图 (histogram). 在文本检索和处理应用中, 可以通过该模型很方便的计算词频.

     


     

    tf-idf模型

    目前,真正在搜索引擎等实际应用中广泛使用的是tf-idf模型。tf-idf模型的主要思想是:如果词w在一篇文档d中出现的频率高,并且在其他文档中很少出现,则认为词w具有很好的区分能力,适合用来把文章d和其他文章区分开来。该模型主要包含了两个因素:

    1) 词w在文档d中的词频tf (Term Frequency),即词w在文档d中出现次数count(w, d)和文档d中总词数size(d)的比值

    tf(w,d) = count(w, d) / size(d) 

    2) 词w在整个文档集合中的逆向文档频率idf (Inverse Document Frequency),即文档总数n与词w所出现文件数docs(w, D)比值的对数:

    idf = log(n / docs(w, D)) 

    tf-idf模型根据tf和idf为每一个文档d和由关键词w[1]…w[k]组成的查询串q计算一个权值,用于表示查询串q与文档d的匹配度

    tf-idf(q, d) 
    = sum { i = 1..k | tf-idf(w[i], d) } 
    = sum { i = 1..k | tf(w[i], d) * idf(w[i]) } 

    http://coolshell.cn/articles/8422.html

  • 相关阅读:
    表空间的改变
    特殊字符转换
    oracle下创建临时表
    约束
    删除数据库记录的同时删除磁盘文件
    数据文件
    级联删除case
    oracle net连接方式

    在Oracle服务器端配置监听器
  • 原文地址:https://www.cnblogs.com/ljygoodgoodstudydaydayup/p/5969417.html
Copyright © 2020-2023  润新知