ITPub博客

首页 > 应用开发 > Python > 玩点好玩的Python:使用马尔可夫模型自动生成文章

玩点好玩的Python:使用马尔可夫模型自动生成文章

原创 Python 作者:python交流 时间:2019-03-19 22:30:20 0 删除 编辑

前言

不想说啥了...看代码

首先导入库

import nltkimport random

主体代码

file = open('Text/Walden.txt', 'r')
walden = file.read()
walden = walden.split()def makePairs(arr):
    pairs = []    for i in range(len(arr)):        if i < len(arr) - 1:
            temp = (arr[i], arr[i + 1])
            pairs.append(temp)    return pairsdef generate(cfd, word='the', num=500):
    for i in range(num):        # 用正确计数所示的单词组成一个数组
        arr = []        for j in cfd[word]:            for k in range(cfd[word][j]):
                arr.append(j)
        print(word, end=' ')        # 从条件分布中随机选择单词
        word = arr[int((len(arr)) * random.random())]
pairs = makePairs(walden)
cfd = nltk.ConditionalFreqDist(pairs)
generate(cfd)

嗯,就这样



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69912078/viewspace-2638799/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
上路:9458 中路:79 下来025 有干货

注册时间:2019-03-04

  • 博文量
    188
  • 访问量
    236518