学习笔记,仅供参考
1.原理介绍
马尔科夫链是指,具有马尔科夫性质的离散随机变量的集合。马尔科夫性质是指,在随机变量的序列中,下一个状态的概率只由当前状态决定,与之前的状态无关。
借助于马尔科夫链实现数据增强的思想是:在同类文本中,先根据上下子词(文本序列中的每一个字)之间的关系形成马尔科夫链,在马尔科夫链中为每个子词随机找到下一个子词重新组合生成句子。
2.马尔科夫链简单实现
实现马尔科夫链的数据增强,具体代码:
# 制作马尔科夫链
def make_chain(text):
index = 1
chain = {
}
for i in text:
words = i.split()
# 获取前后词的关系,前词作Key,后词作Value
for word in words[index:]:
key = words[index - 1]
if key in chain:
chain[key].append(word)
else:
chain[key] = [word]
index += 1
index =