新刊ピックアップ

試験点数の合否判定から学ぶ はじめての機械学習

この記事を読むのに必要な時間:およそ 2 分

はじめに

最近の人工知能(AI)ブームから,人工知能の実装を支える基盤技術である機械学習にも注目が集まってきています。みなさんは機械学習についてどのようなイメージを持っていますか? 世間一般では,機械学習はコンピュータに人間同様の学習能力を獲得させる技術であると,ざっくりと捉えられていると思います。

これまで物事の良し悪しなどの判断は人間が行う仕事でしたが,データが豊富に揃う環境,いわゆるビッグデータの環境が整うことにより,大量なデータを背景にした判断法を機械に学習させることで,このような判断自体を機械に任せようという動きが出てきています。例えば,写真に写っているものが猫であるか否かの自動判定,または,検査データをもとにした病気の自動診断が挙げられます。

機械に判断を任せるという試みが検討されている背景には,判断の責任を機械に押し付けるというよりも,むしろ機械ならば客観的で合理的な判断を下してくれるのではないかという期待があります。本稿では簡単な例を用いて,データに基づく機械による判断の枠組みについて確認していきます。

データからの判断

ある患者が病気かそうでないか,写真に写っているものが猫であるか否か,のように,二者択一の選択肢を選ぶような判断を2値分類と呼びます。

今回は30名の学生の英語と数学の試験点数のデータを例に,機械学習における分類,つまり,データによる判断がどのように行われているかを確認します。図1は,横軸に英語,縦軸に数学の得点をとり,各学生の得点をプロットしたものです。

図1 試験結果

図1 試験結果

いま,この試験の合計得点が120点以上のときに合格とする場合,合否判定の式は英語+数学≥120と表せます。同じデータを使って図示したものが図2です。合格者は○,不合格者は×でプロットしており,赤線よりも上の部分にプロットされた者は合格,赤線よりも下にプロットされた者が不合格になります。

図2 合格基準が120点

図2 合格基準が120点

このように,合格者と不合格者を直線で完全に分類できることを「線形分離可能」と呼びます。

もう一つ,これまでと同じデータを使って新しい合格基準を適用した例,図3を見てみましょう。

図3 新しい合格基準

図3 新しい合格基準

図2では合格していたにもかかわらず図3では不合格になった学生が2名,不合格から合格に変わった学生が1名います。どうやら,英語の得点を重視し,数学の点数が良くても英語の点数が悪い学生は不合格,数学が悪くても英語ができていれば合格にしたようです。

実のところ図3では,合格基準を2×英語+数学≥180にしています。今回も合格基準を直線で表現できているため,⁠線形分離可能」な例になっています。

まとめると,図2と図3における合格と不合格を分離する境界線はそれぞれ次の式で書けます。

  • 図2の場合:英語+数学-120=0
  • 図3の場合:2×英語+数学-180=0

ここで,横軸に英語,縦軸に数学を割り当てていたので,それぞれをxyで表し直すと,境界線を示す直線の式はそれぞれ次の式で表現できます。

  • 図2の場合:x+y-120=0
  • 図3の場合:2x+y-180=0

この境界線よりも上に位置する学生は合格,下に位置する学生が不合格と判断しています。

いわゆる機械学習では,データと分類結果のみが与えられた状態で,両者をうまく分類できるような境界線を見つけます。つまり,データから合否判定基準を推測する,または,データと合否結果をもとにして,合否判定基準を学習することを目指します。今回のようにデータが2つの場合には,各学生の得点をxy平面上にプロットし,境界を示す直線の式ax+by+c=0の3つの係数abcをデータから求めることになります。

著者プロフィール

青木義充(あおきよしみつ)

一橋大学非常勤講師。線形代数,微分・積分,確率など統計学に必要となる基本的な数学のほか,時系列解析,ベイズ統計を用いた金融データ分析に関する授業を担当。