(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-17
(45)【発行日】2024-04-25
(54)【発明の名称】学習効率に基づいて個人カスタマイズ型教育コンテンツを提供するための機械学習方法、装置及びコンピュータプログラム
(51)【国際特許分類】
G09B 19/00 20060101AFI20240418BHJP
G09B 7/07 20060101ALI20240418BHJP
G09B 5/08 20060101ALI20240418BHJP
G06Q 10/04 20230101ALI20240418BHJP
G06Q 50/20 20120101ALI20240418BHJP
【FI】
G09B19/00 H
G09B7/07
G09B5/08
G06Q10/04
G06Q50/20 300
(21)【出願番号】P 2021164287
(22)【出願日】2021-10-05
(62)【分割の表示】P 2019570009の分割
【原出願日】2019-10-16
【審査請求日】2022-10-12
(31)【優先権主張番号】10-2018-0123240
(32)【優先日】2018-10-16
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】519446056
【氏名又は名称】ルイド インコーポレイテッド
(74)【代理人】
【識別番号】100149870
【氏名又は名称】芦北 智晴
(72)【発明者】
【氏名】チャ ヨンミン
(72)【発明者】
【氏名】シン ドンミン
(72)【発明者】
【氏名】イ ジェミン
(72)【発明者】
【氏名】イ ヨンク
(72)【発明者】
【氏名】ホ ジェウィ
【審査官】佐々木 祐
(56)【参考文献】
【文献】韓国登録特許第10-1853091(KR,B1)
【文献】特開2017-207691(JP,A)
【文献】特開2013-205795(JP,A)
【文献】特開2008-026583(JP,A)
【文献】特開2017-068189(JP,A)
【文献】特開2006-072122(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G09B 5/00 - 5/14
G09B 7/00 - 7/12
G09B 19/00
G06Q 10/04
G06Q 50/20
(57)【特許請求の範囲】
【請求項1】
サービスサーバにおいてユーザを分析する方法であって、
特定科目に関して、少なくとも1つ以上の選択肢を含む選択式問題を少なくとも1つ以上含む問題データベースを構成するステップと、
前記問題をユーザデバイスに提供し、前記ユーザデバイスから前記問題に関するユーザの選択肢選択データを収集するステップと、
前記各ユーザの前記選択肢選択データを用いて、ユーザモデルと問題モデルを作成するステップと、
前記ユーザモデルと前記問題モデルを用いて、前記各ユーザの前記問題に対する正解率を推定するステップと、
前記ユーザが前記問題データベースに含まれる各問題ごとに正解の選択肢を選択したと仮定して、前記各問題の仮想解答結果に基づき前記ユーザモデルを変更するステップと、
変更された
前記ユーザモデルを使用して、前記各問題ごとに、前記問題データベースに含まれる問題全体の正解率の変更率を計算するステップと、
前記問題データベースに含まれる各問題を前記変更率の高い順に並び替えて前記ユーザに推薦するステップを含
み、
前記変更率を計算するステップは、
変更された前記ユーザモデルを使用して、前記問題データベースに含まれる前記問題全体の正解率の増加値を計算するステップと、
前記増加値の総合計または前記増加値の平均を計算するステップと、を含み、
前記増加値を計算するステップは、前記ユーザが前記各問題ごとに正解の選択肢を選択したと仮定して、他の前記各問題に対する前記ユーザの正解率を変更し、変更された他の前記各問題の正解率の前記増加値を計算する、ユーザ分析方法。
【請求項2】
前記問題に対する正解率を推定するステップは、
前記問題の各選択肢ごとに選択率を推定するステップと、
前記各選択肢ごとに推定された選択率を全選択肢に対して平均化するステップと、
前記各選択肢ごとに平均化された選択率に基づいて、前記問題の正解率を推定するステップを含む、請求項1に記載のユーザ分析方法。
【請求項3】
前記変更率が高い問題ほど、前記ユーザが前記問題データベースに含まれる問題全体を容易に解答できるようにする問題である、請求項1に記載のユーザ分析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データに基づいてユーザカスタマイズ型コンテンツを提供する方法に関する。さらに詳しくは、本発明は、収集した問題解答結果データを機械学習フレームワークに適用して問題に対するユーザの学習効率を推定し、それに基づいて教育コンテンツを推薦する方法に関する。
【背景技術】
【0002】
現在までの教育コンテンツは、一般にパッケージで提供されていた。例えば、紙に記録されている問題集は1冊当たり少なくとも700問収録されており、オンラインまたはオフライン講座も1~2時間単位で少なくとも1カ月間勉強する量をまとめて一度に販売される。
【0003】
しかしながら、教育を受ける学生の立場では、人によって苦手な科目や苦手な問題タイプが異なるので、パッケージの形態ではなく個人カスタマイズ型コンテンツに対するニーズが存在する。限られた時間に最も効率的に学習するためには、学習効率が最も高い問題を選んで学習することが問題集の700問全部を解くよりもはるかに効率的だからである。
【0004】
しかしながら、被教育者である学生自身が自らに適した問題を選ぶことは非常に難しい。また、塾、出版社などの従来の教育業界においても、主観的経験や勘に頼って学生や問題を分析するので、各学生に最適化された問題を提供することは容易ではない。
【0005】
このように、従来の教育環境においては、被教育者が最も効率的に学習結果を得ることのできる個人カスタマイズ型コンテンツを提供することが容易ではなく、学生は一律に提供される教育コンテンツに対して達成感や興味をすぐに失うという問題がある。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、前記問題を解決することを目的とする。さらに詳しくは、本発明は、大量の問題解答結果データに基づいてユーザ及び/または問題を分析し、そこから各ユーザの問題別学習効率を計算し、学習効率に応じて学習コンテンツを推薦する方法に関する。
【課題を解決するための手段】
【0007】
本発明の実施形態に係るサービスサーバにおいて、ユーザカスタマイズ型学習コンテンツを提供する方法は、特定科目に関して、少なくとも1つ以上の選択肢を含む選択式問題を少なくとも1つ以上含む問題データベースを構成し、前記問題をユーザデバイスに提供し、前記ユーザデバイスから前記問題に関するユーザの選択肢選択データを収集するaステップと、前記各ユーザの前記選択肢選択データを用いて、前記各ユーザの前記問題に対する正解率を推定するbステップと、任意のユーザが任意の問題に対して各選択肢を選択したと仮定して、前記問題データベースに含まれる問題全体において前記ユーザの正解率の変更率を各問題について計算し、前記問題データベースに含まれる問題を前記変更率が高い順に並び替えて前記ユーザに推薦するステップとを含むことを特徴とする。
【発明の効果】
【0008】
本発明の実施形態によれば、ユーザ及び/または問題の分析結果に基づいてユーザに最適化された学習コンテンツを提供することができ、ユーザの学習効果を最大化させるという効果がある。
【図面の簡単な説明】
【0009】
【
図1】本発明の実施形態によりユーザカスタマイズ型コンテンツを推薦する過程について説明するためのフローチャートである。
【
図2】本発明の実施形態によりユーザの問題別学習効率を計算する過程について説明するためのフローチャートである。
【
図3】本発明の他の実施形態によりユーザの問題別学習効率を計算する過程について説明するためのフローチャートである。
【発明を実施するための形態】
【0010】
本発明は、以下に記載される実施形態の説明内容に限定されるものではなく、本発明の技術的要旨を逸脱しない範囲で様々な変形が加えられることは言うまでもない。また、実施形態について説明するにあたり、本発明の属する技術分野において広く知られており、本発明の技術的要旨と直接関連のない技術内容については説明を省略する。
【0011】
なお、添付図面において、同一の構成要素には同一の符号を付す。また、添付図面において、一部の構成要素は誇張されたり、省略されたり、概略的に示される。これは、本発明の要旨に関連のない不要な説明を省略することにより、本発明の要旨を明確に説明するためである。
【0012】
近年、ITデバイスの普及が拡大し、ユーザ分析のためのデータ収集が容易になっている。ユーザデータを十分に収集することができれば、ユーザについての分析がより精密になり、当該ユーザに最も適した形態のコンテンツを提供することができる。
【0013】
このような流れの中で、特に教育業界において、ユーザカスタマイズ型教育コンテンツの提供に対するニーズが高まっている。
【0014】
簡単な例を挙げると、あるユーザが英語科目において「動詞の時制」に対する理解度が低い場合、「動詞の時制」に関する概念を含む問題を推薦することができれば、学習効率はさらに高くなる。しかしながら、このようにユーザカスタマイズ型教育コンテンツを提供するためには、各コンテンツ及び各ユーザについての精密な分析が必要である。
【0015】
従来は、コンテンツとユーザを分析するために、当該科目の概念を専門家が手作業で定義し、当該科目の各問題がいかなる概念を含むか専門家が個別に判断してタギングする方法を用いていた。次に、各ユーザが特定概念に関してタギングされた問題に解答した結果情報に基づいて学習者の実力を分析していた。
【0016】
ユーザが問題に解答する過程において、問題出題者の意図は1つか2つであるが、ユーザが当該問題を間違える理由は数十にもなる。例えば、ある問題タイプが「仮定法過去」であり、出題者の意図は「助動詞の過去形と仮定法を区別することができるか」であると仮定する。
【0017】
この場合、ユーザが当該問題を間違える理由は、出題意図と同じく「助動詞の過去形と仮定法を区別できないから」であることもあるが、問題文の特定単語を知らないからであることもある。そうすると、当該ユーザに最も効率的な問題は、前記単語を学習するための問題である。
【0018】
しかしながら、専門家が全ての場合の数を考慮して当該ユーザについて分析することは不可能であるので、一般に問題タイプタグ及び出題者意図タグに基づいて「仮定法過去」、「助動詞過去」、「仮定法」などの概念に対する学習がユーザに必要であると判断し、それに関する問題を推薦する。
【0019】
このように、専門家が予め定義したタグ情報に基づいてユーザについて分析する方法は、タグ情報が人の主観に依存しており、人の行動の様々な場合の数が考慮されないという不具合がある。人の主観が介入せずに数学的に生成されたタグ情報が数学的に問題に与えられるわけではないので、結果データの信頼性が高くなり得ないという不具合がある。
【0020】
よって、本発明の実施形態に係るデータ分析サーバは、学習データ分析にマシンラーニングフレームワークを適用してデータ処理過程における人の介入を排除することを目的とする。
【0021】
そうすることにより、当該科目の概念を事前に別途定義することなく(すなわち、問題に含まれる概念に関するタグ情報を生成せず)、ユーザの問題解答結果ログに基づいてユーザ及び問題について分析することができる。例えば、データ分析サーバは、ユーザの問題解答結果ログを収集し、ユーザと問題とから構成される多次元空間を構成し、ユーザが問題に正解したか否かに基づいて前記多次元空間に値を与え、各ユーザ及び各問題ベクトルを計算する方法でユーザ及び/または問題をモデリングすることができる。
【0022】
この場合、ユーザモデルは全問題に対する各ユーザの特性に関する情報を含んでもよく、問題モデルは全ユーザに対する各問題の特性に関する情報を含んでもよい。さらに、問題モデルは、特定問題の当該科目を構成する概念の包含度で表されてもよく、ユーザモデルは、特定ユーザの当該科目を構成する概念の理解度で表されてもよい。
【0023】
さらに、本発明の実施形態によれば、前記問題モデルと前記ユーザモデルを用いて、任意のユーザが任意の問題に対して正解の選択肢を選択する確率、すなわちユーザの問題別正解率を計算することができる。ここで、本発明において、前記ユーザベクトル、前記問題ベクトルがいかなる属性やフィーチャーを含むかについて制限して解されてはならないことに留意されたい。
【0024】
例えば、本発明の実施形態によれば、前記ユーザベクトルは、前記ユーザが任意の概念について理解している程度、すなわち概念の理解度を含んでもよい。さらに、前記問題ベクトルは、前記問題がいかなる概念で構成されているか、すなわち概念の構成度を含んでもよい。
【0025】
また、本発明の実施形態によれば、特定ユーザに関する問題データベースに含まれる各問題に対する学習効率を計算することができ、学習効率が高い順にユーザに問題を推薦することができる。
【0026】
例えば、本発明の第1の実施形態によれば、正解率が低い問題は学習効率が高いと仮定する。そうすると、特定ユーザが既に理解して正解した問題は排除し、間違った問題のみ選んで推薦する。前記実施形態によれば、ユーザは確実に間違う問題から学習することができる。
【0027】
本発明の第2の実施形態によれば、ユーザがある問題に正解すると、当該問題を含めて新たに学習したモデルが予測する問題全体において前記ユーザの正解率の増加率が高い問題は学習効率が高いと仮定する。そうすると、問題データベース全体においてより容易に解答できる問題がユーザに推薦される。そうすると、ユーザは全問題の正解率を高めることのできる問題から学習することになる。
【0028】
さらに、本発明の第3の実施形態によれば、ユーザの実際の試験点数を上げることができる問題は、学習効率が高いと仮定する。そうすると、問題データベースの外部から出題される同じ科目の実際の試験点数をユーザ別に推定し、前記実際の試験点数を上げることができる問題が推薦される。そうすると、ユーザは実際の試験点数を上げることができる問題から学習することになる。
【0029】
図1は、本発明の実施形態によりユーザカスタマイズ型コンテンツを推薦する過程について説明するためのフローチャートである。
【0030】
ステップ110及びステップ130は、本発明の実施形態に係るデータ分析システムにおいて、学習データを収集して問題とユーザをモデリングするステップである。
【0031】
ステップ110において、データ分析サーバは、問題データベース及びユーザデータベースを生成する。
【0032】
例えば、データ分析サーバは、市販されている各種問題を収集することにより問題データベースを生成することができる。前記問題にはリスニング問題が含まれ、テキスト、画像、オーディオ及び/または動画像の形態である。さらに、データ分析サーバは、ユーザ識別情報を含むユーザデータベースを生成する。
【0033】
ステップ120において、データ分析サーバは、前記問題データベースをユーザデバイスに提供し、ユーザが当該問題を解答した結果データを収集する。
【0034】
ここで、データ分析サーバは、収集した問題解答結果データをユーザ、問題、結果に関するリストの形態で構成する。例えば、Y(u,i)は、ユーザuが問題iに解答した結果を意味し、正解であれば1の値を与え、不正解であれば0の値を与える。
【0035】
さらに、本発明の実施形態に係るデータ分析サーバは、ユーザと問題とから構成される多次元空間を構成し、ユーザが問題に正解したか否かに基づいて前記多次元空間に値を与え、各ユーザ及び各問題のベクトルを計算する。ここで、前記ユーザベクトルと前記問題ベクトルが含むフィーチャーは特定されないものと解されるべきである(ステップ130)。
【0036】
例えば、本発明の実施形態に係るデータ分析サーバは、Yが十分な大きさであれば概念を別途定義せず、Yからユーザの概念理解度L、問題の概念構成度Rを推定する。ここで、本発明の実施形態によれば、前記Lの各要素は0~1の値を有し、Rの各行の要素の合計は1となる。
【0037】
例えば、Lの第1行の値が[0,0,1,0.5,1]であれば、それは、第1のユーザが第1の概念及び第2の概念は全く理解しておらず、第3の概念及び第5の概念は完全に理解しており、第4の概念は半分ぐらい理解していると解される。
【0038】
例えば、Rの第1行の値が[0,0.2,0.5,0.3,0]であれば、第1問題には第2の概念が約20%含まれ、第3の概念が約50%含まれ、第4の概念が約30%含まれると解される。
【0039】
なお、本発明の実施形態に係るデータ分析システムは、LとRが十分な信頼性で推定されると、ユーザと問題の相互関係を低い係数行列により数学的に結合することができる。
【0040】
例えば、サービスサーバは、分析対象のユーザ総数がn、分析対象の問題総数がmであれば、当該科目を構成する未知の概念の数をrと想定し、ユーザの概念別理解度の行列Lをn by r行列と定義し、問題の概念別包含度の行列Rをm by r行列と定義する。この場合、LをRの転置行列RTに連結すると、概念または概念の数を別途定義せずにユーザと問題の相互関係を分析することができる。
【0041】
これを適用すると、Lの第1行の値が[0,0,1,0.5,1]、Rの第1行の値が[0,0.2,0.5,0.3,0]である前記例において、第1のユーザの第1問題に対する理解度X(1,1)は、X(1,1)=0.5+0.5×0.3=0.65のように計算される。すなわち、第1のユーザは、第1問題を65パーセント理解していると推定される。
【0042】
しかしながら、ユーザの特定問題に対する理解度と特定問題に正解する確率が同一であるとはいえない。前記例において、第1のユーザが第1問題を65パーセント理解しているなら、第1問題に実際に解答した場合に正解である確率はどの程度であろうか。
【0043】
よって、本発明は、心理学、認知科学、教育学などに用いられる項目反応理論(Item Response Theory)の方法論を導入した。項目反応理論は、評価項目に対する応答を用いて、被験者の特性、例えば、認知能力、物理的能力、技術、知識、態度、人格特徴や評価項目の難易度を測定する検査理論である。
【0044】
前記理論を適用して、十分に大きなデータを用いて実験した結果、問題理解度Xと問題に正解する確率Pはリニアでないと分析された。問題理解度Xと問題に正解する確率Pを十分に大きなデータを用いて実験した結果、2次元グラフが得られた。これを説明できる関数を従来の数学的方法により計算すると、ユーザが問題に正解する確率Pを推定するための関数Φとして数式1を導くことができる。すなわち、問題正解率Pは、関数Φに問題理解度Xを適用すると計算される。
【0045】
【0046】
第1のユーザの第1問題に対する理解度が65パーセントである前記例において、第1のユーザが第1問題に正解する確率は
P(1,1)=Φ(X(1,1))=0.8632
のように計算され、86%となる。すなわち、第1のユーザは、第2、第4の概念を全く理解しておらず、第3の概念を完全に理解しており、第1問題は、第2の概念が20%、第3の概念が50%、第4の概念が30%で構成されている問題であるので、前記公式によれば、第1のユーザが第1問題に解答すると86パーセントの確率で正解となるものと推定される。
【0047】
一方、ユーザの概念理解度L、問題の概念構成度Rを推定するために、以下に例示する方法を用いることができる。その方法は、確率的勾配降下法に基づいてユーザiの概念理解度Li及び問題jの概念構成度Rjを推定する方法であるが、これは例示にすぎず、本発明はこれに限定されるものではない。
【0048】
本発明の実施形態に係るデータ分析システムは、ユーザiの概念理解度Li、問題jの概念構成度Rjの初期値を任意の値にすることができる。例えば、データ分析システムは、ユーザiの任意の概念理解度Liの初期値及び問題jの任意の概念構成度Rjの初期値を0~1の任意の値にすることができる。
【0049】
さらに、問題解答結果データとして、各ユーザi、各問題jが正解であれば1、不正解であれば0にvalを設定したリストを生成することができる。例えば、ユーザ別問題解答結果データセットを、ユーザiが問題jに解答した場合に、正解であれば(i,j,1)、不正解であれば(i,j,0)の形態のリストに変換することができる。
【0050】
次に、データ分析システムは、問題解答結果リストのデータをランダムに1つずつローディングすることができる。さらに詳しくは、データ分析システムは、当該時点のユーザiの概念理解度Li、問題jの概念構成度Rjを適用して、特定ユーザiが特定問題jに正解する確率P(i,j)の臨時値tmpを計算することができる。
【0051】
これは、当該時点のユーザiの概念理解度Li、問題jの概念構成度Rjを適用して計算した確率P(i,j)、すなわち特定ユーザiが特定問題jに正解する確率と、当該ユーザiの当該問題jに対する実際の問題解答結果値であるval(正解であれば1,不正解であれば0)の差を用いて、L及びRを更新するためである。
【0052】
選択したデータが(i,j,val)であれば、データ分析システムは、当該時点のLi(ユーザiの概念理解度)、Rj(問題jの概念構成度)を用いて、ユーザiが問題jに正解する確率の臨時値tmp=Φ(x(i,j))=Φ(Li,Rj
T))を計算することができる。
【0053】
例えば、選択したデータが(1,1,0)であれば、第1のユーザが第1問題に解答して間違ったという意味である。しかしながら、当該時点のL1、R1を用いて計算した結果、第1のユーザが第1問題に解答すれば86パーセントの確率で正解するであろうという、すなわちP=0.86の結果が得られた場合、L1、R1はデータ(1,1,0)を反映して更新する必要がある。
【0054】
このために、本発明の実施形態に係るデータ分析システムは、ユーザiが問題jに正解する確率の臨時値tmpと、ユーザiが問題jを実際に解答したデータであるvalの差を用いて、選択したデータ(i,j,val)に対する近似勾配降下gradを計算することができる。これは、次の数式2により計算することができる。
【0055】
【0056】
さらに、gradと共に、当該ユーザが解答した問題の数ui、当該問題が解答された回数vjを反映して、次の数式3によりユーザiの概念理解度Li、問題jの概念構成度Rjを更新することができる。
【0057】
【0058】
ここで、前記muは、前記数式の性能を左右するパラメータであり、従来技術により実験を通して選択することができ、前記stepは、前記数式が新たなデータを受け取る速度に関するパラメータであり、従来技術により実験を通して選択することができる。
【0059】
本発明の実施形態によれば、全データに対して前記過程を繰り返し、全データが反映されると、再びランダムにリストをシャッフルして前記過程を十分に繰り返すことにより、L、Rを高い信頼性で推定することができる。
【0060】
しかしながら、本発明の実施形態に係るデータ分析フレームワークにおいて、ユーザと問題をモデリングベクトルで表現する理由は、究極的には特定ユーザが特定問題に正解するか否かを精密に予測するためである。
【0061】
ユーザの問題に対する正解率は、前述したようにユーザの正解または不正解の結果を収集して分析する方法により推定することができるが、選択肢の選択確率を用いて推定することもできる。
【0062】
例えば、第1のユーザの特定問題に対する選択肢選択確率が(0.1,0.2,0,0.7)であれば、ユーザは高い確率で選択肢4番を選択し、当該問題の正解が4番であれば、第1のユーザはその問題に正解する確率が高いものと予想することができる。
【0063】
一方、問題の難易度は、全ユーザの正解または不正解の結果を収集して分析する方法により推定することができるが、選択肢の選択確率を用いて推定することもできる。
【0064】
例えば、4肢選択式で構成された特定問題に対するユーザの選択肢選択確率が(0.5,0.1,0.3,0.6)であれば、ユーザが第2問題で選択肢1番を選択する確率と、選択肢4番を選択する確率が同程度であるので、第2問題は難易度が高いと分類することができる。
【0065】
このために、データ分析サーバは、全問題と全ユーザに関する解答結果データにユーザが選択した選択肢要素が含まれるように収集することができる。
【0066】
さらに詳しくは、データ分析サーバは、問題データベースに属する全問題に対してユーザが当該問題でどの選択肢を選択したかの選択肢選択結果を収集する方法で解答結果ログを収集することができ、さらに当該問題に対する正解または不正解の結果を収集することもできる。ここで、データ分析サーバは、ユーザ、問題、当該ユーザが当該問題で選択した選択肢に関するリストを構成することができる。
【0067】
次に、データ分析サーバは、1つの問題を選択肢単位に拡張してデータ分析処理を行うことができる。
【0068】
例えば、問題iが4肢選択式問題であれば、問題iは(i,1)(i,2)(i,3)(i,4)の4つの変数に拡張され、各問題-選択肢を各ユーザが選択したか否かが値として与えられる。
【0069】
例えば、E(i,j)は、問題iの選択肢jを意味し、Y’(u,E)は、ユーザuが問題iの選択肢jを選択したか否かを意味し、本発明の実施形態においては、選択すれば1、選択しなければ0の値を与える。
【0070】
さらに、データ分析サーバは、ユーザ及び問題-選択肢を変数とする多次元空間を構成し、ユーザが当該問題-選択肢を選択したか否かに基づいて前記多次元空間に値を与え、各ユーザ及び問題-選択肢のベクトルを計算することができる。
【0071】
次に、データ分析サーバは、前記ユーザベクトルと前記問題-選択肢ベクトルを用いて、任意のユーザが任意の問題-選択肢を選択する確率、すなわち選択率を推定することができる。
【0072】
ここで、前記ユーザベクトルと前記問題-選択肢ベクトルに様々なアルゴリズムを適用して前記選択率を推定することができ、本発明において選択率を計算するためのアルゴリズムは限定されるものではない。
【0073】
例えば、本発明の実施形態によれば、次の数式4のシグモイド関数を適用すると、ユーザの問題-選択肢選択率を推定することができる(xは問題-選択肢ベクトル、θはユーザベクトル。
【0074】
【0075】
さらに、本発明の実施形態に係るデータ分析サーバは、ユーザの選択肢選択率を用いて問題の正解率を推定することができる。
【0076】
しかしながら、例えば、4肢選択式で構成された特定問題に対する特定ユーザの選択肢選択確率が(0.5,0.1,0.3,0.6)であり、正解の選択肢が1番であれば、前記ユーザが当該問題に正解する確率はいくらになるかが争点となる。そこで、当該問題に対する複数の選択肢選択率を用いて当該問題の正解率を推定する方法も考えられる。
【0077】
本発明の実施形態により選択肢選択率を問題正解率に還元する簡単な方法としては、全選択肢の選択率と、正解の選択肢の選択率を比較する方法も考えられる。
【0078】
この場合、前記例においては、当該ユーザの当該問題に対する正解率を0.5/(0.5+0.1+0.3+0.6)で計算する。しかしながら、ユーザは問題に解答する際に選択肢単位に区分して当該問題を理解するのではなく、全選択肢に対する構成及び問題の出題意図を含めて問題単位で理解するので、選択肢選択率と正解率を単純に組み合わせることはできない。
【0079】
よって、本発明の実施形態によれば、当該問題の全選択肢選択率を平均化し、正解の選択肢の平均化した選択率を全選択肢の選択率に適用する方法により、選択肢選択率から当該問題の正解率を推定することができる。
【0080】
前記例において、選択肢の選択確率が(0.5,0.1,0.3,0.6)であれば、これを全選択肢に対して平均化すると、それぞれの選択肢選択率は(0.33,0.07,0.20,0.41)にスケールが変更される。正解の選択肢が1番であれば、選択肢1番の平均化した選択率は0.33であるので、当該ユーザの当該問題に対する正解率は33%であると推定される。
【0081】
さらに、本発明の実施形態に係るサービスサーバは、ユーザの問題-選択肢選択確率を用いて問題の正解率を推定することができるので、特定概念に対するユーザの理解度を推定することができる。
【0082】
さらに、データ分析サーバは、問題モデル及びユーザモデルに基づいて当該ユーザの特定問題に対する学習効率を計算することができる(ステップ140)。
【0083】
本発明の実施形態に係るデータ分析サーバは、前述したように、問題の選択肢単位のモデルとユーザモデルを用いて、各ユーザに関して問題の選択肢単位の選択確率及び当該ユーザの問題単位の正解率を計算することができる。
【0084】
本発明の第1の実施形態によれば、正解率が低い問題は学習効率が高いと仮定する。そうすると、サービスサーバは、正解率が高い問題はユーザが既に理解しているとみなし、ユーザが正解するはずの問題は排除し、間違うはずの問題のみ選んで推薦する。
【0085】
さらに詳しくは、サービスサーバは、問題データベースセットからユーザが既に解答した問題を除き、残りの問題を特定ユーザの正解率が低い順に並び替えて当該ユーザに関する推薦問題リストを作成し、それを提供することができる(ステップ150)。
【0086】
例えば、ユーザ-問題正解率Pの第1行の値が[0.3,0.4,0.1,0.9,0.7]であれば、ユーザ1が問題1、2、3、4、5に正解する確率がそれぞれ30%、40%、10%、90%、70%であると解される。サービスサーバは、問題3、1、2、5、4の順に優先順位を付与した問題推薦リストをユーザに提供することができる。ここで、問題5をユーザ1が既に解答した場合、サービスサーバは問題5を除いて問題推薦リストを作成することができる。
【0087】
前記実施形態によれば、サービスサーバは、問題データベースに含まれる問題をユーザの正解率が低い順に並び替えてユーザに推薦することができる。ユーザは、確実に間違う問題から学習することになる。
【0088】
一方、データ分析サーバは、ユーザベクトル、問題-選択肢ベクトル、選択肢選択率、問題の正解率、ユーザの概念理解度、問題の概念構成度のうち少なくとも1つ以上を用いてユーザカスタマイズ型コンテンツを推薦することができる(ステップ150)。
【0089】
一例として、サービスサーバは、特定概念に対する理解度が低いユーザに当該概念に関する深化講座を推薦する。他の例として、サービスサーバは、複数の概念を含む問題に対する正解率が低いユーザに前記複数の概念を含むように構成された問題を推薦する。
【0090】
一方、本発明の第2の実施形態によれば、ユーザがある問題に正解すると、問題全体において前記ユーザの正解率の変更率が高い問題は学習効率が高いと仮定する。そうすると、ユーザに問題データベース全体においてより容易に解答できる問題が推薦され、ユーザは全問題の正解率を高めることのできる問題から学習することになる。
【0091】
第2の実施形態によりユーザの問題別学習効率を計算する過程については、
図2を参照して説明する。
図2は、本発明の実施形態によりユーザの問題別学習効率を計算する過程について説明するためのフローチャートである。
【0092】
任意の時点でのユーザの問題別正解率または任意の問題の選択肢別選択確率は、当該ユーザの解答結果データがさらに収集されると、それを反映して更新される。これを考慮すると、特定問題に関して当該ユーザが問題データベースに含まれる任意の問題に対して正解の選択肢を選択したと仮定すると、他の問題に対する当該ユーザの正解率が少しずつ変更される(ステップ210~ステップ230)。
【0093】
次に、サービスサーバは、全問題データベースに含まれる各問題に関して当該ユーザが正解の選択肢を選択したと仮定し、他の各問題について正解率の増加値を計算し、正解率の変更値の総合計または正解率の変更値の平均を当該問題の学習効率として計算する(ステップ240)。
【0094】
さらに詳しくは、本発明の実施形態に係るデータ分析サーバは、特定ユーザの任意の問題の選択肢別選択確率に、前記ユーザが当該選択肢を選択すると、他の問題の正解率変更値の平均値を適用することにより、当該問題の学習効率を計算する。
【0095】
例えば、ユーザAの特定問題aの選択肢1番に対する選択率をa1、選択肢2番に対する選択率をa2、選択肢3番に対する選択率をa3、選択肢4番に対する選択率をa4とする。
【0096】
ここで、ユーザAが当該問題に対して選択肢1番を選択したと仮定すると、ユーザAのモデル及び全問題のモデルは、ユーザAの選択肢1番選択イベントが適用されて多少変更され、変更されたモデルに応じて各問題の正解率が多少変更される。
【0097】
よって、データ分析サーバは、ユーザAの選択肢1番選択の仮想イベントを適用することにより、全問題の正解率変更平均値AVC_a1を計算することができる。
【0098】
同様に、データ分析サーバは、ユーザAが選択肢2板を選択したと仮定してAVC_a2を計算することができ、選択肢3番を選択したと仮定してAVC_a3を計算することができ、選択肢4番を選択したと仮定してAVC_a4を計算することができる。
【0099】
次に、データ分析サーバは、ユーザAの問題aによる学習効率E(A,a)を次の数式により計算することができる。
【0100】
【0101】
さらに、データ分析サーバは、全問題のE(A)を計算し、E(A)を当該問題の学習効率として活用することができる。
【0102】
次に、サービスサーバは、学習効率が高い順に全問題を並び替える。すなわち、当該問題をユーザが学習して正解すると、他の問題全体の正解率が変更されるが、前記正解率の変更値が高いと、ユーザは問題データベース全体をより容易に解答できるようになるので、学習効率が高いとみなされ、ユーザに推薦される(ステップ250)。
【0103】
一方、本発明の第3の実施形態によれば、ユーザの実際の試験点数を上げることができる問題は学習効率が高いと仮定する。そうすると、問題データベースの外部から出題される同じ科目の実際の試験点数をユーザ別に推定し、前記実際の試験点数を上げることができる問題が推薦される。そうすると、ユーザは実際の試験点数を上げることができる問題から学習することになる。
【0104】
第3の実施形態によりユーザの問題別学習効率を計算する過程については、
図3を参照して説明する。
図3は、本発明の第3の実施形態により実際の試験点数を上げることができる問題別学習効率を計算する過程について説明するためのフローチャートである。
【0105】
前記実施形態によれば、問題モデルとユーザモデルを用いて、実際の試験点数を推定する過程が必ず要求される。問題データベースの外部から出題される実際の試験点数をいかにして推定するか。
【0106】
従来の特定試験に対する被試験者の予想点数は、専門家のノウハウにより推定されるのが一般的であった。例えば、大学修学能力試験においては、専門家のノウハウにより実際の大学修学能力試験と同程度の模擬試験を構成し、学生が模擬試験を受けた結果に基づいて大学修学能力試験の予想点数が予測される。
【0107】
しかしながら、前記方法は、専門家の主観的経験や勘に頼ったものなので、実際の試験結果と大きく異なることが多い。専門家は各自の経験と勘に頼って模擬試験を作成するので、このような模擬試験によっては学生の実力や実際の試験点数を正確に予測することはできない。
【0108】
さらに、受験生が模擬試験を受ける行為自体が能率的な勉強であるとはいいがたい。模擬試験は、実際の試験と問題タイプが似ているかに基づいて構成されるので、受験者の実力とは関係なく出題される。すなわち、模擬試験は試験点数を推定して学生全体における自分の位置を確認することに目的があるだけであり、受験者の学習のために構成された問題ではなく、まして学習効率を高める方法でもない。
【0109】
これを解決するための本発明の実施形態によれば、実際の試験点数データが存在するユーザグループの実際の試験点数データを用いて、問題データベースの外部から出題される実際の試験点数を推定し、実際の試験点数の推定値を上げるのに必要な問題が推薦される。
【0110】
さらに詳しくは、本発明の実施形態によれば、前記ユーザグループの実際の試験点数データを用いて(ステップ320)、前記ユーザグループの問題データベースに含まれる全問題に対する正解率の平均と実際の試験点数の関係を示すモデリング関数を各ユーザ別に計算することができる。すなわち、実際の試験点数データを用いて、全問題の正解率の平均を実際の点数に変換するモデリング関数を計算することができる(前記モデリング関数を計算する具体的な方法については後述する)。
【0111】
前記モデリング関数が計算されると、前記ユーザグループに属さないユーザ、すなわち実際の試験点数データが存在しないユーザの前記問題データベースに含まれる全問題に対する正解率の平均を実際の試験点数に変換することができる(ステップ330)。
【0112】
さらに詳しくは、外部試験点数データが存在しない他のユーザに対して、ステップ310でユーザモデルが十分な信頼性で計算された場合、前記ユーザモデルを用いると、問題データベースに含まれる問題に対する正解率を予測することができ、予測した正解率を前記モデリング関数に適用すると、正解率を外部試験点数に変換することができる。
【0113】
次に、任意のユーザが任意の問題に対して任意の選択肢を選択したと仮定すると(ステップ340)、ユーザモデル及び問題モデルは当該ユーザの選択肢選択イベントが適用されて多少変更され、変更されたモデルに応じて各問題の正解率が多少変更され、前記モデリング関数を適用して変換した実際の試験点数予測値も変更される(ステップ350)。
【0114】
すなわち、サービスサーバは、全問題データベースに含まれる各問題に対して当該ユーザが各選択肢を選択したと仮定し、実際の試験点数予測の変更値を計算し、実際の試験点数予測の変更値の総合計または変更値の平均を当該問題の学習効率として計算することができる。
【0115】
一方、本発明の他の実施形態によれば、前記ユーザグループ、すなわち実際の試験点数データが存在するユーザグループの実際の試験点数データを用いて(ステップ320)、前記ユーザグループに関する推定点数が前記実際の試験点数データに近似するように、模擬試験問題セットを問題データベースから構成することができる(前記模擬試験問題セットを構成する具体的な方法については後述する)。
【0116】
前記模擬試験問題セットは、専門家により実際の試験と同じ問題タイプで構成される従来の模擬試験とは異なり、推定点数が実際の試験点数と同程度であるかに基づいて構成されるという特徴がある。
【0117】
前記模擬試験問題セットが構成されると、前記ユーザグループに属さないユーザのユーザモデルを用いて、前記模擬試験問題セットの推定点数を計算することができる(ステップ330)。前記模擬試験問題セットは、推定点数が実際の試験点数と同程度に構成されているので、実際の試験点数データが存在しないユーザの前記模擬試験問題セットに対する推定点数を実際の試験点数の予測値として代替することができる。
【0118】
次に、任意のユーザが任意の問題に対して各選択肢を選択したと仮定すると(ステップ340)、ユーザモデル及び問題モデルは、当該ユーザの選択肢選択イベントが適用されて多少変更され、変更されたモデルに応じて各問題の正解率が多少変更され、前記模擬試験問題セットに対する推定点数も変更される(ステップ350)。
【0119】
すなわち、サービスサーバは、全問題データベースに含まれる各問題に対して当該ユーザが各選択肢を選択したと仮定し、実際の試験点数予測(すなわち、模擬試験問題セットに対する推定点数)の変更値を計算し、実際の試験点数予測の変更値の総合計または変更値の平均を当該問題の学習効率として計算することができる。
【0120】
次に、サービスサーバは、実際の試験点数予測値の上昇率が高い順に問題データベースを並び替えてユーザに推薦する(ステップ360)。
【0121】
一方、問題データベースに含まれる各問題に対する正解率と外部試験点数の関係を示すモデリング関数を計算する過程は次の通りである。
【0122】
前述したように、データ分析サーバは、全ユーザのうち外部試験点数データが存在するユーザグループを確認する。これは、前記ユーザグループの外部試験点数データと、各ユーザモデル、問題-選択肢モデルから求めることのできる正解率の関係を用いて、外部試験点数予測効率が高い問題セットを構成するためである。
【0123】
さらに、本発明の実施形態に係るデータ分析サーバは、問題セットの性能、すなわち問題セットにおける外部試験点数の予測効率が高いか否かを検査したり、前記問題セットの点数を外部試験点数に変換するモデリング関数の性能を検査するために、前記ユーザグループの一部をテストグループに分割することができる。
【0124】
例えば、データベースに属する全ユーザのうち外部試験データが存在するユーザが{A,B,C,D,E,F,G,H}であれば、データ分析サーバは{A,B,C,D,E}をトレーニングセットに区分し、{F,G,H}をテストセットに区分する。
【0125】
さらに詳しくは、データ分析サーバは、外部試験点数データが存在するユーザグループを任意に2グループに分け、一方のグループは、データ分析フレームワークに前記問題セット及び試験点数変換モデリング関数を構成するためのデータを提供するトレーニングセットにグルーピングし、他方のグループは、前記問題セット及びモデリング関数の性能を検査するためのデータを提供するテストセットにグルーピングする。
【0126】
すなわち、外部試験点数データが存在するユーザグループのうち、前記トレーニングセットに属するユーザのデータは、問題セット及び試験点数変換モデリング関数の構成に用いられ、前記テストセットに属するユーザのデータは、前記問題セット及び試験点数変換モデリング関数の性能を検査するために用いられる。
【0127】
次に、データ分析サーバは、前記ユーザグループの外部試験点数データ及びユーザモデリングベクトルを用いて、問題データベースから外部試験点数予測効率が高い問題セットを構成する。
【0128】
特に、本発明の実施形態に係る問題セットは、従来の模擬試験のように外部試験に似ているかに基づいて構成されるのではなく、外部試験点数に対する予測効率が高いかに基づいて構成されるので、問題数及び/または問題タイプなどが外部試験に従属する必要はないという特徴がある。
【0129】
さらに詳しくは、特にデータ分析サーバは、問題データベースに含まれる各問題について、外部試験点数データが存在するユーザグループのモデリングベクトルを用いて計算した正解率と、前記ユーザグループの外部点数データの関係を多次元平面に表現する。
【0130】
例えば、問題データベースに含まれる問題が100問であれば、データ分析サーバは、x軸を問題数に応じて100個生成し、y軸を外部試験点数で構成することにより、多次元平面を生成することができる。
【0131】
例えば、外部試験点数データが存在するユーザのうち、トレーニングセットに属するユーザがA、B、C、D、Eの5人であれば、データ分析サーバは、ユーザAに対して予め計算しておいたモデリングベクトルを用いて第1問題の正解率を計算し、これを第1x軸(x1)のx値に設定し、ユーザAの外部試験点数をy値に設定することにより、ユーザAの第1平面の座標を決定する。
【0132】
データ分析サーバは、同様にユーザB~ユーザEの第1平面の座標を決定することにより、第1問題(x1)の外部試験点数との関係を多次元空間のうちx1平面に表現する。
【0133】
さらに、データ分析サーバは、同様に第2問題~第100問題についての平面を形成し、各問題の平面におけるユーザA~Eのx,y座標を決定することにより、第2問題~第100問題の外部試験点数との関係を多次元空間に表現する。
【0134】
この場合、前記ユーザグループの個別問題に対する推定正解率と外部試験点数は実質的に2次元平面に表現され、本発明の実施形態に係るデータ分析サーバは、2次元平面に表現された値の関係を数学的に表現するモデリング関数に変更する。
【0135】
例えば、本発明の実施形態に係るデータ分析サーバは、トレーニングセットに属するユーザA、B、C、D、Eの外部試験点数と、ユーザA、B、C、D、Eのユーザモデリングベクトルを用いて計算した第1問題に対する正解率の関係を数学的に表現するモデリング関数f1(x1)を計算することができる。
【0136】
さらに、第2問題~第100問題に関するデータを同様に処理することにより、モデリング関数f1(x2)~f1(x100)を求める。ここで、f1(x1)~f1(x100)は同じ基準で決定しなければならない。
【0137】
すなわち、問題セットを構成するために計算されるモデリング関数の形態は、データベースに属する全問題において同じ形態に決定されることが好ましい。例えば、第1問題のモデリング関数f1(x1)がax+bの形態の1次元関数で表現される場合、第2問題~第100問題のモデリング関数f1(x2)~f1(x100)も1次元関数の形態で表現されることが好ましい。
【0138】
問題セットは、問題データベースに属する問題のうち外部試験点数予測効率が高い問題で構成されるので、比較基準が同一でなければならないからである。
【0139】
さらに、本発明の実施形態に係るモデリング関数は、全問題において同じ基準さえ適用されれば、その形態が限定されるものではない。すなわち、モデリング関数は、トレーニングセットのデータを表現するのに最適化された形態に作成されればよく、従来の様々なアルゴリズムを用いて計算することができる。
【0140】
各問題のモデリング関数が全問題において同じ形態に決定されると、本発明の実施形態に係るデータ分析サーバは、当該問題のモデリング関数及びテストセットに属するユーザの外部試験点数の偏差を用いて、外部試験点数予測効率が高い問題セットを構成する。
【0141】
例えば、データ分析サーバは、テストセットに属するユーザF、G、Hのユーザモデリングベクトルを用いて計算した第1問題(x1)の正解率を第1問題のモデリング関数f(x1)に適用した値と、ユーザF、G、Hの外部試験点数の差値の平均を計算し、前記平均値eが小さければ、外部試験点数予測効率が高いと判断する。
【0142】
前記平均値eを求める数学式を次に示す。eは、問題セットの外部試験点数推定効率を示す。さらに詳しくは、eの値が小さいほど当該問題セットの外部試験点数推定効率が高いものと解される。
【0143】
【0144】
次に、データ分析サーバは、同じ基準でe2~e100を計算し、eの値が最も小さい問題の外部試験点数予測効率が最も高いと判断する。
【0145】
例えば、第4問題のe4がe1、e2、e3、e5~e100の中で最も小さければ、第4問題の外部試験予測効率が最も高いと判断することができるので、データ分析サーバは、第4問題を問題セットに最初に含ませる。
【0146】
次に、データ分析サーバは、第4問題と共に分析されることを前提に、第1、第2、第3及び第5~第100問題のうち外部試験予測効率が高い問題を抽出する。
【0147】
このために、本発明の実施形態に係るデータ分析サーバは、第4問題についての平面を固定し、残りの第1、第2、第3及び第5~第100問題についての平面を形成し、トレーニングセットに属するユーザA、B、C、D、Eの外部試験点数及びユーザA、B、C、D、Eのユーザモデリングベクトルを用いて計算した残りの第1、第2、第3及び第5~第100問題に対する正解率の関係を数学的に表現するモデリング関数f(x4,x1)、f(x4,x2)、f(x4,x3)、f(x4,x5)~f(x4,x100)を再度計算する(第2のモデリング関数)。
【0148】
前記第2のモデリング関数値は、第4問題と当該問題に対する外部試験点数推定値と解される。
【0149】
ここで、前述した2次元モデリング関数f(x4,x1)、f(x4,x2)、f(x4,x3)、f(x4,x5)~f(x4,x100)は、第4問題のみでモデリング関数を構成する場合と同じ基準で決定しなければならない。
【0150】
例えば、第4問題と共に提供される第1問題のモデリング関数f(x4,x1)は、cx4+dx1+eの形態で、前述したf(x4)のax4+bのように線形モデルの基準をそのまま用いて、x1の変数を追加して次元のみ増やした2次元関数で表現しなければならない。第4問題と共に提供される第2問題、第3問題、第5問題~第100問題のモデリング関数f2(x4,x2)、f2(x4,x3)、f2(x4,x5)~f2(x4,x100)も、前述したf(x4)と同じ線形モデルで、各問題xが変数として追加された2次元関数の形態で表現されることが好ましい。
【0151】
第4問題が問題セットに含まれることを前提に、残りの問題の2次元モデリング関数が決定されると、本発明の実施形態に係るデータ分析サーバは、当該問題の2次元関数及びテストセットに属するユーザの外部試験点数の偏差を用いて、外部試験点数予測効率が高い問題セットを構成する。
【0152】
例えば、データ分析サーバは、テストセットに属するユーザF、G、Hのユーザモデリングベクトルを用いて計算した第1問題(x1)の正解率、第4問題(x4)の正解率を2次元モデリング関数f(x4,x1)に適用した値(これは、第4問題と第1問題の外部試験点数推定値と解される)と、ユーザF、G、Hの外部試験点数の差値の平均を計算し、前記平均値が小さければ外部試験点数予測効率が高いと判断する。これを数学式で表現すると次のようになる。
【0153】
【0154】
次に、データ分析サーバは、同じ基準でe4,2~e4,100を計算し、eの値が最も小さい問題の外部試験点数予測効率が最も高いと判断する。
【0155】
例えば、第1問題のe4,1がe4,2、e4,3、e4,5~e4,100の中で最も小さければ、第4問題と共に提供される場合に第1問題の外部試験予測効率が最も高いと判断することができるので、データ分析サーバは第1問題を問題セットに含ませる。
【0156】
次に、データ分析サーバは、第1、4問題と共に分析されることを前提に、第2、第3及び第5~第100問題のうち外部試験予測効率が高い問題を前記方法と同じ論理で抽出する。
【0157】
一方、前記方法によりeの値が最小である問題で問題セットを構成する場合、問題セット構成の完了時点が争点となる。問題セットに含まれる問題の数が多いほど推定の精度は高くなるが、問題セットを構成するために個別問題のモデリング関数を計算し、優先順位を計算するために必要なリソース使用量が増加する。よって、外部試験点数推定に最適化された数で問題セットを構成することが効率的である。
【0158】
本発明の実施形態によれば、テストセットに属するユーザのモデリングベクトルを用いて計算した問題セットに対する正解率を当該問題セットのモデリング関数に適用した値と、テストセットに属するユーザの外部試験点数の差値の平均、すなわちeを計算し、問題セットの更新によるeの変更推移に応じて問題セット構成の終了を決定することができる。
【0159】
本発明の実施形態に係るデータ分析サーバは、問題セットのeの更新推移を確認することにより問題セット更新の終了を決定する。さらに詳しくは、問題セット更新を終了するケースは主に2つ考えられる。
【0160】
第一に、当該時点の問題セットでテストグループに属するユーザの外部試験点数を十分に推定できる場合である。すなわち、特定問題セットのみで外部試験点数推定を十分に行うことができる場合である。これは、当該時点の問題セットのeが閾値以下であるかを確認することにより判断することができる。
【0161】
第二に、問題セットに他の問題を追加したとしても外部試験点数推定の効率がそれ以上高くならない場合である。すなわち、問題追加の効果がない場合であり、問題を追加したとしても外部試験の点数推定効率の変化がないものと予想される場合である。これは、問題セットの更新にもかかわらず、更新問題セットの推定効率、すなわちeが変更されずに任意の範囲に留まっているかを確認することにより判断することができる。
【0162】
まとめると、本発明の実施形態に係るデータ分析サーバは、問題セットの更新を行いながら、問題セットの外部試験点数推定効率、すなわちeの変更推移を確認し、特定時点の問題セットの推定効率が予め設定された閾値を下回ったり、前記推定効率が任意の範囲に留まっていると、問題セットの更新を終了して問題セットを構成する。
【0163】
一方、本発明の実施形態に係るモデリング関数は、問題セットに含まれる問題が同一形態であることを前提に、様々なアルゴリズムにより決定される。しかしながら、様々なアルゴリズムを適用して生成した複数のモデリング関数から、外部試験点数推定に最も効率的な関数を選択するという解決すべき課題が残る。
【0164】
本発明の実施形態によれば、モデリング関数の効率性は、e、すなわち問題セットの外部試験点数予測効率を用いて計算する。
【0165】
例えば、トレーニングセット{A,B,C,D,E}に属するユーザのデータを用いて第1基準で第1のモデリング関数f1が抽出され、前記第1のモデリング関数を適用して構成した問題セットが{第3問題(x3),第4問題(x4),第5問題(x5)}である場合が考えられる。
【0166】
さらに、同じトレーニングセット{A,B,C,D,E}に属するデータを用いて第2基準で第2のモデリング関数f2が抽出され、前記第2のモデリング関数を適用して構成した問題セットが{第1問題(x1),第3問題(x3),第5問題(x5)}である場合が考えられる。
【0167】
前記例において、本発明の実施形態に係るデータ分析サーバは、テストセット{F,G,H}のデータを用いて各問題セット及び各モデリング関数のe、すなわち問題セットの外部試験点数予測効率を計算し、eの値がさらに小さいモデリング関数を選択する。
【0168】
さらに詳しくは、まずデータ分析サーバは、テストセットに属するユーザF、G、Hのユーザモデリングベクトルを用いて第1問題セットの{第3問題(x3),第4問題(x4),第5問題(x5)}の正解率を第1のモデリング関数f1に適用した値と、ユーザF、G、Hの外部試験点数の差値の平均、すなわち第1のモデリング関数のe1を計算する。
【0169】
次に、データ分析サーバは、テストセットに属するF、G、Hのユーザモデリングベクトルを用いて第2問題{第1問題(x1),第3問題(x3),第5問題(x5)}の正解率を第2のモデリング関数f2に適用した値と、ユーザF、G、Hの外部試験点数の差値の平均、すなわち第2のモデリング関数のe2を計算する。
【0170】
次に、データ分析サーバは、eの値がさらに小さいモデリング関数及び問題セットを選択し、ユーザの外部試験点数を推定する後続手順を行う。
【0171】
一方、ユーザに関する推定点数が問題データベースを用いることなく出題された実際の試験点数データと同程度になるように模擬試験問題セットを構成する過程は次の通りである。
【0172】
本発明の実施形態によれば、模擬試験は次の方法で構成することができる。
【0173】
一例として、データベースの各問題の全ユーザにおける平均正解率を用いて、全ユーザにおける模擬試験の平均点数が任意の範囲に留まるように問題セットを構成する。
【0174】
例えば、語学能力試験の統計を参照して当該試験の全受験者の平均点数が67点~69点であれば、データ分析サーバは、模擬試験も平均点数が67点~69点の範囲に留まるように問題セットを構成する。
【0175】
ここで、当該試験の問題タイプ分布を考慮して模擬試験の問題セットを構成することができる。例えば、語学能力試験の統計を参照して、実際の試験に第1のタイプが20パーセント、第2のタイプが約30パーセント、第3のタイプが約40パーセント、第4のタイプが約10パーセント出題される場合、模擬試験も問題タイプ分布が実際の試験に類似するように構成する。
【0176】
このために、本発明の実施形態によれば、問題タイプに関するラベルを予め生成しておき、問題データベースにインデックス情報を追加することができる。
【0177】
例えば、データ分析サーバは、任意のタイプに分類できる問題のラベルを予め定義しておき、当該問題タイプによる問題モデルの特性を学習して問題をクラスタリングし、クラスタリングした問題グループに問題タイプに関するラベルを付与する方法でインデックス情報を生成することができる。
【0178】
他の例として、データ分析サーバは、問題タイプに関するラベルを予め定義せず、問題のモデリングベクトルを用いて問題をクラスタリングし、クラスタリングした問題グループの意味を解釈して問題タイプに関するラベルを付与する方法でインデックス情報を生成することもできる。
【0179】
本発明の実施形態により模擬試験を構成する他の方法は、当該試験における任意のユーザの実際の点数情報を用いるものである。
【0180】
例えば、語学能力試験についての前記例において、当該試験を受験したユーザA、B、Cの実際の点数がそれぞれ60、70、80点であれば、予め計算しておいたユーザA、B、Cの正解率を適用して計算した模擬試験推定点数がそれぞれ60、70、80点になるように模擬試験問題セットを構成することができる。
【0181】
模擬試験推定点数が実際の点数と同程度になるように問題セットを構成する前記実施形態によれば、模擬試験と実際の試験の類似度は、実際の試験を受験したユーザの点数情報を用いて数学的に計算される。よって、模擬試験の信頼性、すなわち模擬試験点数が実際の試験点数と同程度になる信頼性を高めることができる。
【0182】
ここで、本発明の実施形態によれば、当該試験の問題タイプ分布情報を適用して模擬試験問題セットを構成することができ、統計的に分析される他の情報を適用することもできる。
【0183】
一方、データ分析サーバは、模擬試験問題セットを構成する過程において、問題の配点を調整することができる。これは、問題データベースに属する問題には別途の配点情報が与えられないが、実際の試験では各問題に異なる配点が与えられるからである。
【0184】
一般に、実際の試験では難しい問題に高い配点が与えられ、簡単な問題に低い配点が与えられる。要するに、問題の平均正解率、問題を構成する概念の数、問題文の長さなどを考慮して実際の問題に配点が与えられ、問題タイプによって予め特定された配点が与えられる。
【0185】
よって、本発明の実施形態に係るデータ分析サーバは、当該問題の平均正解率、問題を構成する概念の数、問題文の長さ、及び問題タイプ情報のうち少なくとも1つ以上を反映して模擬試験問題セットを構成する各問題に配点を与える。
【0186】
このために、データ分析サーバは、問題の概念に関するラベルを生成すべく、当該科目の学習要素及び/またはテーマを木構造に羅列して最小学習要素に関するメタデータセットを生成し、前記最小学習要素の分析に適したグループ単位に分類して問題を構成する概念に関するインデックス情報を生成することもできる。
【0187】
特に、本発明の実施形態によれば、当該試験を実際に受験したユーザの実際の点数と、当該ユーザの模擬試験問題セットの推定点数が同程度になるように、問題セットを構成する各問題に配点を与えることもできる。
【0188】
実際の試験と類似度が高い模擬試験問題セットが構成されると、本発明の実施形態に係るデータ分析サーバは、各ユーザの模擬試験に対する予測点数を推定することができる。実際の試験と模擬試験が同程度であることを前提に、模擬試験の点数を実際の試験の点数として推定することになる。
【0189】
特に、本発明の実施形態は、ユーザが模擬試験に直接解答することなく、模擬試験の点数を高い信頼性で推定できることを特徴とする。
【0190】
本発明の実施形態に係る模擬試験は、問題データベースに含まれる問題から構成され、データベースに属する各問題に対するユーザの正解率は前述したように予め計算されている。よって、模擬試験を構成する全問題に対する個別ユーザの正解率を用いて、当該ユーザの模擬試験予想点数を推定することができる。
【0191】
ここで、本発明の実施形態によれば、任意の試験点数を推定するための模擬試験問題セットを複数構成し、特定ユーザの複数の模擬試験に対する推定点数を平均化することにより、当該ユーザの実際の試験に対する予測点数を推定することができる。
【0192】
本明細書と図面に示した本発明の実施形態は、本発明の技術内容を説明するにあたって理解を助けるために特定例を示したものにすぎず、本発明の範囲を限定する意図ではない。ここに示した実施形態以外にも、本発明の技術的思想に基づく様々な変形が可能であることは、本発明の属する技術分野における通常の知識を有する者にとって自明である。