以下、本発明をその実施形態を示す図面に基づいて詳述する。
(実施形態1)
実施形態1は、第1期間における学習者の学習成果を示す単位期間ごとの学習成果データに基づき、人工知能(AI:Artificial Intelligence)を用いて、該第1期間以降の単位期間ごとの目標学習成果データを出力(予測)する形態に関する。図1は、学習成果予測システムの概要を示す説明図である。本実施形態のシステムは、情報処理装置1及び情報処理端末2を含み、各装置はインターネット等のネットワークNを介して情報の送受信を行う。
情報処理装置1は、種々の情報に対する処理、記憶及び送受信を行う情報処理装置である。情報処理装置1は、例えばサーバ装置、パーソナルコンピュータまたは汎用のタブレットPC(パソコン)等である。本実施形態において、情報処理装置1はサーバ装置であるものとし、以下では簡潔のためサーバ1と読み替える。
情報処理端末2は、過去の学習成果データの受付及び送信、並びに、目標学習成果データの受信及び表示等を行う端末装置である。情報処理端末2は、例えばスマートフォン、携帯電話、アップルウォッチ(Apple Watch:登録商標)等のウェアラブルデバイス、タブレット、パーソナルコンピュータ端末等の情報処理機器である。以下では簡潔のため、情報処理端末2を端末2と読み替える。
本実施形態に係るサーバ1は、第1期間における学習者の学習成果を示す単位期間ごとの学習成果データを時系列で取得する。サーバ1は、取得した時系列の学習成果データを、第1期間における単位期間ごとの学習成果データと、目標を達成するための該第1期間以降の目標達成のために必要な単位期間ごとの学習成果である目標学習成果データとの関係を学習した学習モデルに入力して、該第1期間以降の単位期間ごとの目標学習成果データを時系列順に出力する。なお、学習モデルに関しては後述する。サーバ1は、出力した時系列の目標学習成果データを端末2に送信する。
サーバ1は、単位期間が経過したと判定した場合、学習者の実際の学習成果データを端末2から取得する。サーバ1は、取得した実際の学習成果データと、学習モデルから出力された目標学習成果データとに基づいて、目標を達成したか否かを判定する。サーバ1は、目標を達成していないと判定した場合、目標未達成の旨を含むアラートメッセージを端末2に送信する。
図2は、サーバ1の構成例を示すブロック図である。サーバ1は、制御部11、記憶部12、通信部13、入力部14、表示部15、読取部16及び大容量記憶部17を含む。各構成はバスBで接続されている。
制御部11はCPU(Central Processing Unit)、MPU(Micro-Processing Unit)、GPU(Graphics Processing Unit)等の演算処理装置を含み、記憶部12に記憶された制御プログラム1Pを読み出して実行することにより、サーバ1に係る種々の情報処理、制御処理等を行う。なお、制御プログラム1Pは、単一のコンピュータ上で、または1つのサイトにおいて配置されるか、もしくは複数のサイトにわたって分散され、通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように展開することができる。なお、図2では制御部11を単一のプロセッサであるものとして説明するが、マルチプロセッサであっても良い。
記憶部12はRAM(Random Access Memory)、ROM(Read Only Memory)等のメモリ素子を含み、制御部11が処理を実行するために必要な制御プログラム1P又はデータ等を記憶している。また、記憶部12は、制御部11が演算処理を実行するために必要なデータ等を一時的に記憶する。通信部13は通信に関する処理を行うための通信モジュールであり、ネットワークNを介して、端末2との間で情報の送受信を行う。
入力部14は、マウス、キーボード、タッチパネル、ボタン等の入力デバイスであり、受け付けた操作情報を制御部11へ出力する。表示部15は、液晶ディスプレイ又は有機EL(electroluminescence)ディスプレイ等であり、制御部11の指示に従い各種情報を表示する。
読取部16は、CD(Compact Disc)-ROM又はDVD(Digital Versatile Disc)-ROMを含む可搬型記憶媒体1aを読み取る。制御部11が読取部16を介して、制御プログラム1Pを可搬型記憶媒体1aより読み取り、大容量記憶部17に記憶しても良い。また、ネットワークN等を介して他のコンピュータから制御部11が制御プログラム1Pをダウンロードし、大容量記憶部17に記憶しても良い。さらにまた、半導体メモリ1bから、制御部11が制御プログラム1Pを読み込んでも良い。
大容量記憶部17は、例えばHDD(Hard disk drive:ハードディスク)、SSD(Solid State Drive:ソリッドステートドライブ)等の記録媒体を備える。大容量記憶部17は、学習成果予測モデル171、訓練データDB(database)172、学習モデル管理DB173及び学習者DB174を含む。
学習成果予測モデル171は、第1期間における単位期間ごとの学習成果データに基づいて該第1期間以降の単位期間ごとの目標学習成果データを予測(出力)する予測器であり、機械学習により生成された学習済みの学習モデルである。訓練データDB172は、学習成果予測モデル171を構築(作成)するための訓練データを記憶している。学習モデル管理DB173は、学習済みの学習モデルに関する情報を記憶している。学習者DB174は、学習者に関する情報を記憶している。
なお、本実施形態において記憶部12及び大容量記憶部17は一体の記憶装置として構成されていても良い。また、大容量記憶部17は複数の記憶装置により構成されていても良い。更にまた、大容量記憶部17はサーバ1に接続された外部記憶装置であっても良い。
サーバ1はコンピュータ単体で実行しても良いし、複数のコンピュータで分散して実行しても良いし、仮想マシンで分散して実行しても良い。
図3は、訓練データDB172のレコードレイアウトの一例を示す説明図である。訓練データDB172は、訓練ID列、入力列、出力列、科目列、学習レベル列及び到達目標レベル列を含む。
訓練ID列は、各訓練データを識別するために、一意に特定される訓練データのIDを記憶している。入力列は、第1期間における単位期間ごとの学習成果データを記憶している。出力列は、第1期間以降の単位期間ごとの目標学習成果データを記憶している。学習成果は、学習者の学習量(例えば、問題を解く数、または学習時間)に基づいて定量化された数値である。例えば、入力列は第1期間における単位期間(例えば、一ヵ月)ごとの問題数を記憶し、出力列は該第1期間以降の単位期間(例えば、一ヵ月)ごとの目標問題数を記憶しても良い。なお、学習成果の詳細は後述する。
科目列は、学習する科目(例えば、国語、数学または社会)を記憶している。学習レベル列は、学習者の学習レベル(例えば、学力偏差値)を記憶している。到達目標レベル列は、学習者の到達目標レベルを記憶している。なお、到達目標レベルは、高校もしくは大学の入学向けの試験、または学習者が志望する志望校等であっても良い。
図4は、学習モデル管理DB173及び学習者DB174のレコードレイアウトの一例を示す説明図である。
学習モデル管理DB173は、モデルID列、学習モデル列、種類列及び生成日時列を含む。モデルID列は、各学習済みの学習成果予測モデル171を識別するために、一意に特定される学習モデルのIDを記憶している。学習モデル列は、学習済みの学習成果予測モデル171のファイルを記憶している。
種類列は、学習モデルの種類を記憶している。種類は、例えば学習する科目により分類されても良く、または学習者の学習レベル(例えば、学力偏差値)により分類されても良く、更にまた、科目と学習レベルとの組み合わせにより分類されても良い。科目に基づいて分類された種類は、例えば「国語モデル」、「数学モデル」または「社会モデル」等を含む。学習レベルに基づいて分類された種類は、例えば「偏差値50モデル」または「偏差値55モデル」等を含む。科目と学習レベルとの組み合わせに基づいて分類された種類は、例えば「国語 偏差値50モデル」または「数学 偏差値50モデル」等を含む。生成日時列は、学習モデルを生成した日時情報を記憶している。
学習者DB174は、学習者ID列、期間列、実際学習成果列及び目標学習成果列を含む。学習者ID列は、各学習者を識別するために、一意に特定される学習者のIDを記憶している。期間列は、学習成果データに対応する期間を記憶している。期間は、1月といった月単位であっても、1週間といった週単位であっても良く、特に限定されない。実際学習成果列は、期間ごとの実際の学習成果データを記憶している。目標学習成果列は、期間ごとの目標学習成果データを記憶している。
なお、上述した各DBの記憶形態は一例であり、データ間の関係が維持されていれば、他の記憶形態であっても良い。
図5は、端末2の構成例を示すブロック図である。端末2は、制御部21、記憶部22、通信部23、入力部24及び表示部25を含む。各構成はバスBで接続されている。
制御部21はCPU、MPU等の演算処理装置を含み、記憶部22に記憶された制御プログラム2Pを読み出して実行することにより、端末2に係る種々の情報処理、制御処理等を行う。なお、図5では制御部21を単一のプロセッサであるものとして説明するが、マルチプロセッサであっても良い。記憶部22はRAM、ROM等のメモリ素子を含み、制御部21が処理を実行するために必要な制御プログラム2P又はデータ等を記憶している。また、記憶部22は、制御部21が演算処理を実行するために必要なデータ等を一時的に記憶する。
通信部23は通信に関する処理を行うための通信モジュールであり、ネットワークNを介して、サーバ1と情報の送受信を行う。入力部24は、キーボード、マウスまたは表示部25と一体化したタッチパネルでも良い。表示部25は、液晶ディスプレイ又は有機ELディスプレイ等であり、制御部21の指示に従い各種情報を表示する。
続いて、第1期間における単位期間ごとの学習成果データに基づき、該第1期間以降の単位期間ごとの目標学習成果データを出力する処理を説明する。本実施形態では、学習成果予測モデル171を用いて目標学習成果データを出力(予測)する。
図6は、学習成果予測モデル171に関する説明図である。本実施の形態においてサーバ1は、第1期間における単位期間ごとの学習成果データと、該第1期間以降の単位期間ごとの目標学習成果データとの関係を学習する機械学習を行い、学習成果予測モデル171を生成(作成)する。
例えば学習成果予測モデル171は、深層学習により生成されるニューラルネットワークであり、RNN(Recurrent Neural Network)の一種であるSeq2Seq(Sequence to Sequence)である。学習成果予測モデル171は、第1期間における単位期間ごとの学習成果データの入力を受け付ける入力層と、入力データに基づく演算を行う中間層と、中間層での演算結果に基づいて該第1期間以降の単位期間ごとの目標学習成果データを出力する出力層とを有する。
入力層は、第1期間における単位期間ごとの学習成果データの入力を受け付ける複数のニューロンを有する。各ニューロンは、時系列順に従って単位期間ごとの学習成果データの入力を受け付ける。
中間層は、LSTM(Long short-term memory)ブロックと呼ばれる複数のニューロンで構成される。中間層の各ニューロンは、入力層の対応するニューロンに入力された学習成果データに基づき、演算を行う。LSTMブロックでは、前のLSTMブロック(ニューロン)における演算結果、すなわち一つ前に出現する学習成果データに基づく演算結果を参照しながら演算を行う。これにより学習成果予測モデル171は、時系列順に基づいて第1期間以降の単位期間ごとの目標学習成果データを予測する。
出力層は、第1期間以降の単位期間ごとの目標学習成果データを時系列順に従って順次出力する複数のニューロンを有する。各ニューロンは、中間層の対応するニューロンでの演算結果に基づき、出力すべき単位期間ごとの目標学習成果データを予測する。
Seq2Seqに係るニューラルネットワークは、図6に示すように、Encoderとして機能するネットワークと、Decoderとして機能するネットワークとに分類される。ラベル<SOS(Start of String)>は、学習または予測処理時にデータの始まりを表す予約語である。ラベル<EOS(End of String)>は、学習または予測処理時にデータの終わりを表す予約語である。
Encoderでは第1期間における単位期間ごとの時系列の学習成果データの入力を受け付け、中間層での演算を行う。Decoderでは、Encoderに入力された時系列の学習成果データに基づき、該第1期間以降の単位期間ごとの目標学習成果データを時系列順に従って順次出力する。
図示のように、Encoderでは第1期間における単位期間ごとの時系列の学習成果データの入力を受け付け、中間層での演算を行う。単位期間は、1月といった月単位であっても、1週間といった週単位であっても良く、特に限定されない。なお、本実施形態では、月単位の例を説明する。例えば、4月、5月、6月及び7月それぞれの学習成果データを時系列順にEncoderに入力しても良い。
DecoderではEncoderに入力された時系列の学習成果データに基づき、第1期間以降の単位期間ごとの目標学習成果データを予測する。
例えば、4月~7月の学習成果データが時系列順にEncoderに入力された場合、Decoderは、まず7月以降の8月の目標学習成果データを予測する。Decoderでは、8月の目標学習成果データを予測すると共に、予測した8月の目標学習成果データを次のLSTMブロックに入力し、9月の目標学習成果データを予測する。Decoderでは当該処理を繰り返し、10月以降の目標学習成果データを順次予測して、最終的に単位期間ごとの目標学習成果データを予測する。例えば、4月~7月の学習成果データを学習成果予測モデル171に入力し、8月~翌年の3月の目標学習成果データを出力することができる。
なお、Seq2Seqは学習成果予測モデル171の一例であって、サーバ1は、トランスフォーマー(Transformer)等の他のニューラルネットワークを学習成果予測モデル171として生成しても良い。また、学習成果予測モデル171はニューラルネットワークに限定されず、例えば決定木、ランダムフォレスト、SVM(Support Vector Machine)など、他の学習アルゴリズムに基づくモデルであっても良い。
例えばサーバ1は、訓練データDB172に蓄積された訓練データを用いて、学習成果予測モデル171を生成する。訓練データは、第1期間における単位期間ごとの学習成果データと、該第1期間以降の単位期間ごとの目標学習成果データとが対応付けられた組み合わせのデータである。訓練データは、合格者である学習者から収集された大量の学習成果データに基づいて生成される。なお、訓練データは別途人手で作成されたデータであっても良い。
図7は、訓練データの一例を示す説明図である。図7は、学習成果グラフ13aを含む。学習成果グラフ13aは、学習者の所定期間(例えば、月次)ごとの学習成果データを示すグラフである。グラフの横軸は、学習者の学習期間(例えば、4月~翌年の2月)を示す。グラフの縦軸は、学習成果データの1つの種類である学習量を示す。例えば学習量は、所定期間内の学習者の解答済みの課題数、または所定期間内の学習者の学習時間等である。なお、学習成果は学習量に限定せず、他の学習成果に係る指標(例えば、点数)に基づいて定量化されても良い。
また、学習成果は、学習量と難易度との併用により定量化されても良い。難易度は、例えば段階分けされた課題の正答率ごとに設定される。例えば、正答率が0-20%の課題は難易度「5」、正答率が21-40%の課題は難易度「4」、正答率が41-60%の課題は難易度「3」、正答率が61-80%の課題は難易度「2」、正答率が81-100%の課題は難易度「1」、といったように設定されても良い。
学習成果は、例えば、難易度と学習量との積で定量化できる。難易度「5」の課題に学習量「10問」を設定した場合の学習成果が50(5×10)であり、難易度「4」課題に学習量「10問」を設定した場合の学習成果が40(4×10)である。学習成果は、任意の算出式に基づいて定量化されても良い。
学習者の学習成果データに基づいて、期間と学習量との組み合わせにより訓練データを作成することができる。図示のように、合格者A氏の4月~翌年の2月の学習成果データが学習成果グラフ13aに表示される。4月から翌年の2月までのA氏の学習成果データから10組の訓練データを作成することができる。具体的には、先ず4月の学習成果データを入力データとし、5月~翌年の2月の学習成果データを出力データとする1組目の訓練データが作成される。次に、4月及び5月の学習成果データを入力データとし、6月~翌年の2月の学習成果データを出力データとする2組目の訓練データが作成される。このような学習成果データの組み合わせに基づいて、最終的に、4月~翌年の1月の学習成果データを入力とし、翌年の2月の学習成果データを出力とする10組目の訓練データが作成される。
このように、一人の合格者(目標を達成した学習者)の学習成果データから、複数組の訓練データを生成することができる。従って、合格者である大勢の学習者の学習成果データを用いて、学習成果予測モデル171に学習用の訓練データを生成することができる。
続いて、図6に戻り、学習成果予測モデル171の生成処理を詳しく説明する。サーバ1は、訓練用の第1期間における単位期間ごとの学習成果データ(入力データ)を学習成果予測モデル171に時系列順に入力し、出力層から該第1期間以降の単位期間ごとの目標学習成果データ(出力データ)を取得する。サーバ1は、訓練データに含まれる正解の出力データと、学習成果予測モデル171から出力された出力データとを比較し、両者が近似するように、中間層での演算に用いる重み等の各種パラメータを最適化する。
これによりサーバ1は、学習成果予測モデル171を生成(構築)する。サーバ1は、生成した学習成果予測モデル171を学習モデル管理DB173に記憶する。本実施の形態においてサーバ1は、上記の学習成果予測モデル171を用いて単位期間ごとの目標学習成果データの予測を行い、第1期間における単位期間ごとの学習成果データに対し、該第1期間以降の単位期間ごとの目標学習成果データを時系列順に出力する。
図8は、学習成果予測モデル171の生成処理の手順を示すフローチャートである。図8に基づき、機械学習を行って学習成果予測モデル171を生成する処理の内容について説明する。
サーバ1の制御部11は、第1期間における単位期間ごとの学習成果データと、該第1期間以降の単位期間ごとの目標学習成果データとが対応付けられた訓練データを大容量記憶部17の訓練データDB172から複数取得する(ステップS101)。制御部11は、取得した第1期間における単位期間ごとの学習成果データ、及び該第1期間以降の単位期間ごとの目標学習成果データに基づき、第1期間における単位期間ごとの学習成果データを入力として、該第1期間以降の単位期間ごとの目標学習成果データを出力とする学習成果予測モデル171を生成する(ステップS102)。
例えば、学習成果予測モデル171がSeq2Seqに係るニューラルネットワークであり、第1期間における単位期間ごとの時系列の学習成果データを入力として、該第1期間以降の単位期間ごとの時系列の目標学習成果データを出力するニューラルネットワークである。制御部11は、第1期間における単位期間ごとの学習成果データを時系列順に従って学習成果予測モデル171に順次入力し、該第1期間以降の単位期間ごとの目標学習成果データを時系列順に従って順次出力する。制御部11は、出力された単位期間ごとの目標学習成果データを、訓練データに含まれる正解の目標学習成果データと比較し、両者が近似するように中間層の各種パラメータを最適化して、学習成果予測モデル171を生成する。
制御部11は、生成した学習成果予測モデル171を大容量記憶部17の学習モデル管理DB173に記憶し(ステップS103)、一連の処理を終了する。具体的には、制御部11は、生成した学習成果予測モデル171に対してモデルIDを割り振り、割り振ったモデルIDに対応付けて、学習成果予測モデル171のファイル及び生成日時を一つのレコードとして学習モデル管理DB173に記憶する。
また、学習する科目ごとに学習成果予測モデル171を生成することができる。具体的には、サーバ1は、科目ごとに訓練データを訓練データDB172から取得する。例えば、国語用の学習成果予測モデル171が生成された場合、サーバ1は、「国語」である科目に対応する訓練データを訓練データDB172から複数抽出しても良い。サーバ1は、抽出した訓練データを用いて学習成果予測モデル171を生成する。なお、学習成果予測モデル171の生成処理に関しては、上述した処理と同様であるため、説明を省略する。
サーバ1は、生成した学習成果予測モデル171を学習モデル管理DB173に記憶する。具体的には、サーバ1は、生成した学習成果予測モデル171に対してモデルIDを割り振り、割り振ったモデルIDに対応付けて、学習成果予測モデル171のファイル、モデルの種類及び生成日時を一つのレコードとして学習モデル管理DB173に記憶する。
また、学習者の学習レベルごとに学習成果予測モデル171を生成することができる。具体的には、サーバ1は、学習者の学習レベルごとに訓練データを訓練データDB172から取得する。学習レベルは、例えば学力偏差値である。例えば、偏差値50用の学習成果予測モデル171が生成された場合、サーバ1は、「偏差値50」である学習レベルに対応する訓練データを訓練データDB172から複数抽出しても良い。サーバ1は、抽出した訓練データを用いて学習成果予測モデル171を生成し、生成した学習成果予測モデル171を学習モデル管理DB173に記憶する。
また、学習者の到達目標レベルごとに学習成果予測モデル171を生成することができる。到達目標レベルは、現在の学習レベル(例えば、学力偏差値)より高いレベルである。具体的には、サーバ1は、学習者の到達目標レベルごとに訓練データを訓練データDB172から取得する。例えば、目標偏差値55用の学習成果予測モデル171が生成された場合、サーバ1は、「偏差値55」である到達目標レベルに対応する訓練データを訓練データDB172から複数抽出しても良い。サーバ1は、抽出した訓練データを用いて学習成果予測モデル171を生成し、生成した学習成果予測モデル171を学習モデル管理DB173に記憶する。
更にまた、科目と学習レベルとの組み合わせ、または、科目と到達目標レベルとの組み合わせによって、学習成果予測モデル171を生成することができる。例えば、国語偏差値50モデル用の学習成果予測モデル171が生成された場合、サーバ1は、「国語」である科目と「偏差値50」である学習レベルとに対応する訓練データを訓練データDB172から複数抽出しても良い。サーバ1は、抽出した訓練データを用いて学習成果予測モデル171を生成し、生成した学習成果予測モデル171を学習モデル管理DB173に記憶する。
続いて、生成した学習成果予測モデル171の使用方法を説明する。
サーバ1は、第1期間における単位期間ごとの学習成果データを学習成果予測モデル171に入力して、該第1期間以降の単位期間ごとの目標学習成果データを時系列順に出力する。サーバ1は、学習者IDに対応付けて、学習成果予測モデル171から出力された単位期間ごとの目標学習成果データを学習者DB174に記憶する。
サーバ1は、単位期間ごとの目標学習成果データに基づき、該単位期間ごとの目標学習成果データを示すグラフを生成する。サーバ1は、生成したグラフを端末2に送信する。端末2は、サーバ1から送信されたグラフを受信し、受信したグラフを画面に表示する。なお、目標学習成果データの表示形式に関しては、グラフの形式に限定せず、例えばテキストまたは表の形式であって良い。
なお、サーバ1は、目標学習成果データを示すグラフを生成せず、目標学習成果データを端末2に送信しても良い。この場合、端末2は、サーバ1から送信された目標学習成果データに基づいてグラフを生成しても良い。
また、学習成果予測モデル171から出力された目標学習成果データに基づいて、目標を達成したか否かを判定することができる。具体的には、サーバ1は、単位期間(例えば、一ヵ月)が経過したか否かを判定する。サーバ1は、単位期間が経過したと判定した場合、該単位期間の学習者の実際の学習成果データの取得リクエストを端末2に送信する。
端末2は、サーバ1から送信された実際の学習成果データの取得リクエストに応じて、該単位期間の実際の学習成果データを取得する。例えば端末2は、単位期間の学習成果データの入力を受け付けても良い。または、端末2は、例えば課題(問題など)を提供するEラーニングシステム(e-Learning)を通じて、単位期間の学習成果データを取得しても良い。
Eラーニングシステムは、学習を電子化したものであり、パソコン、タブレットまたはスマートフォン等を使ってインターネット等のネットワークを利用して学習するシステムである。学習者が、Eラーニングシステム上で提供された課題を学習することにより、学習成果データをEラーニングシステムに記録することができる。
端末2は、学習者IDと、取得した単位期間の実際の学習成果データとをサーバ1に送信する。サーバ1は、端末2から送信された学習者ID及び実際の学習成果データを受信する。サーバ1は、受信した該単位期間の実際の学習成果データを学習者DB174に記憶する。サーバ1は、受信した学習者IDに基づいて、該単位期間の目標学習成果データを学習者DB174から取得する。サーバ1は、取得した目標学習成果データを端末2に送信する。端末2は、サーバ1から送信された該単位期間の目標学習成果データを実際の学習成果データと共に画面に表示する。
サーバ1は、該単位期間の実際の学習成果データと、該単位期間の目標学習成果データとを比較する。例えば、学習成果データが学習量(例えば、課題を解く数)である場合、サーバ1は実際の学習量と目標の学習量とを比較しても良い。
サーバ1は、実際の学習量が目標の学習量以上であると判定した場合、目標を達成したと判定する。逆に、サーバ1は、実際の学習量が目標の学習量未満であると判定した場合、目標を達成していないと判定する。サーバ1は、目標を達成していないと判定した場合、目標未達成の旨を含むアラートメッセージを端末2に送信する。端末2は、サーバ1から送信されたアラートメッセージを受信し、受信したアラートメッセージを画面に表示する。
図9は、目標学習成果データを出力する際の処理手順を示すフローチャートである。端末2の制御部21は、入力部24を介して学習する科目を受け付ける(ステップS251)。制御部21は、学習者の学習レベル(例えば、学力偏差値)の入力を入力部24により受け付ける(ステップS252)。制御部21は、受け付けた科目及び学習レベルを通信部23によりサーバ1に送信する(ステップS253)。
サーバ1の制御部11は、端末2から送信された科目及び学習レベルを通信部13により受信する(ステップS151)。制御部11は、受信した科目及び学習レベルに基づいて、学習成果予測モデル171を特定する(ステップS152)。具体的には、制御部11は、受信した科目及び学習レベルに対応する学習済みの学習成果予測モデル171を大容量記憶部17の学習モデル管理DB173から取得することにより、学習成果予測モデル171を特定する。
なお、図9では、科目及び学習レベルに基づく学習成果予測モデル171の特定処理を説明したが、これに限るものではない。例えばサーバ1は、科目または学習レベルのうちのどちらの一方に基づいて学習成果予測モデル171を特定しても良い。
なお、上述した処理(ステップS251~S253、及びステップS151~152)が一度実行された場合、次回から処理の実行を省略することができる。
制御部21は、第1期間(例えば、4月~6月)における単位期間(例えば、一ヵ月)ごとの学習成果データを取得する(ステップS254)。ステップS254の処理により、ステップS252の処理で受け付けた学習レベルに対応する学習成果データが取得される。制御部21は、取得した学習成果データを通信部23によりサーバ1に送信する(ステップS255)。例えば、制御部21は、第1期間における単位期間ごとの学習成果データの入力を入力部24により受け付け、受け付けた学習成果データをサーバ1に送信する。
サーバ1の制御部11は、端末2から送信された学習成果データを通信部13により受信する(ステップS153)。制御部11は、特定した学習成果予測モデル171を用いて、目標学習成果データを取得する(ステップS154)。具体的には、制御部11は、特定した学習成果予測モデル171に、第1期間における単位期間ごとの学習成果データを時系列順に入力して、該第1期間以降の単位期間ごとの目標学習成果データ(例えば、7月~翌年の2月の目標学習成果データ)を時系列順に出力する。
制御部11は、取得した該第1期間以降の単位期間ごとの目標学習成果データを通信部13により端末2に送信する(ステップS155)。端末2の制御部21は、サーバ1から送信された目標学習成果データを通信部23により受信する(ステップS256)。制御部21は、受信した目標学習成果データを表示部25により表示し(ステップS257)、処理を終了する。
図10は、目標達成の判定処理を行う際の処理手順を示すフローチャートである。サーバ1の制御部11は、単位期間(例えば、一ヵ月)が経過したか否かを判定する(ステップS111)。制御部11は、単位期間が経過していないと判定した場合(ステップS111でNO)、待機する。制御部11は、単位期間が経過したと判定した場合(ステップS111でYES)、単位期間の実際の学習成果データの取得リクエストを通信部13により端末2に送信する(ステップS112)。
端末2の制御部21は、サーバ1から送信された実際の学習成果データの取得リクエストを通信部23により受信する(ステップS211)。制御部21は、受信した取得リクエストに応じて、該単位期間の実際の学習成果データの入力を入力部24により受け付ける(ステップS212)。制御部21は、学習者ID、及び受け付けた実際の学習成果データを通信部23によりサーバ1に送信する(ステップS213)。サーバ1の制御部11は、端末2から送信された学習者ID及び実際の学習成果データを通信部13により受信する(ステップS113)。
制御部11は、受信した学習者IDに基づいて、該単位期間の目標学習成果データを大容量記憶部17の学習者DB174から取得する(ステップS114)。制御部11は、取得した目標学習成果データを通信部13により端末2に送信する(ステップS115)。端末2の制御部21は、サーバ1から送信された目標学習成果データを通信部23により受信する(ステップS214)。制御部21は、該単位期間の実際の学習成果データ及び目標学習成果データを表示部25により表示する(ステップS215)。
サーバ1の制御部11は、実際の学習成果データと、取得した目標学習成果データとを比較し、目標を達成したか否かを判定する(ステップS116)。制御部11は、目標を達成したと判定した場合(ステップS116でYES)、処理を終了する。制御部11は、目標を達成していないと判定した場合(ステップS116でNO)、目標未達成の旨を含むアラートメッセージを通信部13により端末2に送信する(ステップS117)。
端末2の制御部21は、サーバ1から送信されたアラートメッセージを通信部23により受信する(ステップS216)。制御部21は、受信したアラートメッセージを表示部25により表示し(ステップS217)、処理を終了する。なお、実際の学習成果データと目標学習成果データとに基づく目標達成の判定処理は、端末2側で行われても良い。
図11は、目標学習成果データを示すグラフの表示画面の一例を示す説明図である。該画面は、種類選択コンボボックス11a及びグラフ表示欄11bを含む。種類選択コンボボックス11aは、学習モデルの種類を選択するためのコンボボックスである。グラフ表示欄11bは、目標学習成果データを示すグラフを表示する表示欄である。
端末2は、種類選択コンボボックス11aの選択操作を受け付けた場合、選択された学習モデルの種類、及び第1期間における単位期間ごとの時系列の学習成果データ(例えば、4月~5月の学習成果データ)をサーバ1に送信する。サーバ1は、端末2から送信された学習モデルの種類及び時系列の学習成果データを受信する。サーバ1は、受信した学習モデルの種類に基づき、該当する学習済みの学習成果予測モデル171を学習モデル管理DB173から取得する。
サーバ1は、取得した学習成果予測モデル171に、受信した第1期間における単位期間ごとの学習成果データを時系列順に入力して、該第1期間以降の単位期間ごとの目標学習成果データ(例えば、6月~翌年の2月の目標学習成果データ)を時系列順に出力する。サーバ1は、出力した時系列の目標学習成果データに基づき、目標学習成果データを示すグラフを生成する。サーバ1は、生成したグラフを端末2に送信する。
端末2は、サーバ1から送信されたグラフを受信し、受信したグラフをグラフ表示欄11bに表示する。図示のように、学習成果データと期間との関係を示す縦棒グラフは、グラフ表示欄11bに表示される。縦棒グラフの横軸は、期間(例えば、4月~翌年の2月)を示す。縦棒グラフの縦軸は、学習成果データ(例えば、学習量)を示す。折れ線は、学習済みの学習成果データと目標学習成果データとを含む学習成果データの推移を示す線である。
実際の学習成果データが取得された場合、実際の学習成果データを目標学習成果データと共にグラフに表示することができる。例えば端末2は、6月の実際の学習成果データを取得した場合、取得した実際の学習成果データをサーバ1に送信する。サーバ1は、端末2から送信された実際の学習成果データを受信し、受信した実際の学習成果データをグラフに反映する。
サーバ1は、実際の学習成果データを反映したグラフを端末2に再送信する。端末2は、サーバ1から再送信されたグラフを受信してグラフ表示欄11bに表示する。図示のように、6月の学習成果において、実際の学習成果データ(実績値)の縦棒と目標学習成果データ(目標値)の縦棒とは同時にグラフに表示される。
なお、実際の学習成果データに基づいてグラフを更新することができる。具体的には、サーバ1は、学習成果予測モデル171から出力された目標学習成果データに、端末2から送信された実際の学習成果データを追加した学習成果データを、学習成果予測モデル171に入力し、単位期間ごとの目標学習成果データを時系列順に出力する。
サーバ1は、出力した単位期間ごとの時系列の目標学習成果データに基づき、目標学習成果データを示すグラフを更新する。サーバ1は、更新したグラフを端末2に再送信する。端末2は、サーバ1から再送信されたグラフを受信し、受信したグラフをグラフ表示欄11bに表示する。
なお、図11では縦棒グラフの形式としたが、これに限らず、その他のグラフ形式であっても良い。
なお、本実施形態では、目標達成(合格)向けの学習成果予測モデル171の生成処理を説明したが、これに限るものではない。例えば、目標未達成(不合格)向けの学習成果予測モデル171を生成しても良い。具体的には、サーバ1は、目標未達成である学習者の第1期間における単位期間ごとの学習成果データと、該第1期間以降の単位期間ごとの目標学習成果データとの関係を学習する機械学習を行い、目標未達成向けの学習成果予測モデル171を生成する。目標未達成向けの学習成果予測モデル171を用いて、目標を達成する(合格)ための最低の目標学習成果データを取得することができる。
また、TOEIC(登録商標)等の語学試験、検定試験(例えば、実用英語技能検定)、資格試験または昇進試験等を含むその他の試験向けの学習成果予測モデル171を生成しても良い。
本実施形態によると、学習成果予測モデル171を用いて、第1期間以降の単位期間ごとの目標学習成果データを予測することが可能となる。
本実施形態によると、学習する科目ごとに学習成果予測モデル171を作成することにより、科目ごとに目標学習成果データを予測することが可能となる。
本実施形態によると、学習者の学習レベルまたは到達目標レベルごとに学習成果予測モデル171を作成することにより、学習者の現状または目標に合わせて適当な目標学習成果データを予測することが可能となる。
本実施形態によると、実際の学習成果データと学習成果予測モデル171により予測された目標学習成果データとに基づき、目標を達成したか否かを判定することが可能となる。
本実施形態によると、目標を達成していないと判定した場合にアラートメッセージを出力することにより、学習者に該目標に向けた学習を促すことが可能となる。
(実施形態2)
実施形態2は、目標を達成するために学習すべき課題を、学習成果予測モデル171から予測された目標学習成果データと共に出力する形態に関する。なお、実施形態1と重複する内容については説明を省略する。
図12は、実施形態2のサーバ1の構成例を示すブロック図である。図2と重複する内容については同一の符号を付して説明を省略する。大容量記憶部17には、課題DB175及び進捗DB176が記憶されている。課題DB175は、目標学習成果データに応じて、目標を達成するために学習すべき課題を記憶している。進捗DB176は、学習者が学習した課題の進捗状況を記憶している。
図13は、課題DB175及び進捗DB176のレコードレイアウトの一例を示す説明図である。
課題DB175は、課題ID列、科目列、学習レベル列、課題名称列、サムネイル画像列、ページ列及び課題数列を含む。課題ID列は、各課題を識別するために、一意に特定される課題のIDを記憶している。科目列は、課題の科目を記憶している。学習レベル列は、学習レベル(例えば、学力偏差値)を記憶している。課題名称列は、課題の名称を記憶している。サムネイル画像列は、課題のサムネイル画像を記憶している。ページ列は、課題のページを記憶している。課題数列は、課題のページに対応する課題数を記憶している。
進捗DB176は、学習者ID列、科目列、月列、実際学習成果列及び課題ID列を含む。学習者ID列は、各学習者を識別するために、一意に特定される学習者のIDを記憶している。科目列は、学習する科目を記憶している。月列は、学習者が学習した月を記憶している。実際学習成果列は、月ごとの実際の学習成果データを記憶している。課題ID列は、課題を特定する課題IDを記憶している。
図14は、学習すべき課題を目標学習成果データと共に出力する際の処理手順を示すフローチャートである。なお、図14では、目標学習成果データが解答すべき課題数である例を説明するが、他の種類の学習成果データにも同様に適用することができる。
端末2の制御部21は、学習者が学習する科目、学習者の学習レベルの入力を入力部24により受け付ける(ステップS231)。制御部21は、受け付けた科目及び学習レベルを通信部23によりサーバ1に送信する(ステップS232)。サーバ1の制御部11は、端末2から送信された科目及び学習レベルを通信部13により受信する(ステップS131)。
制御部11は、受信した科目及び学習レベルに基づき、学習成果予測モデル171を特定する(ステップS132)。具体的には、制御部11は、受信した科目及び学習レベルに対応する学習済みの学習成果予測モデル171を大容量記憶部17の学習モデル管理DB173から取得することにより、学習成果予測モデル171を特定する。
なお、上述した処理(ステップS231~S232、及びステップS131~132)が一度実行された場合、次回から処理の実行を省略することができる。
制御部21は、対象期間(例えば、4月~6月)の実際の学習成果データの入力を入力部24により受け付けた場合(ステップS233)、受け付けた実際の学習成果データを通信部23によりサーバ1に送信する(ステップS234)。実際の学習成果データは、解題ID及び解答済みの課題数を含む。なお、課題を提供するEラーニングシステムが利用された場合、制御部21は、Eラーニングシステム上に記録された対象期間の実際の学習成果データを取得しても良い。
サーバ1の制御部11は、端末2から送信された対象期間の実際の学習成果データを通信部13により受信する(ステップS133)。制御部11は、受信した実際の学習成果データを大容量記憶部17の進捗DB176に記憶する(ステップS134)。具体的には、制御部11は課題IDに対応付けて、対象期間(例えば、6月)の解答数及び課題IDを進捗DB176に記憶する。
制御部11は、学習者の目標学習成果データを取得する(ステップS135)。具体的には、制御部11は、受信した対象期間(例えば、4月~6月)の学習成果データを、特定した学習成果予測モデル171に入力して、該対象期間以降の単位期間ごとの目標学習成果データを取得する。なお、制御部11は学習者IDに基づいて、学習者DB174に記憶された該学習者の目標学習成果データを取得しても良い。
制御部11は、取得した目標学習成果データに応じて、目標を達成するために学習すべき課題を特定する処理のサブルーチンを実行する(ステップS136)。なお、学習すべき課題の特定処理のサブルーチンに関しては後述する。
制御部11は、取得した目標学習成果データ、及び該目標学習成果データに応じて特定した課題に関する情報を通信部13により端末2に送信する(ステップS137)。課題に関する情報は、例えば課題ID、課題名称、サムネイル画像、課題のページ、及び課題のページに対応する課題数等を含む。
端末2の制御部21は、サーバ1から送信された目標学習成果データ及び課題に関する情報を通信部23により受信する(ステップS235)。制御部21は、対象期間内の実際の学習成果データを、受信した目標学習成果データ及び課題に関する情報と共に表示部25により表示し(ステップS236)、処理を終了する。
図15は、学習すべき課題を特定する処理のサブルーチンの処理手順を示すフローチャートである。サーバ1の制御部11は、科目及び学習レベルに基づいて、該当する課題の課題IDを大容量記憶部17の課題DB175から抽出する(ステップS11)。制御部11は、学習者IDに基づいて、該学習者が学習終了した課題(学習終了課題)の課題IDを大容量記憶部17の進捗DB176から取得する(ステップS12)。
制御部11は、取得した学習終了の課題IDに基づいて、学習者が学習していない課題(未学習課題)の課題IDを課題DB175から抽出する(ステップS13)。制御部11は、抽出した未学習の課題IDと目標学習成果データとに基づいて、学習すべき課題の課題IDを課題DB175から抽出する(ステップS14)。ここで抽出は、例えば課題IDの小さい順に課題数の合計が目標学習成果に到達するまで行われる。制御部11は、抽出した学習すべき課題の課題IDに基づいて、学習すべき課題に関する情報を課題DB175から取得する(ステップS15)。制御部11は、学習すべき課題の特定処理のサブルーチンを終了してリターンする。
図16は、目標学習成果データ及び課題を示すグラフの表示画面の一例を示す説明図である。なお、図11と重複する内容については同一の符号を付して説明を省略する。該画面は、課題表示欄12a及び進捗表示欄12bを含む。課題表示欄12aは、目標学習成果データに応じて特定された課題の名称及びサムネイル画像を表示する表示欄である。進捗表示欄12bは、課題の進捗状況を表示する表示欄である。なお、進捗表示欄12bは、進捗状況を示すプログレスバーであって良く、または進捗率等を含む進捗情報を表示するためのテキストフィールドであって良く。
端末2は、種類選択コンボボックス11aにより選択された学習モデルの種類、及び第1期間における単位期間ごとの時系列の学習成果データをサーバ1に送信する。サーバ1は、端末2から送信された学習モデルの種類及び時系列の学習成果データを受信する。サーバ1は、受信した学習モデルの種類に基づき、該当する学習済みの学習成果予測モデル171を学習モデル管理DB173から取得する。
サーバ1は、取得した学習成果予測モデル171に、受信した第1期間(例えば、4月~5月)における単位期間ごとの学習成果データを時系列順に入力して、該第1期間以降の単位期間ごとの目標学習成果データを時系列順に出力する。サーバ1は、出力した時系列の目標学習成果データに基づき、目標学習成果データを示すグラフを生成する。
サーバ1は、学習モデルの種類に対応する科目と、出力した目標学習成果データとに応じて、目標を達成するために学習すべき課題を特定する。なお、学習すべき課題の特定処理に関しては、図15の処理と同様であるため、説明を省略する。図示のように、「チャート式基礎 p.33-35 問題1-5」及び「数学問題集 p121-123 問題1-9」が特定される。
サーバ1は、課題DB175から抽出された課題数と、進捗DB176から取得された学習終了の課題数とに基づき、各課題の進捗率を算出する。なお、課題を提供するEラーニングシステムが利用された場合、サーバ1は、Eラーニングシステム上に記録された学習すべき課題及び該課題の進捗状況(例えば、正答率または進捗率)を取得しても良い。サーバ1は、生成したグラフと、目標を達成するために学習すべき各課題に関する情報、及び各課題の進捗率を端末2に送信する。
端末2は、サーバ1から送信されたグラフ、各課題に関する情報(例えば、課題ID、課題名称、サムネイル画像及び課題のページ等)及び各課題の進捗率を受信する。端末2は、受信したグラフをグラフ表示欄11bに表示し、課題のサムネイル画像、課題名称(例えば、チャート式基礎)及び課題のページ(例えば、p.33-35 問題1-5)を課題表示欄12aに表示し、進捗状況を進捗表示欄12bに表示する。なお、グラフの表示に関しては、図11と同様であるため、説明を省略する。
また、実際の学習成果データ(例えば、6月)が取得された場合、実際の学習成果データを目標学習成果データと共にグラフに表示する。なお、実際の学習成果データと目標学習成果データとの表示処理に関しては、図11と同様であるため、説明を省略する。この場合、サーバ1は、課題IDに基づいて、進捗DB176に記憶された解答済みの解答数と、実際の学習成果データに含まれている解答済みの解答数とに基づき、課題の進捗率を再算出する。サーバ1は、算出した課題の進捗率を進捗表示欄12bに表示する。
本実施形態によると、目標学習成果データと、目標を達成するために学習すべき課題とを同時に出力することにより、適切な難易度の課題を提案することが可能となる。
本実施形態によると、目標学習成果データと、学習すべき課題の進捗状況とを同時に出力することにより、学習者の学習状況を把握することが可能となる。
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。