【自然语言处理共现矩阵应用】共现矩阵用于表示文本中词语之间的共现关系

代码实现了共现矩阵的构建,共现矩阵用于表示文本中词语之间的共现关系。下面是代码实现原理的详细解释:

create_co_occurrence_matrix 函数:

这个函数接受一个文本语料 corpus 和一个窗口大小 window_size。
corpus 是一个包含多个句子的列表,每个句子是一个字符串。
window_size 参数表示在一个窗口内的词语将会被认为是共现的,默认为2,意味着在一个词的左右各两个位置内的词都被认为是共现的。
函数返回一个共现矩阵和词汇表。
创建词汇表和共现矩阵的空字典:

首先,定义了一个空的词汇表 vocabulary 和一个空的共现矩阵字典 co_occurrence_matrix。词汇表用于存储语料库中出现的所有唯一词语,而共现矩阵字典用于存储词语对的共现次数。
遍历每个句子:

对于给定的每个句子 sentence,我们将其拆分为单词列表 words。
更新词汇表:

将句子中的所有词语添加到词汇表中,通过 vocabulary.update(words) 实现。
构建共现矩阵字典:

对于每个词语 word 在当前句子中,以及在与之共现的其他词语 co_word,通过一个双重循环遍历窗口内的词语。
对于每一对 (word, co_word),我们在共现矩阵字典 co_occurrence_matrix 中增加它们的共现计数,通过 co_occurrence_matrix[(word, co_word)] = co_occurrence_matrix.get((word, co_word), 0) + 1 实现。
构建共现矩阵:

在词汇表上构建一个二维列表 matrix,其大小为 len(vocabulary) * le

最近更新

  1. TCP协议是安全的吗?

    2024-03-18 06:18:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-18 06:18:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-18 06:18:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-18 06:18:02       20 阅读

热门阅读

  1. 深度学习——yolov5的txt和xml互转

    2024-03-18 06:18:02       18 阅读
  2. Python基础学习(12)环境搭建/ATM1

    2024-03-18 06:18:02       21 阅读
  3. 控制工程学 en 2

    2024-03-18 06:18:02       19 阅读
  4. ssh命令——安全远程连接服务

    2024-03-18 06:18:02       20 阅读
  5. 《C缺陷和陷阱》-笔记(5)

    2024-03-18 06:18:02       18 阅读