こんにちは
前回、AI家庭教師のプロセスとその実装について深堀りしました。今回は、その続きとして、アンケートの設計やコースマップの構築、そしてカリキュラムの自動生成方法についてフォーカスします。
1. アンケート: 人の役割をAIに
人の家庭教師が学生の学習の状況や目標を知るための面接と同様、AIも具体的な質問を通じて情報を収集します。ただ、アンケートが長すぎると受講者のストレスになる可能性が。そこで、マイプロフィールのように、いつでも情報を更新できる仕組みを考えると良さそうです。
アンケートの例として、Pythonによるデータ分析学習を取り上げて、どれくらいのレベルのアンケートが必要かを考えてみました。
学習目的を明確にするアンケート例:
質問:反復的な業務タスクの効率化技術を学びたいですか?
- はい/いいえ
- 「はい」の場合以下から最も当てはまる項目を選択してください。
1 日常の事務作業の効率化
例:EXCELデータの取り扱いや集計作業の自動化
電子メールの自動ソートやフィルタリング
2 データ関連の作業の効率化
例:データのクリーニングや前処理の自動化
大量のデータの一括取り込みやエクスポート
定期的なデータの更新
3 コミュニケーションの効率化
例:顧客や取引先とのコミュニケーションの追跡や記録
自動的な会議のスケジューリングやリマインダーの設定
ドキュメントや資料の共有とバージョン管理
4 報告や分析作業の効率化
例:定期的なレポート作成の自動化
ビジネス指標のダッシュボードの作成
データの可視化や分析の自動化
5 技術的な作業の効率化
例:コードのテストやデバッグの自動化
システムの監視や通知の自動化
6 その他
この中に該当しない独自の業務効率化のニーズがある
次に、上記のPythonによるデータ分析の例でいうと、例えば以下のような現状のスキルレベルの確認目的の質問は必須です。
現状のスキルレベルを知るアンケート例:
質問:Pythonに関する現状の知識に関して該当する項目を選択してください。
1 Pythonの文法や基本的な関数についての知識がほとんどない
例:Pythonの学習は初めて、または過去に学習した経験はあるが現在は使用していないため初学者と同様のレベル
2 Pythonの文法や基本的な関数についての多少の知識はある
例:変数の宣言や簡単な計算程度の知識はある
3 基本的なプログラムの作成ができる
例:条件分岐やループを使って簡単なスクリプトを書くことができる。ただし、複雑な処理や外部ライブラリの使用は不慣れ。
4 複数のライブラリ(例:pandas, numpy,matplotlib)を使用してデータ解析ができる
例:CSVやExcelのデータを読み込み、集計やフィルタリングを行ったり、基本的なデータの可視化ができる。
5 Webアプリケーションの開発や機械学習モデルの実装経験がある
例:FlaskやDjangoを使ったWebアプリの開発や、scikit-learnを利用して簡単なモデルを学習させた経験がある。
6 高度なライブラリを利用したプロジェクトの開発経験が豊富
例:TensorFlowやPyTorchを使った深層学習の実装、高度なデータ分析や時系列解析の知識を活用した経験がある。
このように、アンケートは学びたい内容や現状のスキルレベルを把握することが重要です。しかし、主観的な評価だけでは足りないため、小テストとの組み合わせも必要となります。
2. コースマップ:教材の体系化
コースマップは、教材のID、名前、内容、レベル、所要時間など、教材の情報を整理したものです。
例:
3. マッチングリスト:
アンケート回答 学習目的 現状の習得レベル 対応する教材ID
日常業務の効率化 Pythonの文法や基本的な関数についての多少の知識はある 001,005,010...
:
パーソナルカリキュラムの自動生成アルゴリズム:
- 収集: アンケート回答を収集する。
- マッチング: アンケートの回答に基づき、マッチングリストから対応する教材IDを取得する。
- 教材情報の取得: 教材IDを用いて、コースマップから教材の詳細情報を取得する。
- カリキュラムの生成: 取得した教材情報を整理し、学習の順序や所要時間を含むカリキュラムを自動生成する。
このアプローチは、予め設定されたルールに基づくアルゴリズムで、機械学習のような予測モデルとは異なります。ただし、このフォーマットとアルゴリズムを適切に組み合わせることで、効果的なカリキュラムのパーソナライズが実現できると考えています。
次回は更に進んで、最適な教材の推奨・表示をサポートするためのデータ要件とアルゴリズムの詳細について探求していきます。