AIという技術を文系の方でも理解していただけるよう、厳密さは犠牲に、直感的なわかりやすさ重視で“怪説”することに挑むこの連載。第1回の「AIとチキンカレー」に続いて今回取り上げるテーマは、AIを開発する際に用いられる技術「機械学習」だ。

(写真/Shutterstock)
(写真/Shutterstock)

「機械学習」とは何だ?

 サポートベクターマシン(SVM)、決定木、協調フィルタリング、テキストマイニング、ニューラルネットワーク、ディープラーニング……。AI(人工知能)を開発するための技術には様々あるが、これらを包含するのが「機械学習」と呼ばれる技術分野だ。しかし、ここでいう「機械」とは何か、また「機械が学習する」とは、いったいどういうことなのだろうか。

 機械学習について、初心者向けの解説本を開いてみると次のような記載がある。

機械(コンピューター)にデータを与えることで、自律的にルールやパターンを見つけさせ、それをもとに予測させる技術。

 ここでいうコンピューターとは、パソコンのような製品自体ではなく、それを動作させるプログラム(指示書)と捉えるのが正しそうだが、文系にとっての難関はそれ以降だ。「自律的にルールやパターンを見つけさせる」ことが「学習」を意味し、「それをもとに予測させる」ことが機械学習の目指すところとして読み取れなくもないが、この一文ではさっぱりイメージが湧かない。直感的に考えてみる必要がありそうだ。

ざっくりとしたAI技術と機械学習の関係(これ以外にも数えきれないほど、技術・手法がある)
ざっくりとしたAI技術と機械学習の関係(これ以外にも数えきれないほど、技術・手法がある)

ジャズ演奏を構成する、練習とセッション

 理解をしやすくするため、上の解説文を2つに分けてみよう。1つは「①自律的にルールやパターンを見つけさせる」、もう1つは「②それをもとに予測させる」だ。これらは機械学習の分野において、それぞれ前者は「学習」、後者は「推論」と呼ばれる。実はこの学習と推論の2つのステップは、人が何かを練習して発表するというステップに非常に似ている。ここではジャズ演奏に例えて怪説してみよう。

 ジャズ演奏の醍醐味は、なんといってもセッションだ。曲に合わせてそれぞれのプレーヤーがアドリブ(即興演奏)を順に続けていくことがジャズの面白さであり、難しさでもある。楽譜通りに正確に弾くことを目指すクラシック演奏とは異なるところだ。

 ジャズセッションをするためには、大きく2つのステップがある。まずは曲を覚えるステップだ。

 ジャズセッションで使われる曲には「コード進行」と呼ばれる音の組み合わせを表現したものがある。スティービー・ワンダーの『Isn’t She Lovely』なら、C#m7 → F#9 → A/B → E(一例)といったコード進行だ。演奏中にコードに基づいた音を弾けば、協和した“気持ちのいい音”になる。

 楽譜を見て曲の構成やコード進行を把握し、どの音を奏でると気持ちのいい演奏になるかというルールを覚え、自分なりの演奏のパターンを体にたたき込むために、何度も曲に合わせて練習を繰り返す。

 自分なりの弾き方のパターンを体得したら、いよいよ2つ目のステップ、セッションだ。一緒に演奏するピアニスト、ギタリスト、ベーシストらが集まって、それぞれが覚えたパターンを基にアドリブを繰り広げる。基本的にセッションで演奏される曲は、メンバーの「次はこの曲をやろう」の一声で決まるため、じっくり楽譜を見直している時間はない。練習の時点でできるだけ多くの曲とパターンを覚え、「この曲はこういうコード進行だったはず」「次の小節ではこの音を弾けばいいだろう」と、こうした予測に基づいてセッションの完成度が決まっていく。

 ジャズ演奏での練習とセッション、この2つのステップを形式的に図示してみると次のようになる。

有料会員になると全記事をお読みいただけるのはもちろん
  • ①2000以上の先進事例を探せるデータベース
  • ②未来の出来事を把握し消費を予測「未来消費カレンダー」
  • ③日経トレンディ、日経デザイン最新号もデジタルで読める
  • ④スキルアップに役立つ最新動画セミナー
ほか、使えるサービスが盛りだくさんです。<有料会員の詳細はこちら>