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

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

▶ 株式会社日立ソリューションズ西日本の特許一覧 ▶ 株式会社ベネッセコーポレーションの特許一覧

特許7281905文書評価装置、文書評価方法及びプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-18
(45)【発行日】2023-05-26
(54)【発明の名称】文書評価装置、文書評価方法及びプログラム
(51)【国際特許分類】
   G06F 40/253 20200101AFI20230519BHJP
   G06F 40/279 20200101ALI20230519BHJP
   G06F 16/906 20190101ALI20230519BHJP
   G09B 19/00 20060101ALI20230519BHJP
   G06Q 50/20 20120101ALI20230519BHJP
   G09B 19/06 20060101ALN20230519BHJP
【FI】
G06F40/253
G06F40/279
G06F16/906
G09B19/00 H
G06Q50/20
G09B19/06
【請求項の数】 11
(21)【出願番号】P 2019004614
(22)【出願日】2019-01-15
(65)【公開番号】P2020113129
(43)【公開日】2020-07-27
【審査請求日】2021-12-23
(73)【特許権者】
【識別番号】505194686
【氏名又は名称】株式会社日立ソリューションズ西日本
(73)【特許権者】
【識別番号】709006024
【氏名又は名称】株式会社ベネッセコーポレーション
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】三好 利昇
【審査官】成瀬 博之
(56)【参考文献】
【文献】特開2001-056634(JP,A)
【文献】特開2002-140465(JP,A)
【文献】特開2017-167413(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-40/58
G06F 16/00-16/958
G06Q 10/00-99/00
G09B 1/00- 9/56
G09B 17/00-19/26
(57)【特許請求の範囲】
【請求項1】
メモリに記憶されたプログラムを実行するプロセッサと、前記プロセッサがプログラムの実行時に使用するデータを格納するメモリを有する計算機で構成される文書評価装置であって、
前記プロセッサは、前記プログラムの実行によって以下の機能部として機能するものであって、
前記文書評価装置は、
入力された採点パタン生成用の解答文から形態素と係り受け関係を解析する構文解析部と、
前記解答文から3項関係を抽出する情報抽出部と、
3項関係と、構文解析結果と、3項関係の付加情報である時制、モダリティ、及び日時との関係を教師データとして学習した機械学習モデルを用いて、前記構文解析部の解析結果と、前記情報抽出部が抽出した3項関係から当該3項関係の付加情報を推定する情報表現型推定部と、
構文解析結果と3項関係の相互の関係との関係を教師データとして学習した機械学習モデルを用いて、前記構文解析部の解析結果から前記情報抽出部が抽出した3項関係の相互の関係を推定する情報間関係推定部と、
前記解答文を階層的なクラスタに分類する階層クラスタリング部と、
前記クラスタの大きさに基づいて、前記クラスタをソートするクラスタソート部と、
読み込んだ採点結果に適合する採点条件を採点パタンとして選択する採点パタン生成部と、を有し、
前記階層クラスタリング部は、前記解答文における語句の出現比率と当該語句の重要度を乗じた値を含む特徴行列の類似度によって、前記解答文を階層的なクラスタに分類し、
前記採点パタン生成部は、
単語または語句間の上位下位関係が予め記録された意味カテゴリ辞書を用いて、前記3項関係の各項に含まれる単語または語句を上位概念に置換して、抽象化し、
前記情報抽出部が抽出した3項関係と、前記3項関係の各項の抽象化の程度と、前記情報表現型推定部が解析した前記3項関係の付加情報と、前記情報間関係推定部が推定した前記3項関係の相互の関係を組み合わせた条件のうち、採点結果の一致度が高い条件の解答文を採点パタンとして選択し、
前記クラスタソート部のソート結果に基づいて、所定の閾値以上の解答文を含むクラスタを多数派解答文と判定し、前記閾値未満の解答文を含むクラスタを少数派解答文と判定し、
前記多数派解答文から生成した採点パタンの信頼度を高く設定し、前記少数派解答文から生成した採点パタンの信頼度を低く設定することを特徴とする文書評価装置。
【請求項2】
請求項1に記載の文書評価装置であって、
採点対象解答文を読み込んで、前記採点パタンに基づいて採点結果を生成する採点部をさらに有することを特徴とする文書評価装置。
【請求項3】
請求項1に記載の文書評価装置であって、
前記情報抽出部は、前記意味カテゴリ辞書を用いて、前記解答文内の単語または語句を検出し、2つの単語または語句間の関係を表す単語または語句から前記解答文内の2つの単語または語句間の関係を推定し、前記2つの単語または語句と前記関係を表す単語または語句から成る3つの項を前記3項関係として抽出することを特徴とする文書評価装置。
【請求項4】
請求項1に記載の文書評価装置であって、
前記採点パタン生成部は、採点パタンと信頼度を表示する画面データを出力することを特徴とする文書評価装置。
【請求項5】
メモリに記憶されたプログラムを実行するプロセッサと、前記プロセッサがプログラムの実行時に使用するデータを格納するメモリを有する計算機が、解答文を採点する文書評価方法であって、
前記計算機が、入力された採点パタン生成用の解答文から形態素と係り受け関係を解析する第1のステップと、
前記計算機が、前記解答文から3項関係を抽出する第2のステップと、
前記計算機が、3項関係と、構文解析結果と、3項関係の付加情報である時制、モダリティ、及び日時との関係を教師データとして学習した機械学習モデルを用いて、前記形態素と係り受け関係の解析結果と、前記抽出された3項関係から当該3項関係の付加情報を推定する第3のステップと、
前記計算機が、構文解析結果と3項関係の相互の関係との関係を教師データとして学習した機械学習モデルを用いて、前記第1のステップにおける解析結果から前記抽出された3項関係の相互の関係を推定する第4のステップと、
前記計算機が、前記解答文を階層的なクラスタに分類する第5のステップと、
前記計算機が、前記クラスタの大きさに基づいて、前記クラスタをソートする第6のステップと、
前記計算機が、読み込んだ採点結果に適合する採点条件を採点パタンとして選択する第7のステップと、
を含み、
前記第5のステップでは、
前記計算機が、前記解答文における語句の出現比率と当該語句の重要度を乗じた値を含む特徴行列の類似度によって、前記解答文を階層的なクラスタに分類し、
前記第7のステップでは、
前記計算機が、単語または語句間の上位下位関係が予め記録された意味カテゴリ辞書を用いて、前記3項関係の各項に含まれる単語または語句を上位概念に置換して、抽象化し、
前記計算機が、前記第2のステップで抽出された3項関係と、前記3項関係の各項の抽象化の程度と、前記第3のステップで解析された前記3項関係の付加情報と、前記第2のステップで推定された前記3項関係の相互の関係を組み合わせた条件のうち、採点結果の一致度が高い条件の解答文を採点パタンとして選択し、
前記計算機が、前記第6のステップにおけるソート結果に基づいて、所定の閾値以上の解答文を含むクラスタを多数派解答文と判定し、前記閾値未満の解答文を含むクラスタを少数派解答文と判定し、
前記計算機が、前記多数派解答文から生成した採点パタンの信頼度を高く設定し、前記少数派解答文から生成した採点パタンの信頼度を低く設定することを特徴とする文書評価方法。
【請求項6】
請求項5に記載の文書評価方法であって、
前記計算機が、採点対象解答文を読み込んで、前記採点パタンに基づいて採点結果を生成する第8のステップを、をさらに含むことを特徴とする文書評価方法。
【請求項7】
請求項5に記載の文書評価方法であって、
前記第2のステップでは、
前記計算機が、前記意味カテゴリ辞書を用いて、前記解答文内の単語または語句を検出し、2つの単語または語句間の関係を表す単語または語句から前記解答文内の2つの単語または語句間の関係を推定し、前記2つの単語または語句と前記関係を表す単語または語句から成る3つの項を前記3項関係として抽出することを特徴とする文書評価方法。
【請求項8】
請求項5に記載の文書評価方法であって、
前記第7のステップでは、
前記計算機が、採点パタンと信頼度を表示する画面データを出力することを特徴とする文書評価方法。
【請求項9】
メモリに記憶されたプログラムを実行するプロセッサと、前記プロセッサがプログラムの実行時に使用するデータを格納するメモリを有する計算機で、解答文を採点させるためのプログラムであって、
入力された採点パタン生成用の解答文から形態素と係り受け関係を解析する第1のステップと、
前記解答文から3項関係を抽出する第2のステップと、
3項関係と、構文解析結果と、3項関係の付加情報である時制、モダリティ、及び日時との関係を教師データとして学習した機械学習モデルを用いて、前記形態素と係り受け関係の解析結果と、前記抽出された3項関係から当該3項関係の付加情報を推定する第3のステップと、
構文解析結果と3項関係の相互の関係との関係を教師データとして学習した機械学習モデルを用いて、前記第1のステップにおける解析結果から前記抽出された3項関係の相互の関係を推定する第4のステップと、
前記解答文を階層的なクラスタに分類する第5のステップと、
前記クラスタの大きさに基づいて、前記クラスタをソートする第6のステップと、
読み込んだ採点結果に適合する採点条件を採点パタンとして選択する第7のステップと、
を前記計算機に実行させるためのプログラムであって、
前記第5のステップでは、
前記解答文における語句の出現比率と当該語句の重要度を乗じた値を含む特徴行列の類似度によって、前記解答文を階層的なクラスタに分類し、
前記第7のステップでは、
単語または語句間の上位下位関係が予め記録された意味カテゴリ辞書を用いて、前記3項関係の各項に含まれる単語または語句を上位概念に置換して、抽象化し、
前記第2のステップで抽出された3項関係と、前記3項関係の各項の抽象化の程度と、前記第3のステップで解析された前記3項関係の付加情報と、前記第2のステップで推定された前記3項関係の相互の関係を組み合わせた条件のうち、採点結果の一致度が高い条件の解答文を採点パタンとして選択し、
前記第6のステップにおけるソート結果に基づいて、所定の閾値以上の解答文を含むクラスタを多数派解答文と判定し、前記閾値未満の解答文を含むクラスタを少数派解答文と判定し、
前記多数派解答文から生成した採点パタンの信頼度を高く設定し、前記少数派解答文から生成した採点パタンの信頼度を低く設定するプログラム。
【請求項10】
請求項9に記載のプログラムであって、
採点対象解答文を読み込んで、前記採点パタンに基づいて採点結果を生成する第8のステップを、をさらに含むことを特徴とするプログラム。
【請求項11】
請求項9に記載のプログラムであって、
前記第2のステップでは、
前記意味カテゴリ辞書を用いて、前記解答文内の単語または語句を検出し、2つの単語または語句間の関係を表す単語または語句から前記解答文内の2つの単語または語句間の関係を推定し、前記2つの単語または語句と前記関係を表す単語または語句から成る3つの項を前記3項関係として抽出することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書評価装置及び文書評価方法に関する。
【背景技術】
【0002】
本技術分野の背景技術として、記述式問題の採点補助と、採点効率化及び自動採点技術が知られている。たとえば、特許文献1には、「コンピュータを用いて、最初に受験者の解答文を文法の規則に従って2つの階層に分類する。次に、第一層を基本文型として文の構成の完成度を検証する。次に第一層と第二層が有効的に連結しているかを検証する。最後に必須の語句の数と制限文字数の条件を採点し、基本文型と補助語を加えた4項目の点数を合計して得点を自動的に計算する。」文章自動採点システムが記載されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2017-129830号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
記述式問題の採点においては、問題ごとに様々な採点の基準があり、その採点基準に沿った採点を行う必要がある。自動採点において、採点基準ごとに、採点済み解答文データを教師データとして準備しておき、機械学習を用いて自動採点装置を構築する方法が考えられる。しかし、個別の採点基準ごとに、教師データを準備するのは、多くのコストがかかる、という問題があった。
【0005】
また、採点基準ごとに、構文解析結果などの文法に基づく採点ルールを生成し、自動採点を行うルールベースの方法が考えられる。しかし、構文解析結果等に基づくルール生成では、構文解析結果等に関する専門知識が必要となる場合があり、ルールの数が膨大かつ、複雑となる場合がある、など、ルールの生成やメンテナンスが難しくなる、という問題があった。
【0006】
さらに、記述式解答文には、同じ問題に対する解答文であっても、様々な内容のものがあり、自動採点が難しいものがある。自動採点が難しいものは人手で採点するなど、人手での採点と自動採点で効率よく採点を分担するために、自動採点結果だけではなく、その信頼性を判定する必要がある、という問題があった。
【0007】
そこで本発明は、上記問題点に鑑みてなされたもので、採点パタンに基づいた自動採点と、自動採点の信頼性を判定することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、メモリに記憶されたプログラムを実行するプロセッサと、前記プロセッサがプログラムの実行時に使用するデータを格納するメモリを有する計算機で構成される文書評価装置であって、前記プロセッサは、前記プログラムの実行によって以下の機能部として機能するものであって、前記文書評価装置は、入力された採点パタン生成用の解答文から形態素と係り受け関係を解析する構文解析部と、前記解答文から3項関係を抽出する情報抽出部と、3項関係と、構文解析結果と、3項関係の付加情報である時制、モダリティ、及び日時との関係を教師データとして学習した機械学習モデルを用いて、前記構文解析部の解析結果と、前記情報抽出部が抽出した3項関係から当該3項関係の付加情報を推定する情報表現型推定部と、構文解析結果と3項関係の相互の関係との関係を教師データとして学習した機械学習モデルを用いて、前記構文解析部の解析結果から前記情報抽出部が抽出した3項関係の相互の関係を推定する情報間関係推定部と、前記解答文を階層的なクラスタに分類する階層クラスタリング部と、前記クラスタの大きさに基づいて、前記クラスタをソートするクラスタソート部と、読み込んだ採点結果に適合する採点条件を採点パタンとして選択する採点パタン生成部と、を有し、前記階層クラスタリング部は、前記解答文における語句の出現比率と当該語句の重要度を乗じた値を含む特徴行列の類似度によって、前記解答文を階層的なクラスタに分類し、前記採点パタン生成部は、単語または語句間の上位下位関係が予め記録された意味カテゴリ辞書を用いて、前記3項関係の各項に含まれる単語または語句を上位概念に置換して、抽象化し、前記情報抽出部が抽出した3項関係と、前記3項関係の各項の抽象化の程度と、前記情報表現型推定部が解析した前記3項関係の付加情報と、前記情報間関係推定部が推定した前記3項関係の相互の関係を組み合わせた条件のうち、採点結果の一致度が高い条件の解答文を採点パタンとして選択し、前記クラスタソート部のソート結果に基づいて、所定の閾値以上の解答文を含むクラスタを多数派解答文と判定し、前記閾値未満の解答文を含むクラスタを少数派解答文と判定し、前記多数派解答文から生成した採点パタンの信頼度を高く設定し、前記少数派解答文から生成した採点パタンの信頼度を低く設定する。
【発明の効果】
【0009】
したがって、本発明は、採点基準ごとに、正答と誤答を判定する採点パタンを生成し、採点パタンに基づいた自動採点を行う方法を提供することができる。また、解答文を多数派答案と少数派答案に分類することで、自動採点が容易な解答文(多数派解答文)と自動採点が難しい解答文(少数派解答文)に分類することで、自動採点の信頼性を判定することが可能となる。
【図面の簡単な説明】
【0010】
図1】本発明の実施例1を示し、文書評価装置の構成の一例を示すブロック図である。
図2】本発明の実施例1を示し、文書評価装置で行われる処理の一例を示すフローチャートである。
図3A】本発明の実施例1を示し、構文解析の一例を示す図である。
図3B】本発明の実施例1を示し、構文解析結果の一例を示す図である。
図3C】本発明の実施例1を示し、情報抽出の一例を示す図である。
図4】本発明の実施例1を示し、情報抽出から抽象化を行った一例を示す図である。
図5A】本発明の実施例1を示し、解答文の階層クラスタリングの結果をソートした後の一例を示す図である。
図5B】本発明の実施例1を示し、ソート後の解答文の一例を示す図である。
図6A】本発明の実施例1を示し、階層クラスタリングのソート前の例を示す図である。
図6B】本発明の実施例1を示し、ソート前の解答文の一例を示す図である。
図7A】本発明の実施例1を示し、解答文採点データの一例を示す図である。
図7B】本発明の実施例1を示し、採点条件の一例を示す図である。
図8】本発明の実施例1を示し、解答文を特徴ベクトルで表現する例を示す図である。
図9A】本発明の実施例1を示し、問題文テーブルの一例を示す図である。
図9B】本発明の実施例1を示し、解答文テーブルの一例を示す図である。
図9C】本発明の実施例1を示し、解答文の採点結果テーブルの一例を示す図である。
図10A】本発明の実施例1を示し、意味カテゴリ辞書の上位下位関係の木構造の一例を示す図である。
図10B】本発明の実施例1を示し、意味カテゴリ辞書の一例を示す図である。
図11】本発明の実施例2を示し、文書評価装置で行われる処理の一例を示すフローチャートである。
図12A】本発明の実施例4を示し、答案データ入力画面の一例を示す図である。
図12B】本発明の実施例4を示し、採点済みの答案データの一例を示す図である。
図12C】本発明の実施例4を示し、未採点の答案データの一例を示す図である。
図13】本発明の実施例4を示し、採点パタン表示画面の一例を示す図である。
図14】本発明の実施例4を示し、採点パタン編集画面の一例を示す図である。
図15】本発明の実施例4を示し、採点画面の一例を示す図である。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して本発明の実施形態を説明する。
【0012】
マークシート式の試験と異なり、記述式試験は、人手による採点が必要となり、多くの採点者が必要になる、採点に要する日数も必要となる、などの課題がある。本実施形態の文書評価装置は、この採点を支援する。
【0013】
以下では、英語の試験問題を例に、実施形態の説明を行うが、他言語においても、同様の方法を適用することができる。なお、実際には、大量の解答文を用いて処理を行うが、以下では、各処理の方法を簡単に説明するために、模式的に例を示している。
【実施例1】
【0014】
図1は、本実施例1の文書評価装置101の構成例を示すブロック図である。本実施例1の文書評価装置101は、例えば、入力装置102、表示装置103、通信装置104、演算装置105、メモリ106、及び補助記憶装置107を含む計算機によって構成される。
【0015】
入力装置102は、ユーザからのコマンド等の入力を受け付ける。例えば、キーボードや、マウスや、タッチパネル等である。入力装置102は、演算装置105が実行するプログラムの制御、及び文書評価装置101に接続された機器の制御のために実行されるコマンド等の入力を受け付ける。
【0016】
表示装置103は、ディスプレイ等で構成される。通信装置104は、例えば、所定のプロトコルに従って、文書評価装置101による処理内容を外部機器に送信したり、外部機器から情報を受信したりする。
【0017】
演算装置105は、プロセッサを含み、メモリ106に格納されたプログラムを実行する。メモリ106は、不揮発性の記憶素子であるROM及び不揮発性の記憶素子であるRAMを含む。ROMは、不変のプログラム(例えば、BIOS)などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、演算装置105が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
【0018】
補助記憶装置107は、例えば、磁気記憶装置(HDD)、フラッシュメモリ(SSD)等の大容量かつ不揮発性の記憶装置であり、演算装置105が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。すなわち、プログラムは、補助記憶装置107から読み出されて、メモリ106にロードされて、演算装置105によって実行される。
【0019】
演算装置105が実行するプログラムは、リムーバブルメディア(CD-ROM,フラッシュメモリなど)又はネットワークを介して文書評価装置101に提供され、非一時的記憶媒体である不揮発性の補助記憶装置107に格納される。このため、文書評価装置101は、リムーバブルメディアからデータを読み込むインタフェースを有するとよい。
【0020】
文書評価装置101は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで処理してもよく、複数の物理的計算機資源上に構築された仮想計算機上で処理してもよい。
【0021】
演算装置105は、採点パタン生成処理部201、採点処理部202として機能する。例えば、演算装置105は、メモリ106にロードされた採点パタン生成処理プログラムにしたがって処理を実行することで、採点パタン生成処理部201として機能し、メモリ106にロードされた採点プログラムにしたがって処理することで、採点処理部202として機能する。演算装置105に含まれる他の部についても同様である。
【0022】
採点パタン生成処理部201は、解答文とその採点データを用いて、得点をつける基準となる採点パタン215を生成する。また、採点処理部202は、採点パタン生成処理部201によって生成された採点パタン215を用いて、解答文に得点をつける。
【0023】
補助記憶装置107は、採点パタン生成用解答文203と、解答文採点データ213と、意味カテゴリ辞書214と、採点パタン215と、採点対象解答文217及び採点結果218、を保持する。
【0024】
採点パタン生成用解答文203は、問題ごとに、解答文が記録されたデータベースで、採点パタン生成用に用いる問題文テーブル901と解答文テーブル902を含む。図9Aは問題文を格納する問題文テーブル901の一例を示す図である。問題文テーブル901は、問題ID9011と問題文9012が格納されている。
【0025】
図9Bは解答文テーブル902の一例を示す図である。解答文テーブル902は、問題文を識別する問題文ID9021と、解答文を識別する解答文ID9022と、解答文9023が格納される。
【0026】
解答文テーブル902の問題文ID9021と、問題文テーブル901の問題文ID9011は対応している。解答文テーブル902の2行目には、問題文IDが「1」、解答文IDが「2」の解答文が格納されている。
【0027】
なお、図9A図9Bに示した問題文テーブル901、解答文テーブル902の例では、問題文、解答文、ともに1センテンスから成る例を挙げたが、問題文、解答文は複数文から構成される場合もある。本実施例1では説明を簡単にするために、1センテンスの例で説明するが、複数文の場合も同様の処理を適用する。
【0028】
解答文採点データ213には、採点パタン生成用解答文203の解答文に対する採点結果が記録されている。これは、人または計算機などにより、予め解答文に対して採点した結果である。
【0029】
図9Cは、採点結果テーブル903の一例を示す図である。採点結果テーブル903は、問題文ID9031と、解答文ID9032と、採点基準Aによる採点結果を格納する基準A9033と、採点基準Bによる採点結果を格納する基準A9034をひとつのレコードに含む。解答文の採点には、ひとつの基準を用いてもよいし、複数の基準を用いても良い。
【0030】
図9Cには、各解答文に対して、3列目に基準A9033での採点結果、4列目に基準B9034での採点結果テーブル903が示されている。採点基準には、例えば、時制が正しく用いられている、活用形が正しく用いられている、スペルミスがない、問題文に対する答えとして意味が通っている、冠詞が正しい、などが考えられる。
【0031】
また、採点は、採点基準に沿って、数段階で採点してもよい。例えば、図9Cの基準A9033では0点と1点の2段階、基準B9034は0~2点の3段階となっている。例えば、数字が高いほうが、高得点、などとして表現する。
【0032】
図1の意味カテゴリ辞書214には、物、組織、人、地名、職業などの実体や概念を表すエンティティ間の上位下位関係が記録されている。図10Aは、意味カテゴリ辞書214の上位下位関係の木構造の一例を示す図である。図10Bは、意味カテゴリ辞書214の一例を示す図である。
【0033】
図10Aのノード1003~1001には、職業(occupation)に関係する概念について、上位下位関係を木構造で示している。これをテーブル化したものが図10Bの意味カテゴリ辞書214となる。このように、概念と、概念同士の上位下位関係をテーブルで記録しておく。
【0034】
図1の採点パタン215は、採点の基準を言語処理の観点から、パタン化し、記録したもので、これについては、後に詳しく説明する。
【0035】
図1の採点対象解答文217は、採点対象となる解答文を記録したもので、形式は、図9A図9Bと同様である。ただし、採点パタン生成用解答文203に記録されている解答文は、採点パタン215を生成する目的に用いるのに対し、採点対象解答文217は、本実施例1の文書評価装置101によって、採点される対象となる解答文を記録したものである。
【0036】
採点結果218は、採点対象解答文217の解答文に対する採点の結果を記録したもので、形式は、図9Cと同様である。ただし、本実施例1の文書評価装置101を用いて採点された結果である。
【0037】
なお、本実施例1において、文書評価装置101が使用する情報は、データ構造に依存せず、テーブル、リストなど、どのようなデータ構造で表現されていてもよい。
【0038】
なお、文書評価装置101は、入力装置102、表示装置103及び通信装置104のうち、入力と出力の手段を備える装置を含んでいれば良い。文書評価装置101が入力装置102を含んでいない場合、例えば、通信装置104が外部機器からコマンド等の入力を受け付ける。文書評価装置101が表示装置103を含んでいない場合、例えば、通信装置104が、文書評価装置101が生成した処理結果(表示画面の情報)を外部機器に送信する。
【0039】
各処理部は、メモリ106又は補助記憶装置107を介して、他の処理部への入出力を実行してもよい。例えば、採点パタン生成処理201に含まれるモジュールAは、処理結果を別のモジュールBに渡す場合、一旦、モジュールAの処理結果をメモリ106又は補助記憶装置107に格納し、モジュールBは、メモリ106又は補助記憶装置107に格納されている当該出力結果を入力として取得してもよい。
【0040】
図2は、本実施例1における文書評価装置101が実施する処理の一例を示すフローチャートである。文書評価装置101が実行する処理は、大きく分けて、採点パタン生成処理201、及び採点処理202の2つの部分に分けられる。
【0041】
以下では、問題文が図9Aに示す問題文ID9011が「1」の問題文9012に対する採点問題を想定して説明する。複数の問題文がある場合には、問題文ごとに同様の処理をすればよい。
【0042】
まず、採点パタン生成処理201で行われる処理の一例について説明する。基礎解析204では、構文解析205、情報抽出206により、採点パタン生成用解答文203の解答文に対して構文解析処理と、情報抽出処理を適用する。以下、構文解析205、情報抽出206の処理について説明する。
【0043】
構文解析205では、採点パタン生成用解答文203に含まれる、各解答文の各文について、形態素解析と、係り受け解析などの構文解析を適用する。なお、形態素解析と、係り受け解析については公知または周知の技術を適用すれば良いので、本実施例では詳述しない。
【0044】
図3Aは、解答文9023が“I wanted to become a very kind nurse.”という文の場合、形態素解析、係り受け解析の結果の例を示している。図3Bは、構文解析結果301の一例を示す図である。
【0045】
構文解析結果301は、解答文9023内の各形態素を識別する番号を格納するID3011と、各形態素の表層表現を格納するトークン3012と、各形態素の品詞(記号はPenn TreebankのPOSタグの定義などを参照)3013と、係り受け先のトークンのIDを指す係り受け先3014と、係り受け関係の種類を示す係り受け型3015と、各トークンの解答文9023内での文字の位置を示す位置3016と、をひとつのレコードに含む。
【0046】
本実施例1では、係り受け型3015を、Stanford Core NLPの型定義の方法に従って例を示した。位置は、例えば、解答文9023の先頭からバイト単位でのトークンの始点、終点位置などを用いると良い。なお、“it”や“they”などの指示語については、指示語が指す実体を分析する照応解析などを行ってもよい。
【0047】
情報抽出206では、採点パタン生成用解答文203に含まれる、各解答文9023の各文から、3項関係の情報を抽出する。
【0048】
図3Cは、情報抽出の一例を示す図である。図示の例では、情報抽出206が解答文302=“I wanted to become a very kind nurse.”から、“I”, “become”, “very kind nurse”の3つの要素から成る3項関係303を抽出している。この3項関係303は、例えば、最初の項(“I”)と最後の項(“very kind nurse”)が概念などのエンティティを表す項で、真ん中の項(“become”)がその2つのエンティティ間の関係を表す。そして、情報抽出206は、例えば、2つのエンティティと関係から成る3つの項を3項関係として抽出する。
【0049】
また、位置303は、解答文302内での各項に対応する文頭からの文字の位置を示しており、例えば、図3Cに示すようなバイト単位の位置を用いたデータ形式で表現する。なお、各項の表現は、必ずしも、元の文内の単語で表現する必要はなく、エンティティまたは関係を表す別の記号によって表現してもよい。
【0050】
例えば、“very kind nurse”は、これを抽象化して、“medical personnel”で表現してもよい。この場合、この例文からは、(I, become, medical personnel)という情報が抽出されたことになる。なお、この3項関係303には、例えば、上記の例のように第一項目が主語、第二項目が述語、第三項目が目的語、補語、などとなるケースが多いが、2つのエンティティ間の関係を表すものであればよい。
【0051】
基礎解析204の情報抽出206は、例えば、解答文302内のエンティティを認識して抽出する識別器と、エンティティ間の関係を認識する識別器を、機械学習によって構築し、用いても良い。この場合には、予め、学習用の教師データを生成しておく必要がある。また、構文解析の結果を用いて、3項関係303を抽出するルールなどを生成する方法を用いることもできる。また、OpenIE などの公知または周知の技術を適用してもよい。
【0052】
また、情報抽出206では、ひとつの解答文302から複数の3項関係を抽出する場合もある。例えば、解答文302が“I wanted to become a very kind nurse when I was little.”の場合には、(I, become, very kind nurse), (I, was, little)の2つの3項関係を抽出する、などの場合がある。なお、3項関係に“it”, “ they” などの指示語が含まれる場合には、照応解析により、これらが示す実体に置換しておくとよい。
【0053】
上記の基礎解析204の結果は、メモリ106、補助記憶装置107などに格納しておく。次に、基礎解析204の結果を用いた高次解析207について説明する。高次解析207には、情報表現型推定208と、情報間関係推定209の2つの処理を含む。
【0054】
情報表現型推定208では、構文解析205と情報抽出206の結果を用いて、情報抽出206で抽出された3項関係303の時制と、モダリティ、日時などの表現型(3項関係に対する付加情報)を解析する。
【0055】
図4は、情報抽出から抽象化の一例を示す図である。図示の例では、解答文401から情報抽出206によって抽出された3項関係(情報抽出結果402)と、さらに高次解析207の情報表現型推定208で情報表現型推定結果403(付加情報)として時制を解析した例を示している。なお、図中情報抽出206で抽出する3項関係(情報抽出結果402)の箇所を太字で示した。
【0056】
次に、図3Aの構文解析結果301を参照すると、3項関係の2項目(述語などエンティティ間の関係を示す箇所)の“become”が“wanted”を係り受け型“xcomp”で修飾していて、“wanted”は図3Aより品詞が過去形を現すVBDであることが特定される。
【0057】
これより、(I, become, very kind nurse)という3項関係(図3の303)が、過去形で表現されているということが特定される。このように、高次解析207の情報表現型推定208では構文解析結果301を用いることにより、情報抽出206で抽出された3項関係(303)の時制、モダリティ、日時などを推定することができる。この推定方法は、3項関係と品詞、係り受け関係、係り受け型などに基づくルールとして、または、機械学習により、予め定めておく。
【0058】
このような3項関係に対する付加情報の別の例として、例えば、“I went to the park with him”であれば、3項関係(I, went to, the park)が抽出され、構文解析により、3項関係が“with him”という条件で行われた、などの情報を解析することができる。また、“I went to the park yesterday”などであれば、(I, went to, the park)が“yesterday”の出来事であることを解析することができる。
【0059】
以上のように、高次解析207の情報表現型推定208では3項関係と品詞、係り受け関係、係り受け型に基づいて、必要な付加情報を推定するルールや、機械学習方法などを予め設定しておく。
【0060】
次に、高次解析207の情報間関係推定209では、情報抽出206で抽出した3項関係の相互の関係を推定する。例えば、“I wanted to become a very kind nurse when I was little.”で、2つの3項関係(I, become, very kind nurse)と(I, was, little)が抽出されたとする。このとき、構文解析の結果より、2つの3項関係がwhenで結ばれていることが特定される。このような3項関係間の関係を構文解析結果に基づくルールや機械学習により、予め定めておく。
【0061】
情報表現型推定208で推定された情報表現型推定結果により、解答文302(I, become, very kind nurse)は過去形で表現されていることが判定され、情報間関係推定209は、その時が(I, was, little)であることを推定する。以上の例のように、情報間関係推定209では、3項関係の間の予め定義された関係をルールや機械学習などに基づいて推定する。これらの基礎解析204、高次解析207の結果は、採点パタン生成212で用いられる。
【0062】
次に、階層クラスタリング210について説明する。ここでは、解答文の意味や文法的特徴など、解答文の特徴に基づいて、解答を階層的に分類する。そのために、まず、採点パタン生成用解答文203の各解答文を特徴ベクトルとして表現する。
【0063】
特徴ベクトルを利用するための方法として、例えば、TF-IDFを用いることができる。図8は、解答文を特徴ベクトルで表現する例を示す図である。まず、階層クラスタリング210は、採点パタン生成用解答文203の解答文全体から、単語やフレーズなどの語句を抽出する。
【0064】
ここで、階層クラスタリング210では、“a”,“the”など、頻出する単語や語句で、解答文を特徴づけるために有用でないものについては、予めリストを生成しておき、処理の対象から削除する。次に、階層クラスタリング210は、処理の対象の解答文の中で、各々の単語や語句が占める割合を計算し、図8に示すように頻度行列801として算出する。
【0065】
頻度行列801は、解答文毎に出現比率を格納するフィールドと、語句重要度802のフィールドをひとつのエントリに含み、各エントリは各解答文から抽出した語句(または単語l)を示す。例えば、頻度行列801の1列目は、解答文1に、語句2、語句3が0.2の割合で、語句5が0.6の割合で出現することを示している。
【0066】
さらに、階層クラスタリング210は、各々の語句重要度を計算し、語句重要度802に格納する。図示の例では、出現頻度が小さい語句ほど、解答文を特徴づける重要度が高いとみなし、(全解答文の数)/(当該語句が出現する解答文の数)の対数で表現している。
【0067】
例えば、図示の頻度行列801で全解答文の数を5とすると、語句1は、解答文2と解答文4の2つの解答文に出現しているため、語句重要度802はlog(5/2)となる。また、別の方法の例として、問題文に対する解答文として、解答文302のように、職業を示す単語や語句が現われやすい、などが予め分かっている場合には、職業を示す単語や語句の重要度を大きくする、などの方法をとってもよい。これにより、解答文を問題文に対する内容に基づいて特徴づけることができる。
【0068】
次に、階層クラスタリング210は、頻度行列801の各列に、対応する語句重要度802を掛けることで、図示のような特徴行列803を生成する。特徴行列803の各列が、解答文1~解答文5を特徴づける特徴ベクトルとなる。例えば、特徴行列803の第一列には、解答文1の特徴ベクトルが示されている。
【0069】
階層クラスタリング210は、特徴行列803の特徴ベクトルに基づいて、階層的な類型化(クラスタリング)を行う、階層的なクラスタリングには、公知または周知の技術を適用すればよい。階層クラスタリング210は、上記の処理によって、解答文を特徴ベクトルに基づく類似性に基づいて、階層的にクラスタリングすることができる。
【0070】
次に、図2に示すクラスタソート211では、階層クラスタリング210により類型化された解答文について、各クラスタに所属する解答文数に基づいて、クラスタをソートする。
【0071】
図5Aは、クラスタソートの出力の一例を示す図である。図5Aでは、図6AのクラスタC1~C10に対するクラスタソート211の出力構造の例を示す。なお、実際には、大量の解答文群を用いるが、ここでは処理の内容を簡単に説明するために、少数の解答文群で模式的に例示している。
【0072】
図5Aでは、解答文群501の階層構造を木構造で示しており、左の枝から右の枝に向かって、クラスタが細分化される。末端のクラスタに所属する解答文を点線の矩形で囲っている。図5Aでは、説明のため、末端のクラスタにC1~C10の識別子が付与されている。また、その上位クラスタについても、例えば、クラスタC2とクラスタC3を合わせた上位階層のクラスタには、C23という識別子が付与されている。
【0073】
図5Aの上側のクラスタは、所属する解答文の数が多く、下側のクラスタほど解答文の数が少ない傾向となるように、ソートされている。図5Aの例では、クラスタC1~C2は解答文を3個含み、クラスタC3~C6は解答文を2個含み、クラスタC7~C10は解答文を1個含んでいる。
【0074】
なお、階層構造によっては、必ずしも上側(クラスタCXのXの値が小さい側)にあるクラスタが下側(クラスタCXのXの値が大きい側)にあるクラスタより大きいとは限らない。ソート方法の例については、後に説明する。
【0075】
このようなソートを行うことによって、多数派クラスタ(例えば、C1~C7)には、多数派の解答が多くなり、少数派クラスタ(例えば、C8~C10)には、少数派や、個性的な解答が多くなる。なお、多数派クラスタと、少数派クラスタを区別する場合には、その判定は、クラスタに含まれる要素(解答文)の数に基づく所定の規則によって定める良い。例えば、多数派クラスタ内に所定の閾値以上の割合の解答文数が含まれるように、上側のクラスタから順に多数派クラスタと定める。例えば、閾値が15/18の場合には、クラスタC1~C10に所属する全解答文数18に対して、クラスタC1~C7までで解答文数15となり、閾値以上となるため、クラスタC1~C7が多数派クラスタ、クラスタC8~C10が少数派クラスタとなる。答案を多数派答案と少数派答案に分類する場合には、各答案が多数派クラスタに所属するか、少数派クラスタに所属するか、によって、判定する。
【0076】
上側(多数派の解答)のクラスタのほうが、パタン化しやすく、採点パタンを生成しやすい。そのため、多数派の解答のクラスタに所属する解答文に対する自動採点の信頼度は高く、自動採点が容易となる傾向がある。一方で、下側(少数派の解答)のクラスタはパタン化しにくい個性的な解答が多く、自動採点の信頼度は低い。また、下側のクラスタには、個性的な解答のほかに、スペル誤りや文法誤りを含む解答などが表れる頻度が大きい。
【0077】
上記のようなソートを行うことにより、上側のクラスタから採点パタンを抽出できる、多数派解答と個性的解答を分けられる、自動採点の信頼度を推定できる、などの効果がある。信頼度は、上側(多数派の解答)のクラスタに所属する解答文のほうが、下側(少数派の解答)のクラスタに所属する解答文より、大きくなるように設定する。
【0078】
例えば、ある解答文の信頼度は、その解答文が所属するクラスタよりも下側のクラスタに所属する解答文数の割合により定めてもよい。クラスタソート211では、例えば、図5のクラスタC3に所属する解答文の信頼度は、C3よりも下側のクラスタ(C4~C10)に所属する解答文数が10で、クラスタC1~C10に所属する全解答文数が18であるため、10/18とする。
【0079】
このように、クラスタソート211が解答文のクラスタCに信頼度を設定することにより、信頼度が高い解答文は自動採点が容易で、信頼度が低い解答文は自動採点が難しい傾向となる。つまり、信頼度が高い解答文のほうが、自動採点の正確性が高いと期待できる。一方、信頼度が低い解答文は、文法誤りやスペル誤りを含む、複雑な内容や難しい語句を用いている、少数派なので本実施例による採点パタン生成が難しい、などの傾向があるため、自動採点の正確性が低くなる傾向がある。
【0080】
採点には、高度な正確性が求められる場合がある。しかし、どのような記述式解答文でも精度良く自動採点するのは難しい。そこで、例えば、自動採点が難しい解答文については、自動採点の対象外とし、人手による入念な採点を実施する、などの自動採点と人手による採点を効率よく分担する運用が必要となる。そのために、自動採点が容易な解答文と、自動採点が難しい解答文と、に分別することが課題となる。
【0081】
図5Bは、上側のクラスタに所属する解答文から順番に表示した例である。すなわち、C1に所属する解答文、C2に所属する解答文、C3に所属する解答文、という順番で表示している。このような表示方法により、類似した解答文が連続して現われる、多数派の回答から少数派の回答の順に解答文が現われる、などの効果により、人手による採点結果の確認や採点が効率的になる。
【0082】
本実施例1では上記の方法により、解答文を多数派答案と少数派答案に分類することで、自動採点が容易な解答文(多数派解答文)と自動採点が難しい解答文(少数派解答文)に分類することで、自動採点の信頼性を判定できる、という効果がある。
【0083】
次に、クラスタソート211で実施するソートの方法の例を示す。図6Aは、ソートを行う前の結果(階層クラスタリング210の出力)の例を示す図である。また、図6Bは、ソート前の解答文610の一例を示す図である。
【0084】
図6Aのクラスタをソートする例を挙げる。まず、クラスタソート211は、末端のクラスタ(C1、C2、…、C10)で、最も大きなクラスタを検索する。図6Aの例では、クラスタC1とC2が検索される。このように最大のクラスタが2つ存在する場合には、そのクラスタの親クラスタが上位にあるものを優先する。
【0085】
親クラスタは、C1の場合には、図6Aの矢印602で示す位置(つまり、C1、C2、C3より成るクラスタ)、C2の場合には、図6Aの矢印603で示す位置(つまり、C2、C3より成るクラスタ)である。
【0086】
なお、この矢印の位置は、クラスタ間の距離を表す。すなわち、矢印603の位置(図6Aに示す末端から矢印位置までの長さ604)は、クラスタC2とクラスタC3の間の距離を表している。矢印の位置が左側にあるものを、上位と判定する。
【0087】
以上により、クラスタC1が最も上側となる。次に、クラスタソート211は、クラスタC1の親クラスタである矢印602のC1以外の子クラスタである矢印603のクラスタ(C2、C3)についても同様の方法でソートする。
【0088】
これらのソートが終わると、クラスタソート211は、矢印602のクラスタの親クラスタ(矢印605)について、その子クラスタである矢印606についても、同様の処理を行う。これによって、図5Aに示したようなクラスタのソート結果が得られる。
【0089】
次に、採点パタン生成212では、基礎解析204と、高次解析207と、クラスタソート211と、解答文採点データ213と、意味カテゴリ辞書214を用いて、採点パタン215を生成する。
【0090】
採点パタン生成212での処理では、必要に応じて、3項関係の各項に含まれる単語や語句について意味カテゴリ辞書214により上位概念に置き換える処理を行う。以下、採点パタン生成212が3項関係の各項を上位概念に置き換える処理を抽象化と呼ぶことにする。
【0091】
なお、以下の説明では、“astronaut”、“president”、“pianist”、“nurse”、“scientist”、“doctor”の上位概念が“occupation”で、“become”の上位概念が“be”という抽象化の定義が意味カテゴリ辞書214に設定されている例を示す。
【0092】
3項関係の各項の上位下位関係は、後に説明する意味カテゴリ辞書214で定義される。図4の例では、採点パタン生成212は、受け付けた3項関係(情報抽出結果402)と情報表現型推定結果403と意味カテゴリ辞書214から、3項関係の2項目の“become”を“be”に抽象化し、3項目の“very kind nurse” を“occupation”に抽象化した例(抽象化結果404)例を示す。
【0093】
この例(抽象化結果404)の“very kind nurse”が“occupation”に抽象化されているように、3項関係の項目が形容詞などにより修飾された場合でも、概念の上位下位関係が保持される場合には、同様に抽象化する。この抽象化の定義は予め、構文解析などを用いたルールにより定めておく。
【0094】
採点パタン生成212では、採点パタン生成用解答文203から解答文を選択し、その解答文に対して、情報抽出206により抽出された3項関係(情報抽出結果402)と、各項の抽象化結果404と、情報表現型推定208による3項関係の付加情報(情報表現型推定結果403)と、情報間関係推定209による3項関係間の関係、を組み合わせた様々な条件の中から、得点の有無を判別できるパタンを採点パタンとして、検索する。本実施例1では、様々な抽象化、様々な付加情報、様々な3項関係間の関係を変化させながら、採点パタンを検索する。
【0095】
図4図7A図7Bを用いて、この例を説明する。図7Aは、解答文採点データ213の一例を示す図である。図7Bは、採点条件の一例を示す図である。
【0096】
図7Aの解答文採点データ213は、予め設定された情報であり、解答文の識別子を格納する番号2131と、解答文を格納する解答文2132と、解答文2132の採点結果を格納する採点2133と、条件Aを採点基準とした採点結果を格納する条件A2134と、条件Bを採点基準とした採点結果を格納する条件B2134と、条件Cを採点基準とした採点結果を格納する条件C2135と、条件Aを採点基準とした採点結果を格納する条件D2135と、をひとつのレコードに含む。
【0097】
採点2133に「1」が格納されている解答文2132が正答の解答文を示し、採点2133に「0」が格納されている解答文2132は不正解(誤答)を示す。
【0098】
まず、採点パタンを生成するために、採点パタン生成212は、解答文採点データ213から正解となっている解答文をひとつ選択する。ここでは、採点パタン生成212が番号2131=「1」の“I wanted to become a very kind nurse.”を選択した例について説明する。
【0099】
まず、この解答文からの情報抽出206の結果は、図4の3項関係(情報抽出結果402)の太字部分で示された(I、become、very kind nurse)となる。さらに、情報表現型推定208により、図4の情報表現型推定結果403に示すように、この3項関係が過去形で表されることが特定される。
【0100】
なお、以下の説明において、解答文採点データ213で付与された採点結果は、図7Aの採点2133の列に示されているとする。
【0101】
複数の採点基準が存在する場合には、採点基準ごとに同様の処理をすればよい。
【0102】
図7Bの条件A(2134)は、3項関係の第3項の箇所を“occupation”に抽象化している。条件Aは、文から抽出された3項関係の第3項を抽象化したとき、(I、become、occupation)のパタンが得られることを採点条件とする。この条件Aに合致する解答は、図7Aの条件A2134の列に示すように、番号1、番号2の解答文が正解であり、番号4、番号6、番号7の解答文は条件を満たさないため、0点となる。
【0103】
図7Bの条件Bは、3項関係の第2項の箇所と第3項の箇所を、それぞれ“be”、“occupation”に抽象化している。条件Bは、解答文から抽出された3項関係の第3項を抽象化したとき、(I、be、occupation)のパタンが得られることを採点条件とする。この条件Bに合致する解答は、図7Aの条件B2135の列に示すように、番号1~番号7までの全ての解答文が正解であり、番号3、番号5の解答文も条件を満たすため、1点(正解)となる。
【0104】
図7Bの条件Cは、3項関係の第2項の箇所と第3項の箇所を、それぞれ“be”、“occupation”に抽象化しているのは、上記条件Bと同様である。さらに、条件Cでは、情報表現型推定208の結果(時制の推定結果)を用いて、3項関係が過去形で表現されている、という時制の条件が加えられる。この条件Cに合致する解答は、図7Aの条件C2136の列に示すように、番号3、番号5を除く解答文が正解であり、解答文採点データ213の列と一致する。
【0105】
図7の条件Dは、第3項を“occupation”よりもさらに上位の“entity”にまで抽象化している。3項関係の第2項は条件Cと同様に“be”に抽象化されている。これも条件Cと同様に、解答文採点データ213の列と一致する。
【0106】
以上のように、採点パタン生成212は、情報抽出206により抽出された3項関係と、各項の抽象化とその抽象化の程度と、情報表現型推定208による3項関係の付加情報と、情報間関係推定209による3項関係間の関係、を組み合わせた様々な条件を変えながら、解答文採点データ213で与えられた採点(図7Aの採点の列)との一致度が高い条件を探索し、採点パタン215とする。
【0107】
これは、図7A図7Bの場合には、条件Cと条件Dとなる。なお、複数の条件が得られる場合には、そのいずれかの条件を予め定めた規則により選択してもよい。その規則の例として、より条件が厳しい(当該条件に当てはまる解答文の範囲が狭い)採点パタンを選択するとよい。この場合、条件Cと条件Dを比べると条件Cのほうが厳しいため、条件Cを選択するとよい。例えば、“I wanted to be a bird.”は、条件Dには合致するが、条件Cには合致しない。
【0108】
なお、本実施例1の探索では、番号2131が「1」の解答文をもとに、条件を検索しているため、どの条件であっても、番号=「1」の解答文は、必ず、1点がつくことになる。
【0109】
以上のように、図7A図7Bの例では、条件Cが採点パタン215として選択される。なお、上記では、採点パタン生成212では、解答文採点データ213の採点との一致度が高い条件を探索する、としたが、この一致度の計算方法には様々な方法が考えられる。
【0110】
この一致度については、過剰に得点を与えないような条件を探索するように設定するのがよい。例えば、解答文採点データ213の採点で0点であるにも関わらず、採点パタンに一致して、1点と採点されてしまうような事例が少なく、尚且つ、解答文採点データ213の採点で1点の解答文がなるべく多く、採点パタンに一致するような条件を探索できるように設定する。
【0111】
このように設定すると、解答文採点データ213の採点で1点であるにも関わらず、採点パタンに合致しない解答文が生じる。例えば、図7Aの例で、条件A2134しか探索できなかったとすると、番号2131=「4」、番号2131=「6」、番号2131=「7」の解答文は、解答文採点データ213の採点で1点であるにも関わらず、条件A2134の採点パタンには合致しない。その場合には、採点パタン生成212は、採点パタンに合致しない正解の解答文2132を選択し、さらに採点パタンを付加する。
【0112】
例えば、採点パタン生成212は、番号2131=「4」の解答文を検索し、さらに、番号2131=「4」に基づいて、なるべく過剰採点が起きず、かつ、多くの正答の解答文2132に合致する採点パタンを検索する。なお、採点パタン生成212が選択した解答文2132で、過剰採点が起きる、または、十分に多くの正答解答文にマッチする条件が得られない、などの場合には、別の解答文を選択するとよい。
【0113】
本実施例1のように採点パタン215を生成することにより、誤答の解答文を正解と誤判定する割合を抑えられる、という効果がある。なお、条件検索の元になる解答文は、クラスタソート211の結果の上側(図5Aの上側)の正答解答文から優先して選択すると良い。
【0114】
これは、クラスタソート結果の上側の解答文のほうが多数派の解答文であり、多数派の解答文のほうが、多くの正答解答文にマッチする採点パタンが得られやすいからである。これにより、採点パタンの検索の処理時間を小さくできる、過剰採点が少なく多数の正解の解答文にマッチする質の高い採点パタンが得られる、という効果がある。
【0115】
また、このような情報抽出206と意味カテゴリ辞書214などを用いた採点パタンに基づく採点により、文法的な誤りではなく、解答文の意味に基づいた採点を行うことができる、という効果がある。さらに、様々な採点基準(観点)に沿った採点を行うことができる、という効果がある。
【0116】
このように、解答文の選択と、条件の探索を繰り返すことにより、過剰採点が少なく、かつ、多くの正答解答文にマッチするパタンを集めることができる。これを採点パタンとして、採点パタン215に保存する。採点パタンは複数になる場合が多い。
【0117】
なお、図7A図7Bの例では、得点は0点、1点の2段階であったが、3段階以上の場合は、必要に応じて、各得点の採点パタンを集める方法をとる、などの方法により、同様の処理ができる。
【0118】
なお、採点パタン215には、採点パタンの信頼度も保存しておく。信頼度は、採点パタンの元となった解答文が多数派の解答文(図5Aの上側のクラスタに所属する解答文)であるほど、高くなるように与える。さらに、過剰採点が少なく、多くの正答解答文にマッチするほど、信頼度が高くなるように設定してもよい。多数派の解答文は、採点パタンによる採点の正確さが高くなるため、このように信頼度を付与することにより、採点パタンを用いた採点結果の信頼性も評価できる。
【0119】
なお、上記では、正答の解答文にマッチする採点パタン215の生成について説明を行ったが、誤答の解答文にマッチする採点パタンを生成してもよい。
【0120】
本実施例1のような方法で、採点パタン215を生成することにより、問題ごとに意味に基づく採点基準に沿って、採点パタン215を生成することができる。また、採点パタン215は、図4の抽象化結果404に示すように、構文解析結果等に関する専門知識がなくとも、理解しやすい。
【0121】
また、本実施例1では採点パタン生成212が、クラスタソート211の結果から多数派解答を中心に採点パタンを自動的に検索して採点パタン215を生成するため、採点済み教師データ(解答文採点データ213)が比較的少なくとも採点パタン215を生成することができる。また、基礎解析204と、高次解析207の解析結果、意味カテゴリ辞書214に基づく条件の組み合わせにより採点パタンを検索するため、採点のルールが膨大または複雑になりにくい。
【0122】
なお、採点パタン生成用解答文203は、採点されていない解答文が含まれていても良いので、採点対象解答文217は、採点パタン生成用解答文203に含まれていても良い。
【0123】
採点処理202では、生成された採点パタン215を用いて、採点対象解答文217を採点する。以下では、採点処理202で行われる処理の一例について説明する。
【0124】
採点216では、採点対象解答文217の各解答文について、採点パタン215に合致する解答文には、予め設定された得点を付与する。例えば、図7Bの例の条件Cのパタンが採点パタン215であるとする。このとき、採点対象解答文217が“I wanted to be a pianist.”の場合には、採点パタン215に合致するため1点を付与する。
【0125】
また、採点対象解答文217が“I wanted to be a bird.”の場合には、“bird”が条件Cの“occupation”ではないので、採点パタン215に合致せず、0点となる。また、採点パタン215に付与された信頼度に基づいて、採点の信頼度も付与する。なお、採点結果に対する信頼度付与の別の方法として、採点対象解答文217も、階層クラスタリング210、クラスタソート211と同様に、クラスタリングを行い、上側のクラスタ(より多数派のクラスタ)に属する解答文に対して高い信頼度を付与し、解答文に付与された信頼度に基づいて、採点の信頼度を付与する方法を用いても良い。また、採点パタン215に付与された信頼度と、解答文に付与された信頼度の両方に基づいて、採点の信頼度を付与してもよい。
【0126】
正答の採点パタン215と誤答の採点パタン215の両方がある場合には、ルールの適用順序と最終判定規則を定めておく。例えば、正答の3つの採点パタンA、B、C、がある場合、採点パタンA、B、Cの順に適用し、いずれかで正答と判定された場合には、パタンの適用を終え、最終判定を正答と判定する、などとする。
【0127】
また、いずれの採点パタン215にも合致しない解答文については、未採点として、後に人手により採点を行う、などとする。
【0128】
記述式問題の採点において、本実施例1による文書評価装置101を用いることで、解答文の一部を自動で採点し、残りを人手で採点することにより、採点を効率化することができる。例えば、全ての解答文を文書評価装置101で自動採点し、採点結果の信頼度が一定の閾値以下のものについて、人手で採点することにより、全てを人手で採点する場合と比較して効率化することができる。
【0129】
また、記述式問題の採点においては、採点結果の一貫性や正確性を担保するために、複数の採点者により、採点を行う場合がある。例えば、2人の採点者により採点を行い、2人の採点者による採点が一致した場合には、その採点結果を採用し、一致しない場合には、3人目の採点者が2人の採点結果を考慮した上で、最終的な採点を行う、などの運用をする。
【0130】
このとき、本実施例1の文書評価装置101による採点を実施し、採点結果のうち、信頼度が高いものについては、最初の人手による2人の採点者の採点のうち、1人分を自動採点結果に置き換えることにより、採点を効率化することができる。
【0131】
本実施例1により、信頼度に基づいて、自動採点と人手による採点との分担を効率的に行うことができる。また、採点パタン215に合致するかどうかで、採点を行うため、採点パタン215を参照することにより、自動採点による採点結果に対する理由が分かりやすい。
【0132】
以上により採点された結果は、信頼度とともに、採点結果218に保存される。
【0133】
以上、本実施例1によれば、採点基準ごとに、正答と誤答を判定する採点パタン215を自動的に生成し、採点パタン215に基づいた自動採点を行う方法を提供することができる。また、解答文を多数派答案と少数派答案に分類することで、自動採点が容易な解答文(多数派解答文)と自動採点が難しい解答文(少数派解答文)に分類することで、自動採点の信頼性を判定することが可能となる。また、少数派解答文を人手で採点することで、自動採点と人手による採点を効率よく運用することが可能となる。
【実施例2】
【0134】
図11は、本実施例における文書評価装置101が実施する処理の一例を示すフローチャートである。図2に示した実施例1との違いは、階層クラスタリング1101において、基礎解析204と、高次解析207を実行した結果を用いている点である。
【0135】
実施例1では、解答文の階層クラスタリング210において、採点パタン生成用解答文203を単語や語句の出現頻度で特徴づける例を、図8を用いて説明した。実施例1では、“a”、“the”など、単語や語句のカウントとして除外するもののリストを生成しておき、それ以外の単語や語句について、図8のような特徴行列803を用いて階層クラスタリングを行った。
【0136】
本実施例2では、情報抽出206、および、情報表現型推定208に関係する単語や語句についてのみ、カウントの対象とする。
【0137】
実施例1の場合で、カウントの除外リストが“a”、“the”であったと仮定し、図4の解答文401から単語や語句をカウントする際、例えば、“I”、“wanted(またはwant)”、“to”、“become”、“very”、“kind、“nurse”の7つの単語がカウント対象となる。
【0138】
これに対して、本実施例2では、情報抽出結果402に関係する単語、“I”、“become”、“very”、“kind”、“nurse”および、情報表現型推定結果403に関係する単語、“wanted(またはwant)”、の合計6単語がカウント対象となる。なお、情報抽出結果402の5単語のみを用いても良い。
【0139】
このように、図8に示した特徴行列803のような特徴行列を生成する際に、解答文401から特徴としてカウントする単語や語句を、情報抽出結果402や情報表現型推定結果403などに関係するものに絞ることで、後の処理に関係しない単語や語句を特徴としてカウントするのを除外することができる。
【0140】
例えば、図4の例では、“to”が除外される。このような処理を行うことにより、より、採点パタンに適合した階層クラスタリング結果を得ることができ、精度のよい自動採点結果や信頼度が得られると期待できる。
【0141】
また、情報抽出結果402や情報表現型推定結果403に関係するもののみをカウントするという方法だけでなく、実施例1と同様に、除外リスト以外の単語や語句は全てカウントするが、情報抽出結果402や情報表現型推定結果403だけ、予め定められた割合で、図8に示す語句重要度802の値を大きくする、という方法をとってもよい。
【0142】
以上のように、特徴量の算出対象となる単語や語句を、情報抽出結果402や情報表現型推定結果403などから絞り込むことで、自動採点結果や信頼度の向上を図ることができる。
【実施例3】
【0143】
採点基準には、軽微なスペルミスは減点の対象としない場合がある。そのような場合に、スペルミスが異なる単語や語句として扱われるため、前記実施例1では、スペルミスごとに採点パタン215が生成される。また、様々なスペルミスをカバーするために、多くの解答文が必要となる場合がある。
【0144】
これに対して、本実施例3では、予め、採点パタン生成用解答文203、解答文採点データ213、採点対象解答文217に含まれるスペルミスを修正しておく。例えば、頻出するスペルミスのリストを生成しておき、リストにしたがって、スペルミスを修正する。例えば、“doctor”を“docter”と誤る事例などが考えられる。この場合、文書評価装置101では採点対象解答文217等の“docter”を全て、“doctor”に置き換える。
【0145】
また、文書評価装置101では採点パタン215に関係のない文法誤りを予め修正しておいてもよい。例えば、正確には、現在形で解答すべき問題に対して、時制は採点の対象外とする場合には、過去形など、別の時制で表現されたものを、現在形に修正しておくようにしてもよい。
【実施例4】
【0146】
本実施例4では、文書評価装置101のユーザインタフェースの例を示す。図12Aは、答案データ入力画面1201の一例を示す図である。答案データ入力画面1201は、表示装置103に出力される。図12Bは、採点済みの答案データの一例を示す図である。図12Cは、未採点の答案データの一例を示す図である。
【0147】
答案データ入力画面1201では、問題文IDフィールド121には、問題文を識別するためのIDを入力する。問題文フィールド122には、問題文を入力する。ファイルフィールド123には、データが入ったファイル名を指定する。ファイルは、例えば、図12Bに示す採点済みの答案データ1202や、図12Cに示す未採点の答案データ1203のようなファイルである。
【0148】
入力装置102の操作によって答案データ入力画面1201で保存ボタン124を押すと文書評価装置101は、問題文ID121が合致するデータについて、採点済みの答案データ1202や、未採点の答案データ1203が、データベース(図示省略)に保存される。
【0149】
例えば、採点済み答案データ1202と未採点の答案データ1203は、採点パタン生成用解答文203、採点済み答案データ1202は解答文採点データ213、未採点の答案データ1203は、採点対象データとして、採点対象解答文217に保存される。また、問題文も、各データベースに保存しておく。例えば、前記実施例1の図9A図9Cに示すようなデータ形式となる。データが入力されると、文書評価装置101の採点パタン生成処理201により、採点パタン215が生成される。
【0150】
図13は、文書評価装置101で生成された採点パタン表示画面1301の例を示す図である。採点パタン表示画面1301は、文書評価装置101のユーザが、生成された採点パタン215の編集をするためのメンテナンス用の確認画面である。
【0151】
採点パタン表示画面1301の問題文ID131に問題文IDを入力すると、問題文132に該当する問題文が表示される。採点済み解答文のうち、採点パタンが適用された解答文の数と、その採点パタンによる自動採点の精度(信頼度)が領域1302に表示されている。この例では、採点済み解答文800のうち、450に採点パタン215が適用され、そのうち4/5(80%)が正しく採点できたことを示している。これにより、採点パタン215全体の質を確認することができる。
【0152】
領域1302の下方には、採点パタン一覧133が表示される。採点パタン一覧133は、項番1303と、採点パタン1304と、カバー数1305と、精度(信頼度)1306をひとつのレコードに含む。
【0153】
項番1303の列は、採点パタンの番号を連番で示したものである。採点パタン1304の列は、採点パタン215に関する簡単な説明が表示される。この説明文の生成方法は、後の図14の説明で詳しく述べる。カバー数1305の列は、採点済み解答文のうち、採点パタンが適用された解答文の数である。精度1306の列は、当該採点パタンが適用された解答文のうち、正しく採点されたものの割合を精度で示す。
【0154】
ページ指定1307は、採点パタンの数が多い場合に、数ページに分割して表示した際、ページを移動するためのボタンである。なお、カバー数や、精度は、採点基準ごとに示す必要があるが、本採点パタン表示画面1301では、煩雑さを避けるため、省略した。また、本採点パタン表示画面1301に、各採点パタンを有効または無効化したり、削除したりする機能を追加するとよい。精度の低い採点パタンやカバー数の少ない採点パタンを無効化/削除することにより、自動採点による採点の質を向上させることができる。
【0155】
次に、個々の採点パタンの生成、編集画面について説明する。図13の項番1303を押下することにより、当該採点パタンの編集画面に遷移してもよいし、新たに採点パタンを生成するために、画面遷移するボタンを採点パタン表示画面1301の画面に追加しておいてもよい。
【0156】
図14は、採点パタン編集画面の一例を示す図である。採点パタン編集画面1401上部の領域1402には、選択された採点パタンのカバー数と、精度が表示される。説明文1403には、当該採点パタンの説明文が表示される。これは、文書評価装置101のユーザが採点パタンの追加や編集時に生成しても良いし、テンプレートにより自動で生成してもよい。自動で生成する場合には、例えば、図示のように、パタン1404の3項関係と、チェックされた時制をそのまま記載する、などの方法をとることができる。
【0157】
パタン1404には、情報抽出206で抽出された3項関係が表示され、時制1405には、情報表現型推定208で推定された3項関係の時制が表示される。この例では、過去形が該当している。この例は、図4で示した抽象化結果404のような採点パタンの例である。
【0158】
なお、採点パタン編集画面1401では、時制1405のみの単純な場合を示したが、情報表現型推定208や情報間関係推定209で解析対象として予め定められた型を、必要に応じて表示してもよい。また、複数の情報抽出による3項関係が採点パタン215に関係する場合には、複数の3項関係をパタン1404に表示することができる。採点パタン215の編集に必要な分だけ項目を増やしてもよい。これにより、文書評価装置101のユーザが採点パタンを細かく編集し、自動採点の質を向上させることができる。
【0159】
図15は、採点画面1501の一例を示す図である。問題文ID131と、問題文132については、図13に示した採点パタン表示画面1301と同様である。図15の表151には、未採点データの自動採点結果を示す。
【0160】
表151の解答文ID1502の列には、各解答文のIDが格納される。解答文1503の列には、解答文が格納される。採点基準X1504の列には採点基準Xによる採点結果が表示される。この採点結果は、自動採点の結果、または、ユーザが入力または編集した結果である。未採点の場合には、例えば、空欄にする、などとする。適用パタン1505の列には、適用された採点パタンの項番1303が表示される。適用パタン1505を押下すると、当該パタンの採点パタン編集画面(図14)に遷移してもよい。
【0161】
表151の下方には、ページ指定1506が表示される。ページ指定1506は前記図13のページ指定1307と同様であり、解答文の数が多い場合に、数ページに分割して表示した際に、ページを切り替えるためのボタンである。
【0162】
この採点画面1501を用いて、人手により、自動採点結果を確認または修正したり、自動採点により、未採点の解答文を採点する。なお、ひとつの解答文を採点した際に、同じ、または、類似した解答文も同時に採点する、などの機能を有しておいても良い。例えば、図15の解答文ID1502の解答文について、ユーザにより採点結果が入力または編集された場合に、同じ“I wanted to be a doctor” という別の解答文IDをもつ解答文があった場合に、その解答文にも同様の採点結果を自動的に付与する。
【0163】
これにより、採点を効率化できる。なお、この採点画面1501において、解答文ID1502の順に解答文1503を表示するのではなく、階層クラスタリングの結果(図5)の順に解答文を示しても良い。このように表示の順番をソートすることにより、多数派解答から少数派解答の順に解答文1503が現われ、類似の解答文が連続して現われる、などの効果により、人手による確認や採点が効率的になる。
【0164】
<まとめ>
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
【0165】
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【0166】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【0167】
101 文書評価装置
105 演算装置
106 メモリ
107 補助記憶装置
201 採点パタン生成処理
202 採点処理
203 採点パタン生成用解答文
204 基礎解析
207 高次解析
210 階層クラスタリング
211 クラスタソート
212 採点パタン生成
213 解答文採点データ
214 意味カテゴリ辞書
215 採点パタン
217 採点対象解答文
218 採点結果
図1
図2
図3A
図3B
図3C
図4
図5A
図5B
図6A
図6B
図7A
図7B
図8
図9A
図9B
図9C
図10A
図10B
図11
図12A
図12B
図12C
図13
図14
図15