从给定的一组单词组成一个有意义的句子[关闭]

2024-01-10

我正在开发一个程序,需要根据给定的单词集创建一个语法正确的句子。在这里,我将向程序传递一个字符串列表的输入,我的输出应该是用这些单词和其他一些必要的单词组成的有意义的句子。例如。

Input: {'You' , 'House' , 'Beautiful'}
Output: 'Your house is beautiful' (or) 'you house is beautiful' 
Input: {'Father' , 'Love' , 'Child'}
Output: 'The father loves the child'

如何使用 NLTK 和(或)机器学习来实现这一点?

关于我应该如何解决这个问题有什么建议吗?我已经准备好接受最疯狂的想法。谢谢! :)


在这种情况下,您可以应用n-gram模型 https://en.wikipedia.org/wiki/N-gram。这个想法就是一句话

我非常喜欢NLP。

得到以下 3-gram:

  1. <s> I like
  2. I like NLP
  3. like NLP very
  4. NLP very much
  5. very much </s>

然后你把它看作一个概率模型P(word3 | word1 word2).

所以你的工作将是:

  1. 获取大量 n 个单词的数据(例如我认为https://books.google.com/ngrams https://books.google.com/ngrams有下载选项)
  2. 对于给定的一组单词,查找仅包含这些单词的所有 n 元语法
  3. 找出最有可能的组合。

请注意:

  • n 应至少为 3
  • n 越大,您就越有可能必须“back off https://en.wikipedia.org/wiki/Katz%27s_back-off_model“因为你没有数据(但 n 元语法可能存在并且有意义)
  • 即使 n=5 也已经是非常多的数据了
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从给定的一组单词组成一个有意义的句子[关闭] 的相关文章

随机推荐

  • 错误消息无法打开包含文件:'gxall.h':没有这样的文件或目录

    我正在尝试构建一些旧的 Visual C 代码 当我这样做时 我收到此错误消息 fatal error C1083 Cannot open include file gxall h No such file or directory 我该如
  • AWS Lambda 任务在 6.00 秒后超时

    我正在使用无服务器框架 我的 Lambda 函数连接到 DynamoDB 表以更新表中的项目 表的读写容量单位为 5 并且 auto scaling 被禁用 AWS Lambda 函数分配了 128MB 内存 我使用 Jmeter 进行性能
  • C++ 中的对话框未接收到某些击键

    当我 最终 学习用 C 编写 Windows 应用程序时 我偶然发现了这一点 我有一个用它创建的对话框CreateDialog 我还有一个默认按钮 然而 每次我按下TAB or ENTER 什么也没有发生 控制焦点也没有改变 默认按钮也没有
  • 使用 TPL 时避免窗口 (WPF) 冻结

    我正在构建一个 WPF 它有一个在 sql server 中执行 sql 查询的按钮 该查询可能需要很长时间才能运行 我想使用 TPL 来做到这一点 这段代码 var result Task Factory StartNew gt comm
  • 使用 PDO 有效获取带有 WHERE 子句的 SELECT 查询返回的行数

    有关于SO的大量讨论 https stackoverflow com search q pdo 20select 20number 20of 20rows 20 5Bmysql 5D关于如何获取运行时返回的行数SELECT使用 PDO 进行
  • 在应用程序中,活动和服务是否会在同一进程中运行?

    面试问题 在一个应用程序中 Activity和Service是运行在同一个进程中还是不同的进程中 我的答案是 在同一过程中 下一个问题 如果是的话 Activity和Service是如何同时运行的 我的答案是 操作系统将负责执行 坦白说 我
  • 将 bigdecimal 转换为 double(不带指数格式)

    我正在对高十进制精度 BigDecimal 对象进行计算 我正在使用需要双精度参数的第三方库 当我尝试将其转换为 double 时 我得到指数格式的值而不是小数 BigDecimal 0 000035000000000 Double 3 5
  • Winforms MDI“桌面”区域边界

    默认的MDI父控件有一个很大的 桌面 区域 可以显示多个子窗体 用户可以将表单拖动到此桌面区域的边缘 以便大部分子表单脱离屏幕 然后 MDI 父级中会出现一个滚动条 我不喜欢这个功能 有没有办法锁定桌面区域的边缘 以便子窗体保持完全可见 我
  • Woocommerce 以编程方式添加产品属性及其相应的值

    我正在构建一个获取产品的脚本 但我陷入了以编程方式添加属性的部分 所以基本上我想检查属性是否存在 如果不存在则添加它 然后检查它的价值是否存在 如果不存在 他们会添加它的价值 并将所有内容附加到我的产品上 这是我获得产品的格式 attrib
  • D 语言是否有多个标准库以及 GC 的问题?

    我想知道 D 有多成熟和稳定 以及它是否可以很好地替代 C C 我知道目前有两个标准库 Phobos 和 Tango 难道还是没有统一的标准库吗 另外 我不久前听说这些语言在 GCed 非 GCed 代码的边界上存在问题 我在D网站上找不到
  • Kotlin 问题“ExpandableRecyclerAdapter 类需要一个类型参数”

    RecyclerAdapter ViewHolder 出现问题 abstract class ExpandableRecyclerAdapter
  • 我应该直接调用 object.__str__() 吗?

    我正在用Python写一个类 我正在写一个 str 函数 以便我的打印语句可以打印该类实例的字符串表示形式 是否有理由直接做这样的事情 myObj Foo params doSomething myObj str 感觉既然还有其他更简洁的方
  • init CBCentralManager:表达式类型不明确,没有更多上下文

    尝试在 Swift 4 2 项目中初始化 CBCentralManager 获取评论中显示的错误 import CoreBluetooth class SomeClass NSObject CBCentralManagerDelegate
  • 在 Visual Studio 上部署到 Windows Phone 10 失败

    发生了很多事情 我不知道从哪里开始 说真的 这不是更简单吗 编辑 这里有人知道我如何联系微软来告诉这个吗 或者甚至 有人可以告诉他们这个问题吗 我有最后一个 Windows 10 桌面 还有 Windows Phone 10 0 10512
  • 从 Facebook 返回的奇怪访问令牌

    我一直在开发 Facebook 应用程序 并且已经使用 Facebook Graph Toolkit 几个月了 一直以来 我的代码都在工作 我可以获得访问令牌 我可以使用它们来检索 Facebook 用户详细信息 发布新闻源等 现在 新的问
  • 如何在所有浏览器上从 javascript 变量下载文本?

    我需要一个函数将 javascript 变量中的字符串下载到文本文件 5 7MB 中 该功能应该跨浏览器工作 我尝试过制作这样的下载功能 但它在 Chrome 上不起作用 FireFox 会打开 保存 对话框 但 Chrome 不会 另外
  • IncationTargetException.getCause() 何时为 null?

    根据javadocs http docs oracle com javase 7 docs api java lang reflect InvocationTargetException html getCause 28 29 Invoca
  • Hibernate 使用 JPA 存储库获取配置文件

    我正在使用 Hibernate 和 JPA 存储库 我想知道为什么我无法设置 FetchProfiles 并将它们与这样的存储库一起使用 entityManager unwrap Session class enableFetchProfi
  • 在ABAP中使用自定义消息引发异常

    我正在编写一个通过 RFC 调用的函数 我想找到最简单的方法来在 ABAP 中使用自定义消息引发异常 如果这可以尽可能短地完成 并且可以在一行上完成 那就太好了 我希望它用于调试 而不是用于运行生产代码 背景 过去我使用Python编程语言
  • 从给定的一组单词组成一个有意义的句子[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在开发一个程序 需要根据给定的单词集创建一个语法正确的句子 在这里 我将向程序传递一个字符串列表的输入 我的输出应该是用这些单词和