• 词之间的相关性--点互信息PMI算法


    1. PMI介绍

    点互信息算法是为了计算两个词语之间的相关性,公式如下:
    PMI ⁡ (  word  1 ,  word  2 ) = log ⁡ 2 [ p (  word  1  &   word  2 ) p (  word  1 ) p (  word  2 ) ] \operatorname{PMI}\left(\text { word }_{1}, \text { word }_{2}\right)=\log _{2}\left[\frac{\mathrm{p}\left(\text { word }_{1} \text { \& } \text { word }_{2}\right)}{\mathrm{p}\left(\text { word }_{1}\right) \mathrm{p}\left(\text { word }_{2}\right)}\right] PMI( word 1, word 2)=log2[p( word 1)p( word 2)p( word 1 &  word 2)]

    • p(word1 & word2)代表的是两个单词同时出现的概率(两个单词同时出现的次数/总词数的平方)
    • p(word1)是word1出现的概率(word1出现的次数/总词数)
    • p(word2)是word2出现的概率(word1出现的次数/总词数)

    结果:

    • PMI > 0;两个词语是相关的;值越大,相关性越强

    • PMI = 0;两个词语是统计独立的,不相关也不互斥

    • PMI < 0;两个词语是不相关的,互斥的

    2. PMI应用

    (1) 新词发现(判断一个词是否为词)
    参考 pmi新词发现

    (2)情感倾向点互信息算法(SO-PMI)
    选用一组褒义词(Pwords)跟一组贬义词(Nwords)作为基准词。若把一个词语word1跟Pwords的点间互信息减去word1跟Nwords的点间互信息会得到一个差值,就可以根据该差值判断词语word1的情感倾向
    S O (  phrase  ) = P M I (  phrase, ‘excellent’)  − P M I (  phrase, ‘poor’) 

    SO( phrase )=PMI( phrase, ‘excellent’) PMI( phrase, ‘poor’) " role="presentation" style="position: relative;">SO( phrase )=PMI( phrase, ‘excellent’) PMI( phrase, ‘poor’) 
    SO( phrase )=PMI( phrase, ‘excellent’) PMI( phrase, ‘poor’) 

    • SO(phrase)>0 正面倾向,是褒义词

    • SO(phrase)=0 为中性词

    • SO(phrase)<0 为贬义词

    参考

    点互信息算法

  • 相关阅读:
    [附源码]java毕业设计小区物业管理系统
    VMware ESXi 8.0 SLIC 2.6 & macOS Unlocker (Oct 2022 GA)
    go演示GRPC的用法
    PyQT 做图像分类GUI,生成exe文件
    Backblaze发布2023中期SSD故障数据质量报告
    [021] [STM32] FSMC外设详解及模拟驱动LCD编程
    树状数组总结
    【Playwright+Python】系列教程(一)环境搭建及脚本录制
    Hugging News #0428: HuggingChat 来啦
    Linux基础教程:9、linux进程管理(2)
  • 原文地址:https://blog.csdn.net/orangerfun/article/details/126377107