JP6940184B2 - Skill estimation device, learning support device, skill estimation method and program - Google Patents
Skill estimation device, learning support device, skill estimation method and program Download PDFInfo
- Publication number
- JP6940184B2 JP6940184B2 JP2019547940A JP2019547940A JP6940184B2 JP 6940184 B2 JP6940184 B2 JP 6940184B2 JP 2019547940 A JP2019547940 A JP 2019547940A JP 2019547940 A JP2019547940 A JP 2019547940A JP 6940184 B2 JP6940184 B2 JP 6940184B2
- Authority
- JP
- Japan
- Prior art keywords
- skill
- learner
- skills
- solve
- correct
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B7/00—Electrically-operated teaching apparatus or devices working with questions and answers
- G09B7/02—Electrically-operated teaching apparatus or devices working with questions and answers of the type wherein the student is expected to construct an answer to the question which is presented or wherein the machine gives an answer to the question presented by a student
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Educational Technology (AREA)
- Educational Administration (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Tourism & Hospitality (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Mathematical Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Computational Linguistics (AREA)
- Algebra (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- Pure & Applied Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Electrically Operated Instructional Devices (AREA)
Description
本発明は、スキル推定装置、学習支援装置、スキル推定方法およびプログラムに関する。 The present invention relates to a skill estimation device, a learning support device, a skill estimation method and a program.
学習支援システムの1つに、学習者に問題を提示するシステムがある。問題を提示する際、学習者の能力を把握できれば、より適切な問題を提示し得る。そこで、学習者の能力を把握するための技術が提案されている。
例えば、非特許文献1に記載の技術では、問題を解く際の能力(Concept)の重要度、学習者が備えている能力をそれぞれ実数の行列で示す。この技術では、問題を解くために必要な能力と、学習者が備えている能力とで算出される推定値と、解答者による解答結果の実際値との差を最小にするように、学習者が備えている能力の推定を行う。One of the learning support systems is a system that presents problems to learners. When presenting a question, if the learner's ability can be grasped, a more appropriate question can be presented. Therefore, a technique for grasping the learner's ability has been proposed.
For example, in the technique described in
非特許文献1に記載の技術では、推定結果を人が見ても容易には解釈できないと考えられる。特に、非特許文献1に記載の技術では、推定結果をもとに、スキルの内容を人間が解釈することは難しい。
It is considered that the technique described in Non-Patent
本発明の目的の一例は、上述の課題を解決することのできるスキル推定装置、学習支援装置、スキル推定方法およびプログラムを提供することである。 An example of an object of the present invention is to provide a skill estimation device, a learning support device, a skill estimation method, and a program capable of solving the above-mentioned problems.
本発明の第1の態様にかかるスキル推定装置は、学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得する正誤データ取得部と、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定するスキル推定部と、を備える。 The skill estimation device according to the first aspect of the present invention includes a correct / incorrect data acquisition unit that acquires correct / incorrect data indicating the correct / incorrect answer of a problem solved by a learner as binary data, and a skill required for solving the problem. , And, using a model in which the skill held by the learner is represented by a binary probability variable indicating the presence or absence of the skill for each skill, a solution that maximizes the posterior probability based on the correct / incorrect data is searched for. It is equipped with a skill estimation unit that estimates the skills required to solve the problem and the skills held by the learner.
本発明の第2の態様にかかる学習支援装置は、学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得する正誤データ取得部と、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定するスキル推定部と、前記スキル推定部の推定結果に基づいて、学習者に提示する問題を選択する問題選択部と、を備える。 The learning support device according to the second aspect of the present invention includes a correct / incorrect data acquisition unit that acquires correct / incorrect data indicating the correct / incorrect answer of a problem solved by a learner as binary data, and a skill required for solving the problem. , And, using a model in which the skill held by the learner is represented by a binary probability variable indicating the presence or absence of the skill for each skill, a solution that maximizes the posterior probability based on the correct / incorrect data is searched for. The problem of selecting the problem to be presented to the learner based on the skills required to solve the problem and the skill estimation unit that estimates the skills held by the learner, and the estimation result of the skill estimation unit. It includes a selection unit.
本発明の第3の態様によれば、スキル推定方法は、装置が、学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得することと、前記装置が、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解探索を行って、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定することと、を含む。
According to the third aspect of the present invention, in the skill estimation method, the device acquires correct / incorrect data indicating the correctness of the answer in which the learner has solved the problem as binary data, and the device causes the problem. Maximize the posterior probability based on the correct / incorrect data by using a model that expresses the skills required to solve and the skills held by the learner with binary probability variables indicating the presence or absence of the skills for each skill. This includes performing a solution search to estimate the skills required to solve the problem and the skills possessed by the learner.
本発明の第4の態様にかかるプログラムは、コンピュータに、学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得することと、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定することと、を実行させる。 In the program according to the fourth aspect of the present invention, the computer acquires correct / incorrect data indicating the correctness of the answer in which the learner has solved the problem as binary data, the skill required to solve the problem, and the skill required to solve the problem. By searching for a solution that maximizes the posterior probability based on the correct / incorrect data, using a model in which the skill held by the learner is represented by a binary probability variable indicating the presence or absence of the skill for each skill. Estimate the skills required to solve the problem and the skills possessed by the learner, and let them perform.
この発明によれば、推定結果をもとに、スキルの内容を人間が比較的容易に解釈できるようになる。 According to the present invention, the content of the skill can be relatively easily interpreted by a human being based on the estimation result.
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本発明の実施形態に係る学習支援システムの機能構成を示す概略ブロック図である。図1に示すように、学習支援システム1は、学習支援装置100と、端末装置200とを備える。学習支援装置100と端末装置200とは、通信ネットワーク900を介して通信を行う。Hereinafter, embodiments of the present invention will be described, but the following embodiments do not limit the inventions claimed. Also, not all combinations of features described in the embodiments are essential to the means of solving the invention.
FIG. 1 is a schematic block diagram showing a functional configuration of a learning support system according to an embodiment of the present invention. As shown in FIG. 1, the
学習支援システム1は、学習者であるユーザに対し、ユーザが保持しているスキルに応じた問題を提供する。ここでいうスキルは、問題を解くために必要な能力であり、特定の種類の能力に限定されない。例えば、スキルには知識が含まれていてもよいし、ノウハウが含まれていてもよい。
ユーザが保持しているスキルをユーザのスキルとも称する。The
The skill held by the user is also referred to as the user's skill.
学習支援装置100は、ユーザのスキルを推定し、推定したスキルに応じた問題を提供する。学習支援装置100は、例えばワークステーション(Workstation)等のコンピュータを用いて構成される。学習支援装置100は、スキル推定装置の例、および、問題提供装置の例に該当する。
図2は、学習支援装置100の機能構成を示す概略ブロック図である。図2に示すように、学習支援装置100は、サーバ側通信部110と、サーバ側記憶部180と、サーバ側制御部190とを備える。サーバ側制御部190は、スキル推定部191と、問題選択部192と、解答処理部193とを備える。The
FIG. 2 is a schematic block diagram showing a functional configuration of the
サーバ側通信部110は、他の装置と通信を行う。特に、サーバ側通信部110は端末装置200と通信を行って問題を送信し、ユーザが問題を解いて出した解答(問題に対するユーザの解答)を受信し、解答に対する解説を送信する。
サーバ側記憶部180は、問題および解答や、スキル推定用のモデルなど各種情報を記憶する。サーバ側記憶部180は、学習支援装置100が備える記憶デバイスを用いて構成される。
サーバ側制御部190は、学習支援装置100の各部を制御して各種処理を行う。サーバ側制御部190は、学習支援装置100が備えるCPU(Central Processing Unit、中央処理装置)がサーバ側記憶部180からプログラムを読み出して実行することで構成される。The server-
The server-
The server-
スキル推定部191は、問題に対するユーザの解答の正誤に基づいて、ユーザが保持しているスキルおよび各問題を解くのに必要なスキルを推定する。
問題選択部192は、スキル推定部191が推定したスキルに基づいて、ユーザに提供する問題を選択する。The skill estimation unit 191 estimates the skills held by the user and the skills required to solve each problem based on the correctness of the user's answer to the problem.
The
解答処理部193は、問題に対するユーザの解答に対する処理を行う。具体的には、解答処理部193は、解答の正誤を判定する。そして、解答処理部193は、判定結果を示す2値データ(正答又は誤答であることを示すデータ)と、問題番号、ユーザ番号、および、日時情報とを対応付けた正誤データを、サーバ側記憶部180に記憶させる。解答処理部193は、正誤データ取得部の例に該当する。
また、解答処理部193は、サーバ側記憶部180が記憶している解説の中から解答の正誤に応じた解説を選択し、解答を送信した端末装置200へサーバ側通信部110を介して送信する。The
Further, the
端末装置200は、学習支援システム1の端末装置として機能する。特に、端末装置200は、学習支援装置100から送信される問題を表示して、解答を入力するユーザ操作を受ける。端末装置200は、得られた解答を学習支援装置100へ送信し、学習支援装置100から解説を受信し、受信した解説を表示する。さらに、端末装置200は、次の問題を学習支援装置100から受信すると、問題の表示、解答の取得および送信、解説の受信および表示を繰り返す。
The
端末装置200は、例えばパソコン(Personal Computer;PC)、タブレット端末装置またはスマートフォン(Smartphone)などのコンピュータを用いて構成される。
学習支援システム1が備える端末の数は、複数であればよく、多いほどよい。ユーザ数が多いほど学習支援装置100によるスキル推定の精度が高くなると期待されるため、端末装置200の数が多いことが好ましい。The
The number of terminals included in the
図3は、端末装置200の機能構成を示す概略ブロック図である。図3に示すように、端末装置200は、端末側通信部210と、表示部220と、操作入力部230と、端末側記憶部280と、端末側制御部290とを備える。
端末側通信部210は、他の装置と通信を行う。特に、端末側通信部210は、学習支援装置100と通信を行うことにより、問題および解説を受信し、また、解答を送信する。
表示部220は、例えば液晶パネルまたはLED(Light Emitting Diode、発光ダイオード)パネル等の表示画面を有し、各種画像を表示する。特に、表示部220は、学習支援装置100が送信した問題および解説を表示する。FIG. 3 is a schematic block diagram showing a functional configuration of the
The terminal-
The
操作入力部230は、例えばキーボードおよびマウス等の入力デバイスを備え、ユーザ操作を受ける。特に、操作入力部230は、表示部220が問題を表示している状態で、学習者による解答の入力操作を受ける。
端末側記憶部280は、各種情報を記憶する。例えば、端末側記憶部280は、学習支援システム1の端末装置として動作するためのアプリケーションプログラムを記憶する。また、端末側記憶部280は、学習支援装置100が送信した問題や解説を一時的に記憶する。端末側記憶部280は、端末装置200が備える記憶デバイスを用いて構成される。The
The terminal
端末側制御部290は、端末装置200の各部を制御して各種処理を実行する。例えば、端末側制御部290は、端末側通信部210を制御して、端末側通信部210に学習支援装置100のサーバ側通信部110と通信を行わせる。また、端末側制御部290は、表示部220を制御して、表示部220に問題および解説を表示させる。また、端末側制御部290は、操作入力部230が受けたユーザ操作を解答等のデータに変換する。
通信ネットワーク900は、学習支援装置100と端末装置200との通信を仲介する。通信ネットワーク900は、特定の通信ネットワークに限定されない。例えば、通信ネットワーク900はインターネットであってもよいが、これに限定されない。The terminal-
The
次に、スキル推定部191が行うスキルの推定について説明する。
スキル推定部191がスキルを推定する環境として、以下の環境を想定する。
全部でM個の問題が用意されており、N人のユーザが問題を解く。いずれの問題も、その問題を解くのにK個のスキルのうち1つ以上を必要とする。上記のように、ここでいうスキルは、問題を解くための能力であり、特定の種類のものに限定されない。スキルは、問題を解くために必要な知識を含んでもよいし、具体化されない抽象的な能力を含んでもよい。また、ここでいうユーザは、学習支援装置100が提供する問題を解く者である。Next, the skill estimation performed by the skill estimation unit 191 will be described.
The following environment is assumed as the environment in which the skill estimation unit 191 estimates the skill.
A total of M problems are prepared, and N users solve the problems. Each problem requires one or more of the K skills to solve the problem. As mentioned above, the skill here is the ability to solve a problem and is not limited to a specific type. Skills may include the knowledge needed to solve a problem, or they may include abstract abilities that are not embodied. Further, the user referred to here is a person who solves the problem provided by the
サーバ側記憶部180が、ユーザが問題を解いた順番および解答を各ユーザについて記録しておく。スキル推定部191は、この情報に基づいて、各問題を解くのに必要なスキル、および、各ユーザが保持しているスキル(取得済みのスキル)を推定する。
スキル推定部191は、個々のスキルの内容の解析は行わず、問題を解くのに必要なスキルと、ユーザが保持しているスキルとの対応関係を推定する。1つの問題と1人のユーザとを選択した場合に、その問題を解くのに必要なスキルのうちどのスキルをユーザが保持しているかを示すことで、問題選択部192が、次にユーザに提示する問題(次にユーザが解く問題)を選択する手がかりとすることができる。The server-
The skill estimation unit 191 does not analyze the contents of each skill, but estimates the correspondence between the skill required to solve the problem and the skill held by the user. When one problem and one user are selected, the
図4は、スキル推定部191が行う推定の概要を示す説明図である。図4には、問題を解くのに必要なスキルRと、複数のユーザ各々が保持しているスキルZ1〜ZNと、各ユーザが問題を解いた結果(正誤)X1〜XNとが、バイナリ(2値)の行列またはベクトルの形で示されている。FIG. 4 is an explanatory diagram showing an outline of estimation performed by the skill estimation unit 191. In FIG. 4, the skills R required to solve the problem, the skills Z 1 to Z N held by each of the plurality of users, and the results (correct / incorrect) X 1 to X N of each user solving the problem are shown. Is shown in the form of a binary matrix or vector.
図4で、RT(問題スキル行列)における上付きの「T」は、行列またはベクトルの転置を示す。RTの各列は、問題と対応付けられる。RTの各行は、スキルと対応付けられる。RTの要素の値「1」はスキルが必要であることを示し、「0」はスキルが不要であることを示す。
Z1〜ZN(学習者スキル行列)の各々の各列は、ユーザが問題を解いたタイミングと対応付けられる。Z1〜ZNの各々の各行は、スキルと対応付けられる。
X1〜XN(正誤ベクトル)の各々は行ベクトルであり、各列は、問題に対するユーザのタイミングと対応付けられる。In FIG. 4, the superscript "T" in RT (problem skill matrix) indicates the transpose of the matrix or vector. Each column of RT is associated with the problem. Each line of RT is associated with a skill. The value "1" of the element of RT indicates that the skill is required, and "0" indicates that the skill is not required.
Each column of Z 1 to Z N (learner skill matrix) is associated with the timing at which the user solves the problem. Each line of Z 1 to Z N is associated with a skill.
Each of X 1 to X N (correct / wrong vector) is a row vector, and each column is associated with the user's timing for the problem.
これらのうち、各ユーザが問題を解いた結果は、観測可能である。一方、各ユーザが保持しているスキルを直接観測することはできない。また、スキル推定部191が個々のスキルの内容の解析を行わないことから、問題を解くのに必要なスキルも直接観測することはできない。
そこで、スキル推定部191は、各ユーザが問題を解いた結果から、問題を解くのに必要なスキル、および、各ユーザが保持しているスキルを推定する。学習支援装置100は、問題を解くのにどのスキルが必要か、および、各ユーザがどのスキルを保持しているかを推定するが、各スキルがどのような内容のものかの解析は行わない。Of these, the result of each user solving the problem is observable. On the other hand, it is not possible to directly observe the skills possessed by each user. Moreover, since the skill estimation unit 191 does not analyze the contents of each skill, the skill required to solve the problem cannot be directly observed.
Therefore, the skill estimation unit 191 estimates the skill required to solve the problem and the skill held by each user from the result of solving the problem by each user. The
図5は、スキル推定部191がスキルの推定に用いるグラフィカルモデルを示す。図5で丸印は確率変数を示す。矢印は、データの依存関係を示す。矢印の先の変数の値を決定する際、矢印の手前の変数の値を用いる。
図5では、1人のユーザuについてのユーザスキルZu,k(t)および正誤Xu (t)が示されている。モデルは、他のユーザについても同様に、ユーザ毎のユーザスキルおよび正誤を含む。
一方、v、μ1〜μk、w1〜wkは、各ユーザに共通である。
問題スキルRについては各ユーザに共通で用意する。ユーザuがステップtで解いた問題の問題番号をmu (t)で示す。問題番号mu (t)を用いて、ユーザuがステップtで解いた問題の問題スキルをRmu(t)で示す。FIG. 5 shows a graphical model used by the skill estimation unit 191 for skill estimation. In FIG. 5, circles indicate random variables. Arrows indicate data dependencies. When determining the value of the variable at the tip of the arrow, use the value of the variable before the arrow.
In FIG. 5, the user skills Zu, k (t) and correct / incorrect X u (t) for one user u are shown. The model also includes per-user user skills and correctness for other users.
On the other hand, v, μ 1 to μ k , and w 1 to w k are common to each user.
Problem skill R is prepared in common for each user. The problem number of the problem solved by the user u in step t is indicated by mu (t). Using the issue number m u (t), shows the problem skill problems user u solved in step t with R mu (t).
スキルの推定のためのモデルを表記するために、以下に説明する変数または定数を用いる。
M:問題の総数。
なお、問題に1〜Mの問題番号を付して各問題を識別する。問題番号をmで示す。mは、1≦m≦Mの整数である。問題番号mの問題を、問題mと表記する。Use the variables or constants described below to describe the model for skill estimation.
M: Total number of problems.
Each question is identified by assigning
N:ユーザの総数
なお、ユーザに1〜Nのユーザ番号を付して各ユーザを識別する。ユーザ番号をuで示す。uは、1≦u≦Nの整数である。ユーザ番号uのユーザを、ユーザuと表記する。
K:スキルの総数
なお、スキルに1〜Kのスキル番号を付して各スキルを識別する。スキル番号をkで示す。kは、1≦k≦Kの整数である。スキル番号kのスキルを、スキルkと表記する。N: Total number of users In addition, each user is identified by assigning a user number of 1 to N to the user. The user number is indicated by u. u is an integer of 1 ≦ u ≦ N. The user with the user number u is referred to as the user u.
K: Total number of skills In addition, each skill is identified by assigning a skill number of 1 to K to the skill. The skill number is indicated by k. k is an integer of 1 ≦ k ≦ K. The skill with skill number k is referred to as skill k.
mu (t):ユーザuがステップtに解いた問題の問題番号を示す変数
なお、mu (t)は、1≦mu (t)≦Mの整数である。ここでいうステップは、ユーザが問題を解いたタイミングである。各ユーザは、1つのステップに1つの問題を解くと仮定する。ステップtは、ユーザがt番目に問題を解いたタイミングである。ユーザuがステップtに解いた問題とは、ユーザuがt番目に解いた問題である。ユーザが問題を解くタイミングは任意のタイミングでよい。特に、複数のユーザが同時に問題を解く必要はない。また、問題選択部192は、ユーザのスキルに応じて問題を提供するため、通常、問題を解く順番はユーザ毎に異なる。m u (t): user u Note variable indicating the problem number of the problems solved in step t, m u (t) is an integer of 1 ≦ m u (t) ≦ M. The step here is the timing when the user solves the problem. It is assumed that each user solves one problem in one step. Step t is the timing at which the user solves the t-th problem. The problem solved by the user u in step t is the problem solved by the user u in the t-th position. The timing at which the user solves the problem may be arbitrary. In particular, it is not necessary for multiple users to solve the problem at the same time. Further, since the
Xu (t):ユーザuがステップtに問題を解いた解答の正誤を示す確率変数
なお、Xu (t)は、0、1のいずれかの値をとる。「Xu (t)=0」は、解答が不正解であったことを示す。「Xu (t)=1」は、解答が正解であったことを示す。
Xu (1)〜Xu (t)を要素とする行ベクトル(横ベクトル)をXuと表記する。
以下では、正誤Xu (t)、正誤Xuと表記する。X u (t) : Random variable indicating the correctness of the answer that the user u solved the problem in step t. X u (t) takes any value of 0 or 1. “X u (t) = 0” indicates that the answer was incorrect. “X u (t) = 1” indicates that the answer was correct.
A row vector (horizontal vector) having X u (1) to X u (t) as an element is expressed as X u.
In the following, it will be referred to as correct / incorrect X u (t) and correct / incorrect X u .
Zu,k (t):ユーザuがステップtにスキルkを保持しているか否かを示す確率変数
なお、Zu,k (t)は、0、1のいずれかの値をとる。「Zu,k (t)=0」は、そのスキルを保持していないことを示す。「Zu,k (t)=1」は、そのスキルを保持していることを示す。
Zu,1 (t)〜Zu,K (t)を要素とする列ベクトル(縦ベクトル)をZu (t)と表記する。Zu (t)は、式(1)のように示される。Z u, k (t) : Random variable indicating whether or not the user u holds the skill k in step t. Z u, k (t) takes any value of 0 or 1. "Z u, k (t) = 0" indicates that the skill is not retained. “Z u, k (t) = 1” indicates that the skill is retained.
A column vector (vertical vector) having Z u, 1 (t) to Z u, K (t) as elements is expressed as Z u (t). Z u (t) is expressed as in the equation (1).
全てのユーザおよび全てのステップについてのZu (t)をまとめてZと表記する。
以下では、ユーザスキルZ、ユーザスキルZu (t)、ユーザスキルZu,k (t)と表記する。
Rm:問題mを解くために必要なスキルを示す確率変数
なお、Rmは、K次元の行ベクトル(横ベクトル)で示される。Rmの各要素は、0、1のいずれかの値をとる。但し、全ての要素が0である場合を除く。k番目の要素の値が0である場合は、スキルkが不要であることを示す。k番目の要素の値が1である場合は、スキルkが必要であることを示す。 Z u (t) for all users and all steps is collectively referred to as Z.
Hereinafter, they are referred to as user skill Z, user skill Z u (t) , and user skill Z u, k (t) .
R m : Random variable indicating the skill required to solve the problem m Note that R m is represented by a K-dimensional row vector (horizontal vector). Each element of R m takes any value of 0 and 1. However, this does not apply when all the elements are 0. When the value of the k-th element is 0, it indicates that the skill k is unnecessary. When the value of the k-th element is 1, it indicates that skill k is required.
Rm,k:問題mを解くためにスキルkが必要か否かを示す変数
なお、Rm,kは、Rmのk番目の要素を示す。Rm,kを要素とする行列をRと表記する。以下では、問題スキルR、問題スキルRm、問題スキルRm,kと表記する。R m, k : A variable indicating whether or not skill k is required to solve the problem m. R m, k indicates the k-th element of R m. A matrix having R m and k as elements is expressed as R. In the following, it is referred to as problem skill R, problem skill R m , and problem skill R m, k .
図5で、問題スキルRmu(t)、ユーザスキルZu,1 (t)〜Zu,K (t)の各々から正誤Xu (t)へ矢印が出ているように、正誤Xu (t)は、問題スキルRmu(t)およびユーザスキルZu,1 (t)〜Zu,K (t)に依存する。具体的には、問題スキルRmu(t)およびユーザスキルZu (t)の下での正誤Xu (t)の確率がベルヌーイ(Bernoulli)分布に従うものとして、式(2)のように規定する。In Figure 5, a problem skill R mu (t), as a user skill Z u, 1 (t) ~Z u, arrows from each of K (t) to the correctness X u (t) is out, errata X u (T) depends on the problem skill R mu (t) and the user skills Z u, 1 (t) to Z u, K (t) . Specifically, the probability of correctness X u (t) under the problem skill R mu (t) and the user skill Z u (t) follows the Bernoulli distribution, as shown in equation (2). do.
ここで、式(2)における「〜」は所定の分布に従うことを示す。Bernは、ベルヌーイ分布を示す。具体的には、式(2)の右辺は、正誤Xu (t)の値が、確率s(0≦s≦1)で「1」になり、確率1−sで「0」になることを示す。
式(2)のsは、式(3)のように示される。Here, "~" in the equation (2) indicates that it follows a predetermined distribution. Bernoulli distribution is shown by Bernoulli. Specifically, on the right side of the equation (2), the value of correct / incorrect X u (t) becomes "1" with a probability s (0 ≤ s ≤ 1) and "0" with a probability 1-s. Is shown.
The s in the equation (2) is expressed as in the equation (3).
ここで、exp(x)は、eのx乗を示す。eは、ネイピア数を示す。a、bはいずれも定数のパラメータである。aの値、bの値は、いずれも予め定められる。
式(3)は、ロジスティック関数に式(4)を代入して得られる。Here, exp (x) indicates e to the x-th power. e indicates the number of Napiers. Both a and b are constant parameters. Both the value of a and the value of b are predetermined.
Equation (3) is obtained by substituting equation (4) into the logistic function.
ロジスティック関数f(x)は、式(5)のように示される。 The logistic function f (x) is expressed by Eq. (5).
図6は、ロジスティック関数の値を示す。ロジスティック関数f(x)の値は、図6のグラフのように示される。式(3)のパラメータaは、グラフの傾きの調整パラメータである。aの値が大きいほど、傾きが急になる。パラメータbは、グラフの横方向の位置の調整パラメータである。グラフは、bの値だけx軸の正の方向に平行移動される。 FIG. 6 shows the value of the logistic function. The value of the logistic function f (x) is shown as shown in the graph of FIG. The parameter a in the equation (3) is an adjustment parameter for the slope of the graph. The larger the value of a, the steeper the slope. Parameter b is an adjustment parameter for the horizontal position of the graph. The graph is translated by the value of b in the positive direction of the x-axis.
「t≧2」の場合のユーザスキルZu,k (t)の値は、1つ前のステップでユーザが保持していたスキルに依存する。あるステップで保持していたスキルは、次のステップでも保持しているものとする。すなわち、「Zu,k (t−1)=1」の場合、「Zu,k (t)=1」とする。
ステップt−1でスキルkを保持していなかった場合(Zu,k (t−1)=0)、ユーザスキルZu,k (t)の値は、ステップt−1で解いた問題がスキルkを必要とするか否かに依存する。 The value of the user skill Z u, k (t) when “t ≧ 2” depends on the skill held by the user in the previous step. Skills held in one step shall be held in the next step. That is, in the case of "Z u, k (t-1) = 1", it is set as "Z u, k (t) = 1".
If the skill k is not held in step t-1 (Z u, k (t-1) = 0), the value of the user skill Z u, k (t) is the problem solved in step t-1. It depends on whether or not skill k is required.
ステップt−1で解いた問題がスキルkを必要とする場合(Rmu(t−1),k=1)、その問題を解くことでスキルkを身に付ける可能性があると考えられるので、ベルヌーイ分布に従って0または1に値を決定する。この場合、式(6)のように規定する。If the problem solved in step t-1 requires skill k (R mu (t-1), k = 1), it is considered possible to acquire skill k by solving the problem. , Determine the value to 0 or 1 according to the Bernoulli distribution. In this case, it is specified as in the formula (6).
μkは、各スキルの獲得のし易さを示す確率変数であり、式(7)のように示される。mu k is a random variable indicating the acquisition easiness of each skill is as shown in equation (7).
ここでBetaはベータ分布を示す。ξkおよびζkはベータ分布のパラメータであり、いずれもスキルごとに予め設定される。
ステップt−1で解いた問題がスキルkを必要としない場合(Rmu(t−1),k=0)、その問題を解くことではスキルkは身に付かないと考えられるので、「Zu,k (t)=0」とする。
以上より、「t≧2」の場合、Zu,k (t)の値は式(8)のように規定される。Here, Beta shows a beta distribution. ξ k and ζ k are parameters of the beta distribution, both of which are preset for each skill.
If the problem solved in step t-1 does not require skill k (R mu (t-1), k = 0), it is considered that skill k cannot be acquired by solving the problem. u, k (t) = 0 ”.
From the above, when “t ≧ 2”, the values of Z u and k (t) are defined as in the equation (8).
一方、「t=1」の場合、Zu,k (1)の値は、ユーザが予めスキルを保持していたか否かに依存する。この場合を式(9)のように規定する。On the other hand, in the case of "t = 1", the values of Z u and k (1) depend on whether or not the user has possessed the skill in advance. This case is defined as in equation (9).
wkは、ユーザがスキルkを予め保持している可能性の高さを示す確率変数であり、式(10)のように示される。w k is a random variable indicating the high possibility that the user holds the skill k in advance, and is expressed by the equation (10).
γkおよびηkはベータ分布のパラメータであり、いずれもスキルごとに予め設定される。
Rmは、多項分布に従うものとし、式(11)のように規定する。γ k and η k are parameters of the beta distribution, both of which are preset for each skill.
R m shall follow a multinomial distribution and shall be defined as in equation (11).
Multは多項分布を示す。vは多項分布のパラメータであり、式(12)のように示される。 Multi shows a multinomial distribution. v is a parameter of the multinomial distribution and is expressed as in Eq. (12).
Dirはディリクレ(Dirichlet)分布を示す。「α=(α1,・・・,αL)」であり、「L=2K−1」である。2K−1は、K個のスキルについて0、1の全ての組合せの数から、全て0の場合(必要なスキルが無い場合)を除いた数である。α=(α1,・・・,αL)は、いずれもディリクレ分布のパラメータであり、予め設定される。Dir shows a Dirichlet distribution. “Α = (α 1 , ···, α L )” and “L = 2 K -1”. 2 K -1 is the number of all combinations of 0 and 1 for K skills, excluding the case of all 0s (when there is no required skill). α = (α 1 , ..., α L ) are all parameters of the Dirichlet distribution and are preset.
以下では、v、μ1〜μK、w1〜wKをθまたはパラメータθと表記する。
このモデルを用いて、事後確率を最大にする問題スキルR、ユーザスキルZ、パラメータθを求める。このような問題スキルR、ユーザスキルZ、パラメータθを問題スキルRmax、ユーザスキルZmax、パラメータθmaxとすると、これらは式(13)のように示される。In the following, v, μ 1 to μ K , and w 1 to w K are referred to as θ or parameter θ.
Using this model, the problem skill R, the user skill Z, and the parameter θ that maximize the posterior probability are obtained. Assuming that the problem skill R, the user skill Z, and the parameter θ are the problem skill Rmax, the user skill Zmax, and the parameter θmax, these are expressed by the equation (13).
argmaxは、最大値を与える引数値(Argument Of Maximum)を意味する。式(13)の右辺は、事後確率P(R,Z,θ|X)が最大となる問題スキルR、ユーザスキルZおよびパラメータθの値を示す。
ここでは、式(13)をギブスサンプリングにより計算する。式(13)の事後分布からギブスサンプリングを行う場合、P(R|Z,θ,X)、P(Z|R,θ,X)、P(θ|R,Z,X)それぞれについてギブスサンプリングを行う方法が最も単純である。しかし、この方法では、現実的な時間で式(13)の解は得られない。これはP(R,Z|θ,X)において、多くの異なるR’とR’’で、P(Z|R’,θ,X)×P(R’’|Z,θ,X)が非常に小さいため、Rがギブスサンプリングによりほとんど更新されなくなるからである。そこで、RとZのサンプリングをP(R,Z|θ,X)に基づいて行うのではなく、確率が最大となるRが同一である式(14)の分布P’(R)からサンプリングを行う。argmax means an argument value (Argument Of Maximum) that gives a maximum value. The right side of the equation (13) shows the values of the problem skill R, the user skill Z, and the parameter θ that maximize the posterior probability P (R, Z, θ | X).
Here, equation (13) is calculated by Gibbs sampling. When Gibbs sampling is performed from the posterior distribution of Eq. (13), Gibbs sampling is performed for each of P (R | Z, θ, X), P (Z | R, θ, X), and P (θ | R, Z, X). Is the simplest way to do this. However, with this method, the solution of equation (13) cannot be obtained in a realistic time. This is a lot of different R'and R'' at P (R, Z | θ, X), where P (Z | R', θ, X) x P (R''| Z, θ, X) Because it is so small, R is hardly updated by Gibbs sampling. Therefore, instead of sampling R and Z based on P (R, Z | θ, X), sampling is performed from the distribution P'(R) of the equation (14) in which R having the same maximum probability is used. conduct.
ここで、Zpは正規化定数である。
Z’(R)は、式(15)のように示される。Here, Z p is a normalization constant.
Z'(R) is expressed as in equation (15).
すなわち、Z’(R)は、Xとθが与えられた状態でのR、Zの分布において、問題スキルがRの場合に、確率を最大にするユーザスキルZである。
式(14)を用いることで、あるRから別のR’がサンプリングされる確率が、単純なギブスサンプリングのように非常に小さくなることがなくなり、現実的な時間で式(13)の解を求めることができる。
ここで、P’(Rm|X,R\m,θ)を考える。R\mは、RからRm(m行目)を除いた残りである。P’(Rm|X,R\m,θ)について、式(16)の関係が得られる。That is, Z'(R) is the user skill Z that maximizes the probability when the problem skill is R in the distribution of R and Z in the state where X and θ are given.
By using equation (14), the probability that one R is sampled by another R'is not very small as in simple Gibbs sampling, and the solution of equation (13) can be solved in a realistic time. Can be sought.
Here, consider P'(R m | X, R \ m , θ). R \ m is the remainder of R minus R m (line m). For P'(R m | X, R \ m , θ), the relationship of Eq. (16) can be obtained.
式(16)の括弧内「maxZP(Z,X|R,θ)」は、ビタビ(Viterbi)アルゴリズムで効率的に計算できる。
式(16)を用いると、Rmがとり得る全ての場合の各々(スキル数Kの要素を持つ2値ベクトルで、[0,・・・,0]以外)について値が求まる。この値を正規化すると、各場合の確率である多項分布のパラメータが求まる。この多項分布に従ってRmの値を決定することができる。
Rの各行について、上記の確率分布を求め、得られた確率分布に基づいてサンプリングを行い、得られた値をRの当該する行に入れる。
Rのすべての行のサンプリングを行った後、式(16)の括弧内「maxZP(Z,X|R,θ)」を用いてZ’を求める。 The “max Z P (Z, X | R, θ)” in parentheses in equation (16) can be efficiently calculated by the Viterbi algorithm.
Using equation (16), a value can be obtained for each of the cases that R m can take (a binary vector having an element of skill number K, other than [0, ..., 0]). Normalizing this value gives the parameters of the multinomial distribution, which are the probabilities in each case. The value of R m can be determined according to this multinomial distribution.
For each row of R, the above probability distribution is obtained, sampling is performed based on the obtained probability distribution, and the obtained value is put in the relevant row of R.
After sampling all the rows of R, Z'is calculated using "max Z P (Z, X | R, θ)" in parentheses in equation (16).
θについては、式(17)を考える。 For θ, consider equation (17).
式(17)のZには、式(16)のmaxZで得られたユーザスキルZを用いる。
式(17)より、vについて式(18)を得られる。For Z in equation (17), the user skill Z obtained by max Z in equation (16) is used.
From equation (17), equation (18) can be obtained for v.
ここで、nrlは、問題スキルRの行のうちBinary(l)である行の出現数を示す。Binary(l)は、10進数lの2進化を示す。Rの行がとり得る全てのパターンについて、Rでの出現数を数え、得られた出現数に応じた確率分布を設定する。
wについては式(19)を得られる。Here, nr l indicates the number of occurrences of the line is a Binary (l) of the rows in question skill R. Binary (l) shows the binary evolution of the decimal number l. For all patterns that can be taken by the R row, the number of appearances in R is counted, and the probability distribution is set according to the obtained number of appearances.
For w, equation (19) can be obtained.
ここで、nzk1は、ベクトルZ:,k (1)の中での1の出現回数を示す。「:」はワイルドカードを示す。従って、Z:,k (1)は、任意のユーザについてステップ1でのスキルkの有無を示す。nzk0は、ベクトルZ:,k (1)の中での0の出現回数を示す。ステップ1でスキルkを保持していたユーザの人数および保持していなかったユーザの人数を、ユーザが予めスキルkを保持していた確率に反映させる。
μについては式(20)を得られる。Here, nz k1 indicates the number of occurrences of 1 in the vector Z :, k (1). ":" Indicates a wild card. Therefore, Z :, k (1) indicates the presence or absence of skill k in
For μ, equation (20) can be obtained.
ここで、nzk101は、行列Z1〜ZN,Rにおいて、任意のu,tに関し「Rmu,k(t)=1」、「Zu,k (t)=0」、「Zu,k (t+1)=1」の3つ組の出現数を示す。すなわち、nzk101は、スキルkを必要とする問題を解いたときにユーザがスキルkを獲得した回数を示す。Here, nz k101 is defined as “R mu, k (t) = 1”, “Z u, k (t) = 0”, “Z u ” for any u, t in the matrices Z 1 to Z N, R. , K (t + 1) = 1 ”indicates the number of occurrences of the triad. That is, nz k101 indicates the number of times the user has acquired the skill k when solving a problem that requires the skill k.
nzk100は、行列Z1〜ZN,Rにおいて、任意のu,tに関し、「Rmu,k(t)=1」、「Zu,k (t)=0」、「Zu,k (t+1)=0の3つ組の出現数を示す。すなわち、nzk100は、スキルkを必要とする問題を解いたユーザがスキルkを獲得しなかった回数を示す。これらの回数を、スキルkを必要とする問題を解くことによるスキルkの習得のし易さに反映させる。
事後確率については、式(21)に基づいて算出される。nz k100 is defined as “R mu, k (t) = 1”, “Z u, k (t) = 0”, “Z u, k ” for any u, t in the matrices Z 1 to Z N, R. (T + 1) = indicates the number of occurrences of the triad of 0. That is, nz k100 indicates the number of times that the user who solved the problem requiring skill k did not acquire skill k. This is reflected in the ease of acquiring skill k by solving problems that require k.
The posterior probabilities are calculated based on equation (21).
図7は、スキル推定部191が行う処理の手順を示すフローチャートである。
<ステップS101>
スキル推定部191は、モデルパラメータα、∀k(γk,ηk,ξk,ζk)、a、b、Kに初期値を設定する。これらのモデルパラメータに値を設定することで、確率分布が設定される。これらの初期値は、人手(学習支援装置100の管理者)によって予め設定されていてもよい。ステップS101の後、ステップS102へ進む。FIG. 7 is a flowchart showing a procedure of processing performed by the skill estimation unit 191.
<Step S101>
The skill estimation unit 191 sets initial values for the model parameters α, ∀k (γ k , η k , ξ k , ζ k ), a, b, and K. Probability distributions are set by setting values for these model parameters. These initial values may be set in advance manually (administrator of the learning support device 100). After step S101, the process proceeds to step S102.
<ステップS102>
スキル推定部191は、正誤Xの入力を受け付ける。具体的には、スキル推定部191は、解答処理部193が生成した正誤データをサーバ側記憶部180から読み出す。ステップS102の後、処理がステップS103へ進む。
<ステップS103>
スキル推定部191は、問題スキルRおよびパラメータθを確率分布に従ってランダムに設定する。スキル推定部191は、設定したR、θを、それぞれRmax、θmaxにも設定する。ステップS103の後、処理がステップS104へ進む。<Step S102>
The skill estimation unit 191 accepts the input of correct / incorrect X. Specifically, the skill estimation unit 191 reads the correct / incorrect data generated by the
<Step S103>
The skill estimation unit 191 randomly sets the problem skill R and the parameter θ according to the probability distribution. The skill estimation unit 191 also sets the set R and θ to Rmax and θmax, respectively. After step S103, the process proceeds to step S104.
<ステップS104>
スキル推定部191は、ユーザスキルZを確率分布に従ってランダムに設定する。スキル推定部191は、設定したZを、Zmaxにも設定する。ステップS104の後、処理がステップS105へ進む。
<ステップS105>
スキル推定部191は、max_posteriorに初期値−∞を設定する。max_posteriorは、今までに得られた最大の事後確率を示す。ステップS105の後、処理がステップS111へ進む。<Step S104>
The skill estimation unit 191 randomly sets the user skill Z according to the probability distribution. The skill estimation unit 191 also sets the set Z to Zmax. After step S104, the process proceeds to step S105.
<Step S105>
The skill estimation unit 191 sets an initial value −∞ in max_postier. max_postier indicates the maximum posterior probability ever obtained. After step S105, the process proceeds to step S111.
<ステップS111>
スキル推定部191は、ループL11を開始する。ループL11では、予め定められている最大ループ回数に到達するまで処理を繰り返す。ステップS111の後、処理がステップS112へ進む。
<ステップS112>
スキル推定部191は、問題スキルRmをサンプリングし、問題スキルRを更新する。具体的には、スキル推定部191は、問題毎に(すなわち、各mについて)式(16)に基づいて問題スキルRmの分布を決定し、得られた分布に従って問題スキルRmの値を決定する。スキル推定部191は、決定した問題スキルRmの値を問題スキルRに入力する。スキル推定部191は、問題スキルRを更新した後、式(16)に基づいてユーザスキルZを更新する。ステップS112の後、処理がステップS113へ進む。<Step S111>
The skill estimation unit 191 starts the loop L11. In loop L11, the process is repeated until a predetermined maximum number of loops is reached. After step S111, processing proceeds to step S112.
<Step S112>
The skill estimation unit 191 samples the problem skill R m and updates the problem skill R. Specifically, the skill estimation unit 191 determines the distribution of the problem skill Rm for each problem (that is, for each m) based on the equation (16), and determines the value of the problem skill Rm according to the obtained distribution. .. The skill estimation unit 191 inputs the determined value of the problem skill Rm into the problem skill R. After updating the problem skill R, the skill estimation unit 191 updates the user skill Z based on the equation (16). After step S112, the process proceeds to step S113.
<ステップS113>
スキル推定部191は、パラメータθをサンプリングする。具体的には、スキル推定部191は、式(18)〜式(20)に基づいて、v、w1〜wK、μ1〜μkの各値の分布を決定し、得られた分布に従って各値を決定する。スキル推定部191は、得られた値をv、w1〜wK、μ1〜μkそれぞれに入力する。ステップS113の後、処理がステップS114へ進む。<Step S113>
The skill estimation unit 191 samples the parameter θ. Specifically, the skill estimation unit 191 determines the distribution of each value of v, w 1 to w K , and μ 1 to μ k based on the equations (18) to (20), and the obtained distribution. Determine each value according to. The skill estimation unit 191 inputs the obtained values into v, w 1 to w K , and μ 1 to μ k, respectively. After step S113, the process proceeds to step S114.
<ステップS114>
スキル推定部191は、式(21)に基づいて事後確率を算出する。ステップS114の後、処理がステップS115へ進む。
<ステップS115>
スキル推定部191は、得られた事後確率がmax_posteriorより大きいか否かを判定する。大きいと判定した場合、処理がステップS116へ進む。大きくないと判定した場合、処理がステップS117へ進む。<Step S114>
The skill estimation unit 191 calculates the posterior probability based on the equation (21). After step S114, the process proceeds to step S115.
<Step S115>
The skill estimation unit 191 determines whether or not the obtained posterior probability is larger than max_posterior. If it is determined to be large, the process proceeds to step S116. If it is determined that the value is not large, the process proceeds to step S117.
<ステップS116>
スキル推定部191は、max_posterior、Rmax、Zmax、θmaxを更新する。具体的には、スキル推定部191は、ステップS114で算出した(今回の)事後確率をmax_posteriorに入力する。また、スキル推定部191は、ステップS112で得られたRをRmaxに入力し、ステップS112で得られたZをZmaxに入力し、ステップS113で得られたθをθmaxに入力する。ステップS116の後、処理がステップS117へ進む。<Step S116>
The skill estimation unit 191 updates max_postier, Rmax, Zmax, and θmax. Specifically, the skill estimation unit 191 inputs the posterior probability (this time) calculated in step S114 to max_postier. Further, the skill estimation unit 191 inputs R obtained in step S112 to Rmax, Z obtained in step S112 is input to Zmax, and θ obtained in step S113 is input to θmax. After step S116, the process proceeds to step S117.
<ステップS117>
スキル推定部191は、ループL11の終端処理を行う。具体的には、ループL11の繰り返し回数が、最大ループ回数に達したか否かを判定する。スキル推定部191は、ループL11の繰り返し回数が最大ループ回数に達していないと判定した場合は、ステップS112に戻り、ループL11の処理を繰り返す。一方、スキル推定部191は、ループL11の繰り返し回数が最大ループ回数に達したと判定した場合は、ループL11を終了し、ステップS121へ進む。
<ステップS121>
スキル推定部191は、得られたRmax、Zmax、θmaxを処理結果として出力する。ステップS121の後、図7の処理を終了する。<Step S117>
The skill estimation unit 191 performs termination processing of the loop L11. Specifically, it is determined whether or not the number of repetitions of the loop L11 has reached the maximum number of loops. When the skill estimation unit 191 determines that the number of repetitions of loop L11 has not reached the maximum number of loops, the skill estimation unit 191 returns to step S112 and repeats the processing of loop L11. On the other hand, when the skill estimation unit 191 determines that the number of repetitions of the loop L11 has reached the maximum number of loops, the skill estimation unit 191 ends the loop L11 and proceeds to step S121.
<Step S121>
The skill estimation unit 191 outputs the obtained Rmax, Zmax, and θmax as the processing result. After step S121, the process of FIG. 7 ends.
以上のように、解答処理部193は、学習者が問題を解いた解答の正誤を2値のデータ(2つの値をとるデータ)で示す正誤データを取得する。スキル推定部191は、問題を解くために必要なスキル毎に当該スキルを学習者が保持しているか否かを示す2値の確率変数(2つの値をとる確率変数)で表すモデルを用いて、正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定する。これにより、学習支援システム1では、問題スキルRの推定結果をもとに、それぞれのスキルの内容を人間が比較的容易に解釈することができるようになる。
As described above, the
また、スキル推定部191は、学習者が保持しているスキルの履歴を確率変数で表すモデルを用いて解を探索する。ユーザが問題を解くことによってスキルが向上することが見込まれる。スキル推定部191は、スキルの向上を模擬してスキルの推定を行うことができ、この点で、より高精度にスキルの推定を行うことができる。 In addition, the skill estimation unit 191 searches for a solution using a model that represents the history of skills held by the learner with random variables. It is expected that the skill will be improved by the user solving the problem. The skill estimation unit 191 can estimate the skill by simulating the improvement of the skill, and in this respect, the skill can be estimated with higher accuracy.
また、スキル推定部191は、問題を解くために必要なスキルを示す確率変数およびモデルのパラメータを引数として学習者が保持しているスキルを示す確率変数の値を求める関数に基づいて、学習者が保持しているスキルを示す確率変数が解探索空間から除外された解探索を行う。これにより、ある問題スキルRから別の問題スキルR’がサンプリングされる確率が非常に小さくなることを防ぐことができるため、現実的な時間で解の探索が行える。 Further, the skill estimation unit 191 is based on a function that obtains the value of a random variable indicating the skill required for solving the problem and a random variable indicating the skill held by the learner with the parameters of the model as arguments. Performs a solution search in which the random variable indicating the skill held by is excluded from the solution search space. As a result, it is possible to prevent the probability that another problem skill R'is sampled from one problem skill R becomes very small, so that a solution can be searched for in a realistic time.
なお、スキル推定部191が、Zu,kの値が0から1に変わるステップを範囲で持つようにしてもよい。Zu,kの値が0から1に変わるステップの候補が複数存在する場合がある。そこで、Zu,k=[4,6]のように、Zu,kの値が0から1に変わるステップの候補を示すようにしてもよい。The skill estimation unit 191 may have a range of steps in which the values of Zu and k change from 0 to 1. There may be a plurality of step candidates in which the values of Z u and k change from 0 to 1. Therefore, a candidate for a step in which the value of Zu, k changes from 0 to 1 may be indicated, such as Zu, k = [4,6].
また、スキル推定部191が、Kの値を自動推定するようにしてもよい。例えば、正誤データを学習用データとテスト用データとに分けておく。そしてスキル推定部191は、テスト用データを用いていろいろなKの値についてスキルの推定を行い、推定精度が最も良かったKの値を採用する。 Further, the skill estimation unit 191 may automatically estimate the value of K. For example, the correct / incorrect data is divided into training data and test data. Then, the skill estimation unit 191 estimates the skill for various K values using the test data, and adopts the K value having the best estimation accuracy.
具体的には、スキル推定部191は、「K=2,・・・,K_max」までの各Kの値について推定を行い、それぞれについてRmaxおよびθmaxを取得する。K_maxは、Kの上限値として予め定められている整数の定数(K_max≧3)である。そして、スキル推定部191は、テスト用のデータの正誤Xuについて、Xu (t>T)の部分をサンプリングにより予測する。Xuは、正誤Xの部分行列(ベクトル)であり、ユーザuが問題を解いた正誤を示す。Xu (t>T)は、Xuのうちt>Tの部分である。Tは、予め定められた整数の定数(T≧2)である。スキル推定部191は、予測精度が最も良かったKの値を採用する。また、θのサンプリングに代えて、θの期待値を用いるようにしてもよい。Specifically, the skill estimation unit 191 estimates each K value up to "K = 2, ..., K_max" and acquires Rmax and θmax for each. K_max is an integer constant (K_max ≧ 3) that is predetermined as the upper limit value of K. Then, the skill estimation unit 191 predicts the part of X u (t> T) by sampling the correct / incorrect X u of the test data. X u is a submatrix (vector) of correctness X, and indicates the correctness of the user u solving the problem. X u (t> T) is a part of X u where t> T. T is a predetermined integer constant (T ≧ 2). The skill estimation unit 191 adopts the value of K, which has the best prediction accuracy. Further, instead of sampling θ, the expected value of θ may be used.
本発明の実施形態の適用例として、ユーザのスキルに応じた問題を提供してもよい。例えば、問題に対するユーザの解答が不正解であった場合、その問題を解くために必要なスキルをユーザが全て保持しているか否かを判定する。ユーザが保持していないスキルが有れば、そのスキルを必要とする問題を提供する。一方、その問題を解くために必要な問題を全て保持している場合、ケアレスミス、或いは、問題に不慣れ等の原因が考えられるので、同様のスキルの問題をさらに提供する。 As an application example of the embodiment of the present invention, a problem according to the skill of the user may be provided. For example, if the user's answer to the problem is incorrect, it is determined whether or not the user has all the skills necessary to solve the problem. If there is a skill that the user does not have, provide a problem that requires that skill. On the other hand, if all the problems necessary to solve the problem are held, the cause may be careless mistake or unfamiliarity with the problem, so the problem of the same skill is further provided.
また、問題に対するユーザの解答が正解であった場合も、その問題を解くために必要なスキルをユーザが全て保持しているか否かを判定する。ユーザが保持していないスキルが有れば、そのスキルを必要とする問題を提供し、偶然解けたのか、そのスキルを既に習得済みかを判定することができる。一方、その問題を解くために必要なスキルを全て保持している場合、他のスキルを必要とする問題を提供する。 Also, even if the user's answer to the problem is correct, it is determined whether or not the user has all the skills necessary to solve the problem. If there is a skill that the user does not have, it is possible to provide a problem that requires the skill and determine whether it was solved by chance or whether the skill has already been acquired. On the other hand, if you have all the skills needed to solve the problem, you provide a problem that requires other skills.
また、本発明の実施形態の適用例として、問題の体系化の補助を行ってもよい。専門家が有している経験的な知識の学習等では、問題が体系化されていないことが多い。このような場合、本発明の実施形態による問題スキルの推定を用いることで、どの問題とどの問題とに必要なスキルが共通するかを推定することができる。必要なスキルが共通する問題を纏めて問題の体系化を行ってもよい。 In addition, as an application example of the embodiment of the present invention, the systematization of problems may be assisted. Problems are often not systematized in the learning of empirical knowledge possessed by specialists. In such a case, by using the estimation of the problem skill according to the embodiment of the present invention, it is possible to estimate which problem and which problem have the necessary skills in common. Problems that share the same required skills may be grouped together to systematize the problems.
次に、図8および図9を参照して本発明の一つの実施形態の構成について説明する。図8は、本発明の一つの実施形態に係るスキル推定装置の構成の例を示す。図8に示すスキル推定装置10は、正誤データ取得部11と、スキル推定部12とを備える。
かかる構成にて、正誤データ取得部11は、学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得する。スキル推定部12は、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、正誤データに基づく事後確率を最大化する解を探索して、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定する。モデルは、問題を解くために必要なスキル毎に、当該スキルが特定の問題を解くために必要か否かを示す2値の確率変数で表すモデルと、問題を解くために必要なスキル毎に、当該スキルを学習者が保持しているか否かを示す2値の確率変数で表すモデルとを含んでもよい。
これにより、スキル推定装置10では、問題スキルの推定結果をもとに、それぞれのスキルの内容を人間が比較的容易に解釈できるようになる。Next, the configuration of one embodiment of the present invention will be described with reference to FIGS. 8 and 9. FIG. 8 shows an example of the configuration of the skill estimation device according to one embodiment of the present invention. The
With such a configuration, the correct / incorrect
As a result, in the
図9は、本発明の実施形態に係る学習支援装置の構成の例を示す。図9に示す学習支援装置20は、正誤データ取得部21と、スキル推定部22と、問題選択部13とを備える。かかる構成にて、正誤データ取得部21は、学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得する。スキル推定部22は、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定する。問題選択部23は、スキル推定部22の推定結果に基づいて、学習者に提示する問題を選択する。
FIG. 9 shows an example of the configuration of the learning support device according to the embodiment of the present invention. The
これにより、学習支援装置20では、問題スキルの推定結果をもとに、それぞれのスキルの内容を人間が比較的容易に解釈できるようになる。また、学習支援装置20では、ユーザのスキルに応じた問題を提供することができ、この点で適切な問題をユーザに提供できる。
As a result, in the
サーバ側制御部190の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することで各部の処理を行ってもよい。ここでいう「コンピュータシステム」は、OSや周辺機器等のハードウェアを含む。
「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含む。
「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。A program for realizing all or a part of the functions of the server-
The "computer system" includes a homepage providing environment (or display environment) if a WWW system is used.
The "computer-readable recording medium" refers to a storage device such as a flexible disk, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, or a hard disk built in a computer system. The above-mentioned program may be for realizing a part of the above-mentioned functions, and may be further realized by combining the above-mentioned functions with a program already recorded in the computer system.
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiments of the present invention have been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs and the like within a range that does not deviate from the gist of the present invention.
この出願は、2017年10月13日に出願された日本国特願2017−199796を基礎とする優先権を主張し、その開示の全てをここに取り込む。 This application claims priority on the basis of Japanese Patent Application No. 2017-1997, filed on October 13, 2017, and incorporates all of its disclosures herein.
本発明は、スキル推定装置、学習支援装置、スキル推定方法およびプログラムに適用してもよい。 The present invention may be applied to skill estimation devices, learning support devices, skill estimation methods and programs.
1 学習支援システム
10 スキル推定装置
11、21 正誤データ取得部
12、22、191 スキル推定部
20、100 学習支援装置
23、192 問題選択部
110 サーバ側通信部
180 サーバ側記憶部
190 サーバ側制御部
193 解答処理部
200 端末装置
210 端末側通信部
220 表示部
230 操作入力部
280 端末側記憶部
290 端末側制御部
900 通信ネットワーク1
Claims (7)
問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定するスキル推定部と、
を備えるスキル推定装置。 The correct / incorrect data acquisition unit that acquires correct / incorrect data that shows the correctness of the answer that the learner solved the problem with binary data,
Using a model that expresses the skills required to solve the problem and the skills held by the learner with a binary probability variable indicating the presence or absence of the skill for each skill, the posterior probability based on the correct / incorrect data is calculated. A skill estimation unit that estimates the skills required to solve the problem and the skills held by the learner by searching for the solution to be maximized.
Skill estimation device equipped with.
請求項1に記載のスキル推定装置。 The skill estimation unit searches for the solution using a model that represents the history of skills held by the learner with the random variables.
The skill estimation device according to claim 1.
請求項1または請求項2に記載のスキル推定装置。 The skill estimation unit is held by the learner based on a function that obtains the value of a random variable indicating the skill required to solve the problem and a random variable indicating the skill held by the learner with the parameters of the model as arguments. Search for the solution in which the random variable indicating the skill is excluded from the solution search space.
The skill estimation device according to claim 1 or 2.
請求項1から3のいずれか一項に記載のスキル推定装置。 The model is a model represented by a binary random variable indicating whether or not the skill is necessary to solve a specific problem for each skill required to solve the problem, and each skill required to solve the problem. The skill estimation device according to any one of claims 1 to 3, further comprising a model represented by a binary random variable indicating whether or not the skill is held by the learner.
問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定するスキル推定部と、
前記スキル推定部の推定結果に基づいて、学習者に提示する問題を選択する問題選択部と、
を備える学習支援装置。 The correct / incorrect data acquisition unit that acquires correct / incorrect data that shows the correctness of the answer that the learner solved the problem with binary data,
Using a model that expresses the skills required to solve the problem and the skills held by the learner with a binary probability variable indicating the presence or absence of the skill for each skill, the posterior probability based on the correct / incorrect data is calculated. A skill estimation unit that estimates the skills required to solve the problem and the skills held by the learner by searching for the solution to be maximized.
A problem selection unit that selects a problem to be presented to the learner based on the estimation result of the skill estimation unit,
A learning support device equipped with.
前記装置が、問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定することと、
を含むスキル推定方法。 The device acquires correct / incorrect data that indicates the correctness of the answer that the learner solved the problem with binary data.
Using a model in which the skill required for the device to solve the problem and the skill held by the learner are represented by a binary probability variable indicating the presence or absence of the skill for each skill, the correct / incorrect data is obtained. By searching for a solution that maximizes the posterior probability based on, the skills required to solve the problem and the skills possessed by the learner can be estimated.
Skill estimation methods including.
学習者が問題を解いた解答の正誤を2値のデータで示す正誤データを取得することと、
問題を解くために必要なスキル、および、学習者が保持しているスキルを、スキル毎に当該スキルの有無を示す2値の確率変数で表すモデルを用いて、前記正誤データに基づく事後確率を最大化する解を探索することによって、問題を解くために必要なスキル、および、学習者が保持しているスキルを推定することと、
を実行させるためのプログラム。 On the computer
Acquiring correct / incorrect data that shows the correctness of the answer that the learner solved the problem with binary data,
Using a model that expresses the skills required to solve the problem and the skills held by the learner with binary probability variables indicating the presence or absence of the skills for each skill, the posterior probability based on the correctness data is calculated. By searching for the solution to maximize, the skills required to solve the problem and the skills possessed by the learner can be estimated.
A program to execute.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017199796 | 2017-10-13 | ||
| JP2017199796 | 2017-10-13 | ||
| PCT/JP2018/032132 WO2019073712A1 (en) | 2017-10-13 | 2018-08-30 | Skill estimation device, learning support device, skill estimation method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2019073712A1 JPWO2019073712A1 (en) | 2020-07-30 |
| JP6940184B2 true JP6940184B2 (en) | 2021-09-22 |
Family
ID=66101369
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019547940A Active JP6940184B2 (en) | 2017-10-13 | 2018-08-30 | Skill estimation device, learning support device, skill estimation method and program |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP6940184B2 (en) |
| WO (1) | WO2019073712A1 (en) |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5017941B2 (en) * | 2006-06-27 | 2012-09-05 | オムロン株式会社 | Model creation device and identification device |
| JP4883720B2 (en) * | 2008-05-29 | 2012-02-22 | 日本電信電話株式会社 | Teaching material presentation device, teaching material presentation method, teaching material presentation program, and recording medium recording the program |
| JP5664978B2 (en) * | 2011-08-22 | 2015-02-04 | 日立コンシューマエレクトロニクス株式会社 | Learning support system and learning support method |
| JP5946073B2 (en) * | 2014-11-07 | 2016-07-05 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Estimation method, estimation system, computer system, and program |
| JP6640068B2 (en) * | 2016-02-12 | 2020-02-05 | 日本電信電話株式会社 | User interface information providing device, user interface changing device, user interface information providing method, user interface changing method, and program |
-
2018
- 2018-08-30 JP JP2019547940A patent/JP6940184B2/en active Active
- 2018-08-30 WO PCT/JP2018/032132 patent/WO2019073712A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2019073712A1 (en) | 2020-07-30 |
| WO2019073712A1 (en) | 2019-04-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7316453B2 (en) | Object recommendation method and device, computer equipment and medium | |
| US11348031B2 (en) | Modeling mastery in distributed cognitive systems and storing the results in a ledger | |
| KR102015075B1 (en) | Method, apparatus and computer program for operating a machine learning for providing personalized educational contents based on learning efficiency | |
| CN111680216B (en) | A test question recommendation method, system, medium and equipment | |
| CN114098730B (en) | Cognitive ability testing and training method, device, equipment and medium based on cognitive map | |
| CN110704732A (en) | A recommendation method for sequential exercises based on cognitive diagnosis | |
| CN112231373B (en) | Knowledge point data processing method, device, equipment and computer readable medium | |
| CN112119410B (en) | System and method for debugging neural networks using coverage-guided fuzz testing | |
| JP2016109981A (en) | Learning management system and learning management method | |
| CN113205281A (en) | Scene simulation-based personnel ability evaluation method and related equipment | |
| CN112199476B (en) | Automatic decision making for scaffold selection after partially correct answers in a conversational intelligent tutor system | |
| CN108629355A (en) | Method and apparatus for generating workload information | |
| CN112052393A (en) | Learning scheme recommendation method, device, equipment and storage medium | |
| Pujianto et al. | Predicting high school graduates using naive Bayes in state university entrance selections | |
| KR101836206B1 (en) | Method, apparatus and computer program for providing personalized educational contents | |
| CN117373620A (en) | Methods, devices, computer equipment and media for determining cognitive training content | |
| JP6940184B2 (en) | Skill estimation device, learning support device, skill estimation method and program | |
| Cui et al. | Do We Fully Understand Students' Knowledge States? Identifying and Mitigating Answer Bias in Knowledge Tracing | |
| Mueller et al. | Improving users' mental models of intelligent software tools | |
| KR20200021329A (en) | Infant growth observation service system | |
| KR20180127188A (en) | Method, apparatus and computer program for operating a machine learning framework for providing personalized educational contents | |
| CN113827243B (en) | Attention assessment method and system | |
| JP7244056B2 (en) | Determination device, determination method, program, and recording medium for achievement condition of practical skill level | |
| JP2024002007A (en) | Information processing device, information processing system, information processing method, and program | |
| Boschetti et al. | Complexity of a modelling exercise: A discussion of the role of computer simulation in complex system science |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200114 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210105 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210308 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210803 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210826 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6940184 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |