ケータイ用語の基礎知識

第898回:機械学習 とは

 機械学習とは、人間が行う「学習」をコンピューターで行わせる技術のことです。英語では「マシンラーニング(Machine Learning、ML)」とも呼ばれています。いわゆる人工知能のひとつです。

 機械学習が一般化する以前、人工知能を実現する方法としては、辞書やルールを教えておく、あるいは、どんなことが重要であるか「重み」を定義してそこから推論させるといった手法がとられてきました。

 たとえば「エキスパートシステム」などの知識ベースの人工知能が挙げられます。これは「もし……ならば……」という形式でルールがあり、それにあわせて推論するシステムです。これに限らず、かつての人工知能は、なんらかの形で人間が明示的に、ルールや意味のあること、はたまた評価関数などの形で、どうすれば答えに近づくか、あらかじめ教えなくてはなりませんでした。

 しかし、機械学習では、コンピューターへルールを与えなくても自ら判断をすることが可能になりました。

 機械学習では、開発者は「もし……ならば……」といプログラミングはしません。開発者が作るのは、プログラム自体がデータを繰り返し読み取って、アウトプットするうちにその特性を解析し、規則性や法則性など見つけ出す仕組みです。

 人間が何度も同じようなデータを扱っていると、その規則性に気付くことがあるように、機械にもその規則性・法則性・ルールを見つけ出せるから、これは人工知能のひとつである、というわけです。

 プログラムは、入力されたデータの処理を通して、その分類、認識といった方法を学習していきます。そして、この学習した処理を使うことで、新たに入力されるデータに対しても、適切に分類・識別できるようになります。

 ちなみに、2000年代からインターネットメールの迷惑メールフィルターなどに、ベイジアンネットワークが利用されはじめました。そうしたフィルターは、ベイズ推論を使った機械学習の成果だと言えます。

 また、2010年代に入ると、ディープラーニングという手法が注目されるようになりました。

 これは、人間の神経を参考にしたニューラルネットワークを何層も重ねることにより、データの分析と学習を強化した人工知能です。今一番ホットな機械学習の手法です。

 大まかにいえば、人工知能の一分野として、機械学習があり、その実装方法としてディープラーニングがあると考えるといいでしょう。

スマートフォンと機械学習

 現在では機械学習の成果が、多くのスマートフォンの機能に生かされています。

 たとえば、Googleのスマートフォン「Pixel 3」では、カメラのポートレートモード、つまり被写体の人物にはピントが合い背景はボケているような写真を作成するのに使われています。

 ポートレートモードではスマートフォン上の機械学習エンジン「Tensorflow Mobile」内のニューラルネットワークで推論を実行します。そして、写真の中で、どれが人物なのかを見分けています。ちなみに、このニューラルネットワークは、同社の機械学習エンジンTensorflowで構築し、およそ100万人の人物が写った写真で訓練したものです。

 ちなみに、スマートフォン上のTensorflow Mobileは端末上の写真処理においては、学習は行いません。端末上では、過去の学習成果を利用するのみです。

 またモバイルアプリ上で機械学習を利用することは一般の開発者にもできます。そのための開発キットがGoogleが提供している「ML Kit」です。このKitを利用することでアプリにテキスト認識、顔認識、ランドマーク検出、バーコードスキャンなどができます。ML KitはAndroid用の他にiOS用もあり、iPhoneでも利用が可能です。

大和 哲

1968年生まれ東京都出身。88年8月、Oh!X(日本ソフトバンク)にて「我ら電脳遊戯民」を執筆。以来、パソコン誌にて初歩のプログラミング、HTML、CGI、インターネットプロトコルなどの解説記事、インターネット関連のQ&A、ゲーム分析記事などを書く。兼業テクニカルライター。ホームページはこちら
(イラスト : 高橋哲史)