在NLTK 2.0中,可以使用nltk.parse.generate生成all可能的sentences for a given grammar。

这段代码定义了一个函数,它应该基于(p)CFG中的产生式规则生成一个句子。# This example uses choice to choose from possible expansions

from random import choice

# This function is based on _generate_all() in nltk.parse.generate

# It therefore assumes the same import environment otherwise.

def generate_sample(grammar, items=["S"]):

frags = []

if len(items) == 1:

if isinstance(items[0], Nonterminal):

for prod in grammar.productions(lhs=items[0]):

frags.append(generate_sample(grammar, prod.rhs()))

else:

frags.append(items[0])

else:

# This is where we need to make our changes

chosen_expansion = choice(items)

frags.append(generate_sample,chosen_expansion)

return frags

要使用PCFG中的权重,显然需要使用比choice()更好的采样方法,后者隐式地假定当前节点的所有扩展都是可均衡的。

python自动生成中文句子_如何使用NLTK从归纳语法生成句子?相关推荐

  1. python自动排版公众号_那些排版好看的公众号,都在偷偷使用这些神器

    本文首发于gzh:等我遇见汝 公众号自带的编辑器能力有限,为了让公众号的排版更好看,不少人会使用第三方的编辑器,如135.秀米等. 但这些第三方编辑器用的人多了,难免会「撞衫」,不能形成自己的个人风格 ...

  2. python 折线图中文乱码_彻底解决 Python画图中文乱码问题--Pyplotz组件

    1 源起 自从开始学习Python,就非常喜欢用来画图.一直没有需求画要中文显示信息的图,所以没有配置Python中文的环境.由于昨天就需要画几十个形式相同,只是数据不同的图,并且需要显示中文信息.如 ...

  3. python可不可以用中文编写_震惊!!!python可以用中文来写代码

    说明: 偶尔间试了一下,python可以用中文来写代码,除了一些python内置函数,和运算符不能用中文外,其它的比如新定义的类名.函数名.变量名,甚至是函数间传的参数都可以用中文来代替.这是国人全民 ...

  4. gamit怎么利用glred生成测站时间序列_香侬读 | 按什么套路生成?基于插入和删除的序列生成方法

    "香侬读"是香侬科技(Shannon.AI)推出的栏目,每周解读NLP或前沿.或经典的论文,捕捉时下最新见解,探究未来发展趋向.欢迎大家广泛讨论.交流,也欢迎推荐优秀的文章与我们一 ...

  5. 生成窄带信号_房间冲激响应RIR原理与模拟生成方法

    论文"Room Impulse Response Generator"的阅读笔记.下面的链接为原论文. rir_generator.pdf 530.3K · 百度网盘 这篇论文主要 ...

  6. python随机生成中文字符串_利用python3随机生成中文字符的实现方法

    前言 运行环境在Python3.6下,Python2的解决方案网上有很多.,想学习python2实现的朋友们可以参考这篇文章://www.jb51.net/article/34884.htm,下面来一 ...

  7. python自动导出数据脚本_使用python生成一个导出数据库的bat脚本文件的示例代码...

    这篇文章分享使用python生成一个导出数据库的bat脚本文件的示例代码 实例如下:# 环境: python3.x def getExportDbSql(db, index): # 获取导出一个数据库 ...

  8. python随机生成中文句子_python – 如何使用NLTK从诱导语法中生成句子?

    在NLTK 2.0中,您可以使用nltk.parse.generate生成所有可能的 sentences for a given grammar. 该代码定义了一个基于(P)CFG中的生产规则生成单个 ...

  9. latex自动生成中文目录_自动生成工作表目录三种方法,看哪种适合你?

    如果在一个工作簿内有很多工作表需要去维护管理,一个个的查找显然是很麻烦的,建立一个工作表的导航目录无疑是最便捷的方法. 下面介绍三种生成工作表目录的方法: 一.利用宏表函数生成可导航目录 第1步:定义 ...

最新文章

  1. C++ 虚函数个人理解
  2. Navicat连接出现了2003-Can’t connect to MySQL server on ‘localhost’…(已解决)
  3. 服务器系统怎么做ghost备份,手动ghost备份系统的具体操作步骤【图文教程】
  4. [原创]egret的WebView实现(基于egret2.5)
  5. iphone控制中心自定义没有计算机,科技:如何在iOS上使用和自定义控制中心
  6. 打工人颤抖!蓝色光标宣布:全面用 AI 代替外包,股价一度飙涨 18%!
  7. 数据封包解包协议之TCP封包解包
  8. 极米h3s和坚果j10、当贝f3三款投影实测对比来了!
  9. 这份 Android 性能优化手册 对标大厂!
  10. 2020年64种最佳免费WordPress博客主题
  11. 持之以恒,不仅仅是说说而已
  12. 在fluent计算时如何设置非稳态时的时间步长
  13. 4u机架式服务器性能如何,兼顾成本与性能 4U机架式服务器再曝光
  14. 服务器基础知识:包含基本概念,作用,服务器选择,服务器管理等(学习来自米拓建站)
  15. 转换器(Converter)Struts 2.0中的魔术师
  16. rk3368H android7.1 固定竖屏参数修改
  17. 面试总结(一)北京亿信华辰
  18. 高等数学笔记-乐经良老师-第五章-积分(Ⅰ)-定积分与不定积分-第三节-微积分基本定理
  19. 【电子电路】简易电子负载
  20. Codeforces 1213G

热门文章

  1. 设计模式:(组合模式)
  2. 通过jquery js 实现幻灯片切换轮播效果
  3. Pytorch实现LSTM网络——实现词性判别
  4. 随身WiFi部署个人博客:从入门到入土
  5. WTI原油周度价格历史曲线
  6. 小马哥--高仿苹果7p 主板型号9900-875AQ0-A 真实6571芯片刷机拆机主板与开机界面图
  7. C语言程序设计丁峻岭,C语言程序设计
  8. Charles使用技巧
  9. ShaderJoy —— “水彩画”【GLSL】
  10. 在Visual Studio 中找不到Microsoft Word 11.0 Object Library的解决办法