如何使用Python制作基于pdf文件的问题生成器

问题描述 投票:0回答:3

我有很多这样的数学作业表。Image of worksheet page.(这是一页pdf的图像)
所以我想制作一个Python程序来随机从这些工作表中提取问题并将它们保存到pdf文件中。
我可以轻松地从 pdf 中取出整个文本,但我不知道如何区分问题,更大的问题是要评估的表达式,因为它们是方程的图像而不是 LATEX 形式,这是唯一的问题,我将管理除此之外的任何事情(例如将问题保存到 pdf 等)。
注意:我不是要求代码本身,而是要求提取问题的提示/想法。
谢谢你们的努力。

python python-3.x pdf pdf-generation
3个回答
0
投票

也许可以从句子释义器加上机器学习模型开始,将符号转化为书面语言形式。一旦你掌握了这一点,你就可以使用关键词频率分布来抓取网络。返回的平均问题现在被解释并浓缩为其一般相对概念,将给出一个新问题,该新问题旨在通过从人工智能已打包的这些一般新问题中随机选择来提供最佳的理解证明。如果您只想随机选择问题并逐字回答,那么相同的过程只需取出释义解析器并依赖于随机选择函数的抓取。如果我完全错过了球,请告诉我,但如果没有,希望这会有所帮助。


0
投票

已经有一段时间了。 然而,目前的建议是使用数学电子表格这一古老的陈词滥调。对于更简单的情况,您可以定义打印区域并通过一些 VBA/Python 公式设置随机输出。

好的一点是它有方程式编辑器或使用在线剪切识别进行数学计算。

enter image description here


0
投票

从 PDF 自动生成问题的分步指南

1.预处理 PDF

  • 提取文本:利用PyPDF2等库从PDF文档中提取文本内容。
  • 清理文本:通过删除不需要的字符、页眉和页脚来执行文本清理,并应用基本的文本规范化技术。

2.信息提取

  • 命名实体识别 (NER):使用 spaCy 或 NLTK 等库来识别关键实体,例如人员、位置和组织。
  • 词性 (POS) 标记:使用 spaCy 或 NLTK 等库识别词性(名词、动词、形容词)以理解句子结构。

3.问题生成方法

  • 基于规则的方法

    • 根据已识别的实体和关键字定义规则(例如,对于已识别的位置,“[位置]的首都是多少?”)。
    • 这种方法更简单,但需要手动操作来涵盖各种问题类型。
  • 使用 NLP 的生成式人工智能

    • 根据相似文档或问题生成数据集的问答对训练模型。
    • 探索 Transformers(例如 BART 模型)等库来生成问题。
    • 此方法需要更多的专业知识和计算资源,但提供了更大的灵活性。

4.问题过滤和排名

  • 过滤问题:删除多余或无意义的问题。
  • 对问题进行排名:根据问题与内容的相关性和所需的难度级别(例如,简单的回忆与更深入的理解)对问题进行排名。

入门资源

图书馆

教程

  • 使用机器学习的文本到考试生成器 (NLP)Medium 文章
  • 使用 Python 在问答 (NLP) 中开源生成人工智能YouTube 视频

额外提示

  • 从更简单的基于规则的方法开始进行初始开发。
  • 考虑目标文档的复杂性以及您希望生成的问题类型。
  • 探索预先训练的问题生成模型,以便更快地开始生成式 AI。

本结构化指南旨在帮助您利用传统的基于规则的方法和先进的 NLP 技术,自动化从 PDF 生成问题的过程。

© www.soinside.com 2019 - 2024. All rights reserved.