CN113204945A - 应用题批改方法、装置、计算机可读介质及电子设备 - Google Patents
应用题批改方法、装置、计算机可读介质及电子设备 Download PDFInfo
- Publication number
- CN113204945A CN113204945A CN202110524509.6A CN202110524509A CN113204945A CN 113204945 A CN113204945 A CN 113204945A CN 202110524509 A CN202110524509 A CN 202110524509A CN 113204945 A CN113204945 A CN 113204945A
- Authority
- CN
- China
- Prior art keywords
- answer
- tree
- tree structure
- target
- text content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本公开涉及一种应用题批改方法、装置、计算机可读介质及电子设备。方法包括:对待批改的答题图像进行文本识别,得到待批改的答题图像中包含的应用题的题干文本和作答文本内容;确定题干文本对应的目标解答算式;根据目标解答算式,判定作答文本内容是否有误;若作答文本内容有误,则确定作答文本内容中的错误字符;根据作答文本内容有误的判定结果,对待批改的答题图像中包含的应用题进行批改,并在待批改的答题图像上标注错误字符。这样,可实现应用题的快速自动批改,节省了人力,并且,还可以在待批改的答题图像上标注作答过程中的错误字符,便于学生及时定位错因、查找知识点盲区,从而提升学习效率。
Description
技术领域
本公开涉及人工智能技术领域,具体地,涉及一种应用题批改方法、装置、计算机可读介质及电子设备。
背景技术
中小学生数学试题中,应用题是比较重要的一种题型,是综合考察学生阅读理解、数学建模、逻辑计算等一系列复合能力的一种题型,因此,它被广泛的出现在试卷考察、作业任务、日常练习等场景中。在教师教学过程中,也会大量进行应用题批改工作,在对整个班级、甚至是整个年级做应用题批改的时候,经常会遇到相同应用题反复批改的情况,对教师而言,是一种大批量的重复性工作。由此,基于人工智能技术的应用题自动批改应运而生,可大大的减轻教师的工作量,提升效率,使其以更好的状态投入到教学工作中。但现阶段的应用题自动批改操作仅能够给出对错判定结果,这样,当判定结果为错时,需要学生自己查找错因,相对比较耗时,学习效率不高。
发明内容
为了克服相关技术中存在的问题,本公开提供一种应用题批改方法、装置、计算机可读介质及电子设备。
为了实现上述目的,第一方面,本公开提供一种应用题批改方法,包括:
对待批改的答题图像进行文本识别,得到所述待批改的答题图像中包含的应用题的题干文本和作答文本内容;
确定所述题干文本对应的目标解答算式;
根据所述目标解答算式,判定所述作答文本内容是否有误;
若所述作答文本内容有误,则确定所述作答文本内容中的错误字符;
根据所述作答文本内容有误的判定结果,对所述待批改的答题图像中包含的应用题进行批改,并在所述待批改的答题图像上标注所述错误字符。
可选地,所述根据所述目标解答算式,判定所述作答文本内容是否错误,包括:
从所述作答文本内容中提取作答结果;
若所述作答结果与所述目标解答算式的结果不一致,则确定所述作答文本内容有误。
可选地,所述确定所述作答文本内容中的错误字符,包括:
根据所述目标解答算式和所述作答文本内容,确定所述作答文本内容中的错误字符。
可选地,所述目标解答算式包括一个算式,所述根据所述目标解答算式和所述作答文本内容,确定所述作答文本内容中的错误字符,包括:
生成与所述目标解答算式对应的第一树形结构、与所述作答文本内容对应的至少一个第二树形结构;
对所述第一树形结构和任一所述第二树形结构分别进行标准化处理;
将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符。
可选地,所述将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符,包括:
按照第一预设遍历顺序遍历标准化处理后所得的第一树形结构,得到第一遍历字符串,按照所述第一预设遍历顺序遍历标准化处理后所得的第二树形结构,得到第二遍历字符串;
将所述第二遍历字符串与所述第一遍历字符串进行逐位匹配,并将所述第二遍历字符串中、与所述第一遍历字符串匹配失败的字符确定为错误字符。
可选地,所述将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符,包括:
按照第二预设遍历顺序同步遍历标准化处理后所得的第二树形结构和标准化处理后所得的第一树形结构,以确定当前遍历到的两个字符是否一致;
若当前遍历到的两个字符不一致,则停止遍历,并将该标准化处理后所得的第二树形结构中、当前遍历到的字符确定为错误字符。
可选地,所述目标解答算式包括一个算式,所述根据所述目标解答算式,判定所述作答文本内容是否错误,还包括:
若所述作答结果与所述目标解答算式的结果一致,则生成与所述目标解答算式对应的第一树形结构、与所述作答文本内容对应的至少一个第二树形结构;
对所述第一树形结构和每一所述第二树形结构分别进行标准化处理;
将标准化处理后所得的第一树形结构与标准化处理后所得的每一第二树形结构分别进行匹配,并根据匹配结果,确定所述作答文本内容是否错误。
可选地,所述根据匹配结果,确定所述作答文本内容是否错误,包括:
若所述标准化处理后所得的每一第二树形结构中不存在与所述标准化处理后所得的第一树形结构完全匹配的树形结构,则确定所述作答文本内容错误;
若所述标准化处理后所得的每一第二树形结构中存在与所述标准化处理后所得的第一树形结构完全匹配的树形结构,则确定所述作答文本内容正确。
可选地,在所述作答结果与所述目标解答算式的结果一致的情况下,所述确定所述作答文本内容中的错误字符,包括:
将所述标准化处理后所得的任一第二树形结构中、与所述标准化处理后所得的第一树形结构匹配失败的节点对应的字符确定为所述作答文本内容中的错误字符。
可选地,所述作答文本内容包括多个作答算式;
所述生成与所述作答文本内容对应的至少一个第二树形结构,包括:
根据所述多个作答算式的书写顺序,生成与所述多个作答算式对应的至少一个第二树形结构。
可选地,所述根据所述多个作答算式的书写顺序,生成与所述多个作答算式对应的至少一个第二树形结构,包括:
按照所述书写顺序,将所述多个作答算式依次进行合并,得到所述多个作答算式对应的至少一个综合算式;
针对每一所述综合算式,根据所述综合算式,生成所述综合算式对应的树形结构,作为所述第二树形结构。
可选地,所述对所述第一树形结构进行标准化处理,包括以下中的任一者:
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果小于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数小于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换,其中,所述目标运算符为加法运算符或乘法运算符;
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果小于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数大于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换;
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果大于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数小于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换;
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果大于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数大于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换。
可选地,所述目标解答算式包括一个算式,所述确定所述题干文本对应的目标解答算式,包括:
对预设算式中的所有字符进行掩膜处理,得到掩膜算式;
将所述题干文本和所述掩膜算式进行拼接,得到拼接字符串;
将所述拼接字符串输入到预先训练好的解题模型中,得到用于解答所述应用题的目标算术表达式;
计算所述目标算术表达式的结果,并将所述目标算术表达式、等号以及所述目标算术表达式的结果依次连接,得到所述题干文本对应的目标解答算式,其中,所述目标解答算式包含的字符数量小于或等于所述预设算式包含的字符数量。
可选地,所述解题模型通过以下方式训练得到:
获取历史应用题的历史题干文本以及用于解答所述历史应用题的标注解答算式;
对所述历史题干文本中的部分字符和所述标注解答算式中的部分字符进行掩膜处理;
将掩膜处理后所得的历史题干文本和掩膜处理后所得的标注解答算式进行拼接,得到历史字符串;
通过将所述历史字符串作为所述解题模型的输入,将所述标注解答算式作为所述解题模型的目标输出的方式进行模型训练,以得到所述解题模型。
第二方面,本公开提供一种应用题批改装置,包括:
文本识别模块,用于对待批改的答题图像进行文本识别,得到所述待批改的答题图像中包含的应用题的题干文本和作答文本内容;
第一确定模块,用于确定所述文本识别模块得到的所述题干文本对应的目标解答算式;
判定模块,用于根据所述第一确定模块确定出的所述目标解答算式,判定所述作答文本内容是否有误;
第二确定模块,用于若所述判定模块判定所述作答文本内容有误,则确定所述作答文本内容中的错误字符;
批改模块,用于根据所述判定模块得到的所述作答文本内容有误的判定结果,对所述待批改的答题图像中包含的应用题进行批改,并在所述待批改的答题图像上标注所述第二确定模块确定出的所述错误字符。
第三方面,本公开提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面提供的所述方法的步骤。
第四方面,本公开提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面提供的所述方法的步骤。
在上述技术方案中,首先对待批改的答题图像进行文本识别,得到待批改的答题图像中包含的应用题的题干文本和作答文本内容;之后,确定题干文本对应的目标解答算式,并根据该目标解答算式,判定作答文本内容是否有误;若作答文本内容有误,则确定作答文本内容中的错误字符;最后,根据作答文本内容有误的判定结果,对待批改的答题图像中包含的应用题进行批改,并在待批改的答题图像上标注错误字符。这样,可实现应用题的快速自动批改,节省了人力,并且,还可以在待批改的答题图像上标注作答过程中的错误字符,便于学生及时定位错因、查找知识点盲区,从而提升学习效率。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种应用题批改方法的流程图。
图2是根据一示例性实施例示出的一种解题模型训练方法的流程图。
图3A是根据一示例性实施例示出的一种第一树形结构的示意图。
图3B是根据一示例性实施例示出的一种对图3A中所示的第一树形结构进行标准化处理后所得的第一树形结构的示意图。
图3C是根据另一示例性实施例示出的一种对图3A中所示的第一树形结构进行标准化处理后所得的第一树形结构的示意图。
图3D是根据另一示例性实施例示出的一种对图3A中所示的第一树形结构进行标准化处理后所得的第一树形结构的示意图。
图4A是根据一示例性实施例示出的一种第二树形结构的示意图。
图4B是根据一示例性实施例示出的一种对图4A中所示的第二树形结构进行标准化处理后所得的第二树形结构的示意图。
图5是根据一示例性实施例示出的一种应用题批改装置的框图。
图6是根据一示例性实施例示出的一种电子设备的框图。
图7是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图1是根据一示例性实施例示出的一种应用题批改方法的流程图。如图1所示,该方法包括S101~S105。
在S101中,对待批改的答题图像进行文本识别,得到待批改的答题图像中包含的应用题的题干文本和作答文本内容。
在本公开中,可以首先采用Mask-RCNN、SSD、Cascade-RCNN、RetinaNet等模型从待批改答题图像中提取出应用题区域,其中,应用题区域包括应用题的题干和作答内容,然后通过文本检测模块(例如,基于可微分二值化的实时场景文本检测模型(Real-time SceneText Detection with Differentiable Binarization,DBNet)、RCNN、CTPN、EAST、Seglink,Textbox、Textbox++、PSEnet等)对上述应用题区域进行文本识别,得到待批改的答题图像中包含的应用题的题干文本和作答文本内容。
在S102中,确定题干文本对应的目标解答算式。
在本公开中,目标解答算式可以为用于完整正确解答上述待批改的答题图像中包含的应用题的一个综合算式,即目标解答算式包括一个算式,也可以包括多个具有逻辑关系的多个算式。
在S103中,根据目标解答算式,判定作答文本内容是否有误。
在S104中,若作答文本内容有误,则确定作答文本内容中的错误字符。
在S105中,根据作答文本内容有误的判定结果,对待批改的答题图像中包含的应用题进行批改,并在待批改的答题图像上标注错误字符。
在本公开中,可以通过突出显示错误字符、画矩形框或者圆圈等方式标注错误字符。
在上述技术方案中,首先对待批改的答题图像进行文本识别,得到待批改的答题图像中包含的应用题的题干文本和作答文本内容;之后,确定题干文本对应的目标解答算式,并根据该目标解答算式,判定作答文本内容是否有误;若作答文本内容有误,则确定作答文本内容中的错误字符;最后,根据作答文本内容有误的判定结果,对待批改的答题图像中包含的应用题进行批改,并在待批改的答题图像上标注错误字符。这样,可实现应用题的快速自动批改,节省了人力,并且,还可以在待批改的答题图像上标注作答过程中的错误字符,便于学生及时定位错因、查找知识点盲区,从而提升学习效率。
下面针对上述S102中的确定题干文本对应的目标解答算式的具体实施方式进行详细说明。
在一种实施方式中,可以通过题库搜索的方式来确定与上述题干文本对应的目标解答算式。
由于中小学数学应用题在原始题目的基础上常常会出现很多变体,导致题库无法收录所有变体题目。这样,当所要批改的应用题未被题库收录时,则无法通过题库搜索的方式获取到目标解答算式,并且,题库构建也需要耗费大量人力。为此,可以基于解题模型,自动确定题干文本对应的目标解答算式,而无需依赖题库,节省了题库构建成本,并且,能够适应于同一种应用题的各类不同变体的批改,更加灵活。具体来说,在另一种实施方式中,目标解答算式为用于完整正确解答上述待批改的答题图像中包含的应用题的一个综合算式,即目标解答算式包括一个算式,此时,可以通过以下步骤来确定目标解答算式:
首先,对预设算式中的所有字符进行掩膜处理,得到掩膜算式;
然后,将题干文本和掩膜算式进行拼接,得到拼接字符串;
接下来,将拼接字符串输入到预先训练好的解题模型中,得到用于解答应用题的目标算术表达式;
最后,计算目标算术表达式的结果,并将目标算术表达式、等号以及目标算术表达式的结果依次连接,得到题干文本对应的目标解答算式,其中,目标解答算式包含的字符数量小于或等于预设算式包含的字符数量。
其中,上述解题模型可以例如是由基于深度自注意力变换网络的双向编码表示(Bidirectional Encoder Representation from Transformers,BERT)和通用预训练语言模型(Unified Language Model Pre-training for Natural Language Understandingand Generation,UniLM)构成的序列到序列模型。
并且,可以通过图2中所示的S201~S204来训练得到上述解题模型。
在S201中,获取历史应用题的历史题干文本以及用于解答历史应用题的标注解答算式。
在S202中,对历史题干文本中的部分字符和标注解答算式中的部分字符进行掩膜处理。
示例地,可以随机掩膜历史题干文本中的部分字符以及标注解答算式中的部分字符。
在S203中,将掩膜处理后所得的历史题干文本和掩膜处理后所得的标注解答算式进行拼接,得到历史字符串。
在S204中,通过将历史字符串作为解题模型的输入,将标注解答算式作为解题模型的目标输出的方式进行模型训练,以得到解题模型。
下面针对上述S103中的根据目标解答算式,判定作答文本内容是否错误的具体实施方式进行详细说明。具体来说,可以先从作答文本内容中提取作答结果;之后,判断该作答结果与目标解答算式的结果是否一致;若作答结果与目标解答算式的结果不一致,则确定作答文本内容有误;若作答结果与目标解答算式的结果一致,则可以通过以下步骤(1)~步骤(3)来确定作答文本内容是否有误:
(1)生成与目标解答算式对应的第一树形结构、与作答文本内容对应的至少一个第二树形结构,其中,目标解答算式包括一个算式。
(2)对第一树形结构和每一第二树形结构分别进行标准化处理;
(3)将标准化处理后所得的第一树形结构与标准化处理后所得的每一第二树形结构分别进行匹配,并根据匹配结果,确定作答文本内容是否错误。
其中,对第一树形结构、每一第二树形结构进行标准化处理,可以保证后续匹配结果的准确性,从而准确判定作答文本内容是否有误。
下面针对上述从作答文本内容中提取作答结果的具体实施方式进行纤细说明。
在一种实施方式中,作答文本内容包括一个作答算式,即作答文本内容为用于完整解答上述待批改的答题图像中包含的应用题的一个综合算式,此时,可以将该作答算式中、等号右侧的内容作为作答结果。
在另一种实施方式中,上述作答文本内容包括多个作答算式,其中,多个作答算式具有逻辑先后顺序,此时,可以将多个作答算式中、逻辑顺序为最后的算式的等号右侧的结果作为作答结果。
示例地,上述待批改的答题图像中包含的应用题的题干文本为“汽车一次可以运2箱货物,小货车一次可以运3箱货物,大卡车一次可以运的货物是汽车和小货车一起运送货物的5倍,大型货车比大卡车一次少运6箱,问,大型货车一次运多少箱货物?”,作答文本内容为:“2+3=5,5*6=30,30-6=24”。可见,作答文本内容包括三个作答算式,其中,该三个作答算式的逻辑先后顺序依次为“2+3=5”、“5*6=30”、“30-6=24”,可见,作答算式“30-6=24”为逻辑顺序为最后的算式,因此,将该作答算式“30-6=24”等号右侧的结果“24”作为作答结果。
下面针对上述步骤(1)中的生成与目标解答算式对应的第一树形结构、与作答文本内容对应的至少一个第二树形结构的具体实施方式进行详细说明。
由于目标解答算式包括一个算式,因此,可以直接按照从左到右遍历该目标解答算式的方式,或者按照从右到左遍历该目标解答算式的方式,生成相应的第一树形结构。
在作答文本内容包括一个作答算式时,可以按照从左到右遍历该作答文本内容的方式,或者按照从右到左遍历该作答文本内容的方式,生成该作答文本内容对应的一个第二树形结构。
在作答文本内容包括多个作答算式时,可以根据多个作答算式的书写顺序,生成与多个作答算式对应的至少一个第二树形结构。具体来说,可以按照书写顺序,将多个作答算式依次进行合并,得到多个作答算式对应的至少一个综合算式,之后,针对每一综合算式,根据该综合算式,生成相应的树形结构,作为第二树形结构。
其中,具体可以通过以下方式来生成至少一个综合算式:判断多个作答算式中书写顺序最早的作答算式的相邻书写顺序的作答算式的等式左侧部分各数值中、是否存在与该书写顺序最早的作答算式的结果相同的数值;若存在相同的一个数值,则将上述相邻书写顺序的作答算式中、该相同的数值替换为“该书写顺序最早的作答算式的等号左侧的内容,并根据逻辑运算关系,确定是否为替换的内容添加括号,若需要添加,则在替换的内容的左侧添加左括号、右侧添加右括号;将该书写顺序最早的作答算式从上述多个作答算式中剔除,返回上述判断多个作答算式中书写顺序最早的作答算式的相邻书写顺序的作答算式的等式左侧部分各数值中、是否存在与该书写顺序最早的作答算式的结果相同的数值的步骤,直到作答算式的数量达到1时为止。若存在相同的N个数值,其中,N为大于1的自然数,则针对相同的N个数值中的每一数值:将上述相邻书写顺序的作答算式中的该数值替换为该书写顺序最早的作答算式的等号左侧的内容,并根据逻辑运算关系,确定是否为替换的内容添加括号,若需要添加,则在替换的内容的左侧添加左括号、右侧添加右括号;将该书写顺序最早的作答算式从上述多个作答算式中剔除,返回上述判断多个作答算式中书写顺序最早的作答算式的相邻书写顺序的作答算式的等式左侧部分各数值中、是否存在与该书写顺序最早的作答算式的结果相同的数值的步骤,直到作答算式的数量达到1时为止。
示例地,针对作答文本内容“2+3=5,5*6=30,30-6=24”,其中,书写顺序最早的作答算式“2+3=5”的相邻书写顺序的作答算式“5*6=30”的等式左侧部分各数值(包括“5”和“6”)中存在一个与该书写顺序最早的作答算式“2+3=5”的结果相同的数值“5”,因此,将上述相邻书写顺序的作答算式“5*6=30”中的数值“5”替换为“2+3”;根据逻辑运算关系,确定需要为替换的内容“2+3”添加括号,因此,在替换的内容的左侧添加左括号、右侧添加右括号,得到作答算式“(2+3)*6=30”;之后,将该书写顺序最早的作答算式“2+3=5”从上述三个作答算式中剔除,此时,剩余两个作答算式,即“(2+3)*6=30”和“30-6=24”,此时,作答算式的数量大于1,之后,返回判断该剩余的两个作答算式中书写顺序最早的作答算式的相邻书写顺序的作答算式的等式左侧部分各数值中、是否存在与该书写顺序最早的作答算式的结果相同的数值的步骤,可知,作答算式中书写顺序最早的作答算式“(2+3)*6=30”的相邻书写顺序的作答算式“30-6=24”的等式左侧部分各数值(包括“30”和“6”)中存在一个与该书写顺序最早的作答算式的结果相同的数值“30”,因此,将上述相邻书写顺序的作答算式“30-6=24”中的数值“30”替换为“(2+3)*6”;之后,根据逻辑运算关系,确定不需要为替换的内容“(2+3)*6”添加括号,得到作答算式“(2+3)*6-6=24”;之后,将该书写顺序最早的作答算式“(2+3)*6=30”从上述两个作答算式中剔除,此时,剩余一个作答算式,停止循环,由此,可以得到1个综合算式“(2+3)*6-6=24”。
又示例地,针对作答文本内容“2+3=5,5*6-5=25,25-6=19”,其中,作答算式中书写顺序最早的作答算式“2+3=5”的相邻书写顺序的作答算式“5*6-5=25”的等式左侧部分各数值(包括“5”、“6”、“5”)中存在两个与该书写顺序最早的作答算式的结果相同的数值“5”,因此,针对上述相邻书写顺序的作答算式“5*6-5=25”中左侧的数值“5”:将其替换为“2+3”;根据逻辑运算关系,确定需要为替换的内容“2+3”添加括号,因此,在替换的内容的左侧添加左括号、右侧添加右括号,得到作答算式“(2+3)*6-5=25”;之后,将该书写顺序最早的作答算式“2+3=5”从上述三个作答算式中剔除,此时,剩余两个作答算式,即“(2+3)*6-5=25”和“25-6=19”,此时,作答算式的数量大于1,之后,返回判断该剩余的两个作答算式中书写顺序最早的作答算式的相邻书写顺序的作答算式的等式左侧部分各数值中、是否存在与该书写顺序最早的作答算式的结果相同的数值的步骤,可知,作答算式中书写顺序最早的作答算式“(2+3)*6-5=25”的相邻书写顺序的作答算式“25-6=19”的等式左侧部分各数值(包括“25”和“6”)中存在一个与该书写顺序最早的作答算式的结果相同的数值“25”,因此,将上述相邻书写顺序的作答算式“25-6=19”中的数值“25”替换为“(2+3)*6-5”;之后,根据逻辑运算关系,确定不需要为替换的内容“(2+3)*6-5”添加括号,得到作答算式“(2+3)*6-5-6=19”;之后,将书写顺序最早的作答算式“(2+3)*6-5=25”从上述两个作答算式中剔除,此时,剩余一个作答算式,此时,停止循环,得到综合算式“(2+3)*6-5-6=19”。
同时,针对上述相邻书写顺序的作答算式“5*6-5=25”中右侧的数值“5”:将其替换为“2+3”,根据逻辑运算关系,确定需要为替换的内容“2+3”添加括号,因此,在替换的内容的左侧添加左括号、右侧添加右括号,得到作答算式“5*6-(2+3)=25”;之后,将该书写顺序最早的作答算式“2+3=5”从上述三个作答算式中剔除,此时,剩余两个作答算式,即“5*6-(2+3)=25”和“25-6=19”,此时,作答算式的数量大于1,之后,返回判断该剩余的两个作答算式中书写顺序最早的作答算式的相邻书写顺序的作答算式的等式左侧部分各数值中、是否存在与该书写顺序最早的作答算式的结果相同的数值的步骤,可知,作答算式中书写顺序最早的作答算式“5*6-(2+3)=25”的相邻书写顺序的作答算式“25-6=19”的等式左侧部分各数值(包括“25”和“6”)中存在一个与该书写顺序最早的作答算式的结果相同的数值“25”,因此,将上述相邻书写顺序的作答算式“25-6=19”中的数值“25”替换为“5*6-(2+3)”;之后,根据逻辑运算关系,确定不需要为替换的内容“5*6-(2+3)”添加括号,得到作答算式“5*6-(2+3)-6=19”;之后,将该书写顺序最早的作答算式“5*6-(2+3)=25”从上述两个作答算式中剔除,此时,剩余一个作答算式,此时,停止循环,得到综合算式“5*6-(2+3)-6=19”。
由此,可以得到2个综合算式,即(2+3)*6-5-6=19”和“5*6-(2+3)-6=19”。
下面针对上述步骤(2)中的对第一树形结构进行标准化处理的具体实施方式进行详细说明。具体来说,可以通过多种方式来对第一树形结构进行标准化处理,在一种实施方式中,可以针对第一树形结构中的每一目标运算符节点,若目标运算符节点的左子树对应的算术表达式的结果小于目标运算符节点的右子树对应的算术表达式的结果,或者,目标运算符节点的左子树包含的节点数小于目标运算符节点的右子树包含的节点数,则将目标运算符的左子树、右子树互换,其中,目标运算符为加法运算符或乘法运算符。
示例地,通过上述S102确定出的目标解答算式“(2+3)*5-6=19”对应的第一树形结构如图3A中所示。由图3A可知,目标运算符“+”的左子树对应的算术表达式的结果“3”大于其右子树对应的算术表达式的结果“2”,并且,其左子树包含的节点数等于其右子树包含的节点数(均为1),故无需对其左子树、右子树进行互换;而目标运算符“*”的左子树对应的算术表达式的结果“5”等于其右子树对应的算术表达式的结果“5”,并且,其左子树包含的节点数“1”小于其右子树包含的节点数“3”,故需要将其左子树、右子树进行互换,由此,生成图3B所示的标准化后所得的第一树形结构。
在另一种实施方式中,针对第一树形结构中的每一目标运算符节点,若目标运算符节点的左子树对应的算术表达式的结果小于目标运算符节点的右子树对应的算术表达式的结果,或者,目标运算符节点的左子树包含的节点数大于目标运算符节点的右子树包含的节点数,则将目标运算符的左子树、右子树互换。
示例地,通过上述S102确定出的目标解答算式“(2+3)*5-6=19”对一个男的第一树形结构如图3A中所示。由图3A可知,目标运算符“+”的左子树对应的算术表达式的结果“3”大于其右子树对应的算术表达式的结果“2”,并且,其左子树包含的节点数等于其右子树包含的节点数(均为1),故无需对其左子树、右子树进行互换;而目标运算符“*”的左子树对应的算术表达式的结果“5”等于其右子树对应的算术表达式的结果“5”,并且,其左子树包含的节点数“1”小于其右子树包含的节点数“3”,故也无需将其左子树、右子树进行互换,由此,标准化后所得的第一树形结构仍如图3A中所示的树形结构。
在又一种实施方式中,针对第一树形结构中的每一目标运算符节点,若目标运算符节点的左子树对应的算术表达式的结果大于目标运算符节点的右子树对应的算术表达式的结果,或者,目标运算符节点的左子树包含的节点数小于目标运算符节点的右子树包含的节点数,则将目标运算符的左子树、右子树互换。
示例地,通过上述S102确定出的目标解答算式“(2+3)*5-6=19”对一个男的第一树形结构如图3A中所示。由图3A可知,目标运算符“+”的左子树对应的算术表达式的结果“3”大于其右子树对应的算术表达式的结果“2”,并且,其左子树包含的节点数等于其右子树包含的节点数(均为1),故需要对其左子树、右子树进行互换;而目标运算符“*”的左子树对应的算术表达式的结果“5”等于其右子树对应的算术表达式的结果“5”,并且,其左子树包含的节点数“1”小于其右子树包含的节点数“3”,故需要将其左子树、右子树进行互换,由此,生成图3C所示的标准化后所得的第一树形结构。
在又一种实施方式中,针对第一树形结构中的每一目标运算符节点,若目标运算符节点的左子树对应的算术表达式的结果大于目标运算符节点的右子树对应的算术表达式的结果,或者,目标运算符节点的左子树包含的节点数大于目标运算符节点的右子树包含的节点数,则将目标运算符的左子树、右子树互换。
示例地,通过上述S102确定出的目标解答算式“(2+3)*5-6=19”对一个男的第一树形结构如图3A中所示。由图3A可知,目标运算符“+”的左子树对应的算术表达式的结果“3”大于其右子树对应的算术表达式的结果“2”,并且,其左子树包含的节点数等于其右子树包含的节点数(均为1),故需要对其左子树、右子树进行互换;而目标运算符“*”的左子树对应的算术表达式的结果“5”等于其右子树对应的算术表达式的结果“5”,并且,其左子树包含的节点数“1”小于其右子树包含的节点数“3”,故无需将其左子树、右子树进行互换,由此,生成图3D所示的标准化后所得的第一树形结构。
同样地,可以采用对第一树形结构进行标准化处理的相同方式来对每一第二树形结构进行标准化处理,比如,对第一树形结构按照上述第一种实施方式进行标准化处理,同样地,也按照与上述第一种实施方式中相同的方式对每一第二树形结构进行标准化处理。
下面针对上述步骤(3)中的将标准化处理后所得的第一树形结构与标准化处理后所得的每一第二树形结构分别进行匹配,并根据匹配结果,确定作答文本内容是否错误的具体实施方式进行详细说明。具体来说,若标准化处理后所得的每一第二树形结构中不存在与标准化处理后所得的第一树形结构完全匹配(即两个树形结构完全相同)的树形结构,则确定作答文本内容错误;若标准化处理后所得的每一第二树形结构中存在与标准化处理后所得的第一树形结构完全匹配的树形结构,则确定作答文本内容正确。
下面针对上述S104中的确定作答文本内容中的错误字符的具体实施方式进行详细说明,具体来说,在作答结果与目标解答算式的结果不一致的情况下,可以根据目标解答算式和作答文本内容,确定作答文本内容中的错误字符。具体来说,可以通过以下步骤来实现:
首先,生成与目标解答算式对应的第一树形结构、与作答文本内容对应的至少一个第二树形结构。
然后,对第一树形结构和任一第二树形结构分别进行标准化处理。
最后,将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定作答文本内容中的错误字符。
在一种实施方式中,可以按照第一预设遍历顺序遍历标准化处理后所得的第一树形结构,得到第一遍历字符串,按照第一预设遍历顺序遍历标准化处理后所得的第二树形结构,得到第二遍历字符串;然后,将第二遍历字符串与第一遍历字符串进行逐位匹配,并将第二遍历字符串中、与第一遍历字符串匹配失败的字符确定为错误字符。其中,第一预设遍历顺序可以为前序遍历、中序遍历、后序遍历中的任一者。
示例地,针对图3A中所示的第一树形结构,标准化处理后所得的第一树形结构如图3C中所示,针对图4A中所示的第二树形结构,标准化处理后所得的第二树形结构如图4B中所示,第一预设遍历顺序为后序遍历,则后序遍历图3C中所示的树形结构,得到第一遍历字符串“2 3+5*6-”,后续遍历图4B中所示的树形结构,得到第二遍历字符串“2 3+6*6-”;之后,将第二遍历字符串“2 3+6*6-”与第一遍历字符串“2 3+5*6-”进行组逐位匹配,发现第二遍历字符串中的第四个字符“6”与第一遍历字符串中的第四个字符“5”不匹配,即匹配失败,因此,将第二遍历字符串“2 3+6*6-”中的第四个字符“6”确定为错误字符。
在另一种实施方式中,按照第二预设遍历顺序同步遍历标准化处理后所得的第二树形结构和标准化处理后所得的第一树形结构,以确定当前遍历到的两个字符是否一致。若当前遍历到的两个字符不一致,则停止遍历,并将该标准化处理后所得的第二树形结构中、当前遍历到的字符确定为错误字符。该种实施方式,同步遍历标准化处理后所得的第二树形结构和标准化处理后所得的第一树形结构,并在遍历到不一致字符时,及时停止当前遍历,从而可以提高错误字符的确定效率。其中,第二预设遍历顺序可以为前序遍历、中序遍历、后序遍历中的任一者。
示例地,针对图3A中所示的第一树形结构,标准化处理后所得的第一树形结构如图3C中所示,针对图4A中所示的第二树形结构,标准化处理后所得的第二树形结构如图4B中所示,第二预设遍历顺序为后序遍历,按照后序遍历顺序同步遍历图3C中所示的树形结构和图4B中所示的树形结构,第一次遍历到两个字符分别为“2”、“2”,二者一致,继续遍历,第二次遍历到两个字符分别为“3”、“3”,二者一致,继续遍历,第三次遍历到两个字符“+”、“+”,二者一致,继续遍历,第四次遍历到两个字符分别为“5”、“6”,二者不一致,停止遍历,并将图4B中所示的树形结构中、当前遍历到的字符“6”确定为错误字符。
另外,需要说明的是,若标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构完全匹配,即二者之间不存在匹配失败的字符,则将作答文本内容的作答结果确定为错误字符。
而在作答结果与目标解答算式的结果一致的情况下,可以通过以下方式确定作答文本内容中的错误字符:将标准化处理后所得的任一第二树形结构中、与标准化处理后所得的第一树形结构匹配失败的节点对应的字符确定为作答文本内容中的错误字符。
基于同样的发明构思,本公开还提供一种应用题批改装置,如图5所示,该装置500包括:文本识别模块501,用于对待批改的答题图像进行文本识别,得到所述待批改的答题图像中包含的应用题的题干文本和作答文本内容;第一确定模块502,用于确定所述文本识别模块501得到的所述题干文本对应的目标解答算式;判定模块503,用于根据所述第一确定模块502确定出的所述目标解答算式,判定所述作答文本内容是否有误;第二确定模块504,用于若所述判定模块503判定所述作答文本内容有误,则确定所述作答文本内容中的错误字符;批改模块505,用于根据所述判定模块503得到的所述作答文本内容有误的判定结果,对所述待批改的答题图像中包含的应用题进行批改,并在所述待批改的答题图像上标注所述第二确定模块504确定出的所述错误字符。
在上述技术方案中,首先对待批改的答题图像进行文本识别,得到待批改的答题图像中包含的应用题的题干文本和作答文本内容;之后,确定题干文本对应的目标解答算式,并根据该目标解答算式,判定作答文本内容是否有误;若作答文本内容有误,则确定作答文本内容中的错误字符;最后,根据作答文本内容有误的判定结果,对待批改的答题图像中包含的应用题进行批改,并在待批改的答题图像上标注错误字符。这样,可实现应用题的快速自动批改,节省了人力,并且,还可以在待批改的答题图像上标注作答过程中的错误字符,便于学生及时定位错因、查找知识点盲区,从而提升学习效率。
可选地,所述判定模块503包括:提取子模块,用于从所述作答文本内容中提取作答结果;第一确定子模块,用于若所述作答结果与所述目标解答算式的结果不一致,则确定所述作答文本内容有误。
可选地,所述第一确定子模块用于根据所述目标解答算式和所述作答文本内容,确定所述作答文本内容中的错误字符。
可选地,所述目标解答算式包括一个算式,所述第一确定子模块包括:第一生成子模块,用于生成与所述目标解答算式对应的第一树形结构、与所述作答文本内容对应的至少一个第二树形结构;第一标准化处理子模块,用于对所述第一树形结构和任一所述第二树形结构分别进行标准化处理;第一树形结构匹配子模块,用于将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符。
可选地,所述第一树形结构匹配子模块包括:第一遍历子模块,用于按照第一预设遍历顺序遍历标准化处理后所得的第一树形结构,得到第一遍历字符串,按照所述第一预设遍历顺序遍历标准化处理后所得的第二树形结构,得到第二遍历字符串;字符串匹配子模块,用于将所述第二遍历字符串与所述第一遍历字符串进行逐位匹配,并将所述第二遍历字符串中、与所述第一遍历字符串匹配失败的字符确定为错误字符。
可选地,所述第一树形结构匹配子模块包括:第二遍历子模块,用于按照第二预设遍历顺序同步遍历标准化处理后所得的第二树形结构和标准化处理后所得的第一树形结构,以确定当前遍历到的两个字符是否一致;字符比对子模块,用于若当前遍历到的两个字符不一致,则停止遍历,并将该标准化处理后所得的第二树形结构中、当前遍历到的字符确定为错误字符。
可选地,所述目标解答算式包括一个算式,所述第一确定子模块还包括:第二生成子模块,用于若所述作答结果与所述目标解答算式的结果一致,则生成与所述目标解答算式对应的第一树形结构、与所述作答文本内容对应的至少一个第二树形结构;第二标准化处理子模块,用于对所述第一树形结构和每一所述第二树形结构分别进行标准化处理;第二树形结构匹配子模块,用于将标准化处理后所得的第一树形结构与标准化处理后所得的每一第二树形结构分别进行匹配,并根据匹配结果,确定所述作答文本内容是否错误。
可选地,所述第二树形结构匹配子模块用于:若所述标准化处理后所得的每一第二树形结构中不存在与所述标准化处理后所得的第一树形结构完全匹配的树形结构,则确定所述作答文本内容错误;若所述标准化处理后所得的每一第二树形结构中存在与所述标准化处理后所得的第一树形结构完全匹配的树形结构,则确定所述作答文本内容正确。
可选地,在所述作答结果与所述目标解答算式的结果一致的情况下,所述判定模块503用于将所述标准化处理后所得的任一第二树形结构中、与所述标准化处理后所得的第一树形结构匹配失败的节点对应的字符确定为所述作答文本内容中的错误字符。
可选地,所述作答文本内容包括多个作答算式;第一生成子模块用于根据所述多个作答算式的书写顺序,生成与所述多个作答算式对应的至少一个第二树形结构。
可选地,所述第一生成子模块包括:合并子模块,用于按照所述书写顺序,将所述多个作答算式依次进行合并,得到所述多个作答算式对应的至少一个综合算式;第三生成子模块,用于针对每一所述综合算式,根据所述综合算式,生成所述综合算式对应的树形结构,作为所述第二树形结构。
可选地,所述第一标准化处理子模块包括以下中的任一者:第一互换子模块,用于针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果小于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数小于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换,其中,所述目标运算符为加法运算符或乘法运算符;第二互换子模块,用于针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果小于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数大于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换;第三互换子模块,用于针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果大于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数小于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换;第四互换子模块,用于针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果大于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数大于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换。
可选地,所述目标解答算式包括一个算式,所述第一确定模块502包括:掩膜子模块,用于对预设算式中的所有字符进行掩膜处理,得到掩膜算式;拼接子模块,用于将所述题干文本和所述掩膜算式进行拼接,得到拼接字符串;输入子模块,用于将所述拼接字符串输入到预先训练好的解题模型中,得到用于解答所述应用题的目标算术表达式;计算子模块,用于计算所述目标算术表达式的结果,并将所述目标算术表达式、等号以及所述目标算术表达式的结果依次连接,得到所述题干文本对应的目标解答算式,其中,所述目标解答算式包含的字符数量小于或等于所述预设算式包含的字符数量。
可选地,所述解题模型通过模型训练装置训练得到,其中,该模型训练装置包括:获取模块,用于获取历史应用题的历史题干文本以及用于解答所述历史应用题的标注解答算式;掩膜模块,用于对所述历史题干文本中的部分字符和所述标注解答算式中的部分字符进行掩膜处理;拼接模块,用于将掩膜处理后所得的历史题干文本和掩膜处理后所得的标注解答算式进行拼接,得到历史字符串;训练模块,用于通过将所述历史字符串作为所述解题模型的输入,将所述标注解答算式作为所述解题模型的目标输出的方式进行模型训练,以得到所述解题模型。
另外,需要说明的是,上述模型训练装置可以独立于上述应用题批改装置500,也可以集成与上述应用题批改装置500内,对此,本公开不作具体限定。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本公开提供的上述应用题批改方法的步骤。
图6是根据一示例性实施例示出的一种电子设备600的框图。如图6所示,该电子设备600可以包括:处理器601,存储器602。该电子设备600还可以包括多媒体组件603,输入/输出(I/O)接口604,以及通信组件605中的一者或多者。
其中,处理器601用于控制该电子设备600的整体操作,以完成上述的应用题批改方法中的全部或部分步骤。存储器602用于存储各种类型的数据以支持在该电子设备600的操作,这些数据例如可以包括用于在该电子设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于该电子设备600与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件605可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的应用题批改方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的应用题批改方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由电子设备600的处理器601执行以完成上述的应用题批改方法。
图7是根据一示例性实施例示出的一种电子设备700的框图。例如,电子设备700可以被提供为一服务器。参照图7,电子设备700包括处理器722,其数量可以为一个或多个,以及存储器732,用于存储可由处理器722执行的计算机程序。存储器732中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器722可以被配置为执行该计算机程序,以执行上述的应用题批改方法。
另外,电子设备700还可以包括电源组件726和通信组件750,该电源组件726可以被配置为执行电子设备700的电源管理,该通信组件750可以被配置为实现电子设备700的通信,例如,有线或无线通信。此外,该电子设备700还可以包括输入/输出(I/O)接口758。电子设备700可以操作基于存储在存储器732的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的应用题批改方法的步骤。例如,该非临时性计算机可读存储介质可以为上述包括程序指令的存储器732,上述程序指令可由电子设备700的处理器722执行以完成上述的应用题批改方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的应用题批改方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (17)
1.一种应用题批改方法,其特征在于,包括:
对待批改的答题图像进行文本识别,得到所述待批改的答题图像中包含的应用题的题干文本和作答文本内容;
确定所述题干文本对应的目标解答算式;
根据所述目标解答算式,判定所述作答文本内容是否有误;
若所述作答文本内容有误,则确定所述作答文本内容中的错误字符;
根据所述作答文本内容有误的判定结果,对所述待批改的答题图像中包含的应用题进行批改,并在所述待批改的答题图像上标注所述错误字符。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标解答算式,判定所述作答文本内容是否错误,包括:
从所述作答文本内容中提取作答结果;
若所述作答结果与所述目标解答算式的结果不一致,则确定所述作答文本内容有误。
3.根据权利要求2所述的方法,其特征在于,所述确定所述作答文本内容中的错误字符,包括:
根据所述目标解答算式和所述作答文本内容,确定所述作答文本内容中的错误字符。
4.根据权利要求3所述的方法,其特征在于,所述目标解答算式包括一个算式,所述根据所述目标解答算式和所述作答文本内容,确定所述作答文本内容中的错误字符,包括:
生成与所述目标解答算式对应的第一树形结构、与所述作答文本内容对应的至少一个第二树形结构;
对所述第一树形结构和任一所述第二树形结构分别进行标准化处理;
将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符。
5.根据权利要求4所述的方法,其特征在于,所述将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符,包括:
按照第一预设遍历顺序遍历标准化处理后所得的第一树形结构,得到第一遍历字符串,按照所述第一预设遍历顺序遍历标准化处理后所得的第二树形结构,得到第二遍历字符串;
将所述第二遍历字符串与所述第一遍历字符串进行逐位匹配,并将所述第二遍历字符串中、与所述第一遍历字符串匹配失败的字符确定为错误字符。
6.根据权利要求4所述的方法,其特征在于,所述将标准化处理后所得的第一树形结构与标准化处理后所得的第二树形结构进行匹配,以确定所述作答文本内容中的错误字符,包括:
按照第二预设遍历顺序同步遍历标准化处理后所得的第二树形结构和标准化处理后所得的第一树形结构,以确定当前遍历到的两个字符是否一致;
若当前遍历到的两个字符不一致,则停止遍历,并将该标准化处理后所得的第二树形结构中、当前遍历到的字符确定为错误字符。
7.根据权利要求2所述的方法,其特征在于,所述目标解答算式包括一个算式,所述根据所述目标解答算式,判定所述作答文本内容是否错误,还包括:
若所述作答结果与所述目标解答算式的结果一致,则生成与所述目标解答算式对应的第一树形结构、与所述作答文本内容对应的至少一个第二树形结构;
对所述第一树形结构和每一所述第二树形结构分别进行标准化处理;
将标准化处理后所得的第一树形结构与标准化处理后所得的每一第二树形结构分别进行匹配,并根据匹配结果,确定所述作答文本内容是否错误。
8.根据权利要求7所述的方法,其特征在于,所述根据匹配结果,确定所述作答文本内容是否错误,包括:
若所述标准化处理后所得的每一第二树形结构中不存在与所述标准化处理后所得的第一树形结构完全匹配的树形结构,则确定所述作答文本内容错误;
若所述标准化处理后所得的每一第二树形结构中存在与所述标准化处理后所得的第一树形结构完全匹配的树形结构,则确定所述作答文本内容正确。
9.根据权利要求7所述的方法,其特征在于,在所述作答结果与所述目标解答算式的结果一致的情况下,所述确定所述作答文本内容中的错误字符,包括:
将所述标准化处理后所得的任一第二树形结构中、与所述标准化处理后所得的第一树形结构匹配失败的节点对应的字符确定为所述作答文本内容中的错误字符。
10.根据权利要求4-9中任一项所述的方法,其特征在于,所述作答文本内容包括多个作答算式;
所述生成与所述作答文本内容对应的至少一个第二树形结构,包括:
根据所述多个作答算式的书写顺序,生成与所述多个作答算式对应的至少一个第二树形结构。
11.根据权利要求10所述的方法,其特征在于,所述根据所述多个作答算式的书写顺序,生成与所述多个作答算式对应的至少一个第二树形结构,包括:
按照所述书写顺序,将所述多个作答算式依次进行合并,得到所述多个作答算式对应的至少一个综合算式;
针对每一所述综合算式,根据所述综合算式,生成所述综合算式对应的树形结构,作为所述第二树形结构。
12.根据权利要求4-9中任一项所述的方法,其特征在于,所述对所述第一树形结构进行标准化处理,包括以下中的任一者:
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果小于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数小于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换,其中,所述目标运算符为加法运算符或乘法运算符;
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果小于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数大于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换;
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果大于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数小于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换;
针对所述第一树形结构中的每一目标运算符节点,若所述目标运算符节点的左子树对应的算术表达式的结果大于所述目标运算符节点的右子树对应的算术表达式的结果,或者,所述目标运算符节点的左子树包含的节点数大于所述目标运算符节点的右子树包含的节点数,则将所述目标运算符的左子树、右子树互换。
13.根据权利要求1-9中任一项所述的方法,其特征在于,所述目标解答算式包括一个算式,所述确定所述题干文本对应的目标解答算式,包括:
对预设算式中的所有字符进行掩膜处理,得到掩膜算式;
将所述题干文本和所述掩膜算式进行拼接,得到拼接字符串;
将所述拼接字符串输入到预先训练好的解题模型中,得到用于解答所述应用题的目标算术表达式;
计算所述目标算术表达式的结果,并将所述目标算术表达式、等号以及所述目标算术表达式的结果依次连接,得到所述题干文本对应的目标解答算式,其中,所述目标解答算式包含的字符数量小于或等于所述预设算式包含的字符数量。
14.根据权利要求13所述的方法,其特征在于,所述解题模型通过以下方式训练得到:
获取历史应用题的历史题干文本以及用于解答所述历史应用题的标注解答算式;
对所述历史题干文本中的部分字符和所述标注解答算式中的部分字符进行掩膜处理;
将掩膜处理后所得的历史题干文本和掩膜处理后所得的标注解答算式进行拼接,得到历史字符串;
通过将所述历史字符串作为所述解题模型的输入,将所述标注解答算式作为所述解题模型的目标输出的方式进行模型训练,以得到所述解题模型。
15.一种应用题批改装置,其特征在于,包括:
文本识别模块,用于对待批改的答题图像进行文本识别,得到所述待批改的答题图像中包含的应用题的题干文本和作答文本内容;
第一确定模块,用于确定所述文本识别模块得到的所述题干文本对应的目标解答算式;
判定模块,用于根据所述第一确定模块确定出的所述目标解答算式,判定所述作答文本内容是否有误;
第二确定模块,用于若所述判定模块判定所述作答文本内容有误,则确定所述作答文本内容中的错误字符;
批改模块,用于根据所述判定模块得到的所述作答文本内容有误的判定结果,对所述待批改的答题图像中包含的应用题进行批改,并在所述待批改的答题图像上标注所述第二确定模块确定出的所述错误字符。
16.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-14中任一项所述方法的步骤。
17.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-14中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110524509.6A CN113204945A (zh) | 2021-05-13 | 2021-05-13 | 应用题批改方法、装置、计算机可读介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110524509.6A CN113204945A (zh) | 2021-05-13 | 2021-05-13 | 应用题批改方法、装置、计算机可读介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113204945A true CN113204945A (zh) | 2021-08-03 |
Family
ID=77031124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110524509.6A Withdrawn CN113204945A (zh) | 2021-05-13 | 2021-05-13 | 应用题批改方法、装置、计算机可读介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113204945A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113987296A (zh) * | 2021-11-22 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 一种应用题的解答检测方法及装置 |
-
2021
- 2021-05-13 CN CN202110524509.6A patent/CN113204945A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113987296A (zh) * | 2021-11-22 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 一种应用题的解答检测方法及装置 |
CN113987296B (zh) * | 2021-11-22 | 2024-06-11 | 腾讯科技(深圳)有限公司 | 一种应用题的解答检测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10936807B1 (en) | Systems and methods for displaying effects of code changes | |
US11631338B2 (en) | Deep knowledge tracing with transformers | |
US7685082B1 (en) | System and method for identifying, prioritizing and encapsulating errors in accounting data | |
EP3819808A1 (en) | Text sequence segmentation method and device, and storage medium thereof | |
CN111723870B (zh) | 基于人工智能的数据集获取方法、装置、设备和介质 | |
CN114511038A (zh) | 虚假新闻检测方法、装置、电子设备及可读存储介质 | |
CN111325031B (zh) | 简历解析方法及装置 | |
CN106980960B (zh) | 一种知识点体系的制作方法及装置 | |
CN113204945A (zh) | 应用题批改方法、装置、计算机可读介质及电子设备 | |
CN114676705B (zh) | 一种对话关系处理方法、计算机及可读存储介质 | |
US10489728B1 (en) | Generating and publishing a problem ticket | |
CN112836013B (zh) | 一种数据标注的方法、装置、可读存储介质和电子设备 | |
CN112395880A (zh) | 结构化三元组的纠错方法、装置、计算机设备及存储介质 | |
CN117113080A (zh) | 数据处理和代码处理方法、装置、一体机和存储介质 | |
CN115169330B (zh) | 中文文本纠错及验证方法、装置、设备及存储介质 | |
Vimalaraj et al. | Automated programming assignment marking tool | |
CN115909386A (zh) | 一种管道仪表流程图的补全和纠错方法、设备及存储介质 | |
CN114741591B (zh) | 一种向学习者推荐学习路径的方法及电子设备 | |
CN115116069A (zh) | 文本处理方法、装置、电子设备及存储介质 | |
CN114547391A (zh) | 消息审核方法及装置 | |
CN113568831A (zh) | 基于蜕变测试的自监督深度学习型缺陷定位方法 | |
Bader et al. | Facilitating User-Centric Model-Based Systems Engineering Using Generative AI. | |
CN117076596B (zh) | 应用人工智能的数据存储方法、装置及服务器 | |
KR102665966B1 (ko) | 도서목록정보(marc data) 구축을 위한 인공지능을 이용한 분류번호(kdc, ddc) 생성 방법 및 시스템 | |
CN114611497B (zh) | 语病诊断模型的训练方法、语病诊断方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210803 |
|
WW01 | Invention patent application withdrawn after publication |