機械学習って何?

機械学習の概要

人工知能の目標のひとつは、コンピュータ上で人間の知能を実現させることです。
まだまだ実現には遠いですが、その研究の中で、コンピュータ自身に学ばせることでいくつかの基本的なことがうまくできることがわかりました。
これが機械学習です。
現在において、機械学習は金融工学、画像処理、自動運転、生物学など様々な分野に影響を与え始めています。

機械学習では、センサやデータベースなどに由来するサンプルデータを入力して解析を行い、そのデータから有用な規則、ルール、知識表現、判断基準などを抽出し、アルゴリズムを発展させる。

そのアルゴリズムは、まずそのデータ(訓練例と呼ぶ)を生成した潜在的機構の特徴(確率分布)を捉え、複雑な関係を識別・定量化する。次に学習・識別したパターンを用いて新たなデータについて予測・決定を行う。データは、観測された変数群のとる関係の具体例と見ることができる。

1つの根本的な課題は、全ての取りうるデータを訓練例(学習データ)に含めるのは(多くの実用的な関心事の場合)データ数が大きすぎて現実的でないという点である。したがってアルゴリズムは限られた訓練例を一般化して、新たなデータ入力から有用な出力を生成しなければならない。

機械学習は検索エンジン、医療診断、スパムメールの検出、金融市場の予測、DNA配列の分類、音声認識や光学文字認識などのパターン認識、ゲーム戦略、ロボット、など幅広い分野で用いられている。応用分野の特性に応じた様々な学習手法が提案されている。

【機械学習】AIとは? | 機械学習とAIの関係/機械学習入門

機械学習における学習方法

教師あり学習(supervised learning)

事前にデータと特徴を紐付けておき、未知のデータがどこに分類されるか予測する手法です。
これは「過去のデータから未来に発生する可能性がある事象を予測する」のに使用します。
※例えば、「スパムメール判別」とか「明日の天気予報」など

もう少しプログラム的に言えば、教師あり学習とは「入力と出力の関係」を学習するものです。
事前データを元に入出力データの間の関数を作成しますが、
いかに目標とする出力データに近づく関数をつくれるかがポイントです。
そして、未知のデータに関してもその関数を適用して予測します。
そのため、一般的に事前データが多ければ多いほど予測精度があがります。

 

教師なし学習(Unsupervised Learning)

この学習方法は、出力データが学習時に与えられない学習方法で、
正解となる出力を与えず、データから規則性を発見していくのが特徴の手法です。
(教師あり学習は、「出力すべきもの」も入力で与える必要がある)
例えば、ECサイトなどでのレコメンド機能やオーダー履歴によるユーザーのグルーピングなどは
教師なし学習によって行います(教師あり学習をつかうこともある)。

強化学習(Reinforcement Learning)

少し前にGoogleのAlphaGoという囲碁のAIがプロ棋士に勝ったというニュースがありましたが、
これは強化学習を使用して鍛えたAIを使用したそうです。

強化学習も教師なし学習と同じく明確な答えは与えません。
そのかわり、「行動」と「報酬」を与えます。
この結果、「どのような行動をとれば累積報酬が最大となるか」
を学習していきます。

例えば、ゲーム(環境)の自動操作であればプレイキャラクター(エージェント)が
ミスせずにゴールまで近づいた距離を報酬として与えます。
このようにすると、「どうすればミスなくゴールへ近づけるか行動をいろいろ試してみる」
というように操作プログラムを自分で変更していきます。
結果的にゴールへ近づける(最終的にゴールできる)ようになり、
具体的なゴール方法は教えていないにもかかわらず、目標を達成することが可能になります。
後述するDeep Learning(ニューラルネットワーク)と強化学習を組み合わせ、
「深層強化学習」とよぶこともあります。

なお、強化学習はゲームの自動操作やロボットの行動制御、囲碁や将棋のAIなどで使用されています。
アルゴリズムは「Q学習(Q-Learning)」や「モンテカルロ法」、「SARSA」など
いろいろな種類があります。

機械学習とかDeep Learningを学ぶ前に知っておくべき基礎の基礎 | DevelopersIO

 

英訳概要

One of the goals of artificial intelligence is to realize human intelligence on a computer. Although it is still far from being realized, it turned out that some basic things can be done well by letting the computer itself learn in that research. This is machine learning. At present, machine learning has begun to affect various fields such as financial engineering, image processing, autonomous driving, and biology. In machine learning, sample data derived from sensors, databases, etc. are input and analyzed, and useful rules, rules, knowledge expressions, judgment criteria, etc. are extracted from the data to develop an algorithm. The algorithm first captures the characteristics (probability distribution) of the potential mechanism that generated the data (referred to as training example), and identifies and quantifies complicated relationships. Next, prediction and decision are made on new data using the learned and identified patterns. The data can be viewed as a specific example of the relationship between the observed variables. One fundamental issue is that it is not practical to include all possible data in training examples (learning data) because (for many practical concerns) the number of data is too large. Therefore, the algorithm should generalize limited training examples to generate useful output from new data input. Machine learning is used in a wide range of fields such as search engines, medical diagnostics, spam email detection, financial market forecasting, DNA sequence classification, pattern recognition such as speech recognition and optical character recognition, game strategies, robots, etc. Various learning methods have been proposed according to the characteristics of the application field.

 

タイトルとURLをコピーしました