Classi開発者ブログ

教育プラットフォーム「Classi」を開発・運営するClassi株式会社の開発者ブログです。

学習コンテンツ制作効率化の取り組み [Side DS]

この記事はClassi developers Advent Calendar 2022の19日目の記事です。

みなさん、こんにちは。 データAI部でデータサイエンティストをしています廣田と申します。今回は、データサイエンティストが学習コンテンツ制作チームとタッグを組んで進めている、学習コンテンツ制作効率化の取り組みについて紹介したいと思います。

弊社の学習コンテンツは大まかに以下の2つに分類されますが、本記事では主に後者(テスト/問題)の意味で「学習コンテンツ」という表現を使います:

  • 学習動画
  • テスト/問題

現在弊社では、2023年度リリース予定の学習トレーニング(詳細は紹介動画をご覧ください) に向けて、学習コンテンツの内容の大幅な見直しを進めています。そこで、学習コンテンツ制作チームがスムーズに質の高い学習コンテンツを制作していけるように、データサイエンティストも各々の知見を活かして様々な取り組みを進めています。

本記事では下記の2点についてお話したいと思います:

  • 学習コンテンツ制作の課題
  • 学習コンテンツの質・量の担保に向けた取り組み

学習コンテンツ制作の課題

学習コンテンツが生徒に提供されるまでの大まかなフローは以下の通りです:

  • Classi
    • 企画
    • 制作
    • ユーザーへ公開
  • 先生
    • 配信

弊社の各ステップにおいて、社内では様々なメンバーが知恵を出し合い、良い学習コンテンツを提供していけるよう試行錯誤しています。中でも、実際の学習体験に直結する制作については特に慎重に検討がなされています。

デザイナー・エンジニアの検討課題の一例としては「テスト/問題の取り組みやすさを上げるにはどうすべきか」といったものがあり、

  • 問題・解説を読みやすくするための飾り文字はどの範囲まで許容するか
  • 図はどう配置しておくと取り組みやすいか

などといった点について、コンテンツ制作チームと議論を重ねています。

一方データサイエンティストは多大な作問コストと品質の担保という課題に向き合っています。全教科・学年および様々な難易度に対応できるように学習コンテンツを整備するとなると、問題であれば数万問程度は必要になり、質・量の担保は大きな課題となります。そこで、学習コンテンツの量と質を両立させるための取り組みについて紹介していきたいと思います。

学習コンテンツの質・量の担保に向けた取り組み

学習コンテンツの制作は大まかに初期案の検討・推敲の2ステップに分かれます。さらに制作対象(問題 / テスト)によってアプローチが変わってくるため、それぞれで分けて説明したいと思います。

現在進んでいる取り組みを分類すると、以下の表のようになります。「推敲」の部分の取り組みについては、現状は単なるアイデアの状態で、まだ具体的に踏み込めていません。しかし、将来的には何かしら寄与していきたいと考えています。

ステップ \ 制作対象 問題 テスト
初期案の検討
推敲 - -

①問題の初期案検討のサポート

問題の質・量を確保するには「高い品質の問題を自動生成するシステム」があれば完璧なわけですが、実現のハードルが非常に高いです。そこで現在「どのレベルまでなら十分な品質の問題の自動生成が可能か」といった点を探っています。

問題の質・量を確保しようと思った場合、素直に考えると以下の2ステップを踏むといった発想になると思います:

  • ステップ1:まずは品質の高い問題を制作
  • ステップ2:その問題を参考にしながら、同等の品質の問題を制作

ステップ1(品質の高い問題制作)については、特に教科指導・教材作成の知見が重要で、なかなか一般的なデータサイエンティストが入り込みにくい部分です。一方ステップ2(既存と同等の品質の問題制作)に関しては、データサイエンティストの知見が活かせる領域が広がっていると感じています。

非常に単純な例として「計算問題の自動生成」について紹介します。いわゆる「データサイエンスっぽさ」はありませんが、あくまで取り組みのほんの一部ということで、ご容赦ください。

下に2次関数の問題が2つありますが、こちらはプログラムで自動生成した問題となっています。中身を見ると、この2問が問題・解答・解説の数字を入れ替えただけの問題であることはすぐにわかると思います。こういった「数字を入れ替えただけ」の問題であれば、プログラムを組めば容易に大量に生成することができます。

自動生成問題の例

ちなみにこの問題を生成したプログラムでは、計算のつらさ(問題の品質の1要素)を制御するために以下のような制約を入れています:

  • 頂点の座標と軸の方程式の数値で現れるのが整数のみ
  • 元の2次関数の各係数の絶対値が大きくなりすぎない

このように、問題の品質につながる要素を制御しつつ、問題を自動生成していくことができれば、少なくとも「量」で困ることは防げます。

以前弊社では英単語の問題を自動作問する実証研究も行っていました。現在は、上で示した計算問題の例のように、英単語の問題に限らず少し広い範囲を視野に入れて自動作問の検討を進めています。

②テストの初期案検討のサポート

テスト作成の基本アイデアは「用意した大量の問題の中から問題を選んでテストを作る」というものです(足りない問題があれば追加で作成)。問題を選ぶ際には、様々な制約(出題範囲、問題数、解答時間、難易度など)を考慮する必要があります。

全教科全学年のあらゆる難易度帯に対応するには3〜4桁程度の数のテストが求められるため、それらのテストの初期案を全て人手で作るとなると、非常にコストがかかることは容易に想像できると思います。

そこで現在、テストの初期案の自動生成によって、初期案生成のコスト削減および初期案の品質の均一化を目指しています。ある程度の品質の初期案を短期間で作成できれば、その分スケジュール進行も安定しますし、推敲に余裕を持って取り組めるため、テストの品質向上も期待できます。

具体的な取り組み内容は以下の通りです:

  • テストの要件を整理
  • 組合せ最適化手法を用いてテスト初期案の自動生成
  • 推敲時に検討がしやすいフォーマットで初期案の出力

得られた初期案については、その後コンテンツ制作チーム側で推敲を行い、実際のサービスに搭載されていく予定です。

ちなみに「テストの要件整理」が一番苦労している点です。互いに干渉し合う要件(例:出題範囲を網羅したい v.s. 問題数は○○問に抑えたい)が色々とある中、どの要件を優先していくかについて日々コンテンツ制作チームと共に検討しています。

自動生成の仕組みについては、日本オペレーションズ・リサーチ学会 2022年春季研究発表会において発表させていただいた内容をご参照ください。こちらで検討していた整数計画問題と現状扱っている整数計画問題はだいぶ異なったものになっていますが、雰囲気は感じていただけるかと思います。

さいごに

今回は、学習コンテンツ制作にデータサイエンティストが首を突っ込んでみた話をお伝えしてきました。色々課題は見えてきたものの、一朝一夕で解決するようなものはほぼなく、学習コンテンツ制作の難しさを日々痛感しています。来年にはいくつか課題を解決まで持っていけると良いなぁと願いつつ、本記事の締めとさせていただきます。

明日は@willsmileさんの記事です。お楽しみに!

© 2020 Classi Corp.