IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 杭州大拿科技股▲ふん▼有限公司の特許一覧

特許7077483暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体
<>
  • 特許-暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体 図1
  • 特許-暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体 図2
  • 特許-暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体 図3
  • 特許-暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体 図4
  • 特許-暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-20
(45)【発行日】2022-05-30
(54)【発明の名称】暗算問題に対する問題添削方法、装置、電子機器及び記憶媒体
(51)【国際特許分類】
   G06F 16/33 20190101AFI20220523BHJP
   G06T 7/00 20170101ALI20220523BHJP
【FI】
G06F16/33
G06T7/00 300F
【請求項の数】 20
(21)【出願番号】P 2021517407
(86)(22)【出願日】2019-09-11
(65)【公表番号】
(43)【公表日】2021-11-04
(86)【国際出願番号】 CN2019105321
(87)【国際公開番号】W WO2020063347
(87)【国際公開日】2020-04-02
【審査請求日】2021-04-13
(31)【優先権主張番号】201811125657.5
(32)【優先日】2018-09-26
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】201811125659.4
(32)【優先日】2018-09-26
(33)【優先権主張国・地域又は機関】CN
【早期審査対象出願】
(73)【特許権者】
【識別番号】518297341
【氏名又は名称】杭州大拿科技股▲ふん▼有限公司
(74)【代理人】
【識別番号】100081961
【弁理士】
【氏名又は名称】木内 光春
(74)【代理人】
【識別番号】100112564
【弁理士】
【氏名又は名称】大熊 考一
(74)【代理人】
【識別番号】100163500
【弁理士】
【氏名又は名称】片桐 貞典
(74)【代理人】
【識別番号】230115598
【弁護士】
【氏名又は名称】木内 加奈子
(72)【発明者】
【氏名】石 凡
(72)【発明者】
【氏名】何 涛
(72)【発明者】
【氏名】▲ルゥオ▼ ▲フゥァン▼
(72)【発明者】
【氏名】▲チェン▼ 明▲チュァン▼
【審査官】甲斐 哲雄
(56)【参考文献】
【文献】国際公開第2013/069375(WO,A1)
【文献】特開2007-286409(JP,A)
【文献】韓国登録特許第10-1459285(KR,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06T 7/00
G09B 1/00-19/26
(57)【特許請求の範囲】
【請求項1】
検出識別モジュールと暗算エンジンと問題検索モジュールと試験紙確定モジュールと暗算問題確定モジュールと暗算問題添削モジュールとを備える問題添削装置による、試験紙中の暗算問題に対する問題添削方法であって、
ステップS11:前記検出識別モジュールにより、被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別することと、
ステップ12:前記暗算エンジンにより、前記被検索試験紙中の計算式及び/又は公式を含む領域に対して、各領域の計算結果を得るため、計算処理を行うことと、
ステップS13:前記問題検索モジュールにより、各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すことと、
ステップS14:前記試験紙確定モジュールにより、探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することと、
ステップS15:前記暗算問題確定モジュールにより、前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定することと、
ステップS16:前記暗算問題添削モジュールにより、各被添削暗算問題に対し、前記暗算エンジンの前記被添削暗算問題の領域に対応する前記計算結果を該被添削暗算問題の解答として用い、前記暗算エンジンの前記被添削暗算問題の前記領域外の前記計算結果を破棄することにより、前記被検索試験紙上の被添削暗算問題の添削することと
を含むことを特徴とする、暗算問題に対する問題添削方法。
【請求項2】
ステップS15において、前記目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が、該被検索問題の前記被検索試験紙における位置と同一である場合、該被検索問題を被添削暗算問題として確定することを特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項3】
ステップS14において、所定の条件を満たす目標試験紙が存在せず、且つ前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる場合、問題タイプが暗算問題である被検索問題を被添削暗算問題として確定し、各該被添削暗算問題に対し、前記暗算エンジンの前記被添削暗算問題の前記領域に対応する前記計算結果を前記被添削暗算問題の前記解答として用い、前記暗算エンジンの前記被添削暗算問題の前記領域外の前記計算結果を破棄することにより、前記試験紙上の被添削暗算問題の添削を完成することを特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項4】
ステップS16が、前記暗算エンジンの前記計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の前記解答として用いることも含むことを特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項5】
前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致しないとき、前記試験紙の試験官に前記被添削暗算問題に注意を払うよう警告するため、該被添削暗算問題の参考解答と一致しないことを表すために用いられるプロンプト情報を出力することを特徴とする、
請求項4に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項6】
前記予め設けられた暗算エンジンが予め訓練された第1識別モデルを含み、前記第1識別モデルがニューラルネットワークに基づくモデルであり、
ステップS12中の予め設けられた暗算エンジンを用いて前記被検索試験紙中の前記計算式及び/又は前記公式を含む前記領域に対し計算処理を実行することが、
前記予め訓練された第1識別モデルを介し前記被検索試験紙中の前記計算式及び/又は前記公式を含む前記領域中の数字、アルファベット、文字、記号、及び計算タイプを識別することであって、前記計算タイプが混合算術計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算のうちの1つを含むことと、
識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、各領域の計算結果を得ることと
を含むこと
を特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項7】
前記ステップS13が、
ステップS131:各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに入力し、各被検索問題の語幹の特徴ベクトルを得て、各被検索問題の特徴ベクトルとすることであって、前記語幹ベクトル化モデルがニューラルネットワークに基づくモデルであることと、
ステップS132:各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定することと
を更に含むこと
を特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項8】
前記語幹ベクトル化モデルが、
問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングすることと、
ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことにより、前記語幹ベクトル化モデルを訓練すること
というステップを介し訓練されることを特徴とする、
請求項7に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項9】
問題データベース中の試験紙上の各問題の特徴ベクトルに対し予めインデックス情報テーブルを構築することを更に含み、
ステップS132が、
各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することと、
一致する特徴ベクトルの前記インデックス情報テーブル中の対応する問題を、該被検索問題に最も近い問題として確定することと
を更に含むこと
を特徴とする、
請求項7に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項10】
前記インデックス情報テーブルを構築する前に、異なる長さの特徴ベクトルを長さに従いグループ分けすることと、
前記各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することが、
各被検索問題に対し、前記インデックス情報テーブル中の該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することを含むこと
を特徴とする、
請求項9に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項11】
ステップS14中、前記所定の条件を満たす前記試験紙を前記被検索試験紙に一致する前記目標試験紙として確定することが、
出現頻度が最も高く且つ前記出現頻度の閾値よりも大きいという条件を満たす前記試験紙を前記被検索試験紙に一致する前記目標試験紙として確定することを含み、
前記出現頻度は、前記試験紙の被検索問題における最も近い問題の数と前記被検索試験紙中の被検索問題の総数との割合、或いは、前記試験紙の被検索試験紙に一致する問題の数と前記被検索試験紙中の被検索問題の総数との割合である、
ことを特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項12】
ステップS11中、被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出することが、
予め訓練された検出モデルを用いて前記被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出することであって、前記検出モデルがニューラルネットワークに基づくモデルであることを含む
ことを特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項13】
ステップS11中、各被検索問題の領域中の語幹の文字内容を識別することが、
予め訓練された第2識別モデルを用いて各被検索問題の領域中の語幹の文字内容を識別することであって、前記第2識別モデルがニューラルネットワークに基づくモデルであることを含む
ことを特徴とする、
請求項1に記載の試験紙中の暗算問題に対する問題添削方法。
【請求項14】
試験紙中の暗算問題に対する問題添削装置であって、
被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別するために用いられる、検出識別モジュールと、
前記被検索試験紙中の計算式及び/又は公式を含む領域に対して、各領域の計算結果を得るため、計算処理を行うため予め設けられた暗算エンジンを用いるよう構成された、計算モジュールと、
各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すために用いられる、問題検索モジュールと、
探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす前記試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いられる、試験紙確定モジュールと、
前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定するために用いられる、暗算問題確定モジュールと、
各被添削暗算問題に対し、前記暗算エンジンの前記被添削暗算問題の領域に対応する前記計算結果を該被添削暗算問題の解答として用い、前記暗算エンジンの前記被添削暗算問題の前記領域外の前記計算結果を破棄することにより、前記被検索試験紙上の被添削暗算問題を添削する、暗算問題添削モジュールと
を含むことを特徴とする、
暗算問題に対する問題添削装置。
【請求項15】
前記暗算問題確定モジュールが、前記目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一である場合、該被検索問題を被添削暗算問題として確定するためにも用いられることを特徴とする、
請求項14に記載の試験紙中の暗算問題に対する問題添削装置。
【請求項16】
前記試験紙確定モジュールが、所定の条件を満たす目標試験紙が存在せず、且つ前記被検索試験紙中に問題タイプが暗算問題である被検索問題を含むとき、問題タイプが暗算問題である被検索問題を被添削暗算問題として確定し、該各被添削暗算問題に対し、前記暗算エンジンの前記被添削暗算問題の領域に対応する前記計算結果を前記被添削暗算問題の解答として用い、前記暗算エンジンの前記被添削暗算問題の前記領域外の前記計算結果を破棄することにより、試験紙中の前記被添削暗算問題の添削を完成するためにも用いられることを特徴とする、
請求項14に記載の試験紙中の暗算問題に対する問題添削装置。
【請求項17】
前記暗算問題添削モジュールが、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の前記解答として出力するためにも用いられ、
これらが一致しない場合、前記試験紙の試験官に前記被添削暗算問題に注意を払うよう警告するため、該被添削暗算問題の参考解答が一致しないことを表すために用いられるプロンプト情報を出力するためにも用いられる
ことを特徴とする、
請求項14に記載の試験紙中の暗算問題に対する問題添削装置。
【請求項18】
前記予め設けられた暗算エンジンが予め訓練された第1識別モデルを含み、前記第1識別モデルがニューラルネットワークに基づくモデルであり、
前記計算モジュールが、前記予め訓練された第1識別モデルを介し前記被検索試験紙中の前記計算式及び/又は前記公式を含む前記領域中の数字、アルファベット、文字、記号、及び計算タイプを識別するために用いられ、前記計算タイプが四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算のうちの1つを含むことと、識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、各領域の計算結果を得る
ことを特徴とする、
請求項14に記載の試験紙中の暗算問題に対する問題添削装置。
【請求項19】
電子機器であって、
プロセッサと、通信インターフェイスと、メモリと、通信バスとを含み、前記プロセッサ、前記通信インターフェイス、前記メモリが前記通信バスを介し相互間の通信を完成し、
前記メモリが、コンピュータプログラムを格納するために用いられ、
前記プロセッサが、メモリに格納されたプログラムを実行するとき、請求項1~13のいずれか1項に記載の方法ステップを実現するために用いられる
ことを特徴とする、
電子機器。
【請求項20】
コンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ読み取り可能な記憶媒体がコンピュータプログラムを格納し、前記コンピュータプログラムが実行されるとき、請求項1~13のいずれか1項に記載の方法を実現することを特徴とする、
コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は人工知能技術分野に関するものであり、特に、暗算問題に対する問題添削方法、装置、電子機器及びコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【0002】
コンピュータ技術及び教育情報の途絶えることのない発達に伴い、コンピュータ技術は既に日常の教育学習及び授業の様々な活動に応用されており、例えば教育評価のシナリオにおいて対応する応用を得られる。国内における既存の基礎教育では、学生の学習状況の主な調査方法は未だに様々な種類の試験紙や試験であり、このような状況において、教師は試験紙を添削するという大きな仕事上のプレッシャーを負う。
【0003】
現在、スマート端末製品には、宿題や試験紙の添削を解決するための多くの検索APPが存在し、検索APPに試験紙の画像内容に基づき問題データベースから試験紙の画像中の各問題に対応する問題を検索させるよう、被添削試験紙を含む画像を検索APPに入力する。
【発明の概要】
【発明が解決しようとする課題】
【0004】
現在の問題検索方法は、問題の語幹の文字内容に基づき問題の特徴ベクトルを生成し、該特徴ベクトルに基づき問題データベースから検索する。特徴ベクトルを生成するとき、異なる文字(トークン)は単語の頻度に基づき生成される重みが異なり、語幹の文字内容に頻繁に出現するほど該文字(トークン)が重要でないことを表し(例えば、「の」という字は語幹における出現回数が多く、「の」という字は重要でないと認定される)、該文字(トークン)の重みはより低く設定される。
【0005】
しかし、暗算問題については、暗算問題の語幹の文字内容は概ね数字と計算記号であり、また数字と計算記号の語出現頻度は相対的に高く、即ち暗算問題の語幹の文字内容は識別度がある高い重みの文字(トークン)を欠き、これは異なる暗算問題に対応する特徴ベクトル同士の間の区別を小さくさせ、識別エンジンに些細な識別エラーが発生すると、別の異なる暗算問題に一致してしまい、暗算問題の添削を誤らせる結果となる。暗算問題の問題添削には容易にエラーが出現し、正確性が高くないことが分かる。
【課題を解決するための手段】
【0006】
本発明の目的は、既存の問題添削方法は暗算問題に対する添削が容易にエラーを生み、正確性が高くないという課題を解決する、暗算問題に対する問題添削方法、装置、電子機器及びコンピュータ読み取り可能な記憶媒体を提供することである。
【0007】
上記技術的課題を解決するため、本発明は以下を含む暗算問題に対する問題添削方法を提供する:
ステップS11:被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別することと、
ステップS12:各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すことと、
ステップS13:探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、集約した試験紙を所定の条件と比較し、所定の条件を満たす目標試験紙が存在する場合、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することと、
ステップS14:前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定することと、
ステップS15:各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行い、前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力することにより、前記被検索試験紙上の被添削暗算問題の添削を完成すること。
【0008】
任意的に、ステップS14において、前記目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一である状況において、該被検索問題を被添削暗算問題として確定する。
【0009】
任意的に、ステップS13において、所定の条件を満たす目標試験紙が存在しない場合で、且つ前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれるとき、問題タイプが暗算問題である被検索問題を被添削暗算問題として確定し、ステップS15を実行する。
【0010】
任意的に、ステップS15は、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力することを更に含む。
【0011】
任意的に、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致しないとき、該被添削暗算問題の参考解答と一致しないことを表すために用いられるプロンプト情報を出力する。
【0012】
任意的に、前記予め設けられた暗算エンジンは予め訓練された第1識別モデルを含み、前記第1識別モデルはニューラルネットワークに基づくモデルであって;
ステップS15中の予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行うことが、
前記予め訓練された第1識別モデルを介し該被添削暗算問題中の数字、アルファベット、文字、記号、及び計算タイプを識別することであって、前記計算タイプが四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算のうちの1つを含むことと;
識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、該被添削暗算問題の計算結果を得ることとを含む。
【0013】
任意的に、前記ステップS12は以下を含む:
ステップS121、各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに入力し、各被検索問題の語幹の特徴ベクトルを得て、各被検索問題の特徴ベクトルとすることであって、前記語幹ベクトル化モデルがニューラルネットワークに基づくモデルであることと;
ステップS122、各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定すること。
【0014】
任意的に、前記語幹ベクトル化モデルは以下のステップを通じて訓練される:
問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングすることと;
ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことにより、前記語幹ベクトル化モデルを訓練すること。
【0015】
任意的に、前記ステップS12を実行する前に、前記暗算問題に対する問題添削方法が、問題データベース中の試験紙上の各問題の特徴ベクトルに対しインデックス情報テーブルを構築することを更に含み;
ステップS122が以下を含む:
各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することと;
一致する特徴ベクトルの前記インデックス情報テーブル中の対応する問題を該被検索問題に最も近い問題として確定すること。
【0016】
任意的に、前記インデックス情報テーブルを構築する前に、前記暗算問題に対する問題添削方法が、異なる長さの特徴ベクトルを長さに従いグループ分けすることを更に含み;
前記各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することが以下を含む:
各被検索問題に対し、前記インデックス情報テーブル中の該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索すること。
【0017】
任意的に、ステップS13中の、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することが、以下を含む:
出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙を、前記被検索試験紙に一致する目標試験紙として確定すること。
【0018】
任意的に、ステップS11中の、被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出することが、以下を含む:
予め訓練された検出モデルを用いて前記被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出することであって、前記検出モデルがニューラルネットワークに基づくモデルであること。
【0019】
任意的に、ステップS11中の、各被検索問題の領域中の語幹の文字内容を識別することが、以下を含む:
予め訓練された第2識別モデルを用いて各被検索問題の領域中の語幹の文字内容を識別することであって、前記第2識別モデルがニューラルネットワークに基づくモデルであること。
【0020】
任意的に、ステップS11を実行した後、ステップS12を実行する前において、前記暗算問題に対する問題添削方法が、以下を更に含む:
予め設けられた暗算エンジンを用いて前記被検索試験紙中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を得ることと;
ここで、ステップS15において、各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題の領域に対応する計算結果を、該被添削暗算問題の解答とすることにより、前記被検索試験紙上の被添削暗算問題の添削を完成すること。
【0021】
上記目的を達成するため、本発明は暗算問題に対する問題添削装置を更に提供し、前記装置は以下を含む:
被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別するために用いられる、検出識別モジュールと;
各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すために用いられる、問題検索モジュールと;
探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、集約した試験紙を所定の条件と比較し、所定の条件を満たす目標試験紙が存在する場合、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いられる、試験紙確定モジュールと;
前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定するために用いられる、暗算問題確定モジュールと;
各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行い、前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力することにより、前記被検索試験紙上の被添削暗算問題の添削を完成するために用いられる、暗算問題添削モジュール。
【0022】
任意的に、前記暗算問題確定モジュールは、前記目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一の状況において、該被検索問題を被添削暗算問題として確定するためにも用いられる。
【0023】
任意的に、前記試験紙確定モジュールは、所定の条件を満たす目標試験紙が存在せず、且つ前記被検索試験紙において問題タイプが暗算問題である被検索問題が含まれるとき、問題タイプが暗算問題である被検索問題を被添削暗算問題として確定するためにも用いられる。
【0024】
任意的に、前記暗算問題添削モジュールは、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力するためにも用いられる。
【0025】
任意的に、前記暗算問題添削モジュールは、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致しないとき、該被添削暗算問題の参考解答が一致しないことを表すために用いられるプロンプト情報を出力するためにも用いられる。
【0026】
任意的に、前記予め設けられた暗算エンジンは予め訓練された第1識別モデルを含み、前記第1識別モデルはニューラルネットワークに基づくモデルであり;
前記暗算問題添削モジュールが、前記予め訓練された第1識別モデルを用いて該被添削暗算問題中の数字、アルファベット、文字、記号、及び計算タイプを識別し、前記計算タイプが四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算のうちの1つを含み;識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、該被添削暗算問題の計算結果を得るために用いられる。
【0027】
任意的に、前記問題検索モジュールは、以下を含む:
各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに入力し、各被検索問題の語幹の特徴ベクトルを得て、各被検索問題の特徴ベクトルとするために用いられる、特徴ベクトル取得ユニットであって、語幹ベクトル化モデルがニューラルネットワークに基づくモデルであることと;
各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定するために用いられる、問題検索ユニット。
【0028】
任意的に、前記語幹ベクトル化モデルは以下のステップを介し訓練される:
問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングすることと、
ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことにより、前記語幹ベクトル化モデルを訓練する。
【0029】
任意的に、前記装置は更に下記を含む:
予め問題データベース中の試験紙上の各問題の特徴ベクトルに対しインデックス情報テーブルを構築するために用いられる、前処理モジュールと;
具体的には、各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索し;一致する特徴ベクトルの前記インデックス情報テーブル中の対応する問題を該被検索問題に最も近い問題として確定するために用いられる、前記問題検索ユニット。
【0030】
任意的に、前記前処理モジュールは、前記インデックス情報テーブルを構築する前に、異なる長さの特徴ベクトルを長さに従いグループ分けするためにも用いられる。
【0031】
前記問題検索ユニットは、具体的には、各被検索問題に対し、前記インデックス情報テーブル中の該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索するために用いられる。
【0032】
任意的に、前記試験紙確定モジュールは、具体的には、出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いられる。
【0033】
任意的に、前記検出識別モジュールは、具体的には、予め訓練された検出モデルを用いて前記被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出するために用いられ、前記検出モデルはニューラルネットワークに基づくモデルである。
【0034】
任意的に、前記検出識別モジュールは、具体的には、予め訓練された第2識別モデルを用いて各被検索問題の領域中の語幹の文字内容を識別するために用いられ、前記第2識別モデルはニューラルネットワークに基づくモデルである。
【0035】
任意的に、前記暗算問題に対する問題添削装置は以下を更に含む:
予め設けられた暗算エンジンを用いて前記被検索試験紙中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を取得するために用いられる、計算モジュール;
ここで、前記暗算問題添削モジュールは各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題の領域に対応する計算結果を、該被添削暗算問題の解答とすることにより、前記被検索試験紙上の被添削暗算問題の添削を完成する。
【0036】
上記目的を達成するため、本発明は、プロセッサと、通信インターフェイスと、メモリと、通信バスとを含む、電子機器も提供し、そのうち、プロセッサ、通信インターフェイス、メモリは通信バスを介し相互間の通信を完成し;
メモリは、コンピュータプログラムを格納するために用いられ;
プロセッサは、メモリに格納されたプログラムを実行するとき、上記のいずれか1つの暗算問題に対する問題添削方法の方法ステップを実現するために用いられる。
【0037】
上記目的を達成するため、本発明はコンピュータ読み取り可能な記憶媒体を更に提供し、前記コンピュータ読み取り可能な記憶媒体はコンピュータプログラムを格納し、前記コンピュータプログラムはプロセッサにより実行されたとき上記のいずれか1つの暗算問題に対する問題添削方法の方法ステップを実現することを特徴とする。
【0038】
上記目的を達成するため、本発明は暗算問題に対する問題添削方法を更に提供し、前記方法は以下を含む:
ステップS41:被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別することと;
ステップS42:予め設けられた暗算エンジンを用いて前記被検索試験紙中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を得ることと;
ステップS43:各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すことと;
ステップS44:探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、集約した試験紙を所定の条件と比較し、所定の条件を満たす目標試験紙が存在する場合、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することと;
ステップS45:前記被検索試験紙中に問題タイプが暗算問題の被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定することと;
ステップS46:各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題の領域に対応する計算結果を、該被添削暗算問題の解答とすることにより、前記被検索試験紙上の被添削暗算問題の添削を完成すること。
【0039】
上記目的を達成するため、本発明は暗算問題に対する問題添削装置を更に提供し、前記装置は以下を含む:
被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別するために用いられる、検出識別モジュールと;
予め設けられた暗算エンジンを用いて前記被検索試験紙中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を得るために用いられる、計算モジュールと、
各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すために用いられる、問題検索モジュールと;
探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、集約した試験紙を所定の条件と比較し、所定の条件を満たす目標試験紙が存在する場合、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いられる、試験紙確定モジュールと;
前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定するために用いられる、暗算問題確定モジュールと;
各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題領域に対応する計算結果を、該被添削暗算問題の解答とすることにより、前記被検索試験紙上の被添削暗算問題の添削を完成するために用いられる、暗算問題添削モジュール。
【0040】
既存技術と比較し、本発明は被検索試験紙に対し、先ず各被検索問題の語幹の文字内容に基づき被検索問題の特徴ベクトルを取得し、その後、各被検索問題の特徴ベクトルを用いて問題データベースから被検索試験紙に一致する目標試験紙を検索し、問題タイプが暗算問題である被検索問題に対し、目標試験紙内部において問題の特徴ベクトルに基づき2次検索を行い、検索の基準は最短編集距離が最も短いことであり、一致する目標問題の問題タイプも暗算問題である場合、被検索問題を被添削暗算問題として確定し、予め設けられた暗算エンジンを用いて被添削暗算問題に対し計算を行って計算結果を被添削暗算問題の解答として出力する。
【0041】
被添削暗算問題に対し、語幹の文字内容に基づき取得された特徴ベクトルが互いに区別しにくいことから、問題データベース中から検索した目標試験紙中の参考解答が被添削暗算問題と一致しない可能性も比較的高く、このため2次検索で被添削暗算問題を確定して暗算エンジンを介し計算を行うことで、暗算問題の添削の正確性を高めることができることが分かる。
【図面の簡単な説明】
【0042】
図1図1は、本発明の1つの実施例が提供する暗算問題に対する問題添削方法の概略フロー図である。
図2図2は、本発明の1つの実施例が提供する暗算問題の問題添削装置の概略構造図である。
図3図3は、本発明の1つの実施例が提供する電子機器の概略構造図である。
図4図4は、本発明のもう1つの実施例が提供する暗算問題に対する問題添削方法の概略フロー図である。
図5図5は、本発明のもう1つの実施例が提供する暗算問題の問題添削装置の概略構造図である。
【発明を実施するための形態】
【0043】
以下に添付図面と具体的な実施例とを組み合わせて本発明が提示する暗算問題に対する問題添削方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体について更に詳細に説明する。請求項と下記説明とに基づき、本発明の利点と特徴が更に明確となる。
【0044】
既存技術の課題を解決するため、本発明の実施例は暗算問題に対する問題添削方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体を提供する。
【0045】
説明すべき点として、本発明の実施例の暗算問題に対する問題添削方法は本発明の実施例の暗算問題に対する問題添削装置に応用可能であり、該暗算問題に対する問題添削装置は電子機器に配置されることができる。ここで、該電子機器はコンピュータ、移動端末等であり得、該移動端末は携帯電話、タブレットコンピュータ等の各種オペレーティングシステムを有するハードウェア機器であり得る。
【0046】
[実施例1]
図1は、本発明の1つの実施例の提供する暗算問題に対する問題添削方法の概略フロー図である。図1を参照し、暗算問題に対する問題添削方法は以下のステップを含んでよい:
ステップS11:被検索試験紙の画像に対し検出を行い、被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別する。
【0047】
被検索試験紙の画像は被検索試験紙を含む画像であってよい。具体的には、検出モデルを用いて被検索試験紙の画像に対し検出を行い、被検索試験紙上の各被検索問題の領域を検出し、前記検出モデルはニューラルネットワークに基づくモデルである。ここで、検出モデルは、例えば深層畳み込みニューラルネットワーク(Convolutional neural network、CNN)に基づき試験紙サンプル訓練セット中のサンプルに対して訓練を行い得られたものであってよい。訓練済みの検出モデルを用いて被検索試験紙の画像から2次元特徴ベクトルを抽出し、2次元特徴ベクトルの各グリッドに異なる形状のアンカーポイントを生成し、グラウンドトゥルースボックス(Groundtruth Boxes)を用いて、検出した各被検索問題の領域にラベリングを行い、グラウンドトゥルースボックスを生成されたアンカーポイントと回帰(regression)処理を行うことで、グラウンドトゥルースボックスを問題の実際の位置に更に近づけることもできる。問題領域を識別した後、各被検索問題を単一画像として切断する、或いは実際には切断せず、処理時において各被検索問題領域を単一領域画像に分割し処理を行い、問題位置情報に基づき配列を行ってよい。
【0048】
各被検索問題の領域を検出した後、分類識別モデルを用いて各被検索問題の問題タイプを確定してよく、前記分類識別モデルはニューラルネットワークに基づくモデルである。ここで、分類識別モデルは、例えば深層畳み込みニューラルネットワークに基づき試験紙サンプル訓練セット中のサンプルに対して訓練を行い得られたものであってよく、各サンプル中の問題は均しく問題タイプがラベリングされている。問題タイプは、演算問題、暗算問題、空欄記入問題、選択問題、応用問題等に分けられてよい。
【0049】
同時に、第2識別モデルを用いて被検索問題領域中の語幹の文字内容を識別してもよく、前記第2識別モデルはニューラルネットワークに基づくモデルである。先ず被検索問題中の各構成部分をラベリングし、構成部分は語幹、解答及び/又は図を含んでよく、次いで第2識別モデルを介し問題中の語幹の文字内容を識別する。ここで、第2識別モデルは膨張畳み込み(Dilated Convolution)とアテンションモデル(Attention Model)に基づき確立されたものであってよく、具体的には、膨張畳み込みを用いて語幹、解答及び/又は図に対応するグラウンドトゥルースボックスに対し特徴抽出を行い、アテンションモデルを介し、抽出した特徴を文字にデコードする。
【0050】
ステップS12:各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探す。
【0051】
具体的には、ステップS12は以下を更に含んでよい:
ステップS121:各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに入力し、各被検索問題の語幹の特徴ベクトルを得て、各被検索問題の特徴ベクトルとすることであって、前記語幹ベクトル化モデルはニューラルネットワークに基づくモデルである。
【0052】
例を挙げると、例えば被検索問題中の語幹の文字内容が「4.明君は3分間歩き全行程のちょうど半分に達するとすると、彼の家は学校から何メートル離れているか?(6分)」とすると、該文字内容を予め訓練された語幹ベクトル化モデル-sent2vecモデルに入力し、該語幹の特徴ベクトルを取得し、特徴ベクトルは[x0,x1,x2…,xn]として表されることができる。
【0053】
ここで、前記語幹ベクトル化モデルは、例えばCNNモデルといったニューラルネットワークに基づくモデルであってよく、前記語幹ベクトル化モデルは以下のステップを介し訓練される:問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングする;ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことで、前記語幹ベクトル化モデルを訓練する。そのうち、具体的な訓練過程は既存技術に属し、ここでは繰り返し説明しない。
【0054】
ステップS122:各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定すること。
【0055】
ここで、ベクトル近似検索の方法を介し、問題データベースにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索してよく、具体的には問題データベースにおいて該被検索問題の特徴ベクトルと距離が最も近い特徴ベクトルを検索する。異なるベクトル間の類似度測定(Similarity Measurement)で一般的に用いる方法はベクトル間の「距離(Distance)」を算出することであり、一般的な距離算出方法は、ユークリッド距離、マンハッタン距離、コサイン(Cosine)等を有することが理解される。本実施例1が採用する算出方法はコサインである。
【0056】
好ましくは、特徴ベクトル検索に利するよう、予め問題データベース中の試験紙上の各問題の特徴ベクトルでインデックス情報テーブルを構築してもよい。インデックス情報テーブル中には問題データベース中の各問題の特徴ベクトル、問題の具体的内容、問題が存在する試験紙のID等を格納できる。
【0057】
対応して、ステップS122は更に以下を含んでよい:各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することと;一致する特徴ベクトルの前記インデックス情報テーブルにおいて対応する問題を該被検索問題に最も近い問題として確定すること。
【0058】
インデックス情報テーブルにおいて一致する特徴ベクトルを探し出した後、前記インデックス情報テーブルにおいて最も近い問題が探し出されたとき、最も近い問題の具体的内容(問題の語幹、解答及び/又は図を含む)、及び該最も近い問題が存在する試験紙のID情報を取得できることが理解される。
【0059】
好ましくは、前記インデックス情報テーブルを構築する前に、異なる長さの特徴ベクトルを長さに従いグループ分けしてもよく、このようにして、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索するとき、先ず前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルの長さと同一又は近いグループを見つけ(ここで、前記長さが近いグループとは、被検索問題の特徴ベクトルの長さとインデックス情報テーブル中の特徴ベクトルの長さとの差が特定値又は所定値よりも小さいことを指す)、そして前記インデックス情報テーブル中の該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索できる。ここで、グループ分けの際には長さが同一の特徴ベクトルを1グループとして分けてよく、長さがある範囲内の特徴ベクトルを1グループとして分けてもよく、本発明はこれに対し限定しない。異なる長さの特徴ベクトルを長さに従いグループ分けすると、後に問題検索するとき、特徴ベクトルの長さに基づき対応するグループ内でクエリを行うことができ、問題検索速度が速まることが分かる。特徴ベクトルの長さが異なるのは、語幹の文字数が異なることによるものであることが理解される。
【0060】
ステップS13:探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす試験紙を被検索試験紙に一致する目標試験紙として確定すること。具体的には、集約した試験紙を所定の条件と比較することを介し、所定の条件を満たす目標試験紙が存在するか否かの情報を得られ、所定の条件を満たす目標試験紙が存在するとき、対応する所定の条件を満たす試験紙を得られる。
【0061】
ここで、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することは、具体的には、出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙を前記被検索試験紙に一致する目標試験紙として確定することであってよい。実際には処理の際に、問題データベース中の各問題はいずれも対応する試験紙ID情報と現在の試験紙における位置情報とを有することから、最も近い問題が存在する試験紙IDに基づき最も近い問題がどの試験紙に属するものであるかを判断でき、次いで出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙IDを確定でき、これにより該試験紙IDを一致する目標試験紙として確定する。ここで、ある試験紙の出現頻度は以下の方法で算出できる:該試験紙の被検索問題における最も近い問題の数と被検索試験紙中の被検索問題の総数との割合、或いは、該試験紙の被検索試験紙に一致する問題の数と被検索試験紙中の被検索問題の総数との割合。出現頻度が最も高い試験紙の出現頻度が第1所定閾値未満の場合、該出現頻度が最も高い試験紙と被検索試験紙中には一致する問題の数が少なすぎることを表し、このとき問題データベース中には被検索試験紙に一致する目標試験紙が存在しないと見なすことができる。
【0062】
更に、ステップS13において所定の条件を満たす目標試験紙が存在しない状況において、前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれるとき、問題タイプが暗算問題である被検索問題を被添削問題として確定し、各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行って該被添削暗算問題の計算結果を該被添削暗算問題の解答として出力し、前記被検索試験紙上の被添削暗算問題の添削を完成してよい。
【0063】
ステップS14:被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、目標試験紙中の該被検索問題に一致する目標問題を確定し、目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定すること。
【0064】
具体的には、問題タイプが暗算問題である被検索問題に対し、最短編集距離マッチングを行うプロセスは2次検索のプロセスと称することができ、2次検索を介し被検索試験紙中の暗算問題を更に確認できる。2次検索のとき、問題タイプが暗算問題である各被検索問題に対し、目標試験紙中の該被検索問題との最短編集距離が最短で且つ第2所定閾値未満の問題を該被検索問題の検索結果、即ち目標試験紙中の該被検索問題に一致する目標問題とすることができる。目標問題の問題タイプがやはり暗算問題である場合、該被検索問題が確実に暗算問題であることが確認でき、これにより該被検索問題を被添削暗算問題として確定する。そのうち、特徴ベクトルに対し最短編集距離マッチングを行うアルゴリズムは本分野の慣例的な計算方法に属し、ここでは繰り返し説明しない。
【0065】
例を挙げると、例えば暗算問題Aが「385×8-265=()」、暗算問題Bが「375×8-265=()」である場合、これら2つの問題の語幹ベクトル化を用いて取得される特徴ベクトルは非常に似ており、このため、被検索試験紙中のある問題が「385×8-265=()」である場合、ステップS12において容易に問題データベース中の暗算問題Bを該問題に最も近い問題として確定してしまい、即ちこのとき該問題に対する検索結果は正確でない。正確性を高めるため、該問題に対し目標試験紙において2次検索を行い、検索の基準は文字の最短編集距離が最も短いことであり、最短編集距離は重みを計算しないことから、該問題の目標試験紙において対応する目標問題が暗算問題Aであると容易に探し出すことができ、暗算問題Aの問題タイプが暗算問題としてラベリングされていることから、該問題は確実に暗算問題であると確定する。
【0066】
更に、ステップS14において、目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一である状況において、該被検索問題を被添削暗算問題として確定してもよい。被検索問題と目標問題の位置に対し確認を行うことは、即ち被検索試験紙中の暗算問題として識別された問題の被検索試験紙における位置と、目標問題の目標試験紙における位置とを比較し、両者の位置が同一であることは目標問題が確実に該被検索問題の正確な検索結果であることを表し、このようにして識別時にベクトルの差異から誤って該被検索問題を目標試験紙中のもう1つの近い問題として識別することを避けることができる。例を挙げると、被添削暗算問題の被検索試験紙において位置する領域が、目標問題が目標試験紙において位置する領域と一致すると、二者の位置は同一であることを表す。
【0067】
ステップS15:各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行い、暗算エンジンの計算結果を該被添削暗算問題の解答として出力し、被検索試験紙上の被添削暗算問題の添削を完成すること。
【0068】
ここで、前記予め設けられた暗算エンジンは予め訓練された第1識別モデルを含んでよく、前記第1識別モデルはニューラルネットワークに基づくモデルであり、第2識別モデルに同じく、第1識別モデルは膨張畳み込みとアテンションモデルに基づき確立されたものであってよく、具体的には、膨張畳み込みを用いて被添削暗算問題に対し特徴抽出を行い、アテンションモデルを介し抽出した特徴を文字にデコードする。
【0069】
ステップS15中の予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行うことは、以下を含んでよい:先ず、前記予め訓練された第1識別モデルを介し該被添削暗算問題中の数字、アルファベット、文字、記号、及び計算タイプを識別し、前記計算タイプは四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算を含んでよい;その後、識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、該被添削暗算問題の計算結果を得る。例を挙げると、例えば被添削暗算問題が「385×8-265=()」であり、暗算エンジンは第1識別モデルを介し「3」、「8」、「5」、「×」、「8」、「-」、「2」、「6」、「5」、「=」、「(」、「)」、計算タイプが四則の組合せ計算であることを識別し、次いで自動計算して計算結果を得る。
【0070】
更に、暗算問題の添削結果が正確であることを保証するため、ステップS15は以下を含んでよい:前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力すること。
【0071】
更に、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の参考解答と一致しないとき、該被添削暗算問題の参考解答と一致しないことを表すために用いられるプロンプト情報を出力することで、試験紙添削者に該被添削暗算問題に注意するよう提示する。
【0072】
例を挙げると、暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致する場合、該被添削暗算問題の領域内に暗算エンジンの計算結果を表示し、一致しない場合は、該被添削暗算問題の領域内にプロンプト情報を表示し、プロンプト情報は「解答は確定待ち、手動で添削してください」といったものであってよい。
【0073】
まとめると、既存技術と比較し、本発明は被検索試験紙に対し、先ず各被検索問題の語幹の文字内容に基づき被検索問題の特徴ベクトルを取得し、その後各被検索問題の特徴ベクトルを用いて問題データベース中から被検索試験紙に一致する目標試験紙を検索し、問題タイプが暗算問題である被検索問題に対し、目標試験紙内部において問題の特徴ベクトルに基づき2次検索を行い、検索の基準は最短編集距離が最も短いことであり、一致した目標問題の問題タイプも暗算問題である場合、被検索問題を被添削暗算問題として確認し、予め設けられた暗算エンジンを用いて被添削暗算問題に対し計算を行って計算結果を被添削暗算問題の解答として出力する。被添削暗算問題に対し、語幹の文字内容に基づき取得された特徴ベクトルが互いに区別しにくいことから、問題データベース中から検索した目標試験紙中の参考解答が被添削暗算問題と一致しない可能性も比較的高く、このため2次検索で被添削暗算問題を確定して暗算エンジンを介し計算を行うことで、暗算問題の添削の正確性を高めることができることが分かる。
【0074】
上記の暗算問題に対する問題添削方法の実施例に対応し、本発明は暗算問題の問題添削装置を提供し、図2を参照し、該装置は以下を含む:
被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別するために用いることのできる、検出識別モジュール21と;
各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すために用いることのできる、問題検索モジュール22と;
探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いることのできる、試験紙確定モジュール23と;
前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定するために用いることのできる、暗算問題確定モジュール24と;
各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行い、前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力し、前記被検索試験紙上の被添削暗算問題の添削を完成するために用いることのできる、暗算問題添削モジュール25。
【0075】
任意的に、前記暗算問題確定モジュール25は、前記目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一である状況において、該被検索問題を被添削暗算問題として確定するために用いられてもよい。
【0076】
任意的に、前記試験紙確定モジュール23は、所定の条件を満たす目標試験紙が存在しない状況において、前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれるとき、問題タイプが暗算問題である被検索問題を被添削暗算問題として確定し、各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行って該被添削暗算問題の計算結果を該被添削暗算問題の解答として出力し、前記被検索試験紙上の被添削暗算問題の添削を完成するために用いられてもよい。
【0077】
任意的に、前記暗算問題添削モジュール25は、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力するために用いられてもよい。
【0078】
任意的に、前記暗算問題添削モジュール25は、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致しないとき、該被添削暗算問題の参考解答が一致しないことを表すために用いられるプロンプト情報を出力することで、試験紙添削者に該被添削暗算問題に注意するよう提示するために用いられてもよい。
【0079】
任意的に、前記予め設けられた暗算エンジンは予め訓練された第1識別モデルを含んでよく、前記第1識別モデルはニューラルネットワークに基づくモデルである;
前記暗算問題添削モジュール25は、具体的には、前記予め訓練された第1識別モデルを介し該被添削暗算問題中の数字、アルファベット、文字、記号、及び計算タイプを識別するために用いられてよく、前記計算タイプは四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算を含む;識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、該被添削暗算問題の計算結果を得る。
【0080】
任意的に、前記問題検索モジュール22は、以下を含んでよい:
各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに出力し、各被検索問題の語幹の特徴ベクトルを得て、各被検索問題の特徴ベクトルとするために用いることのできる、特徴ベクトル取得ユニットであって、前記語幹ベクトル化モデルはニューラルネットワークに基づくモデルである;
各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定するために用いることのできる、問題検索ユニット。
【0081】
任意的に、前記語幹ベクトル化モデルは以下のステップを介し訓練されてよい:
問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングする;
ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことにより、前記語幹ベクトル化モデルを訓練する。
【0082】
任意的に、装置は以下を含んでもよい:
予め問題データベース中の試験紙上の各問題の特徴ベクトルに対しインデックス情報テーブルを構築するために用いることのできる、前処理モジュール;
前記問題検索ユニットは、具体的には、各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索するために用いることができる;一致する特徴ベクトルの前記インデックス情報テーブルにおいて対応する問題を該被検索問題に最も近い問題として確定する。
【0083】
任意的に、前記前処理モジュールは、前記インデックス情報テーブルを構築する前に、異なる長さの特徴ベクトルを長さに従いグループ分けするために用いられてもよい;
前記問題検索ユニットは、具体的には、各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索するために用いられてよい。
【0084】
任意的に、前記試験紙確定モジュール23は、具体的には、出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙を前記被検索試験紙に一致する目標試験紙として確定してよい。
【0085】
任意的に、前記検出識別モジュール21は、具体的には、予め訓練された検出モデルを用いて前記被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出するために用いられてよく、そのうち、前記検出モデルはニューラルネットワークに基づくモデルである。
【0086】
任意的に、前記検出識別モジュール21は、具体的には、予め訓練された第2識別モデルを用いて各被検索問題の領域中の語幹の文字内容を識別するために用いられてよく、そのうち、第2識別モデルはニューラルネットワークに基づくモデルである。
【0087】
本発明の実施例1は電子機器を更に提供し、図3に示されるように、プロセッサ301と、通信インターフェイス302と、メモリ303と、通信バス304とを含み、そのうち、プロセッサ301、通信インターフェイス302、メモリ303は通信バス304を介し相互間の通信を完成し、
メモリ303は、コンピュータプログラムを格納するために用いられ;
プロセッサ301は、メモリ303に格納されたプログラムを実行するとき、以下のステップを実現するために用いられる:
ステップS11:被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、また各被検索問題の領域中の語幹の文字内容を識別することと;
ステップS12:各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すことと;
ステップS13:探し出された被検索問題に最も近い問題の存在する全ての試験紙を集約し、所定の条件を満たす標試験紙を前記被検索試験紙に一致する目標試験紙として確定することと;
ステップS14:前記被検索試験紙に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定することと;
ステップS15:各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行い、前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力し、前記被検索試験紙上の被添削暗算問題の添削を完成すること。
【0088】
該方法の各ステップの具体的な実現と関連する説明内容は上述した図1に示される方法実施例を参照でき、ここでは繰り返し説明しない。
【0089】
このほか、プロセッサ301がメモリ303に格納されたプログラムを実行して実現する暗算問題に対する問題添削方法のその他の実現方法は、上述した方法実施例部分で言及した実現方法と同一であり、ここでは再度説明しない。
【0090】
上述した電子機器で言及した通信バスは、PCI(Peripheral Component Interconnect)バス又はEISA(Extended Industry Standard Architecture)バス等であってよい。該通信バスは、アドレスバス、データバス、制御バス等に分けられてよい。表示し易いよう、図では1つの太線で表しているのみであるが、僅か1つのバス又は1種類のバスを有するのみであることを表していない。
【0091】
通信インターフェイスは、上述した電子機器と他の機器との間の通信に用いられる。
【0092】
メモリは、RAM(Random Access Memory)を含んでよく、例えば少なくとも1つのディスクストレージといった不揮発性メモリ(Non-Volatile Memory、NVM)を含んでもよい。任意的に、メモリは前述したプロセッサから離れて位置する少なくとも1つのストレージデバイスであってもよい。
【0093】
上述したプロセッサは、中央処理装置(Central Processing Unit、CPU)、ネットワークプロセッサ(Network Processor、NP)等を含む汎用プロセッサであってよく、デジタル信号処理(Digital Signal Processing、DSP)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)、又はその他のプログラマブル論理デバイス、離散ゲート又はトランジスタ論理デバイス、離散ハードウェアコンポーネントであってもよい。
【0094】
本発明の実施例1は、コンピュータ読み取り可能な記憶媒体を更に提供し、該コンピュータ読み取り可能な記憶媒体内にはコンピュータプログラムが格納され、該コンピュータプログラムがプロセッサにより実行されるとき上述した暗算問題に対する問題添削方法のステップを実現する。
【0095】
[実施例2]
図4は、本発明のもう1つの実施例の提供する暗算問題に対する問題添削方法の概略フロー図である。図4を参照し、暗算問題に対する問題添削方法は以下のステップを含んでよい:
ステップS41:被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別すること。
【0096】
被検索試験紙の画像は、被検索試験紙のイメージを含むものであってよい。具体的には、検出モデルを用いて被検索試験紙の画像に対し検出を行い、被検索試験紙上の各被検索問題の領域を検出してよく、前記検出モデルはニューラルネットワークに基づくモデルである。ここで、検出モデルは、例えば深層畳み込みニューラルネットワーク(Convolutional neural network、CNN)に基づき試験紙サンプル訓練セット中のサンプルに対して訓練を行い得られたものであってよい。訓練済みの検出モデルを用いて被検索試験紙の画像から2次元特徴ベクトルを抽出し、2次元特徴ベクトルの各グリッドに異なる形状のアンカーポイントを生成し、グラウンドトゥルースボックス(Groundtruth Boxes)を用いて、検出した各被検索問題の領域にラベリングを行い、グラウンドトゥルースボックスを生成されたアンカーポイントと回帰(regression)処理を行うことで、グラウンドトゥルースボックスを問題の実際の位置に更に近づけることもできる。問題領域を識別した後、各被検索問題を単一画像として切断する、或いは実際には切断せず、処理時において各被検索問題領域を単一領域画像に分割し処理を行い、問題位置情報に基づき配列を行ってよい。
【0097】
各被検索問題の領域を検出した後、分類識別モデルを用いて各被検索問題の問題タイプを確定してよく、前記分類識別モデルはニューラルネットワークに基づくモデルである。ここで、分類識別モデルは、例えば深層畳み込みニューラルネットワークに基づき試験紙サンプル訓練セット中のサンプルに対して訓練を行い得られたものであってよく、各サンプル中の問題は均しく問題タイプがラベリングされている。問題タイプは、演算問題、暗算問題、空欄記入問題、選択問題、応用問題に分けられてよい。
【0098】
同時に、第2識別モデルを用いて被検索問題領域中の語幹の文字内容を識別してもよく、前記第2識別モデルはニューラルネットワークに基づくモデルである。先ず被検索問題中の各構成部分をラベリングし、構成部分は語幹、解答及び/又は図を含んでよく、次いで第2識別モデルを介し問題中の語幹の文字内容を識別する。ここで、第2識別モデルは膨張畳み込みとアテンションモデルに基づき確立されたものであってよく、具体的には、膨張畳み込みを用いて語幹、解答及び/又は図に対応するグラウンドトゥルースボックスに対し特徴抽出を行い、アテンションモデルを介し、抽出した特徴を文字にデコードする。
【0099】
ステップS42:予め設けられた暗算エンジンを用いて被検索試験紙中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を得ること。
【0100】
ここで、前記予め設けられた暗算エンジンは予め訓練された第1識別モデルを含んでよく、前記第1識別モデルはニューラルネットワークに基づくモデルであり、第2識別モデルに同じく、第1識別モデルは膨張畳み込みとアテンションモデルに基づき確立されたものであってよく、具体的には、膨張畳み込みを用いて被添削暗算問題に対し特徴抽出を行い、アテンションモデルを介し、抽出した特徴を文字にデコードする。
【0101】
ステップS42中の予め設けられた暗算エンジンを用いて該被検索試験紙中の計算式及び/又は公式を含む領域に対し計算を行うことは、以下を含んでよい:前記予め訓練された第1識別モデルを介し前記被検索試験紙中の計算式及び/又は公式を含む領域内の数字、アルファベット、文字、記号、及び計算タイプを識別することであって、前記計算タイプは四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算を含んでよい;識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、各領域の計算結果を得る。例を挙げると、例えば被検索試験紙中のある領域が「385×8-265=()」を含み、該領域に対し、暗算エンジンは第1識別モデルを介し「3」、「8」、「5」、「×」、「8」、「-」、「2」、「6」、「5」、「=」、「(」、「)」、計算タイプが四則の組合せ計算であることを識別でき、次いで自動計算して該領域の計算結果を得る。
【0102】
ステップS43:各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すこと。
【0103】
具体的には、ステップS43は更に以下を含んでよい:
ステップS431、各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに入力し、各被検索問題の語幹の特徴ベクトルを取得し、各被検索問題の特徴ベクトルとすることであって、前記語幹ベクトル化モデルはニューラルネットワークに基づくモデルである。
【0104】
例を挙げると、例えば被検索問題中の語幹の文字内容が「4.明君は3分間歩き全行程のちょうど半分に達するとすると、彼の家は学校から何メートル離れているか?(6分)」とすると、該文字内容を予め訓練された語幹ベクトル化モデル-sent2vecモデルに入力し、該語幹の特徴ベクトルを取得し、特徴ベクトルは[x0,x1,x2…,xn]として表されることができる。
【0105】
ここで、前記語幹ベクトル化モデルは、例えばCNNモデルといったニューラルネットワークに基づくモデルであってよく、前記語幹ベクトル化モデルは以下のステップを介し訓練されてよい:問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングすることと;ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことで、前記語幹ベクトル化モデルを訓練すること。そのうち、具体的な訓練過程は既存技術に属し、ここでは繰り返し説明しない。
【0106】
ステップS432、各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定すること。
【0107】
ここで、ベクトル近似検索の方法を介し、問題データベースにおいて該被検索問題の特徴ベクトルと一致する特徴ベクトルを検索してよく、具体的には、問題データベースにおいて該被検索問題の特徴ベクトルと距離が最も近い特徴ベクトルを検索する。異なるベクトル間の類似度測定(Similarity Measurement)で一般的に用いる方法はベクトル間の「距離(Distance)」を算出することであり、一般的な距離算出方法は、ユークリッド距離、マンハッタン距離、コサイン(Cosine)等を有することが理解される。本実施例2が採用する計算方法はコサインである。
【0108】
好ましくは、特徴ベクトル検索に利するよう、予め問題データベース中の試験紙上の各問題の特徴ベクトルでインデックス情報テーブルを構築してもよい。インデックス情報テーブル中には問題データベース中の各問題の特徴ベクトル、問題の具体的内容、問題が存在する試験紙のID等を格納できる。
【0109】
対応して、ステップS432は更に以下を含んでよい:各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索することと;一致する特徴ベクトルの前記インデックス情報テーブルにおいて対応する問題を該被検索問題に最も近い問題として確定すること。
【0110】
インデックス情報テーブルにおいて一致する特徴ベクトルを探し出した後、インデックス情報テーブルにおいて最も近い問題が探し出されたとき、最も近い問題の具体的内容(問題の語幹、解答及び/又は図)と該最も近い問題が存在する試験紙のID情報とを取得できることが理解される。
【0111】
好ましくは、前記インデックス情報テーブルを構築する前に、異なる長さの特徴ベクトルを長さに従いグループ分けしてもよく、このようにして、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルと一致する特徴ベクトルを検索するとき、先ず前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルの長さと同一又は近いグループを見つけ(ここで、長さが近いグループとは、被検索問題の特徴ベクトルの長さとインデックス情報テーブルにおける特徴ベクトルの長さとの差が特定値又は所定値よりも小さいことを指す)、そして前記インデックス情報テーブル中の該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルと一致する特徴ベクトルを検索できる。ここで、グループ分けの際には長さが同一の特徴ベクトルを1グループとして分けてよく、長さがある範囲内の特徴ベクトルを1グループとして分けてもよく、本発明はこれに対し限定しない。異なる長さの特徴ベクトルを長さに従いグループ分けすると、後に問題検索するとき、特徴ベクトルの長さに基づき対応するグループ内でクエリを行うことができ、問題検索速度が速まることが分かる。特徴ベクトルの長さが異なるのは、語幹の文字数が異なることによるものであることが理解される。
【0112】
ステップS44:探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす試験紙を被検索試験紙に一致する目標試験紙として確定すること。具体的には、集約した試験紙を所定の条件と比較することを介し、所定の条件を満たす目標試験紙が存在するか否かの情報を得られ、所定の条件を満たす目標試験紙が存在するとき、対応する所定の条件を満たす試験紙を得られる。
【0113】
ここで、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することは、具体的には、出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙を前記被検索試験紙に一致する目標試験紙として確定することであってよい。実際には処理の際に、問題データベース中の各問題はいずれも対応する試験紙ID情報と現在の試験紙における位置情報とを有することから、最も近い問題が存在する試験紙IDに基づき最も近い問題がどの試験紙に属するものであるかを判断でき、次いで出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙IDを確定でき、これにより該試験紙IDを一致する目標試験紙として確定する。ここで、ある試験紙の出現頻度は以下の方法で算出できる:該試験紙の被検索問題における最も近い問題の数と被検索試験紙中の被検索問題の総数との割合、或いは、該試験紙の被検索試験紙に一致する問題の数と被検索試験紙中の被検索問題の総数との割合。出現頻度が最も高い試験紙の出現頻度が第1所定閾値未満の場合、該出現頻度が最も高い試験紙と被検索試験紙中には一致する問題数が少なすぎることを表し、このとき問題データベース中には被検索試験紙に一致する目標試験紙が存在しないと見なすことができる。
【0114】
更に、ステップS44において所定の条件を満たす目標試験紙が存在しない状況において、前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれるとき、問題タイプが暗算問題である被検索問題を被添削問題として確定し、各被添削暗算問題に対し、予め設けられた暗算エンジンを用いて該被添削暗算問題に対し計算を行って該被添削暗算問題の計算結果を該被添削暗算問題の解答として出力し、被検索試験紙上の被添削暗算問題の添削を完成してよい。
【0115】
ステップS45:被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、目標試験紙中の該被検索問題に一致する目標問題を確定し、目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定すること。
【0116】
具体的には、問題タイプが暗算問題である被検索問題に対し、最短編集距離マッチングを行うプロセスは2次検索のプロセスと称することができ、2次検索を介し被検索試験紙中の暗算問題を更に確認できる。2次検索のとき、各問題タイプが暗算問題である被検索問題に対し、目標試験紙中の該被検索問題との最短編集距離が最短で且つ第2所定閾値未満の問題を該被検索問題の検索結果、即ち目標試験紙中の該被検索問題に一致する目標問題とすることができる。目標問題の問題タイプがやはり暗算問題である場合、該被検索問題が確実に暗算問題であることが確認でき、これにより該被検索問題を被添削暗算問題として確定する。そのうち、特徴ベクトルに対し最短編集距離マッチングを行うアルゴリズムは本分野の慣例的な計算方法に属し、ここでは繰り返し説明しない。
【0117】
例を挙げると、例えば暗算問題Aが「385×8-265=()」、暗算問題Bが「375×8-265=()」である場合、これら2つの問題の語幹ベクトル化を用いて取得される特徴ベクトルは非常に似ており、このため、被検索試験紙中のある問題が「385×8-265=()」である場合、ステップS13において容易に問題データベース中の暗算問題Bを該問題に最も近い問題として確定してしまい、即ちこのとき該問題に対する検索結果は正確でない。正確性を高めるため、該問題に対し目標試験紙において2次検索を行い、検索の基準は文字の最短編集距離が最も短いことであり、最短編集距離は重みを計算しないことから、該問題の目標試験紙において対応する目標問題が暗算問題Aであると容易に探し出すことができ、暗算問題Aの問題タイプが暗算問題としてラベリングされていることから、該問題は確実に暗算問題であると確定する。
【0118】
更に、ステップS45において、目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一である状況において、該被検索問題を被添削暗算問題として確定してもよい。被検索問題と目標問題の位置に対し確認を行うことは、即ち被検索試験紙中の暗算問題として識別された問題の被検索試験紙における位置と、目標問題の目標試験紙における位置とを比較し、両者の位置が同一であることは目標問題が確実に該被検索問題の正確な検索結果であることを表し、このようにして識別時にベクトルの差異から誤って該被検索問題を目標試験紙中のもう1つの近い問題として識別することを避けることができる。例を挙げると、被添削暗算問題が被検索試験紙において位置する領域が、目標問題が目標試験紙において位置する領域と一致すると、二者の位置は同一であることを表す。
【0119】
ステップS46:各被添削暗算問題に対し、暗算エンジンの該被添削暗算問題領域に対応する計算結果を、該被添削暗算問題の解答として確定し、暗算エンジンの被添削暗算問題領域以外の全ての計算結果を破棄し、被検索試験紙上の被添削暗算問題の添削を完成すること。
【0120】
具体的には、ステップS42中で暗算エンジンは多くの領域の計算結果を返す可能性があり、ステップS46において、各被添削暗算問題に対し、多くの領域の計算結果から該被添削暗算問題領域と十分に重なる領域に対応する計算結果を探し、該被添削暗算問題の解答としてよい。
【0121】
更に、暗算問題添削結果の正確性を保証するため、ステップS46は以下を含んでもよい:前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力すること。
【0122】
更に、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の参考解答と一致しないとき、該被添削暗算問題の参考解答と一致しないことを表すために用いられるプロンプト情報を出力することで、試験紙添削者に該被添削暗算問題に注意するよう提示する。
【0123】
例を挙げると、暗算エンジンの計算結果が該被添削暗算問題の目標試験紙上の対応する参考解答と一致する場合、該被添削暗算問題の領域内に暗算エンジンの計算結果を表示し、一致しない場合は、該被添削暗算問題の領域内にプロンプト情報を表示し、プロンプト情報は「解答は確定待ち、手動で添削してください」といったものであってよい。
【0124】
既存技術と比較し、本発明は被検索試験紙に対し、暗算エンジンを用いて被検索試験紙に対し処理を行い、同時に各被検索問題の語幹の文字内容に基づき被検索問題の特徴ベクトルを取得し、その後各被検索問題の特徴ベクトルを用いて問題データベース中から被検索試験紙に一致する目標試験紙を検索し、問題タイプが暗算問題である被検索問題に対し、目標試験紙内部において問題の特徴ベクトルに基づき2次検索を行い、検索の基準は最短編集距離が最も短いことであり、一致する目標問題の問題タイプも暗算問題である場合、被検索問題を被添削暗算問題として確認し、暗算エンジンの被添削暗算問題領域に対応する計算結果を被添削暗算問題の解答とし、暗算エンジンの被添削暗算問題領域以外の全ての計算結果を破棄する。被添削暗算問題に対し、語幹の文字内容に基づき取得した特徴ベクトルが互いに区別しにくいことから、問題データベース中から検索した目標試験紙中の参考解答が被添削暗算問題と一致しない可能性も比較的高く、このため2次検索で被添削暗算問題を確定して暗算エンジンの被添削暗算問題領域に対応する計算結果を解答として用い、暗算問題の添削の正確性を高めることができることが分かる。
【0125】
上述した暗算問題に対する問題添削方法実施例に対応し、本発明は暗算問題に対する問題添削装置を提供し、図5を参照し、該装置は以下を含んでよい:
被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、また各被検索問題の領域中の語幹の文字内容を識別するために用いることのできる、検出識別モジュール51と;
予め設けられた暗算エンジンを用いて前記被検索試験紙上中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を得るために用いることのできる、計算モジュール52と;
各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すために用いることのできる、問題検索モジュール53と;
探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いることのできる、試験紙確定モジュール54と;
前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定するために用いることのできる、暗算問題確定モジュール55と;
各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題領域に対応する計算結果を、該被添削暗算問題の解答とし、前記暗算エンジンの被添削暗算問題領域以外の全ての計算結果を破棄し、前記被検索試験紙上の被添削暗算問題の添削を完成するために用いることのできる、暗算問題添削モジュール56。
【0126】
任意的に、前記暗算問題確定モジュール55は、前記目標問題の問題タイプが暗算問題であり、且つ前記目標問題の前記目標試験紙における位置が該被検索問題の前記被検索試験紙における位置と同一である状況において、該被検索問題を被添削暗算問題として確定するために用いられてもよい。
【0127】
任意的に、前記試験紙確定モジュール54は、所定の条件を満たす目標試験紙が存在しない状況において、前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれるとき、問題タイプが暗算問題である被検索問題を被添削暗算問題として確定し、各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題領域に対応する計算結果を、該被添削暗算問題の解答とし、前記暗算エンジンの被添削暗算問題領域以外の全ての計算結果を破棄し、前記被検索試験紙上の被添削暗算問題の添削を完成するために用いられてもよい。
【0128】
任意的に、前記暗算問題添削モジュール56は、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の対応する参考解答と一致するか否かを検証し、一致する場合は前記暗算エンジンの計算結果を該被添削暗算問題の解答として出力するために用いられてもよい。
【0129】
任意的に、前記暗算問題添削モジュール56は、前記暗算エンジンの計算結果が該被添削暗算問題の前記目標試験紙上の参考解答と一致しないとき、該被添削暗算問題の参考解答が一致しないことを表すために用いられるプロンプト情報を出力し、試験紙添削者に該被添削暗算問題に注意するよう提示するために用いられてもよい。
【0130】
任意的に、前記予め設けられた暗算エンジンは予め訓練された第1識別モデルを含んでよく、前記第1識別モデルはニューラルネットワークに基づくモデルである;
前記計算モジュール52は、具体的には、前記予め訓練された第1識別モデルを介し前記被検索試験紙中の計算式及び/又は公式を含む領域内の数字、アルファベット、文字、記号、及び計算タイプを識別するために用いられてもよく、前記計算タイプは四則の組合せ計算、推定、余りのある除算、分数計算、単位変換、垂直演算、再帰方程式演算を含む;識別された数字、アルファベット、文字、記号、及び計算タイプに基づき計算を行い、各領域の計算結果を得る。
【0131】
任意的に、前記問題検索モジュール53は、以下を含んでよい:
各被検索問題の語幹の文字内容を予め訓練された語幹ベクトル化モデルに入力し、各被検索問題の語幹の特徴ベクトルを取得し、各被検索問題の特徴ベクトルとするために用いることのできる、特徴ベクトル取得ユニットであって、前記語幹ベクトル化モデルはニューラルネットワークに基づくモデルである;
各被検索問題に対し、問題データベースにおいて検索を行い、該被検索問題の特徴ベクトルに一致する特徴ベクトルを探し、問題データベース中の一致する特徴ベクトルに対応する問題を該被検索問題に最も近い問題として確定するために用いることのできる、問題検索ユニット。
【0132】
任意的に、前記語幹ベクトル化モデルは以下のステップを介し訓練されてよい:
問題サンプル訓練セット中の各問題サンプルに対しラベリング処理を行い、各問題サンプル中の語幹の文字内容をラベリングすることと;
ニューラルネットワークモデルを用いて各問題サンプル中の語幹の文字内容に対し2次元特徴ベクトル抽出を行うことにより、前記語幹ベクトル化モデルを訓練すること。
【0133】
任意的に、前記装置は以下を含んでもよい:
予め問題データベース中の試験紙上の各問題の特徴ベクトルに対しインデックス情報テーブルを構築するために用いることのできる、前処理モジュール;
前記問題検索ユニットは、具体的には、各被検索問題に対し、前記インデックス情報テーブルにおいて該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索し、一致する特徴ベクトルの前記インデックス情報テーブル中の対応する問題を該被検索問題に最も近い問題として確定するために用いられてよい。
【0134】
任意的に、前記前処理モジュールは、前記インデックス情報テーブルを構築する前に、異なる長さの特徴ベクトルを長さに従いグループ分けすることに用いられてもよい;
前記問題検索ユニットは、具体的には、各被検索問題に対し、前記インデックス情報テーブル中の該被検索問題の特徴ベクトルの長さと同一又は近いグループ内において、該被検索問題の特徴ベクトルに一致する特徴ベクトルを検索するために用いられてよい。
【0135】
任意的に、前記試験紙確定モジュール54は、具体的には、出現頻度が最も高く且つ第1所定閾値よりも大きい試験紙を前記被検索試験紙に一致する目標試験紙として確定するために用いられてよい。
【0136】
任意的に、前記検出識別モジュール51は、具体的には、予め訓練された検出モデルを用いて前記被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出するために用いられてよく、そのうち前記検出モデルはニューラルネットワークに基づくモデルである。
【0137】
任意的に、前記検出識別モジュール51は、具体的には、予め訓練された第2識別モデルを用いて各被検索問題の領域中の語幹の文字内容を識別するために用いられてよく、そのうち、前記第2識別モデルはニューラルネットワークに基づくモデルである。
【0138】
本発明の実施例2は電子機器を更に提供し、対応して図3を参照でき、プロセッサ301と、通信インターフェイス302と、メモリ303と、通信バス304とを含み、そのうち、プロセッサ301、通信インターフェイス302、メモリ303は通信バス304を介し相互間の通信を完成し、
メモリ303は、コンピュータプログラムを格納するために用いられ;
プロセッサ301は、メモリ303に格納されたプログラムを実行するとき、以下のステップを実現する:
ステップS41:被検索試験紙の画像に対し検出を行い、前記被検索試験紙上の各被検索問題の領域を検出し、各被検索問題の問題タイプを確定し、各被検索問題の領域中の語幹の文字内容を識別することと;
ステップS42:予め設けられた暗算エンジンを用いて前記被検索試験紙中の計算式及び/又は公式を含む領域に対し計算処理を行い、各領域の計算結果を得ることと;
ステップS43:各被検索問題の語幹の文字内容に基づき、該被検索問題の特徴ベクトルを取得し、該被検索問題の特徴ベクトルに基づき問題データベースにおいて検索を行い、該被検索問題に最も近い問題を探すことと;
ステップS44:探し出された被検索問題に最も近い問題が存在する全ての試験紙を集約し、所定の条件を満たす試験紙を前記被検索試験紙に一致する目標試験紙として確定することと;
ステップS45:前記被検索試験紙中に問題タイプが暗算問題である被検索問題が含まれる状況において、問題タイプが暗算問題である各被検索問題に対し、該被検索問題の特徴ベクトルを前記目標試験紙中の各問題の特徴ベクトルと最短編集距離マッチングを行い、前記目標試験紙中の該被検索問題に一致する目標問題を確定し、前記目標問題の問題タイプが暗算問題である場合、該被検索問題を被添削暗算問題として確定することと;
ステップS46:各被添削暗算問題に対し、前記暗算エンジンの該被添削暗算問題領域に対応する計算結果を、該被添削暗算問題の解答とし、前記暗算エンジンの被添削暗算問題領域以外の全ての計算結果を破棄し、前記被検索試験紙上の被添削暗算問題の添削を完成すること。
【0139】
該方法の各ステップの具体的な実現と関連する説明内容は、上述した図4に示された方法実施例を参照でき、ここでは繰り返し説明しない。
【0140】
このほか、プロセッサ301がメモリ303に格納されたプログラムを実行して実現する試験紙中の暗算問題を添削する方法のその他の実現方法は、前述した方法実施例部分で言及された実現方法と同一であり、ここでは再度説明しない。
【0141】
上述した電子機器で言及した通信バスは、PCI(Peripheral Component Interconnect)バス又はEISA(Extended Industry Standard Architecture)バス等であってよい。該通信バスは、アドレスバス、データバス、制御バス等に分けられてよい。表示し易いよう、図では1つの太線で表しているのみであるが、僅か1つのバス又は1種類のバスを有するのみであることを表していない。
【0142】
通信インターフェイスは、上述した電子機器と他の機器との間の通信に用いられる。
【0143】
メモリは、RAM(Random Access Memory)を含んでよく、例えば少なくとも1つのディスクストレージといった不揮発性メモリ(Non-Volatile Memory、NVM)を含んでもよい。任意的に、メモリは前述したプロセッサから離れて位置する少なくとも1つのストレージデバイスであってもよい。
【0144】
上述したプロセッサは、中央処理装置(Central Processing Unit、CPU)、ネットワークプロセッサ(Network Processor、NP)等を含む汎用プロセッサであってよく、デジタル信号処理(Digital Signal Processing、DSP)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)、又はその他のプログラマブル論理デバイス、離散ゲート又はトランジスタ論理デバイス、離散ハードウェアコンポーネントであってもよい。
【0145】
本発明の実施例2はコンピュータ読み取り可能な記憶媒体を更に提供し、該コンピュータ読み取り可能な記憶媒体内にはコンピュータプログラムが格納され、該コンピュータプログラムがプロセッサにより実行されたとき上述した暗算問題に対する問題添削方法のステップを実現する。
【0146】
説明すべき点として、本明細書中の各実施例は均しく関連する方式を用いて記述しており、各実施例の間の同一、類似の部分は相互に参照でき、各実施例の重点である説明は全て他の実施例とは異なる部分である。特に、装置、電子機器、コンピュータ読み取り可能な記憶媒体の実施例について、基本的に方法実施例に類似していることから、説明は比較的単純であり、関連する部分は方法実施例の部分の説明を参照すればよい。
【0147】
上記の説明は本発明の好ましい実施例についての説明にすぎず、本発明の範囲に対し如何様にも限定しない。当業者が上述した開示内容に基づき行った改変又は変更は、均しく請求項の保護範囲に属する。

図1
図2
図3
図4
図5