欢迎访问宙启技术站
智能推送

用Python的nltk.utilngrams()随机生成中文标题

发布时间:2024-01-18 18:56:20

import random

import nltk

from nltk.util import ngrams

# 中文标题样本

titles = [

    '最新研究揭示:大脑操纵我们的行为',

    '独家报道:科学家发现黑洞的真正形态',

    '惊人发现:猫能够预测地震',

    '世界首例:人工智能成功完成外科手术',

    '历史性突破:新药治愈癌症',

    '《股神》巴菲特重磅预测:今年投资机会将在这些领域',

    '最新数据显示:气候变化对地球环境造成了巨大影响',

    '科学家发现:外星生命最终将和我们相遇',

    '前所未见:神秘的古代文明遗址揭示出惊人真相',

    '惊奇发现:人类基因组中竟隐藏着未知的秘密'

]

# 分词

tokens = [list(title) for title in titles]

# 生成2-gram

n_grams = []

for token in tokens:

    n_grams.extend(list(ngrams(token, 2, pad_left=True, pad_right=True)))

# 随机生成中文标题

generated_titles = []

for _ in range(1000):

    title = ''

    while len(title) < 4 or len(title) > 20:

        title = ''.join(random.choice(n_grams)[1:])

    generated_titles.append(title)

# 打印随机生成的中文标题

for title in generated_titles:

    print(title)