(57)【要約】      （修正有）【課題】過度の反復単語使用に対してエッセイを自動的に評価する方法を提供する。【解決手段】エッセイを過度の反復単語使用に関して自動的に評価するため、エッセイ中の単語が特定され、前記単語と関連する少なくとも１つの特徴が決定される。また、前記単語が過度の反復様式で使用されている確率が、前記特徴をモデルにマッピングすることにより決定される。前記モデルは、少なくとも１つの評価付きエッセイを基にして機械学習アプリケーションにより生成されたものである。さらに、前記エッセイは注釈され、閾値確率を超えた確率に応じて過度の反復様式で使用されている前記単語を示す。【選択図】図３
2010015571.tif 000002
【特許請求の範囲】
【請求項１】
過度の反復テキストセグメント使用を決定するためのモデルを生成する方法であって、
コンピュータシステムに訓練用データを電子的に受け取る工程であって、前記訓練用データは過度の反復様式で使用されている１若しくはそれ以上のテキストセグメントを特定するために注釈されたエッセイを有する、前記受け取る工程と、
前記エッセイ中の各テキストセグメントに対する１若しくはそれ以上の特徴それぞれに特徴値を割り当てる工程であって、前記特徴値が前記コンピュータシステムにより自動的に計算されるものである、前記割り当てる工程と、
前記エッセイ中の各テキストセグメントに１つのインジケータ値を割り当てる工程であって、前記インジケータ値は、前記テキストセグメントが過度の反復様式で使用されている場合には第１の値にセットされるものである、前記割り当てる工程と、
前記エッセイ中の各テキストセグメントに対する前記特徴値および前記インジケータ値を前記コンピュータシステムがアクセスできるデータ記憶装置に格納する工程と、
前記特徴値のパターンを特定することにより、前記エッセイ中の前記１若しくはそれ以上のテキストセグメントの過度の反復使用に対するモデルを作成する工程であって、前記パターンが機械学習ツールによって特定されるものである、前記作成する工程と
を有する方法。
【請求項２】
請求項１の方法において、前記テキストセグメントは単語を有するものである。
【請求項３】
請求項１の方法において、前記注釈は手動の採点である。
【請求項４】
請求項１の方法において、前記エッセイの前記機能語は、前記特徴値の計算において前記コンピュータシステムによって考慮されないものである。
【請求項５】
請求項１の方法において、前記特徴値は、前記エッセイ中に発生する前記評価テキストセグメントの合計回数を有するものである。
【請求項６】
請求項１の方法において、前記特徴値は、前記エッセイ中の前記テキストセグメント合計数に対する、前記エッセイ中の前記評価テキストセグメント発生の比率を有するものである。
【請求項７】
請求項１の方法において、前記特徴値は、前記段落中の前記テキストセグメント合計数に対する、前記エッセイ中の１つのセグメントで発生する前記評価テキストセグメントの回数の比率の、前記エッセイのすべての段落にわたる平均を有するものである。
【請求項８】
請求項１の方法において、前記特徴値は、前記段落中の前記テキストセグメント合計数に対する、前記エッセイ中の１つの段落で発生する前記評価テキストセグメントの回数の比率の最大値を有するものであって、前記比率が前記エッセイ中の各段落に対して計算されるものである。
【請求項９】
請求項１の方法において、前記特徴値は、前記テキストセグメントを文字で測定した長さを有するものである。
【請求項１０】
請求項１の方法において、前記特徴値は、前記テキストセグメントが代名詞を含むかどうかを示す値を有するものである。
【請求項１１】
請求項１の方法において、前記特徴値は、連続テキストセグメント発生の間の間隔距離を表す値を有するものである。
【請求項１２】
請求項１１の方法において、前記距離は介在語数を計算することにより決定されるものである。
【請求項１３】
請求項１１の方法において、前記距離は介在文字数を計算することにより決定されるものである。
【請求項１４】
過度の反復テキストセグメント使用を決定するのに有用なモデルを生成するためのシステムであって、
訓練用データを受け取るように構成されたコンピュータシステムであって、前記訓練用データが過度の反復様式で使用されている１若しくはそれ以上のテキストセグメントを特定するために注釈された１つのエッセイを有する、前記コンピュータシステムと、
前記エッセイの各テキストセグメントに対する１若しくはそれ以上の特徴のそれぞれの特徴値を計算し、前記注釈付きエッセイの各テキストセグメントにインジケータ値を割り当てるように構成された特徴抽出プログラムであって、前記インジケータ値は、前記テキストセグメントが過度の反復様式で使用されているかどうかを示すものである、前記特徴抽出プログラムと、
前記エッセイ中の各テキストセグメントに対する前記特徴値および前記インジケータ値を格納するように構成されたデータ記憶装置と、
前記特徴を分析してパターンを特定するように構成された機械学習ツールと、
前記テキストセグメントの過度の反復使用に対するモデルを作成するモデルビルダであって、前記モデルが前記特定されたパターンから構成されるものである、前記モデルビルダと
を有するシステム。
【請求項１５】
請求項１４のシステムにおいて、前記注釈付きエッセイは手動で採点されるものである。
【請求項１６】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、前記エッセイ中で発生する前記テキストセグメントの合計回数を表す値を生成するように構成されている発生計算プログラムを有するものである。
【請求項１７】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、前記エッセイ中の前記テキストセグメント合計数に対して、前記エッセイ中で発生する前記評価付きテキストセグメントの回数の比率を表す値を生成するように構成されたエッセイ比率計算プログラムを有するものである。
【請求項１８】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、前記エッセイ中の前記テキストセグメント合計数に対する、前記エッセイ中で発生する前記評価付きテキストセグメントの回数の比率の、前記エッセイのすべての段落にわたる平均を表示する値を生成するように構成された平均段落比率計算プログラムを有するものである。
【請求項１９】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、前記段落中の前記テキストセグメント合計数に対する、前記エッセイ中の段落で発生する前記評価付きテキストセグメントの回数の最大比率を表す値を生成するように構成された最高段落比率計算プログラムを有するものである。
【請求項２０】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、前記テキストセグメントを文字で測定した長さを表す値を生成するように構成された長さ計算プログラムを有するものである。
【請求項２１】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、前記テキストセグメントが代名詞を含むかどうかを決定する識別プログラムを有するものである。
【請求項２２】
請求項１４のシステムにおいて、前記特徴抽出プログラムは、連続テキストセグメント発生の間の距離を表す値を生成するように構成された距離計算プログラムを有するものである。
【請求項２３】
請求項２２のシステムにおいて、連続テキストセグメント発生の間の前記距離は単語で
測定されるものである。
【請求項２４】
請求項２２のシステムにおいて、連続テキストセグメント発生の間の前記距離は文字で測定されるものである。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２００２年１１月１４日出願済み米国仮出願番号６０／４２６，０１５の「ＡＵＴＯＭＡＴＥＤ  ＥＶＡＬＵＡＴＩＯＮ  ＯＦ  ＯＶＥＲＬＹ  ＲＥＰＥＴＩＴＩＶＥ  ＷＯＲＤ  ＵＳＥ  ＩＮ  ＡＮ  ＥＳＳＡＹ」に対して優先権を主張するものである。
【背景技術】
【０００２】
文章能力を開発するには、実用的な作文経験を積むのが効果的な方法であると一般に考えられている。これに関して作文法の教示に関する文献には、評価およびフィードバック、具体的には学生が作成したエッセイの強い部分および弱い部分の指摘を行なうことで、学生の文章能力、具体的には文章編成に関する能力の改善を促進できるものである。
【０００３】
伝統的な作文法の授業では、教師が学生のエッセイを評価する。この評価はエッセイの特定要素に向けられたコメントを含む。同様に、自動エッセイ評価の出現により、コンピュータアプリケーションはエッセイを評価し、フィードバックを提供するように構成される。この工程は、ある文章エラーに関しては比較的単純である。例えば、単語の綴りは正しく綴られた単語のリストと容易に比較される。このリストにないすべての単語は、間違った綴りとして提示される。別の例では、主語・動詞の合致に関するエラーは、注釈付きエッセイのコーパス（言語資料）に基づいて特定される。これらのエッセイは、訓練された人間の審査員（例えば、作文教師および同種の者）によって注釈されており、評価ソフトウェアを訓練するための十分に大きなデータベースを構築するのに利用される。この訓練方法は、審査員間で比較的高い程度で合致される、文書エラーを認識するのに実質的に功を奏する。
【０００４】
例えば文法エラーまたは間違った綴りなどの上記に提示した比較的「厳格な」エラーに比較して、エッセイテキスト中での単語の過度に頻繁な使用を含む、文章中のエラーは、その性質上より主観的である。どの文体が最善かは、審査員の間で合致しないかもしれない。ある審査員はある文体の選択が気になっても、他の審査員には気にならないかもしれない。これらのタイプのエラーは定義するのが困難なため、これらは作文法の学生を非常に悩ませるものである。
【０００５】
従って、本発明でのエッセイを評価する方法は、文章の主観的要素の１つに関するフィードバックを学生の筆者に対して生成する必要性を満足させるものである。特に、本方法では、エッセイの自動評価を行いエッセイテキスト中でどの単語が過度に使用されているかを示すことができる。この評価は人間の評価者では時には主観的であるが、本発明では、エッセイテキストで単語が過度に使用されているかどうかの人間の評価を予測する、精確な評価方法を提供する。即ち、人間の評価がモデルとして使用され、文章エラーに関して学生のエッセイを評価する。単語の乱用についてのフィードバックは、文章における学生の語彙能力を高めるのに役立つ。
【発明の概要】
【課題を解決するための手段】
【０００６】
実施形態によれば、本発明は、過度の反復単語使用に対してエッセイを自動的に評価する方法を提供する。この方法では、エッセイ中の単語が特定され、前記単語に関する１若しくはそれ以上の特徴が決定される。さらに、過度の反復様式で使用されている前記単語の確率が、前記特徴をモデルにマッピングすることにより決定される。前記モデルは、少なくとも１人の人間が評価したエッセイに基づいた機械学習アプリケーションによって生成される。さらに、エッセイに注釈が付けられ、閾値の確率を超えた確率に応えて過度の反復様式で使用されている単語を示す。
【図面の簡単な説明】
【０００７】
本発明の実施形態は実施例として図示しているものであり、付随の図面に限定されるものではなく、図面の同様の数字の参照は、同様の要素を参照しているものである。
【図１】図１は、本発明の実施形態を使用したコンピュータネットワークのブロック図である。
【図２】図２は、本発明の実施形態を使用したコンピュータシステムのブロック図である。
【図３】図３は、本発明の実施形態に従った、自動評価アプリケーションに関するアーキテクチャのブロック図である。
【図４】図４は、本発明の実施形態に従った、モデルの図式である。
【図５】図５は、本発明の別の実施形態に従った、自動評価アプリケーションに関するアーキテクチャのブロック図である。
【図６】図６は、本発明の実施形態に従った、エッセイの評価方法のフローチャートである。
【図７】図７は、自動評価モデルビルダアプリケーションの実施形態に関するアーキテクチャのブロック図である。
【図８】図８は、本発明の実施形態に従った、過度の反復単語使用モデルの構築方法のフローチャートである。
【図９】図９は、本実施形態に従った、評価データの生成方法のフローチャートである。
【発明を実施するための形態】
【０００８】
簡潔化および例示的目的のため、本発明の原理は、主にその実施形態を参照することにより説明する。以下の説明では、本発明が完全に理解されるよう具体的な詳細事項を多数記載する。ただし当然のことながら、当業者であれば、本発明がこれら具体的な詳細事項に限定されることなく実施可能であることは理解されるであろう。その他の場合、本発明の要点を不必要に不明確にしないためにも周知の方法および構造について詳しく説明しない。
【０００９】
また、本明細書および付属の特許請求の範囲において使用する単数形「ａ」「ａｎ」および「ｔｈｅ」は、文脈が明らかに指示していない限り、複数の言及も含むことに留意しなければならない。特に別の定義がなければ、本明細書で使用されているすべての技術的および科学的用語は、当業者が一般に理解するのと同じ意味を有するものである。本明細書で説明するものと同一または同等のいかなる方法も、本発明の実施形態の実施またはテストで使用できるが、ここでは好適な方法を説明する。本明細書で言及したすべての出版物は参照により組み込まれるものである。本発明がそのような先行発明による開示に先行する資格がないことの承認として解釈されるべきものは、本明細書にはない。
【００１０】
以下の説明では、自動エッセイ評価システムのさまざまな実施形態が、構築および使用方法と共に提供されている。以下の例は、特定の文章エラー、すなわち過度の反復様式での単語使用に言及している。一般に、前記用語「過度の反復」は、単語、句または同種のものが、読者にとって気障りでありおよび／または不愉快である程度に頻繁に繰り返される文体的文章エラーを指す。ただし、当然のことながら、本発明は過度の反復単語使用の評価に限定されるものでない。それよりむしろ、本発明の他の実施形態はさまざまな文章エラーを検出するのに使用することができる。
【００１１】
本発明の実施例は、文体的文章エラーに関する人間の評価者間での合致を説明するのに使用される。次に、この合致は、過度の反復単語使用に関してエッセイを自動的に評価するモデルを生成するために使用される。
【００１２】
図１は、本発明の実施形態が実施されるコンピュータネットワーク１００のブロック図である。図１に示すように、前記コンピュータネットワーク１００は、例えばサーバ１１０と、ワークステーション１２０および１３０と、スキャナ１４０と、プリンタ１５０と、データベース１６０と、コンピュータネットワーク１７０とを含む。前記コンピュータネットワーク１７０は、他の装置と通信するため前記コンピュータネットワーク１００の各装置に通信路を提供するように構成されている。また、前記コンピュータネットワーク１７０は、インターネット、公衆交換電話網、ローカルエリアネットワーク、プライベート広域ネットワーク、ワイアレスネットワークおよび同種のものであってもよい。
【００１３】
本発明の実施形態では、自動評価アプリケーション（「ＡＥＡ」）１８０は、前記サーバ１１０で実行され、前記ワークステーション１２０および１３０のどちらかまたは両方よりアクセス可能である。例えば、本発明のこの実施形態では、前記サーバ１１０は前記ＡＥＡ１８０を実行するように構成され、前記ＡＥＡへの入力として前記ワークステーション１２０および１３０からエッセイを受け取り、前記結果を前記ワークステーション１２０および／または１３０に出力する。代替実施形態として、前記ワークステーション１２０および１３０の１つまたは両方が単独または協同で、前記ＡＥＡ１８０を実行するように構成することができる。
【００１４】
前記スキャナ１４０は、テキスト内容をスキャンしてその内容をコンピュータ可読フォーマットに出力するように構成される。また、前記プリンタ１５０は、紙などの印刷媒体に前記内容を出力するように構成される。さらに、エッセイ、前記ＡＥＡ１８０によって使用されるモデル、前記ＡＥＡ１８０の処理結果、および注釈付きエッセイなどの前記ＡＥＡ１８０に関連するデータを格納するように、前記データベース１６０は構成される。また、コンピュータネットワーク１００の前記さまざまなコンポーネントにデータを配信またはそこからデータを受け取るように、前記データベース１６０は構成される。さらに、図１では個別装置のシステムとして示されているが、コンピュータネットワーク１００を構成するいくつかまたは全ての装置を単一の装置内に組み込むこともできる。
【００１５】
図１は、コンピュータネットワーク１００上の前記ＡＥＡ１８０を示したものだが、当然のことながら、本発明はネットワーク内の作用に限定されるものではなく、むしろいかなる適切な電子装置内でも実施可能である。このため、図１に示した前記コンピュータネットワークは例示的なものであって、いかなる意味においても本発明を限定することを意図したものではない。
【００１６】
図２は、本発明の実施形態を実装できるコンピュータシステム２００のブロック図である。図２に示したように、前記コンピュータシステム２００は、プロセッサ２０２と、メインメモリ２０４と、二次メモリ２０６と、マウス２０８と、キーボード２１０と、ディスプレイアダプタ２１２と、ディスプレイ２１４と、ネットワークアダプタ２１６と、バス２１８とを含む。前記バス２１８は、他の要素と通信するために前記コンピュータシステム２００の各要素に通信路を提供するように構成されている。
【００１７】
前記プロセッサ２０２は、前記ＡＥＡ１８０のソフトウェア実施形態を実行するように構成されている。この場合、コンピュータで実行可能な前記ＡＥＡ１８０用のコードのコピーを前記メインメモリ２０４にロードされ、前記二次メモリ２０６から前記プロセッサ２０２によって実行できる。コンピュータで実行可能なコードとは別に、前記メインメモリ２０４および／または前記二次メモリは、エッセイ、テキストの内容、注釈付きエッセイ、データのテーブル、エッセイの得点などを含むデータを格納することができる。
【００１８】
作動時は、前記ＡＥＡ１８０の実施形態用の前記コンピュータで実行可能なコードに基づいて前記プロセッサ２０２は表示データを生成することができる。この表示データは、前記ディスプレイアダプタ２１２により受け取られ、前記ディスプレイ２１４を制御するように構成された表示コマンドへ変換される。さらに、周知の方法で、前記マウス２０８およびキーボード２１０は、ユーザによる前記コンピュータシステム２００とのインターフェイスとして利用できる。
【００１９】
前記ネットワークアダプタ２１６は、前記ネットワーク１７０と前記コンピュータシステム２００との間に双方向通信を提供するように構成されている。この場合、前記ＡＥＡ１８０および／またはこのＡＥＡ１８０に関連付けられたデータは、前記コンピュータネットワーク１００に格納され、前記コンピュータシステム２００からアクセスできるようになる。
【００２０】
図３は、本発明の１つの実施形態に従った、前記ＡＥＡ１８０のアーキテクチャのブロック図である。図３に示すように、前記ＡＥＡ１８０は、エッセイの問題を表示し、エッセイを受け入れ、および／または評価付きエッセイ（例えば、採点付き、注釈付き、コメント付きなど）をユーザに出力するように構成されたユーザインターフェイス３００を含む。例えば、前記ユーザインターフェイス３００は、ユーザにエッセイを入力するように指示する問題を表示できる。前記ユーザインターフェイス３００はさらに、前記キーボード２１０で入力されたエッセイを受け入れ、このエッセイを特徴抽出プログラム３０２に転送し、反復分析モデラー３１８から１若しくはそれ以上の確率を受け取る。さらに、前記ユーザインターフェイスは、前記１若しくはそれ以上の確率をモデルと比較し、この比較に基づいて前記エッセイに注釈を付け、評価付きエッセイを前記ディスプレイ２１４に表示するように構成される。人間の審査員間で比較的高い合致を有する評価をもたらす閾値確率が、経験的に決定される。実施例では、人間の審査員間、および人間の審査員と当該自動評価システムと間の合致を詳述する。前記注釈には過度の反復単語使用のあらゆる適切な指示を含めることができる。例えば、過度の反復と決定されたそれぞれの事例を、太字で表示することができる。
【００２１】
前記特徴抽出プログラム３０２は、発生計数プログラム３０４と、エッセイ比率計算プログラム３０６と、段落比率計算プログラム３０８と、最高段落比率識別プログラム３１０と、単語長計数プログラム３１２と、代名詞識別プログラム３１４と、間隔距離識別プログラム３１６とを含み、これらはそれぞれが相互通信するように構成される。前記用語「特徴」は、特定された単語の属性、特性および／または特質として定義される。さらに、当然のことながら、本明細書では前記用語「単語」が全体を通して使用されているが、過度の反復単語、単語群、句、および同種のものの特定は、本発明のさまざまな実施形態の範囲内にあるものである。
【００２２】
前記特徴抽出プログラム３０２は、エッセイ中の単語を特定して、各特定された単語に対する単語エントリを含んだベクトルファイルを生成するように構成される。前記用語ベクトルファイルは、エッセイ中の各非機能語に対する特徴値のマトリクス（ＭＸＩ）を説明するために使用される。前記単語を決定するために、前記特徴抽出プログラム３０２は、前記エッセイをスペース、コンマ、ピリオドまたは同種のものの単語区切り文字が後続する１若しくはそれ以上の文字に解析する。前記ベクトルファイルを生成する前に、例えば前置詞、冠詞、および助動詞などの機能語が取り除かれる。例えば、前記機能語（ｔｈｅ，ｔｈａｔ，ｗｈａｔ，ａ，ａｎ，ａｎｄ，ｎｏｔ）は、結果の信頼性に貢献することなしに、前記分析の複雑性を増加させることが経験的に判明している。この場合、機能語リストが前記エッセイ中の前記単語と比較される。前記機能語リストに合致すると決定された単語は取り除かれ、以下で詳述するように、（表１と同様に）ベクトルファイルが残りの単語から生成される。
【００２３】
さらに、以下で説明するように、少なくとも１つの特徴が決定され、各特徴に対する関連値が前記エントリに格納される。上記で説明したように前記単語は決定され、各単語に関する特徴が決定され関連付けられる。１つの実施形態では、前記特徴はコンマによって別けられる。他の実施形態では、前記特徴はリンクリストまたは他の関係データ構造を通して関連付けられる。一般に、利用される前記特徴は、過度の反復単語使用の決定に関して、統計的に適切であることが経験的に解決されている。以下の本発明の実施例でさらに詳細に説明するように、この特定組合せの特徴をモデルにすることにより、前記ＡＥＡ１８０と人間の審査員との間の合致は、大体において２人の人間の審査員間の合致を超える。
【００２４】
一例として、表１は、あるエッセイ中の６３の特定された非機能語のそれぞれに対して７つの特徴を特定している前記特徴抽出プログラム３０２の結果を示している。表１に示すように、前記表の各列は、前記所与の単語に対する前記特徴ベクトルを構成している。
【００２５】
【表１】
2010015571.tif 000003
【００２６】
表１に示すように、機能語を除いたエッセイ中の各特定した単語に対して１つずつ、すなわち６３のベクトルファイルがある。本発明の１つの実施形態では、第１の行は列見出しを表し、第１の列は特定した単語を一覧し、第２の列は参照単語識別子を一覧し、残りの列は前記決定された特徴に対する前記関連値を一覧する。さまざまなその他の実施形態では、前記列見出し、前記特定された単語リスト、および／または前記参照単語識別子が存在しないかもしれない。１から７までの列見出しで上記に示されている前記列内の前記値は、特徴に関連している。本発明の１つの実施形態でのこれらの特徴は、以下の通りそれぞれ順番に一覧されている。  
１．特定の単語がエッセイ中で見付けられた回数で、「発生」と定義される。  
２．エッセイ中の単語の合計数と比較した発生比率で、「エッセイ比率」と定義される。  
３．エッセイ中の個々の段落内の単語の平均発生比率で、「平均段落比率」と定義される。前記特定の単語は各エッセイの段落中で数えられ、各段落内で見付けられた前記単語数によって割り算され、個別段落比率が算出される。次に、平均段落比率がここの特徴として格納される。  
４．前記個々の段落内での前記単語の最高比例発生が、「最高段落比率」として決定される。  
５．個々の文字が測定され「単語の長さ」が決定される。  
６．前記単語が代名詞かどうかが、「代名詞インジケータ」によって決定される。(はい＝１、いいえ＝０)
７．最後に、単語で測定される、特定された単語の発生間隔における「間隔距離」が、各単語に対して決定される。この間隔距離は、エッセイ中で単語が一度しか発生しない場合には適用されず計算されない。各エッセイで、テキストに前記特定の単語が現れるごとに、各単語ごとに別々に前記特徴が決定される。従って、前記単語「ｌｉｋｅ」がエッセイ中に４回現れる場合は、「ｌｉｋｅ」に対して４つの単語ベクトルが作成される。１回目に「ｌｉｋｅ」が現れた場合には、計算するための「間隔距離」は存在しない。しかし、２回目に前記単語が現れると、前記１回目と２回目の発生の間の距離が計算され、「ｌｉｋｅ」の前記２回目の発生に対する前記特徴セットに格納される。  
【００２７】
表１に提供された例では、エッセイ中の単語の過度の反復使用を決定するのに特に有用なものとして、これらの７つの特徴が特定される。ただし、実際上は、あらゆる妥当な数の特徴が特定される。
【００２８】
例えば、特徴抽出プログラムは、エッセイ中に見付けられる単語の合計数に基づいて（例えば、トークン総数）、またはエッセイ中に現れる異なる単語の合計数（例えば、タイプ総数）に基づいて、前記解析付きテキストの特徴を抽出するように構成される。前記トークン総数とタイプ総数との違いは、上記で使用した例に照らすとよりよく理解できる。前記単語「ｌｉｋｅ」が前記エッセイテキストで４回現れた場合、トークン総数システムで前記単語「ｌｉｋｅ」に対して４つのベクトルが生成される。ただし、タイプ総数システムでは、前記特徴抽出プログラムは、前記単語「ｌｉｋｅ」に対して１つのベクトルしか生成しない。
【００２９】
表１の構成では、特徴抽出プログラムはエッセイ中の前記単語合計数に基づいて特徴を抽出した(トークン総数)。一語一語に関して、ベクトルが生成され、特徴が決定される。別の実施形態では、前記特徴抽出プログラムが、エッセイ中の全ての異なる単語に対して特徴ベクトルを生成することができる（タイプ総数）。タイプ総数システムとトークン総数システムを比較すると、両システムで列１〜７に表示される前記特徴は、大部分は等しいものである。ただし、タイプ総数に基づく特徴抽出プログラムにおいて、間隔距離計算は変化する。従って、タイプ総数システムでは、前記間隔距離特徴は、単語数で測定される単語発生の間の平均距離を示すように構成される。前記間隔距離特徴はまた、前記単語が発生する間の最大距離間を示すように構成される。前記間隔距離は、前記単語発生の距離間のそのような関係を示すように計算される。例えば、単語「ｌｉｋｅ」がエッセイテキスト中で４回発生し、それぞれが４単語、８単語、および１２単語の間隔で現れた場合、ベクトル「ｌｉｋｅ」の前記平均間隔距離は８単語である。
【００３０】
各単語に対して、前記発生計数プログラム３０４は、エッセイ中に単語が現れる回数を決定し（「発生」）、この値をベクトルファイルの対応する単語エントリ（「エントリ」）に格納するように構成される。例えば、それぞれのエントリに対応する前記単語は、「検索ストリング」として利用される。エッセイを検索する際、前記検索ストリングへの各「ヒット」により、発生計数プログラム（最初はゼロに設定）が１つずつ増加する。ファイルの終了（ＥＯＦ）マーカがエッセイの終了を示すのに利用され、それにより、それぞれのエントリへの前記発生計数プログラムの値の格納が示される。前記発生計数プログラムはゼロに再設定され、次の単語の発生数が数えられる。この工程は、原則的に全ての単語の発生が決定され、それぞれのエントリに格納されるまで続けられる。上記の例では、発生を数える工程に対する比較的に連続的なアプローチを示している。ただし、他のアプローチを利用することも、本発明の範囲内である。例えば、エッセイ中の単語に対する基本的に全ての発生が、エッセイの最初の単語の特定解析中に決定されるようにすることができる。
【００３１】
前記エッセイ比率計算プログラム３０６は、エッセイ中の各単語に関する単語使用比率(「エッセイ比率」)を決定するように設定される。この場合、前記エッセイに存在する単語の合計数（「単語総数」）（機能語を引いた）が、前記エッセイ比率計数プログラム３０６によって決定される。また、各単語に対して、前記エッセイ比率計算プログラム３０６は、発生を前記単語総数で割って前記エッセイ比率を決定するように構成される。前記単語総数は、さまざまな様式で決定される。例えば、前記エッセイ比率計算プログラム３０６が前記ベクトルファイルの数を数えるか、または単語区切り文字が後続する１若しくはそれ以上の文字に前記エッセイを解析し、機能語を取り除いた後に単語の合計数を決定するように構成される。前記エッセイ比率は、前記エッセイ比率計算プログラム３０６によって前記ベクトルファイルの関連単語とともに格納される。
【００３２】
前記段落比率計算プログラム３０８は、各段落中に各単語が現れる回数、各段落中の単語数、および各段落ごとの発生比率を決定するように構成される。エッセイ中の段落に対する発生の平均比率は、各段落ごとの前記発生比率の平均を計算して決定される。エッセイ中の段落の境界は、エッセイ中のハードリターン文字を検索することによって決定される。エッセイ中の段落に対する前記平均発生比率は、前記段落比率計算プログラム３０８によって、前記ベクトルファイル内の関連単語と共に格納される。また、前記段落比率計算プログラム３０８は、各段落ごとの前記発生比率を前記最高段落比率識別プログラム３１０に転送するように構成され、これにより労力の重複を削減する。
【００３３】
前記最高段落比率識別プログラム３１０は、各段落ごとの前記それぞれの発生率を受け取り、最高値を特定するように構成される。この値は、前記ベクトルファイル中の関連単語と共に、最高段落比率識別プログラム３１０として格納される。
【００３４】
前記単語長計数プログラム３１２は、各単語それぞれの長さを決定し、各長さのそれぞれの決定を前記ベクトルファイル中の関連単語と共に格納するように構成される。
【００３５】
前記代名詞識別プログラム３１４は、エッセイ中の代名詞を特定するように構成される。前記代名詞識別プログラム３１４はさらに、特定された代名詞に関連する前記ベクトルファイル中の各エントリのそれぞれに対して「１」を格納するように構成される。また、前記代名詞識別プログラム３１４は、特定された代名詞に関連しない前記ベクトルファイル中の各エントリのそれぞれに対して「０」を格納するように構成される。エッセイ中のあらゆる代名詞を特定するために、エッセイ中の各文章が特定され（例えば、終止符の場所に基づいて）、各特定された文章内の単語に「品詞タグ」が構文解析プログラムによって割り当てられる。前記代名詞識別プログラム３１４は、前記「品詞タグ」に基づいてエッセイ中の代名詞を特定するように構成される。上記の構文解析プログラムについてのさらなる詳細な説明は、２０００年１０月２０日出願済みＥｄｕｃａｔｉｏｎａｌ  Ｔｅｓｔｉｎｇ  Ｓｅｒｖｉｃｅに与えられた米国特許第６,３６６,７５９  Ｂ１で開示されており、この参照によりその全体が本明細書に組み込まれるものである。代名詞を特定するその他の方法も使用することができる。例えば、代名詞のあらかじめ定められたリストと解析付きテキストとを比較して、エッセイ中の代名詞を特定することができる。
【００３６】
前記距離識別プログラム３１６は、エッセイおよび／またはベクトルファイルに基づいて、単語の一連の発生から重複単語を分離している介在単語数（有れば）を決定するように構成される。前記単語の１回目の発生の間、前記距離識別プログラム３１６によって、ベクトルファイルに前記単語に対する距離「Ｎ／Ａ（該当なし）」が格納される。しかし、特定された単語の２回目（またはそれ以上）の発生の場合には、前記介在単語数を表す数値が決定され、この値は前記距離識別プログラム３１６によって前記単語（２回目またはそれ以上の発生）のベクトルファイルに格納される。
【００３７】
前記反復分析モデラー３１８は、前記特徴抽出プログラム３０２から前記ベクトルファイルのそれぞれを受け取り、前述の訓練に基づいて(図７を参照)、前記ベクトルファイルからパターンを抽出するように構成される。前記訓練では、モデル４００が生成された（図６を参照）。一般に、前記モデル４００は、専門家および／または訓練された審査員によって注釈が付けられたエッセイに基づいて生成された少なくとも１つの決定木を含む。前記ベクトルファイルの各エントリに関連する特徴の値および存在または不在に基づいて前記決定木を進むことにより、実質的に一意の各単語に関する確率が決定される。この確率は、エッセイ中の前記単語使用を過度の反復単語使用と関連付ける。従って、各単語に対して、前記モデル４００は、前記単語が過度に反復している単語の可能性を決定するのに利用される（例えば、マッピング）。例えば、前記ベクトルファイルが前記モデル４００にマッピングされて、過度に反復している各単語の確率が決定される。一般に、前記マッピング工程は、前記モデル４００と呼ばれる複数枝の決定木を進むことを含む。前記決定木の各枝において特徴と関連する値は、前記モデルをどのように進むかを決定するのに利用される。前記マッピング工程が完了すると、確率が戻される。この工程は前記ベクトルファイル中の各エントリに対して繰り返され、各エントリに対して確率が戻される。これらの確率は前記ユーザインターフェイス３００に転送される。
【００３８】
モデル化は本技術分野のその他のいかなる方法によっても達成される。その他の方法には、単語が過度に使用されているかどうかの最終計算で使用される各特徴の重みを決定する、重回帰を含む。モデル化と人間の評価については、本出願の実施例で再び説明する。
【００３９】
各モデルは、人間の採点者によって採点された複数のエッセイから構築される。各単語に関する前記ベクトルファイルに格納されている特徴値は、前記モデルを有する値範囲と比較される。例えば、図４では、決定木として単純化された前記モデル４００の図式が示されている。第１の決定点４０１では、所定の単語に対する発生値が前記モデルと比較される。前記発生値がある特定の範囲内にある場合には、枝４０５を採り、そうでない場合には枝４１０を採る。前記エッセイ比率を前記モデルと比較する第２の決定点４１５に到着する。前記エッセイ比率の値が複数の範囲と比較され、パス４２０、４２５、または４３０からどれを採るかが決定される。さまざまな決定点および関連セグメントが前記モデル４００を通る複数のパスを形成している。各パスは関連した確率を有する。前記ベクトルファイルに基づいて、前記さまざまなセグメントを通る１つのパスが決定され、前記関連した確率が戻される。この工程は比較的太いパス４５０によって示されている。従って、この例では、６５％の確率が戻される。
【００４０】
図５は、本発明の代替実施形態に従った、自動評価アプリケーション（「ＡＥＡ」）５００に関するアーキテクチャのブロック図である。図１または２には示していないが、前記ＡＥＡ５００は、コンピュータシステム（例えば、前記コンピュータシステム２００）および／またはコンピュータネットワーク（例えば、前記コンピュータネットワーク１００）で実施してもよい。この実施形態の前記ＡＥＡ５００は、図３に示した前記実施形態と類似しているので、異なる側面だけを以下に説明する。図３に示した前記実施形態から異なるものの１つは、前記ＡＥＡ５００が前記ユーザインターフェイス３００および／または前記特徴抽出プログラム３０２から実質的に独立した方法で動作されることである。この場合、図５に示すように、前記ＡＥＡ５００はベクトルファイル５０５、モデル５１０、および反復分析モデラー５１５を含む。
【００４１】
この実施形態の前記反復分析モデラー５１５は、前記モデル５１０への前記ベクトルファイル５０５のマッピングに基づいて、出力５２０を生成するように構成される。例えば、前記反復分析モデラー５１５が、前記ベクトルファイル５０５および前記モデル５１０をメモリ(例えば、メインメモリ２０４、二次メモリ２０６または他の記憶装置)から読み出すように構成される。前記出力５２０は、前記マッピング工程に基づいて１若しくはそれ以上の確率を含むことができる。
【００４２】
図６は、本発明の１つの実施形態に従った、図５に示した前記ＡＥＡ５００に対する方法６００のフローチャートである。従って、前記方法６００は、コンピュータシステム（例えば、コンピュータシステム２００）および／またはコンピュータネットワーク（例えば、コンピュータネットワーク１００）で実施される。前記方法６００は、前記ＡＥＡ５００によって評価されるエッセイの受け取りに応じて開始される（６０５）。
【００４３】
そして、次のエッセイが、前記ＡＥＡ５００によって処理されるために、メインメモリにロードされる（６０５）。前記ＡＥＡ５００は、前記エッセイから全ての機能語を取り除いて（６１０）、分析される第１の非機能語を特定する（６１５）。この場合、前記ＡＥＡ５００は単語単位でエッセイを分析するように適応されるか、または特定句若しくは文字の並びを分析するのに使用できるように適応され、関連する前記特徴値を決定する。図３に示した前述の実施形態のように、次に、前記ＡＥＡ５００は前記発生６２０を計算し、エッセイ中の単語合計数に対するエッセイ中の各単語の比率である前記エッセイ比率６２５を計算する。前記ＡＥＡは次に、前記段落比率６３０を計算する。前記平均段落比率６３０の計算において、各段落で現れる各単語の回数、各段落の単語数、および各段落ごとの発生比率が決定される。エッセイ中の各段落に対する発生の平均比率がさらに決定される。例えば、特定の単語が３つの段落それぞれに対して段落比率０.０１、０.０２、および０.０３を有する場合、平均段落比率は０.０２である。各段落比率に対する前記値を使用して、前記ＡＥＡは次に、前記最大段落比率を計算する（６３５）。次に、単語の前記長さが単語長によって決定される（６４０）。上記の計算された値はそれぞれ、前記特定の単語に対してベクトルフィルに格納される。また、前記ベクトルは代名詞識別子の値６４５を含み、単語が代名詞として特定された場合には所与値（例えば、１）であり、単語が代名詞でないとして特定された場合には第２の値（例えば、２）である。
【００４４】
最後に、前記単語が発生する間の前記介在距離６５０が測定され、その値が前記単語に対するベクトルファィルに格納される。単語の１回目の発生に対しては、ベクトルファイルのそれぞれのエントリ６５０にゼロ値が格納される。しかし、特定された単語のその後の発生に対してはベクトルファイルが生成され、間隔距離を示す数値が計算され、前記特定された単語のベクトルファイルに格納される。この距離は、２つの後続発生間で決定された介在単語数である。
【００４５】
次に、前記ＡＥＡは、分析すべき追加の単語が残っているかどうか決定し（６５５）、存在する場合には、工程６１５に始まる前記工程が繰り返される。エッセイ中に分析すべき追加の単語がない場合には、次に生成されたベクトルファイルがモデル６６０にマッピングされ、前記単語に対する結果の確率が計算される（６６５）。この工程は各ベクトルに対して繰り返され（６７０）、前記結果の確率はさらに処理または保存に送付される（６７５）。前記さらなる処理には、計算した確率を閾値レベルと比較して、所定の単語のいずれかがエッセイ中で過度の反復として分類されるべきかどうか決定することを含む。また、前記確率は、エッセイに過度の反復単語使用を示す注釈を付けるのに使用される。分析すべき追加のエッセイがある場合には（６８０）、工程６０５から始まる上述の方法を繰り返し、そうでない場合には前記方法は終了する（６８５）。
【００４６】
図７は、反復分析モデルビルダ（「モデルビルダ」）の実施形態に対するアーキテクチャのブロック図である（７００）。図１または２には示していないが、前記モデルビルダ７００は、コンピュータシステム（例えば、コンピュータシステム２００）および／またはコンピュータネットワーク（例えば、コンピュータネットワーク１００）で実施してもよい。図７に示すように、前記モデルビルダ７００はユーザインターフェイス７０２と、特徴抽出プログラム７０４と、機械学習ツール７１８とを含む。
前記ユーザインターフェイス７０２は、訓練用データを受け取るように構成される。既存のエッセイと前記エッセイの注釈とを有する訓練用データが、反復分析モデルを構築するのに利用される。この場合、前記訓練用データは上記に説明した前記エッセイデータに類似しているかもしれない。前記訓練用データは、さまざまなテストプロンプトに応じて書かれたエッセイである。従って、評価されるエッセイのトピックは、前記モデルを生成するのに使用されたエッセイ訓練用データのトピックと異なる。前記注釈は、前記訓練用データ内の過度の反復単語のインジケータを含む。前記注釈はさまざまな様式で生成されるが、本発明の１つの実施形態では、前記ユーザインターフェイス７０２が訓練された審査員からの訓練用データの手動の注釈を受け取るように構成される（図９を参照）。また、前記ユーザインターフェイス７０２は、前記訓練用データおよび／または前記注釈を前記特徴抽出プログラム７０４に転送し、前記機械学習ツール７１８から前記作成モデル７２５を受け取るように構成される。
【００４７】
前記モデルビルダ７００の前記特徴抽出プログラム７０４は、上記に説明した前記特徴抽出プログラム３０２に類似しているので、前記特徴抽出プログラム７０４の完全な理解に必要とされる特徴だけを以下に詳細に説明する。図７に示すように、前記特徴抽出プログラム７０４は、発生計数プログラム７０６と、エッセイ比率計算プログラム７０８と、段落比率計算プログラム７１０と、最高段落比率計算プログラム７１２と、単語長計数プログラム７１４と、代名詞識別プログラム７１６とを含み、それぞれの動作は図３でより充分に説明されている。前記特徴抽出プログラム７０４は、前記ユーザインターフェイス７０２から前記訓練用データおよび／または前記訓練用データの注釈とを受け取り、７０６、７０８、７１０、７１２、７１４、および７１６で特定された前記関連する特徴値を計算し、前記所与の単語に対するベクトルファイルに各値を格納する。次に、例えば人間の評価者、審査員、または専門家などのユーザは、単語が過度に使用されているという注釈者の主観的決定を示す第１の値（例えば、１）か、または単語が過度に使用されていないことを示す第２の値（例えば、０）を入力するように訊ねられる。代わりとして、前記訓練用データにどの単語が反復使用されているかを示す採点または注釈が既に付いている。従って、工程７１７では、前記特徴抽出プログラムがこの注釈を読み取ってエッセイ中の単語の反復性を決定する。
【００４８】
前記機械学習ツール７１８は、前記訓練用データから抽出された特徴を使用して、このデータに基づいて前記モデル７２５を生成するように構成される。一般に、前記機械学習ツール７１８は、各注釈と関連したパターンを決定するように構成される。例えば、比較的長い単語が同じ単語に比較的近接して反復する場合は、この重複する単語が比較的短い場合よりもさらに強い相関関係がある。本発明の１つの実施形態では、機械学習ツール（例えば、データマイニングツール等）、Ｃ５．０（登録商標）（オーストラリアのＲＵＬＥＱＵＥＳＴ  ＲＥＳＥＡＲＣＨ  ＰＴＹ．ＬＴＤ．から入手可能）を利用して前記モデルを生成する。しかし、本発明の他の実施形態では、さまざまなその他の機械学習ツールまたは同種のものを利用して前記モデルを生成するので、これらは本発明の範囲内である。この場合、本発明の代替実施形態では、複数モデルが生成され、それらが単１モデルに組み込まれる。例えば、単語長に基づいたモデル、近接に基づいたモデル、および段落中での発生比率に基づいたモデルが生成される。この方法では、例えば投票アルゴリズムが、候補の単語(例えば、過度の反復の見込みのある単語)を各モデルから受け取って、各指名された単語に対する総意を決定する。前記機械学習ツール７１８によって生成された前記モデル７２５は次に、前記反復分析モデラー７２０に組み込まれ、本明細書で説明した様式でエッセイを評価するために使用される。
【００４９】
図８は、本発明の１つの実施形態に従った、モデルを構築するための方法８００のフローチャートである。図１または２には示していないが、前記方法８００は、コンピュータシステム（例えば、コンピュータシステム２００）および／またはコンピュータネットワーク（例えば、コンピュータネットワーク１００）で実施してもよい。図８に示すように、前記方法８００は少なくとも１つの注釈付きエッセイ（例えば、注釈訓練用データ）の受け取りに応じて開始される（８０１）。前記注釈付きエッセイはさまざまな方法で生成され得るが、その内の１つが図９に示されている。ただし、注釈付きエッセイ８０１を生成するいかなる方法も本発明の範囲内にあるものである。本発明の１つの実施形態では、前記注釈付きエッセイは１若しくはそれ以上のトピックを論議する複数のエッセイの形式である。前記複数のエッセイは、１人またはそれ以上の訓練された審査員によって注釈されている。一般に、前記注釈は、過度の反復様式で使用されている単語を特定するのに利用される。
【００５０】
少なくとも１つの注釈付きエッセイを受け取った後（８０１）、関連する特徴が抽出され各単語に対するベクトルに格納される（８０５）。前記特徴はいかなる方法でも抽出され、図３または図７と共に説明したような特徴抽出プログラムの使用を含むものである。ただし、この場合は、関連する特性およびパラメータをよりよく表すように、前記特徴が人間の評価者によって修正される。
【００５１】
いったん前記特徴ベクトルが作成されると（８０５）、前記モデルは機械学習ツールによって構築され（８１０）、前記ベクトルおよび人間による注釈付きエッセイをパターンやその他の関連する特性に関して検査する。前記モデルは、図７に説明した前記方法のような本明細書の方法によりまたはその他の周知の方法により構築される。
【００５２】
次に、前記モデルは評価され、結果予測が充分正確かどうかを決定する（８１５）。例えば、前記方法は、図３と共に説明した方法に類似した方法で、エッセイを評価するために使用される。前記エッセイは人間の専門家によって評価され（８１５）、前記ＡＥＡ１８０のモデル４００としてそのパフォーマンスと比較される。前記評価が所定の範囲内で合致すれば、前記モデルは受け入れることができると決定される。前記評価が所定の範囲内で合致しなかった場合には、前記モデルは失敗であり、前記方法８００は工程８０５に戻し、そこで前記モデルの正確さを増加させるように前記特性およびパラメータを修正する。
【００５３】
図９は、本発明の１つの実施形態に従った、モデルを生成するのに使用できる評価付きまたは注釈付きエッセイを生成するための方法９００のフローチャート。図９に示すように、前記方法９００は、専門家および審査員が評価されるべき少なくとも１つのエッセイを受け取るところから始まる（９０５）。前記専門家は、文法および／またはエッセイ評価において平均以上の技量を有する当業者として一般に認定されている１人またはそれ以上の人間である。前記審査員は、文法および／またはエッセイ評価において少なくとも当業者の技量を有する１人またはそれ以上の人間である。
【００５４】
工程９１０では、審査員は専門家によって過度の反復単語使用についてエッセイに注釈を付ける訓練を受ける。例えば、前記専門家は、単語が過度に使用されているかどうかを決定する予め定められた一組のルールに従って訓練または指導する。また、前記審査員は、前記専門家が１若しくはそれ以上のエッセイを評価しているのを観察することができる。前記審査員と前記専門家はどのようにして、なぜ特定の評価が行われたのか討議することができる。追加訓練が必要ような場合は（９１５）、追加のエッセイを使用して前記工程が繰り返される。そうでなければ、前記審査員は、モデルを生成するために使用できるエッセイを評価および／または注釈する訓練ができたと見なされる。
【００５５】
次に、工程９１０で受けた訓練に基づき、前記審査員によってエッセイが評価および／または注釈される（９２０）。例えば、前記審査員は、過度の反復様式で使用されていると決定された単語を特定し、それに従って前記エッセイに注釈を付ける。これらの評価付きエッセイはデータベースまたは他のデータ記憶装置に格納される（９２５）。
【００５６】
定期的に、審査員のパフォーマンスが評価され、エッセイが受け入れられる様式で評価および／または注釈されているかどうかを決定する（９３０）。例えば、第１の審査員によって評価されたエッセイは、第２の審査員および／または専門家による同じエッセイについての評価と比較される。前記評価が所定の範囲内であれば、前記パフォーマンスは受け入れられたと見なされる。前記評価付きエッセイ間の合致レベルは、例えば、κ（カッパ）統計量、適合率（ｐｒｅｃｉｓｉｏｎ）、再現率（ｒｅｃａｌｌ）、Ｆ値（Ｆ−ｍｅａｓｕｒｅ）などの１若しくはそれ以上の評価付きエッセイの周知の特性測定の値を計算することにより決定される。ここで、κ（カッパ）統計量は、偶然の確率を排除した統計的な合致確率を決定するもので、一般に知られた式で表される。適合率とは、第１の審査員および第２の審査員の合致数を第１の審査員が付記した評価の数で割った、合致確立の指標である。再現率とは、第１の審査員および第２の審査員の合致数を第２の審査員が付記した評価の数で割った、合致確立の指標である。Ｆ値は、２×適合率×再現率を適合率＋再現率で割ったものに等しい。
【００５７】
審査員のパフォーマンスが受け入れられないと決定した場合は、前記審査員は、専門家との訓練に戻される。審査員のパフォーマンスが受け入れられると決定した場合には、前記審査員はエッセイの評価および／または注釈を続けることができる。
【００５８】
本発明の１つの実施形態９００では、前記モデル構築に使用する注釈付きエッセイを生成するための１人またはそれ以上の審査員の訓練を提供する。例えば、比較的大量のエッセイを評価する場合で、そうすることが比較的少数の専門家にとって不当な重荷である場合、方法９００を使用して複数の審査員を訓練するのは有益である。本発明の別の実施形態では、審査員、訓練された審査員、または専門家の中の誰でもエッセイを評価することができる。
【００５９】
前記ＡＥＡ（本明細書で説明した前記モデルビルダ）および本発明の方法は、アクティブおよび非アクティブの両方のさまざまな形式で存在する。例えば、これらは、ソースコード、オブジェクトコード、実行可能コード、または他フォーマットのプログラム命令を有するソフトウェアプログラムとして存在することができる。上記のいずれもが、（記憶装置およびシグナルを含む）圧縮または非圧縮のコンピュータ可読媒体に具体化される。コンピュータ可読媒体記憶装置の例としては、従来のコンピュータシステムＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ（読み取り専用メモリ）、ＥＰＲＯＭ（消去可能、プログラム可能ＲＯＭ）、ＥＦＰＲＯＭ（電気的消去可能、プログラム可能ＲＯＭ）、フラッシュメモリ、および磁気または光のディスクまたはテープを含む。コンピュータ可読シグナルの例として、インターネットまたは他のネットワークを通してダウンロードされるシグナルを含む、（媒体の使用によって変調されているかどうかに係わらず）コンピュータプログラムをホストするまたは実行するコンピュータシステムがアクセスできるように構成されるシグナルである。前述の具体例としては、ＣＤＲＯＭまたはインターネットダウンロードを通したプログラムの分配を含む。ある意味で、インターネット自体が、抽象的実体としてコンピュータ可読媒体である。これは、コンピュータネットワーク一般についても同様である。
【００６０】
また、ここで言及する数人または全ての専門家、審査員、およびユーザには、エッセイの生成、エッセイの注釈、および／または審査員にエッセイの注釈を指導するように構成されるソフトウェアエージェントを含む。この場合、前記ソフトウェアエージェントはアクティブおよび非アクティブなさまざまな形式で存在することができる。
【実施例１】
【００６１】
実施例
以下の例では、人間の評価者の間の合致および、本発明のシステムと人間の評価者との間の合致を示す。２人の人間の審査員が一連のエッセイに注釈を付け、過度に使用されている単語があるかを示す。簡略な表記法の「ｒｅｐｅａｔｅｄ（反復した）」、「ｒｅｐｅｔｉｔｉｏｎ（反復）」、または「ｒｅｐｅｔｉｔｉｖｅ（反復的）」は、エッセイ中の特定の単語の過度の反復使用に言及するものである。
【００６２】
表２の結果は、単語レベルで審査員により反復が付記されたエッセイに基づいて、２人の人間の審査員間の合致を示している。表２のこのデータには、１人の審査員はいくつかの反復単語を注釈し、他方の審査員は反復している単語がないと注釈したケースを含んでいる。各審査員は、エッセイの約２５％について、過度の反復単語を注釈した。表２での「Ｊ１とＪ２」合致は、審査員２の注釈が比較の基準であったことを示し、「Ｊ２とＪＩ」合致では、審査員１の注釈が比較の基準であったことを示している。前記２人の審査員間のκ統計量は全単語（例えば、反復＋非反復）の注釈を基に０．５であった。κ統計量は、審査員間の偶然の合致に関する合致を示す。０．８より高いκ値は高度の合致を反映し、０．６〜０．８は優良な合致を示し、０．４〜０．６の値は低度の合致を示す、ただしそれでも偶然以上である。
【００６３】
【表２】
2010015571.tif 000004
【００６４】
表２では、「反復単語」についての審査員間の合致は少し低めである。しかし、どちらかの審査員によっていくつかの反復を有すると特定されたエッセイの合計セットがあり、特に、両方の審査員がある種の反復があるとして注釈した４０エッセイの重複セットがある。この重複はサブセットであり、最終的には本発明のモデルを作成するのに使用される。審査員１がいくつかの反復を有するとして注釈したエッセイの中の約５７％（４０／７０）のエッセイが、ある種の反復があるとした審査員２の決定に合致し、審査員２が反復単語使用として注釈したエッセイの中の約５４％である（４０／７４）。
【００６５】
表２の全てのエッセイに対して各審査員によって「反復単語」とラベルを付けられた合計数に焦点を当てると、４０エッセイのこのサブセットは、各審査員による「反復単語」の過半数を含んでおり、審査員２については６４％（８３８／１３１５）、審査員１については６０％（７６７／１２９２）である。表３では、前記合致サブセットの「反復単語」に対する前記２人の審査員間の高度の合致（Ｊ１およびＪ２が反復しているとして同じ単語について同意する）を示している。このサブセットでの「全単語」（反復＋非反復）に対する前記２人の審査員間のκ値は０．８８である。
【００６６】
【表３】
2010015571.tif 000005
【００６７】
表４では、複数のベースラインシステム間の反復単語の合致および２人の審査員のそれぞれを示している。各ベースラインシステムは、反復単語を選択するのに使用される７単語ベース特徴の１つを使用する(表１を参照)。ベースラインシステムでは、アルゴリズムの基準値に合致すると、単語の全ての発生に反復としてラベルを付ける。異なった値を使用して複数回繰り返した後、最高のパフォーマンスを出したのが最終基準値（Ｖ）である。前記最終基準値は表４に示されている。適合率、再現率、およびＦ値は、表２からの同じセットのエッセイおよび単語との比較に基づいている。審査員１と各ベースラインアルゴリズムとの比較は、審査員１が反復単語の発生を注釈した７４エッセイを基にし、同様に審査員２が反復単語の発生を注釈した７０エッセイを基している。
【００６８】
表４の前記ベースラインアルゴリズムを使用すると、非反復単語のＦ値の範囲は０．９６〜０．９７であり、全単語（例えば、反復＋非反復単語）は０．９３〜０．９４である。例外的ケースは、審査員２の最高段落比率アルゴリズムであって、その非反復単語のＦ値は０．８９であり、全単語に対しては０．８２である。
【００６９】
各特徴組合せアルゴリズムについて人間の審査員それぞれとの比較においてシステムを評価するために、両方の審査員の注釈の各セットに対する１０回のクロス確認が実行された。各クロス確認実行では、データの任意の１０分９が訓練用に使用され、残りの１０分１がそのモデルのクロス確認用に使用された。この検証に基づいて、表５では各審査員と異なった特徴組合せを使用するシステムとの間の単語レベルの合致を表している。合致は、前記１０回のクロス確認実行を通して合致した平均を示している。
【００７０】
全てのシステムは、表４の７つのベースラインアルゴリズムのパフォーマンスを明らかに超えている。人間の審査員１または２からの注釈付きサンプルを使用したモデル構築は、見分けがつかないほど正確な結果を生みだした。これにより、前記審査員のいずれかのデータが最終システム構築に使用できる。全特徴システムが使用されると、非反復単語と、「Ｊ１とシステム」および「Ｊ２とシステム」の両方に対する全ての単語とに関して、Ｆ値＝１．００である。全特徴システムを使用した場合、反復単語の合致は、表３の合致サブセットの審査員間合致により近く類似する。従って、機械学習アルゴリズムは、人間の審査員が表示の反復に合意した、エッセイのサブセット中の反復単語使用パターンを捕らえている。
【００７１】
【表４】
2010015571.tif 000006
【００７２】
【表５】
2010015571.tif 000007
【００７３】
本明細書で本発明の実施形態を一部の変形形態とともに説明および例示した。本明細書で使用した用語、説明、および図面は、限定を意図したものではなく、例示的な目的のみで記載している。当業者であれば、添付の特許請求の範囲（およびそれと等価なもの）により定義されるよう意図された本発明の要旨および範囲内で多数の変形形態が可能であり、前記特許請求の範囲（およびそれと等価なもの）において、全ての項は、特に断りがない限り、最も広義に且つ妥当に解釈されるように意図されていることが理解されるであろう。
【図１】
2010015571.tif 000008
【図２】
2010015571.tif 000009
【図３】
2010015571.tif 000010
【図４】
2010015571.tif 000011
【図５】
2010015571.tif 000012
【図６】
2010015571.tif 000013
【図７】
2010015571.tif 000014
【図８】
2010015571.tif 000015
【図９】
2010015571.tif 000016
【外国語明細書】
AUTOMATED EVALUATION OF OVERLY REPETITIVE WORD USE IN AN ESSAY
This application claims priority to United States Provisional Application Serial Number 60/426,015, filed November 14, 2002 and entitled "AUTOMATED EVALUATION OF OVERLY REPETITIVE WORD USE IN AN ESSAY".
BACKGROUND
Practical writing experience is generally regarded as an effective method of developing writing skills.  In this regard, literature pertaining to the teaching of writing suggests that evaluation and feedback, specifically pointing out strong and weak areas in a students essay writing, may facilitate improvements in the student's writing abilities, specifically with regard to essay organization.
In traditional writing classes, an instructor may evaluate a students' essay.  This evaluation may include comments directed to specific elements of the essay.  Similarly, with the advent of automated essay evaluation, a computer application may be configured to evaluate an essay and provide feedback.  This process may be relatively straight forward with respect to certain writing errors.  For example, the spellings of words may be readily compared against a list of correctly spelled words.  Any words not found in the list may be presented as incorrectly spelled.  In another example, errors in subject-verb agreement may be identified based on a corpus of annotated essays.  These essays having been annotated by trained human judges (e.g., writing teachers, and the like) and utilized to build a sufficiently large database to train the evaluation software.  This training method may be substantially successful for recognizing writing errors where there is a relatively high degree of agreement among judges.
In contrast to the relatively "hard and fast" errors presented above such as grammar errors or incorrect spelling, errors in writing style, including using a word too frequently within an essay text, may be more subjective in nature.  Judges may not agree on which style is best.  Some judges may be distracted by certain stylistic choices while other judges are not.  Because these types of errors are difficult to define, they may prove most vexing to a writing student.
Therefore, the present method of evaluating an essay satisfies the need to generate feedback on one of the subjective elements writing style to student authors.  Specifically, the present methods allow automatic evaluation of an essay to indicate which words are being excessively used within the essay text.  Even though this evaluation may sometimes be subjective in human graders, the present invention provides an accurate evaluation method which predicts human evaluation of whether words are excessively used in an essay text.  Human evaluations are therefore used as models to evaluate a student essay for writing style errors.  Feedback about word overuse is helpful in refining a student's vocabulary skills in writing.
SUMMARY OF THE INVENTION
In accordance with an embodiment, the invention provides a method for automatically evaluating an essay for overly repetitive word usage.  In this method, a word is identified in the essay and one or more features associated with the word are determined.  In addition, a probability of the word being used in an overly repetitive manner is determined by mapping the features to a model.  The model having been generated by a machine learning application based on at least one human-evaluated essay.  Furthermore, the essay is annotated to indicate that the word is used in an overly repetitive manner in response to the probability exceeding a threshold probability.
BRIEF DESCRIPTION OF THE DRAWINGS
Embodiments of the invention are illustrated by way of example and not limitation in the accompanying figures in which like numeral references refer to like elements, and wherein:
FIG. 1 is a block diagram of a computer network in which an embodiment of the invention may be implemented;
FIG. 2 is a block diagram of a computer system in which an embodiment of the invention may be implemented;
FIG. 3 is a block diagram of an architecture for an automated evaluation application according to an embodiment of the invention;
FIG. 4 is a diagram of a model according to an embodiment of the invention;
FIG. 5 is a block diagram of an architecture for an automated evaluation application according to another embodiment of the invention;
FIG. 6 is a flow diagram of a method of evaluating an essay according to an embodiment of the invention;
FIG. 7 is a block diagram of an architecture for an embodiment of an automated evaluation model builder application;
FIG. 8 is a flow diagram of a method for building an overly repetitive word use model according to an embodiment of the invention; and 
FIG. 9 is a flow diagram of a method for generating evaluated data according to an embodiment of the invention.
DETAILED DESCRIPTION
For simplicity and illustrative purposes, the principles of the invention are described by referring mainly to an embodiment thereof.  In the following description, numerous specific details are set forth in order to provide a thorough understanding of the invention.  It will be apparent however, to one of ordinary skill in the art, that the invention may be practiced without limitation to these specific details.  In other instances, well known methods and structures have not been described in detail so as not to unnecessarily obscure the invention.
It must also be noted that as used herein and in the appended claims, the singular forms "a", "an", and "the" include plural reference unless the context clearly dictates otherwise.  Unless defined otherwise, all technical and scientific terms used herein have the same meanings as commonly understood by one of ordinary skill in the art.  Although any methods similar or equivalent to those described herein can be used in the practice or testing of embodiments of the present invention, the preferred methods are now described.  All publications mentioned herein are incorporated by reference.  Nothing herein is to be construed as an admission that the invention is not entitled to antedate such disclosure by virtue of prior invention.
In the following description various embodiments of an automated essay evaluation system, along with methods of construction and use are provided.  The examples hereinbelow refer to a particular writing error, namely the use of words in an overly repetitive manner.  In general, the term "overly repetitive" refers to a stylistic writing error in which a word, phrase, or the like, is repeated with sufficient frequency as to be distracting and/or objectionable to a reader.  However, it is to be understood that the invention is not limited to the evaluation of overly repetitive word use.  Instead, other embodiments of the invention may be utilized to detect a variety of writing errors.
The Examples of the present invention will be used to illustrate the agreement between human evaluators as to stylistic writing errors.  This agreement is then used to generate a model to automatically evaluate essays for overly repetitive word usage.
FIG. 1 is a block diagram of a computer network 100 in which an embodiment of the invention may be implemented.  As shown in FIG. 1, the computer network 100 includes, for example, a server 110, workstations 120 and 130, a scanner 140, a printer 150, a database 160, and a computer network 170.  The computer network 170 is configured to provide a communication path for each device of the computer network 100 to communicate with the other devices.  Additionally, the computer network 170 may be the Internet, a public switched telephone network, a local area network, private wide area network, wireless network, and the like.
In an embodiment of the invention, an automated evaluation application ("AEA") 180 may be executed on the server 110 and accessible thereon by either or both of the workstations 120 and 130.  For example, in this embodiment of the invention, the server 110 is configured to execute the AEA 180, receive essays from the workstations 120 and 130 as input to the AEA, and output the results to the workstations 120 and/or 130.  In an alternate embodiment, one or both of the workstations 120 and 130 may be configured to execute the AEA 180 individually or co-operatively.
The scanner 140 may be configured to scan textual content and output the content in a computer readable format.  Additionally, the printer 150 may be configured to output the content to a print media, such as paper.  Furthermore, the database 160 may be configured to store data associated with the AEA 180 such as essays, models for use by the AEA 180, results of the AEA's 180 processing and annotated essays.  The database 160 may additionally be configured to deliver data to or receive data from the various components of computer network 100.  Moreover, although shown in FIG. 1 as a system of distinct devices, some or all of the devices comprising computer network 100 may be subsumed within a single device.
Although FIG. 1 depicts the AEA 180 on a computer network 100, it is to be understood that the invention is not limited to operation within a network, but rather, the invention may be practiced in any suitable electronic device.  Accordingly, the computer network depicted in FIG. 1 is for illustrative purposes only and thus is not meant to limit the invention in any respect.
FIG. 2 is a block diagram of a computer system 200 in which an embodiment of the invention may be implemented.  As shown in FIG. 2, the computer system 200 includes a processor 202, a main memory 204, a secondary memory 206, a mouse 208, a keyboard 210, a display adapter 212, a display 214, a network adapter 216, and a bus 218.  The bus 218 is configured to provide a communication path for each element of the computer system 200 to communicate with the other elements.
The processor 202 is configured to execute a software embodiment of the AEA 180.  In this regard, a copy of computer executable code for the AEA 180 may be loaded in the main memory 204 for execution by the processor 202 from the secondary memory 206.  In addition to computer executable code, the main memory 204 and/or the secondary memory may store data, including essays, textual content, annotated essays, tables of data, essay scores, and the like.
In operation, based on the computer executable code for an embodiment of the AEA 180, the processor 202 may generate display data.  This display data may be received by the display adapter 212 and converted into display commands configured to control the display 214.  Furthermore, in a well known manner, the mouse 208 and keyboard 210 may be utilized by a user to interface with the computer system 200.
The network adapter 216 is configured to provide two way communication between the network 170 and the computer system 200.  In this regard, the AEA 180 and/or data associated with the AEA 180 may be stored on the computer network 100 and accessed by the computer system 200.
FIG. 3 is a block diagram of an architecture for the AEA 180 according to an embodiment of the invention.  As shown in FIG. 3, the AEA 180 includes a user interface 300 configured to display essay questions, accept an essay and/or to output an evaluated (e.g., scored, annotated, commented, and the like) essay to the user.  For example, the user interface 300 may display a question prompting the user to enter an essay.  The user interface 300 may further accept an essay keyed into the keyboard 210, forward the essay to a feature extractor 302, and receive one or more probabilities from a repetitive analysis modeler 318.  Moreover, the user interface may be configured to compare the one or more probabilities to a model, annotate the essay based on the comparison, and display an evaluated essay on the display 214.  The threshold probability has been empirically determined to yield evaluations having a relative high agreement to human judges.  The Examples will detail the agreement among human judges and between the human judges and the present automated evaluation system.  The annotations may include any suitable indication of overly repetitive word use.  For example, each instance of a word determined to be overly repeated may be displayed in bold type.
The feature extractor 302 includes a occurrence counter 304, a essay ratio calculator 306, paragraph ratio calculator 308, highest paragraph ratio identifier 310, word length counter 312, a pronoun identifier 314, and an interval distance identifier 316, each of which is configured to inter-communicate between each other.  The term "feature" may be defined as an attribute, characteristic, and/or quality associated with an identified word.  Furthermore, although the term "word" is used herein throughout, it is to be understood that the identification of overly repetitive words, a groups of words, phrases, and the like are within the scope of various embodiments of the invention.
The feature extractor 302 is configured to identify words within the essay and generate a vector file including a word entry for each identified word.  The term vector file is used to describe an (MXI) matrix of feature values for each non-function word in the essay.  To determine the words, the feature extractor 302 may parse the essay for one or more letters followed by a word separator such as a space, comma, period, or the like.  Prior to generating the vector files, function words such as prepositions, articles, and auxiliary verbs, may be removed.  For example, the function words (the, that, what, a, an, and, not) have been empirically found to increase the complexity of the analysis without contributing to the reliability of the result.  In this regard, a list of function words is compared to the words in the essay.  Words determined to match those in the list of function words may be removed and, as discussed hereinbelow, the vector file, similar to Table 1, may be generated from the remaining words.
Furthermore, as described hereinbelow, at least one feature may be determined and an associated value for each feature is stored in the entry.  The word is determined as described above, and features are determined and associated for each word.  In one embodiment, the features may be separated by commas.  In other embodiments, the features may be associated via link list or some other relational data structure.  In general, the features utilized have been empirically determined to be statistically relevant with respect to determining overly repetitive word usage.  As will be described in greater detail hereinbelow in the Examples of the present invention, by modeling this particular combination of features, agreement between the AEA 180 and a human judge typically exceeds agreement between two human judges.  
As an example, Table 1 shows the results of the feature extrater 302 which identified 7 features for each of 63 identified non-function words in an essay.  As shown in Table 1, each row of the table constitutes the feature vector for the given word.
【表１】
2010015571.tif 000017
As shown in Table 1, there are 63 vector files, one for each identified word in an essay minus the function words.  In an embodiment of the invention, the first row represents a column header, the first column lists the identified words, the second column lists a reference word identifier, and the remainder of the columns list the associated values for the determined features.  In various another embodiments, the column header, the list of identified words, and/or the reference word identifier may not be present.  The values within the columns indicated above by column headers 1 to 7 are associated with features.  In an embodiment of the invention, these features, listed in their respective order, are as follows.
1. The number of times the particular word is found in the essay, defined as "occurrences."
2. The ratio of the occurrences as compared to the total number of words in the essay, defined as the "essay ratio."
3. The average ratio of occurrences of the word within the individual paragraphs of the essay, defined as the "average paragraph ratio."  The particular word is counted within each essay paragraph and is divided by the number of words found in each paragraph to find an individual paragraph ratio.  The average paragraph ratio is then stored as a feature here.
4. The "highest paragraph ratio" is determined for the highest proportional occurrence of the word within the individual paragraphs.
5. The "length of the word," measured in individual letter characters is determined.
6. It is determined if the word is a pronoun by a "pronoun indicator" (Yes=1, No=0).
7. Finally, the "interval distance," measured in words, in between occurrences of a particular word is determined for each word.  This interval distance is not applicable and is not calculated if there is only one occurrence of the word in the essay.  For each essay, the features are determined separately for each word, for each time the particular word appears in the text.  Therefore, if the word "like" appears in the essay four times, four word vectors will be created for "like".  The first time "like" appears, there will be no "interval distance" to calculate.  The second time the word appears however, this distance between the first and second occurrences will be calculated and stored in the feature set for the second occurrence of "like."
In the example provided in Table 1, these 7 features are identified as being particularly useful in determining the overly repetitive use of a word in an essay.  However, in practice, any reasonable number of features may be identified.  
For example, the feature extractor may be configured to extract features on the parsed text based on total number of words found in the essay (e.g., token count) or based on the total number of different words appearing in the essay (e.g., type count.)  The difference between token and type count is better understood with respect to the example used above.  If the word "like" appeared four (4) times in the essay text, four vectors would be generated for the word "like" in a token count system.  However, in a type count system, the feature extractor would generate only one vector for the word "like".
As configured in Table 1, the feature extractor has extracted features based upon the total number of words in the essay (token count).  For each and every word, a vector is generated and features determined.  In another embodiment, the feature extractor may generate a feature vector for every different word in an essay (type count).  In comparing a type count system to a token count system, the features displayed in column 1-7 would remain mostly equal in both systems.  However, the interval distance calculation would change in a feature extractor based on type count.  In a type count system, the interval distance feature may thus be configured to reflect the average distance, measured in words, found between word occurrences.  The interval distance feature may also be figured to reflect the highest distance found between occurrences of the word.  The interval distance may be calculated to reflect any such relationship between the distances in occurrences of the word.  For example, if the word "like" occurred four (4) times in an essay text, with the distances of 4 words, 8 words, and 12 words appearing in between the four occurrences respectively, the average interval distance for the vector "like" would be 8 words.
For each word, the occurrence counter 304 is configured to determine the number of times the word appears in the essay ("occurrences") and to store this value in the corresponding word entry ("entry") in the vector file.  For example, the word corresponding to a respective entry may be utilized as a "search string." As the essay is searched, each "hit" to the search string may cause an occurrence counter (initially set to zero) to be incremented by one.  An end of file ("EOF") marker may be utilized to denote the end of the essay and thus, the storing of the value of the occurrence counter to the respective entry.  The occurrence counter may be reset to zero and the number of occurrences for the next word may be counted.  This process may continue until the occurrences of essentially all words have been determined and stored to their respective entries.  The above example represents a relatively serial approach to the process of counting occurrences.  However, it is within the scope of the invention that other approaches may be utilized.  For example, essentially all of the occurrences for the words in the essay may be determined during an initial word identification parse of the essay.
The essay ratio calculator 306 is configured to determine a ratio of word use ("essay ratio") for each word in the essay.  In this regard, a total number of words ("word count") present in the essay (minus any function words) is determined by the essay ratio counter 306.  In addition, for each word, the essay ratio calculator 306 is configured to divide the occurrences by the word count to determine the essay ratio.  The word count may be determined in a variety of manners.  For example, the essay ratio calculator 306 may be configured to count the number of vector files or parse the essay for one or more letters followed by a word separator and, after removing the function words, determine a total number of words.  The essay ratio may be stored with the associated word in the vector file by the essay ratio calculator 306.
The paragraph ratio calculator 308 is configured to determine the number of times each word appears in each paragraph, the number of words in each paragraph, and the ratio of occurrences per each paragraph.  The average ratio of occurrences for paragraphs in the essay may be determined by calculating an average of the ratio of occurrences per each paragraph.  The bounds of the paragraphs in the essay may be determined by locating hard return characters within the essay.  The average ratio of occurrences for paragraphs in the essay may be stored with the associated word in the vector file by the paragraph ratio calculator 308.  In addition, the paragraph ratio calculator 308 may be configured to forward the ratio of occurrences per each paragraph to the highest paragraph ratio identifier 310, in order to reduce duplication of labor.
The highest paragraph ratio identifier 310 is configured to receive the respective ratios of occurrences per each paragraph and identify the greatest value.  This value may be stored with the associated word in the vector file as the highest paragraph ratio identifier 310.
The word length counter 312 is configured to determine the length of each respective word and store each respective length determination with the associated word in the vector file.
The pronoun identifier 314, is configured to identify pronouns in the essay.  The pronoun identifier 314 is further configured to store a "1" for each respective entry in the vector file that is associated with an identified pronoun.  In addition, the pronoun identifier 314 is configured to store a "0" for each respective entry in the vector file that is not associated with an identified pronoun.  To identify any pronouns in the essay, each sentence in the essay is identified (e.g., based on period location) and words within each identified sentence are assigned a "part-of-speech tag" by a syntactic parser.  The pronoun identifier 314, is configured to identify pronouns in the essay based on the "part-of-speech tags." A more detailed description of the above-described syntactic parser may be found in U.S.  Patent No.  6,366,759 B1, filed October 20, 2000, which is assigned to Educational Testing Service and is incorporated by reference herein in its entirety.  Other methods of identifying pronouns may be used as well.  For example, a predetermined list of pronouns may be compared to the parsed text to identify the pronouns in an essay.
The distance identifier 316 is configured to determine the number (if any) of intervening words separating a duplicated word from a proceeding occurrence of the word based on the essay and/or the vector file.  During a first occurrence of the word, a distance of "N/A" is stored in the vector file for the word by the distance identifier 316.  However, at a second (or greater) occurrence of a particular word, a numerical value representing the number of intervening words is determined and this value is stored in the vector file for the word (second or greater occurrence) by the distance identifier 316.
The repetitive analysis modeler 318 is configured to receive each of the vector files from the feature extractor 302 and extract patterns from the vector file, based on previous training (See FIG. 7).  In the previous training, a model 400 is generated (See FIG. 6).  In general, the model 400 includes at least one decision tree generated based on essays annotated by experts and/or trained judges.  By navigating the decision tree based on the value and presence or absence of features associated with each entry in the vector file, a probability may be determined for each substantially unique word.  This probability correlates the use of the word in the essay to overly repetitive word use.  Thus, for each word, the model 400 is utilized to determine the likelihood of the word being overly repetitive (e.g., "mapping").  For example, as the vector file is mapped to the model 400, the probability of each word being overly repetitive is determined.  In general, the process of mapping involves navigating a multi-branched decision tree called the model 400.  At each branch in the decision tree, a value associated with a feature is utilized to determine how to proceed through the model.  At the completion of the mapping process a probability is returned.  This process may be repeated for each entry in the vector file and a probability may be returned for each entry.  These probabilities may be forwarded to the user interface 300.  
Modeling may also be accomplished by any other method in the art.  Other methods include multiple regression to determine the weights of each feature to be used in the final calculation of whether a word is overly used.  Modeling and human evaluation is again discussed in the Examples of the present application.
Each model is constructed from a plurality of essays scored by human graders.  The feature values stored in the vector files for each word are compared to the value ranges which comprise the model.  For example, in FIG. 4 a simplified representation of the model 400 as a decision tree is shown.  At the first decision point 401, the occurrences value for a given word is compared to the model.  If the occurrences value is within a particular range, branch 405 is taken; otherwise, branch 410 would be taken.  A second decision point 415 is reached which may compare the essay ratio to the model.  The value of the essay ratio may be compared to multiple ranges to determine which of paths 420, 425 or 430 may be taken.  The various decision points and associated segments form a plurality of paths through the model 400.  Each path has an associated probability.  Based on the vector file, one path through the various segments may be determined and the associated probability may be returned.  This process is depicted by a relatively thicker path 450.  Thus, in this example, a probability of 65% may be returned.  
FIG. 5 is a block diagram of an architecture for an automated evaluation application ("AEA") 500 according to an alternate embodiment of the invention.  While not shown in FIGS. 1 or 2, the AEA 500 may be implemented on a computer system (e.g., the computer system 200) and/or over a computer network (e.g., the computer network 100).  The AEA 500 of this embodiment is similar the embodiment depicted in FIG. 3 and thus, only aspects that differ will be discussed hereinbelow.  One difference from the AEA 180 shown in FIG. 3 is that the AEA 500 may be operated in a substantially independent manner from the user interface 300 and/or the feature extractor 302.  In this regard, as shown in FIG. 5, the AEA 500 includes a vector file 505, a model 510, and a repetitive analysis modeler 515.
The repetitive analysis modeler 515 of this embodiment is configured to generate an output 520 based on mapping the vector file 505 to the model 510.  The repetitive analysis modeler 515, may be configured to retrieve the vector file 505 and the model 510 from memory (e.g., main memory 204, secondary memory 206, or some other storage device) for example.  The output 520 may include one or more probabilities based on the mapping process.
FIG. 6 is a flow diagram of a method 600 for the AEA 500 shown in FIG. 5 according to an embodiment of the invention.  Accordingly, the method 600 may be implemented on a computer system (e.g., the computer system 200) and/or over a computer network (e.g., the computer network 100).  The method 600 is initiated 605 in response to receiving an essay to be evaluated by the AEA 500.
The next essay is then loaded into main memory 605 for a processing by the AEA 500.  The AEA 500 removes all the function words from the essay 610 and identifies the first non-function word 615 to be analyzed.  In this regard, the AEA 500 is adaptable to analyze essays on a word by word basis, or may be adapted for use in analyzing particular phrases or character sequences to determine the feature values associated therewith.  As in the previous embodiment shown in FIG. 3, the AEA 500 then calculates the occurrences 620, and the essay ratio 625 which is the ratio of each word in the essay to the total number of words in the essay.  The AEA next calculates the paragraph ratio 630.  In calculating the average paragraph ratio 630, the number of time each word appears in each paragraph, the number of words in each paragraph and the ratio of occurrences per each paragraph may be determined.  The average ratio of occurrences for each paragraph in the essay may further be determined.  For example, if a particular word has paragraph ratios 0.01, 0.02, and 0.03 for each of three paragraphs, the average paragraph ratio is 0.02.  Using the values for each paragraph ratio, the AEA next calculates the largest paragraph ratio 635.  Next, the length of the word is determined by word length 640.  Each of the foregoing calculated values are stored in a vector for the identified word.  In addition, the vector will contain a pronoun identifier value 645 which may be a given value if the word is identified as a pronoun (e.g. 1) and the second value if the word is not identified as a pronoun (e.g. 0).
Finally, the intervening distance 650 between occurrence of the word is measured and the value recorded in the vector file for the word.  For the first occurrence of the word, a null value is stored in the respective entry 650 in the vector file.  However, as vector files are generated for the subsequent occurrences of the particular word, a numerical value representing the interval distance can be calculated and stored in the vector file for the particular word.  This distance is the number of intervening words determined between the two subsequent occurrences.
The AEA next determines if there are additional words remaining to be analyzed 655 and, if so, the process is repeated beginning at step 615.  If there are no additional words in the essay to be analyzed, the created vector files are then mapped to a model 660 and resulting probabilities calculated for the word 665.  This process is repeated for each vector 670 and the resulting probabilities are delivered for further processing or storage 675.  The further processing may include comparison of the calculated probabilities to threshold levels to determine whether any of the given words should be categorized as overly repetitive in the essay.  In addition, the probabilities may be used to annotate the essay to indicate overly repetitive word use.  If there are additional essays to be analyzed 680, the foregoing method is then repeated beginning at step 605, otherwise, the method ends 685.
FIG. 7 is a block diagram of an architecture for an embodiment of a repetitive analysis model builder ("model builder") 700.  While not shown in FIG.1 and FIG. 2, the model builder 700 may be implemented on a computer system (e.g., the computer system 200) and/or over a computer network (e.g., the computer network 100).  As shown in FIG. 7, the model builder 700 includes a user interface 702, a feature extractor 704, and a machine learning tool 718.
The user interface 702 is configured to accept training data.  Training data which may comprise existing essays and annotations of the essays is utilized to build a repetitive analysis model.  In this regard, the training data may be similar to the essay data described hereinabove.  The training data may be essays written in response to a variety of test prompts.  Therefore, the topic of the essay being evaluated may be different than the topic(s) of the essay training data used to generate the model.   The annotations may include indicators of overly repetitive words within the training data.  While the annotations may be generated in a variety of manners, in an embodiment of the invention, the user interface 702 is configured to accept manual annotations of the training data from a trained judge (See FIG. 9).  Additionally, the user interface 702 is configured to forward the training data and/or the annotations to the feature extractor 704 and receive the created model 725 from the machine learning tool 718.
The feature extractor 704 of the model builder 700 is similar to the feature extractor 302 described hereinabove and thus only those features which are reasonably necessary for a complete understanding of the feature extractor 704 are described in detail herein below.  As shown in FIG. 7, the feature extractor 704 comprises an occurrence counter 706, an essay ratio calculator 708, a paragraph ratio calculator 710, a highest paragraph ratio calculator 712, a word length counter 714, and a pronoun identifier 716, each of which operates as discussed more fully with respect to FIG. 3.  The feature extractor 704 accepts the training data and/or annotations of the training data from the user interface 702 and calculates the associated feature values identified at 706, 708, 710, 712, 714 and 716, storing each value in a vector for the given word.  Next, the user, for example a human evaluator, judge, or expert is queried 717 to enter a value (such as 1) to indicate the annotator's subjective determination of whether the word was used excessively or a second value (such as 0) to indicate the word was not used excessively.  Alternatively, the training data essays have already been marked or annotated to indicate which words are used repetitively.  At step 717, therefore, the feature extractor would read this annotation to determine repetitiveness of the words in the essay.
The machine learning tool 718 is configured use the features extracted from the training date to generate the model 725 based on this data.  In general, the machine learning tool 718 is configured to determine patterns associated with each annotation.  For example, the repetition of a relatively long word in relatively close proximity to the same word may be more strongly correlated than if the duplicated word is relatively short.  In an embodiment of the invention, a machine learning tool (e.g., a data mining tool, etc.), C5.OTM (Available from RULEQUEST RESEARCH PTY.  LTD., AUSTRALIA), is utilized to generate the model.  However, in other embodiments of the invention, various other machine learning tools, and the like, may be utilized to generate the model and are thus within the scope of the invention.  In this regard, in alternate embodiment of the invention, a plurality of models may be generated and incorporated into a single model.  For example, a model based on word length, a model based on proximity, and a model based on ratio of occurrences in a paragraph may be generated.  In this manner, a voting algorithm, for example, may receive candidate words (e.g., words likely to be overly repetitive) from each model and determine a consensus for each nominated word.  The model 725 generated by the machine learning tool 718 is then incorporated into the repetitive analysis modeler 720 to be used to evaluate essays in the manner described herein.
FIG. 8 is a flow diagram of a method 800 for building a model according to an embodiment of the invention.  While not shown in FIGS. 1 or 2, the method 800 may be implemented on a computer system (e.g., the computer system 200) and/or over a computer network (e.g., the computer network 100).  As shown in FIG. 8, the method 800 is initiated in response to receiving at least one annotated essay (e.g., annotated training data) 801.  The annotated essay may be generated in a variety of manners, one of which is shown in FIG. 9.  However, any method of generating annotated essays 801 is within the scope of the invention.  In an embodiment of the invention, the annotated essays may be in the form of a plurality of essays discussing one or more topics.  The plurality of essays having been annotated by one or more trained judges.  In general, the annotations may be utilized to identify words used in an overly repetitive manner.
After receiving the at least one annotated essay 801, relevant features are extracted and stored in a vector 805 for each word.  The features may be extracted by any method, including use of a feature extractor such as described in conjunction with FIG. 3 or FIG. 7.  However, in this instance the features may be modified by a human evaluator to better represent relevant characteristics and parameters.
Once the feature vectors have been created 805, the model is built 810 by a machine learning tool examining the vector and the human annotated essay for patterns or other relevant characteristics.  The model may be built by an method herein described such as the method described in FIG. 7 or by any other known method.
The model is then evaluated to determine whether it is sufficiently accurate in predicting results 815.  For example, the model may be utilized in a method similar to the method discussed in conjunction with FIG. 3 to evaluate an essay.  The essay may be evaluated 815 by a human expert and compared to its performance as the model 400 in the AEA 180.  If the evaluations agree within a predetermined range, the model may be determined to be acceptable.  If the evaluations fail to agree within a predetermined range, the model may fail and the method 800 may return to step 805 where the characteristics and parameters can be modified in an effort to increase the accuracy of the model.
FIG. 9 is a flow diagram of a method 900 for generating evaluated or annotated essays which can be used to generate a model according to an embodiment of the invention.  As shown in FIG. 9, the method 900 begins with an expert and a judge receiving at least one essay to be evaluated 905.  The expert may be one or more persons generally recognized as having greater than average skill in the art of grammar and/or essay evaluation.  The judge may be one or more persons of at least ordinary skill in the art of grammar and/or essay evaluation.
At step 910, the judge is trained by the expert to annotate essays for overly repetitive word usage.  For example, the expert may train or teach according to a predetermined set of rules for determining if a word is excessively used.  Additionally, the judge may observe the expert evaluating one or more essays.  The judge and expert may discuss how and why particular evaluations are made.  If additional training is required 915 the process is repeated using additional essays.  Otherwise, the judge is deemed trained to evaluate and/or annotate essays which can be used to generate models.
Next, essays are evaluated and/or annotated by the judge 920 based on training received at step 910.  For example, the judge may identify words determined to be used in an overly repetitive manner and annotate the essay accordingly.  These evaluated essays may be stored in a database or other data storage device 925.
Periodically, the performance of the judge is evaluated to determine whether essays are being evaluated and/or annotated in an acceptable manner 930.  For example, essays evaluated by a first judge may be compared to evaluations, on the same essays, by a second judge and/or an expert.  If the evaluations agree within a predetermined range, the performance may be deemed acceptable.  A level of agreement between the evaluated essays may be determined, for example, by calculating values for one or more known characteristic measures of an evaluated essay such as: Kappa, precision, recall and F-measure.  In this regard, Kappa is a generally known equation for determining a statistical probability of agreement, excluding the probability of chance.  Precision is a measure of agreement between the first judge and the second judge, divided by the number of evaluations performed by the first judge.  Recall is a measure of agreement between the first judge and the second judge, divided by the number of evaluations performed by the second judge.  F-measure is equal to two times precision times recall, divided by the sum of precision plus recall.
If the performance of the judge is determined to be unacceptable, the judge may be returned to training with an expert.  If the performance of the judge is determined to be acceptable, the judge may continue evaluating and/or annotating essays.
An embodiment of the invention 900 provides for the training of one or more judges in order to generate annotated essays for use in the model building.  For example, if a relatively large number of essays are to be evaluated and doing so would be unduly burdensome to a relatively small number of experts, it may be advantageous to train a plurality of judges using method 900.  In another embodiment of the invention, either a judge, trained judge or expert may evaluate essays.
The AEA, the model builder described herein, and the methods of the present invention may exist in a variety of forms both active and inactive.  For example, they may exist as software program(s) comprised of program instructions in source code, object code, executable code or other formats.  Any of the above may be embodied on a computer readable medium, which include storage devices and signals, in compressed or uncompressed form.  Examples of computer readable storage devices include conventional computer system RAM (random access memory), ROM (read only memory), EPROM (erasable, programmable ROM), EEPROM (electrically erasable, programmable ROM), flash memory, and magnetic or optical disks or tapes.  Examples of computer readable signals, whether modulated using a carrier or not, are signals that a computer system hosting or running the computer program may be configured to access, including signals downloaded through the Internet or other networks.  Concrete examples of the foregoing include distribution of the program(s) on a CD ROM or via Internet download.  In a sense, the Internet itself, as an abstract entity, is a computer readable medium.  The same is true of computer networks in general.
Additionally, some or all of the experts, judges, and users referred to herein may include software agents configured to generate essays, annotate essays, and/or teach judges to annotate essays.  In this regard, the software agent(s) may exist in a variety of active and inactive forms.
EXAMPLES
The following examples show the agreement among human evaluators and the agreement between the present system and human evaluators.  Two human judges annotated a series of essays to indicate if any words were used excessively.  The short-hand notation of "repeated" or "repetition" or "repetitive" refers to overly repetitive usage of a particular word in an essay.
The results in Table 2 show agreement between the two human judges based on essays marked for repetition by the judges, at the word level. This data in Table 2 includes cases where one judge annotated some repeated words and the other judge annotated no words as repeated. Each judge annotated overly repetitive word use in about 25% of the essays. In Table 2,"J1 with J2" agreement indicates that Judge 2 annotations were the basis for comparison; and,"J2 with J1" agreement indicates that Judge 1 annotations were the basis for comparison. The Kappa between the two judges was 0.5 based on annotations for all words (i.e., repeated + non-repeated). Kappa indicates the agreement between judges with regard to chance agreement.  Kappa values higher than 0.8 reflect high agreement, between 0.6 and 0.8 indicate good agreement, and values between 0.4 and 0.6 show lower agreement, but still greater than chance.
【表２】
2010015571.tif 000018
In Table 2, agreement on "Repeated words" between judges is somewhat low. But there is a total set of essays identified by either judge as having some repetition, specifically, an overlapping set of 40 essays where both judges annotated the essay as having some sort of repetition. This overlap is a subset and is used to ultimately create the model of the invention.  Of the essays that Judge 1 annotated as having some repetition, approximately 57% (40/70) of these essays matched the determination of Judge 2 that there was some sort of repetition; of the essays that Judge 2 annotated with repetitious word use, about 54% (40/74).
Focusing on the total number of "Repeated words" labeled by each judge for all essays in Table 2, this subset of 40 essays contains the majority of "Repeated words" for each judge: 64% (838/1315) for Judge 2, and 60% (767/1292) for Judge 1.  Table 3 shows high agreement (J1 and J2 agree on the same words as being repetitious) between the two judges for "Repeated words" in the agreement subset. The Kappa between the two judges for "All words" (repeated + non-repeated) on this subset is 0.88.
【表３】
2010015571.tif 000019
Table 4 shows agreement for repeated words between several baseline systems, and each of the two judges. Each baseline system uses one of the 7 word-based features used to select repetitive words (see Table 1). Baseline systems label all occurrences of a word as repetitious if the criterion value for the algorithm is met. After several iterations using different values, the final criterion value (V) is the one that yielded the highest performance. The final criterion value is shown in Table 4.  Precision, Recall, and F-measures are based on comparisons with the same sets of essays and words from Table 2.  Comparisons between Judge 1 with each baseline algorithm are based on the 74 essays where Judge 1 annotated the occurrence of repetitive words, and likewise, on the 70 essays where Judge 2 annotated the occurrence of repetitive words.  
Using the baseline algorithms in Table 4, the F-measures for non-repeated words range from 0.96 to 0.97, and from 0.93 to 0.94 for all words (i.e., repeated + non-repeated words). The exceptional case is for Highest Paragraph Ratio Algorithm with Judge 2, where the F-measure for non - repeated words is 0.89, and for all words is 0.82.
To evaluate the system in comparison to each of the human judges, for each feature combination algorithm, a 10-fold cross-validation was run on each set of annotations for both judges.  For each cross-validation run, a unique nine-tenths of the data were used for training, and the remaining one-tenth was used for cross-validating that model.  Based on this evaluation, Table 5, shows agreement at the word level between each judge and a system that uses a different combination of features.  Agreement refers to the mean agreement across the 10-fold cross-validation runs.  
All systems clearly exceed the performance of the 7 baseline algorithms in Table 4. Building a model using the annotated sample from human judges 1 or 2 yielded indistinguishable, accurate results.  For this reason, the data from either of the judges may be used to build the final system.  When the All Features system is used, the F-measure = 1.00 for non-repeated words, and for all words for both "J1 with System" and "J2 with System." Using All Features, agreement for repeated words more closely resembles inter-judge agreement for the agreement subset in Table 3.  The machine learning algorithm is therefore capturing the patterns of repetitious word use in the subset of essays, which the human judges agreed exhibited repetitiveness.
【表４】
2010015571.tif 000020
【表５】
2010015571.tif 000021
What has been described and illustrated herein are embodiments of the invention along with some of their variations.  The terms, descriptions and figures used herein are set forth by way of illustration only and are not meant as limitations.  Those skilled in the art will recognize that many variations are possible within the spirit and scope of the invention, which is intended to be defined by the following claims and their equivalents  in which all terms are meant in their broadest reasonable sense unless otherwise indicated.
We claim:
1. A method for generating a model for determining overly repetitive text segment use, comprising:
electronically receiving training data on a computer system wherein the training data comprises an essay annotated to identify one or more text segments used in an overly repetitive manner;
assigning a feature value for each of one or more features for each text segment in the essay, wherein the feature values are automatically calculated by the computer system;
assigning an indicator value for each text segment in the essay, wherein the indicator value is set at a first value and if the text segment has been used in an overly repetitive manner;
storing the feature values and the indicator value for each text segment in the essay in a data storage device accessible by the computer system; and 
creating a model for overly repetitive use of the one or more text segments in the essay by identifying patterns in the feature values wherein the patterns are identified by a machine learning tool.
2. The method of claim 1 wherein the text segment comprises a word.
3. The method of claim 1 wherein the annotations are manual markings.
4. The method of claim 1, wherein the function words of the essay are not considered by the computer system in calculating the feature values. 
5. The method of claim 1 wherein the feature values comprise the total number of times the evaluated text segment occurs in the essay.
6. The method of claim 1 wherein the feature values comprise the ratio of the evaluated text segment occurrences in the essay to the total number of text segments in the essay.
7. The method of claim 1 wherein the feature values comprise the average over all paragraphs of the essay of the ratio of the number times the evaluated text segment occurs in a paragraph of the essay over the total number of text segments in the paragraph.
8. The method of claim 1 wherein the feature values comprise the largest value of the ratio of the number times the evaluated text segment occurs in a paragraph of the essay over the total number of text segments in the paragraph, wherein the ratio is calculated for each paragraph in the essay.
9. The method of claim 1 wherein the feature values comprise the length, measured in characters, of the text segment.
10. The method of claim 1 wherein the feature values comprise a value indicating whether the text segment includes a pronoun.
11. The method of claim 1 wherein the feature values comprise a value representing the interval distance between consecutive text segment occurrences.  
12. The method of claim 11 wherein the distance is determined by calculating the number of intervening words.
13. The method of claim 11 wherein the distance is determined by calculating the number of intervening characters.
14. A system for generating a model useful in determining overly repetitive text segment use, comprising:
a computer system configured to receive training data, wherein the training data comprises an essay annotated to identify one or more text segments used in an overly repetitive manner;
a feature extractor configured to calculate a feature value for each of one or more features for each text segment in the essay and to assign an indicator value for each text segment in the annotated essay, wherein the indicator value indicates whether the text segment has been used in an overly repetitive manner;
a data storage device configured to store the feature values and the indicator value for each text segment in the essay; 
a machine learning tool configured to analyze the features to identify patterns; and 
a model builder to create a model for overly repetitive use of the text segments, wherein the model is constructed from the identified patterns.
15. The system of claim 14 wherein the annotated essays are manually marked.
16. The system of claim 14 wherein the feature extractor comprises an occurrences calculator configured to generate a value representing the total number of times the text segment occurs in the essay.
17. The system of claim 14 wherein the feature extractor comprises an essay ratio calculator configured to generate a value representing the ratio of the number of times the evaluated text segment occurs in the essay to the total number of text segments in the essay.
18. The system of claim 14 wherein the feature extractor comprises an average paragraph ratio calculator configured to generate a value representing the average over all paragraphs in the essay of the ratio of the number of times the evaluated text segment occurs in a paragraph of the essay over the total number of text segments in the paragraph.
19. The system of claim 14 wherein the feature extractor comprises a highest paragraph ratio calculator configured to generate a value representing the largest ratio of the number of times the evaluated text segment occurs in a paragraph of the essay over the total number of text segments in the paragraph.
20. The system of claim 14 wherein the feature extractor comprises a length calculator configured to generate a value representing the length, measured in characters, of the text segment.
21. The system of claim 14 wherein the feature extractor comprises an identifier to determine whether the text segment includes a pronoun.
22. The system of claim 14 wherein the feature extractor comprises a distance calculator configure to generate a value representing the distance between consecutive text segment occurrences.
23. The system of claim 22 wherein the distance between consecutive text segment occurrences is measured in words.
24. The system of claim 22 wherein the distance between consecutive text segment occurrences is measured in characters.
ABSTRUCT OF THE DISCLOSURE
To automatically evaluate an essay for overly repetitive word usage, a word is identified in the essay and at least one feature associated with the word is determined.  In addition, a probability of the word being used in an overly repetitive manner is determined by mapping the feature to a model.  The model having been generated by a machine learning application based on at least one evaluated essay.  Furthermore, the essay is annotated to indicate the word is used in an overly repetitive manner in response to the probability exceeding a threshold probability.
【図１】
2010015571.tif 000022
【図２】
2010015571.tif 000023
【図３】
2010015571.tif 000024
【図４】
2010015571.tif 000025
【図５】
2010015571.tif 000026
【図６】
2010015571.tif 000027
【図７】
2010015571.tif 000028
【図８】
2010015571.tif 000029
【図９】
2010015571.tif 000030