重要な場所に介入するための深層学習

学習ナッジを最適化するためのフィードバックループの構築方法

(MarianneSorba)(2018年8月14日)

学習は簡単ではありません。少し簡単にするために、(コース内ヘルプ)を開始し、学習者がコースの資料を移動するときに行動的および教育学的なナッジを提供しました。この投稿では、これらのナッジをパーソナライズおよび最適化するための機械学習フィードバックループを実装する際のプロセスと学習について説明します。

コース内ヘルプの最初の実装では、特定の時点のすべての学習者がコース(たとえば、コースAの講義9を完了する、またはコースBのクイズ3に失敗する)は、同じメッセージを受け取りました。これにより、平均役立つ方法で介入し、コースの進行と保持に針を動かすことができました。

しかし、学習者とメッセージ間での影響の不均一性も観察されました。これに対応して、特定のコースの特定の時点ですべての学習者がメッセージを受信した世界では、あまりにも多くのメッセージを展開することに注意しました。

次の実装では、制御するスマートフィードバックループを作成しましたどの学習者が各メッセージを受信したか。このモデルは、次のようなさまざまな機能を入力として受け取るニューラルネットワークです。

  • さまざまなメッセージに対する学習者の過去のクリック率
  • 彼女の人口統計(例:性別、年齢、国、雇用レベル、教育レベル)
  • プラットフォーム上の行動データ(例:登録料が支払われるかどうか、ブラウザの言語、完了したコースの数)
  • コースレベルの特性(ドメイン、難易度、評価など)

これらの機能を使用して、モデルは、特定の学習者が特定のタイプのポップアップメッセージを見つける可能性を予測します。彼女の学習の特定のポイント。メッセージが十分にプラスの影響を与えると予測した場合、メッセージがトリガーされます。それ以外の場合は、メッセージを保留します。モデルの重みとその予測は、データサイエンスチームが眠っている間、毎晩更新されます。これは、複雑で長時間実行されるネストされたA / Bテストのベースラインから大幅に改善され、チームは観察された結果に基づいて介入を手動で調整します。フィードバックループシステムも当然拡張され、同じ時点で同じ学習者に送信できるメッセージの複数のバージョンから選択できるようになり、学習者にとって最も肯定的な結果が得られると予測されるバージョンのみがトリガーされます。

現在、2つのレベルのフィルタリングがあります。十分に役立つために保持するメッセージを決定するコースアイテム状態レベルのフィルタリングと、どのメッセージがどのメッセージに送信されるかをパーソナライズするためのユーザーコースアイテム状態レベルのフィルタリングです。

簡単に言うと、すべてのコースのすべてのアイテム状態で可能なナッジごとに、コース-アイテム-状態レベルモデルは、学習者がメッセージを見つける平均確率を予測します。メッセージとコースレベルのデータとの過去のやり取りに基づいて役立つ。直感的には、メッセージが十分に役に立たないとモデルが予測した場合、そのトリガーポイントでそのメッセージを完全に保留します(インプレッション数が十分に多い場合)。このトリガーレベルのフィルタリングは、役に立たないメッセージ、または特定のクラスやトリガーポイントに関係のないメッセージを自動的に検出して除外するため、メッセージインベントリを拡張するときに特に役立ちます。

コースアイテム-状態レベルモデルは、user-course-item-stateレベルでフィルタリングする同様のフィードバックループの下に階層化されます。簡単な例を見てみましょう。学習の旅の特定の時点で、特定のメッセージをアランに送信するかどうかを知りたいのです。説明のために、学習者から自己申告の有用性を直接収集しているメッセージを検討してください。現在の実装では、3つの可能性があります。

  1. メッセージを受信するために何があってもランダムにアランを選択することができます(今日は確率10%)。これにより、モデルが毎晩学習を続け、改善するのに十分な偏りのないデータが確保されます。
  2. メッセージを受信する可能性のあるアランをランダムに選択できます(今日は確率90%)。しかしアランは新しい学習者であり、私たちのメッセージとほとんど対話していません。信頼できる予測を行うのに十分なデータがないため、データを収集するためにメッセージを送信します。
  3. メッセージを受信する可能性のあるアランをランダムに(同じ確率で90%)選択できます。 およびは、モデルが信頼できる予測を行うのに十分なALICEメッセージと相互作用しました。次に、アランの学習者プロファイルからのデータと、コース内ヘルプメッセージとの以前のやり取りに基づいて、モデルは次の3つの確率を出力します。a)アランが「はい、これは役に立ちました」をクリックする確率。 b)アランが「いいえ、これは役に立ちませんでした」をクリックする確率。 c)アランがメッセージと対話しない確率。

a)がb)とc)を十分に超えている場合にのみ、メッセージを送信します。現在、フィードバックループはメッセージの約30%を抑制し、役立つレポートと役に立たないレポートの比率を43%増加させます。

次は何ですか?

まず、最適化関数を繰り返します。上記の例では、行動を促すフレーズを積極的に取り入れるために最適化することを検討しています(メッセージの報告が役に立ったか、推奨事項をクリックしてください)。ただし、一部のナッジでは、最適化関数をさらに下流に配置することができます。たとえば、学習者に重要な資料のレビューを依頼した場合、提供されたリンクをクリックしても、そのレビュー資料が実際に学習成果に役立ったかどうかについての十分な情報は得られません。彼女が私たちの推奨事項に従ったかどうかについてのみです。これらのタイプの介入については、最適化機能を拡張して、完了したアイテムなどのダウンストリームの学習成果を組み込みます。

次に、このフェイルセーフが組み込まれているため、新しい種類の介入をブレインストーミングして開始します。モデルは、どこで誰のために実行し続けるかを自動的に選択するため、学習者を引き付ける新しい方法を模索することができ、役に立たないものは効率的に抑制されると確信しています。

応募に関心があるデータサイエンスから教育へ? Courseraは採用中です

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です