人工知能 の分野で「学習」と言えば、機械学習のことを言います。
「機械がどうやって学ぶのか?」と考えてしまうと、難しくなってしまいますが、 機械学習の実体は 統計モデルによる予測 と同じです。 基本の手順は、とてもシンプルです。
この例は、機械学習の基本の基本です。 画像認識のような高度な機械学習をするのでしたら、もっと複雑でたくさんのデータを使って、複雑なルールを使う必要がありますが、 基本的な手順は同じです。
「○○学習」というのは、いくつかあります。
比較的古くからある問題解決や課題達成の思想と、機械学習の思想の違いの大きなところは、 ヒューリスティクス を認めるかどうかにあるようです。
古くからの思想では、最初から完璧な答えを見つけようとして、結局、答えに行き着けなかったり、 その時は完璧な答えを見つけたと思ったのに、実は違った、という事があるように思います。
一方、機械学習の思想では、だんだん完璧になれば良いと思っているので、データが少なくてもサービスが開始できたり、 途中で流行が変わっても、柔軟に対応できます。
昨今、 ベイズ統計 の解説書が急増していますが、機械学習が世の中に受け入れられるようになった事が大きいように思います。 ベイズ統計と機械学習は、思想がぴったり合っていますので。
「Python実践AIモデル構築100本ノック」 下山輝昌・中村智・高木洋介 著 秀和システム 2021
様々な手法について、使い方がコンパクトにまとまっています。
SHAP:それぞれの説明変数のモデルへの貢献度を出す方法
AutoML:様々なモデルをまとめて評価する方法。PyCaretでできる。
「知りたい分かりたい人の体験する機械学習 フリーソフトWekaによる実践講座」 高橋佑幸 著 リックテレコム 2015
決定木
、サポートベクターマシン、
ニューラルネットワーク
、
ナイーブベイズ
、
アソシエーション分析
、
クラスター分析
、
テキストマイニング
についてコンパクトな解説があります。
形態素解析ソフトのMeCabとWekaのナレッジフローを使った解析の手順が、かなり詳しく解説されています。
「フリーソフトではじめる機械学習入門」 荒木雅弘 著 森北出版 2014
様々な手法について、Wekaでの実施例があります。
強化学習、
ニューラルネットワーク、
ベイジアンネットワーク、
決定木、
Ridge回帰、Lasso回帰、等、主な手法の理論について、解説があり、とてもコンパクトにまとまっています。
アンサンブル学習として、バギングやブースティングも詳しいです。
RapidMinerについても、入門的な解説が少し付いています。
「Excelでわかる 機械学習超入門」 涌井良幸・涌井貞美 著 技術評論社 2019
回帰分析
、
サポートベクターマシン
、
ニューラルネットワーク
(
RNN
、
強化学習
も)
などの手法の他に、
ベイズ統計
や勾配降下法などの基本的なアルゴリズムもあります。
「Pythonではじめる機械学習 scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎」 Andreas C.Muller, Sarah Guido 著 オライリー・ジャパン 2017
Pythonを使った機械学習について、具体的な話がコンパクトにまとまっています。
特徴量の準備では、専門家の知識が役に立つ話もあります。
例として、自転車のレンタルの利用のされ方をモデルにする時に、
「時刻」だけを説明変数に使ったのでは、
予測の精度の問題だけでなく、
予測自体ができない話があります。
この例では、
「曜日」や「時間帯」という説明変数を加えることが、
この問題の解決になっています。
「Rによるデータサイエンス」 金明哲 著 森北出版 2007
バギングやブースティングがコンパクトにまとまっています。
「施策デザインのための機械学習入門 データ分析技術のビジネス活用における正しい考え方」 齋藤優太・安井翔太 著 技術評論社 2021
機械学習のモデルを作って、実務で使う段階になった時に、実務で思うように役に立って行かない問題の原因を挙げています。
筆者なりに整理すると、
「機械学習が扱う現象と、機械学習で扱おうとした目的が一致していない点」、「学習に使う過去のデータには、過去の施策の影響がある点」、
「扱っているデータと扱いたい現象が必ずしも一致していない点」、の3点でした。
この本では、こうしたことが起きる例を挙げ、こうしたことに気を付けながら機械学習を使って行くことを提案しています。
「AIエンジニアを目指す人のための機械学習入門 実装しながらアルゴリズムの流れを学ぶ」 清水琢也・小川雄太郎 著 技術評論社 2020
それぞれの手法のアイディア(アルゴリズム)を理解し、ハイパーパラメータを適切に調整できるようになることを目指して、まとめられています。
解説されている手法は、以下です。
「""」で書いている手法は、詳細の解説はなく、名前だけ紹介されている手法です。
回帰:最小二乗法、
正則化
、"SVR"、"BaggingRegressor"、"勾配ブースティング回帰木"
分類:
ロジスティック回帰分析
、SVC(一般的に、
SVM(サポートベクターマシン)
と呼ばれているものと同じ)、
決定木、
ランダムフォレスト、
勾配ブースティング決定木、ナイーブベイズ
クラスタリング:k-means、ガウス混合モデル
、"Spectral Clsustering"、"MeanShift"、"VBGMM"
次元圧縮:
主成分分析、
t-SNE
、"SpectralEmbedding"、"Isomap"
特異点検知(Novelty Detection)(新しいサンプルの異常判定のタスク):
One-Class SVM(1クラスモデルとして利用)
外れ値検知(Outlier Detection):Eliptic Envelope(サンプル全部をひとつの正規分布と仮定して、外れ度合いを判断)、
One-Class SVM、
Isolation Forest、
LOF
「機械学習 データを読み解くアルゴリズムの技法」 P.Flach 著 朝倉書店 2017
機械学習について、いろいろな側面から、体系的に様々なことが書かれています。
専門的な内容も多いので、他の本で入門的な内容を学んでからの方が良いです。
9章までで、モデルの種類とタスクの関係。10章が
特徴量
。11章が
アンサンブル学習
機械学習の関心は、正しい特徴量(feature)を用いて、正しいモデルを作り、正しいタスクをこなすこと。
幾何モデル : 直線、平面、距離などの概念で分類。線形モデル、k平均法など。
確率モデル :
ベイズ統計
を使って、確率を見るもの条件付き確率などで分類
論理モデル : 決定木、if-thenルールなどで分類。
論理
を使って現象が説明できるようにする。
この本では、扱っていないものがオンライン学習で、新しいデータが入るたびにモデルを更新するもので、シーケンス制御への応用がある。
機械学習は、
人工知能の創造と発展のためと、氾濫する大量のデータを扱うため、という2つの異なる方向がある。
「はじめての機械学習」 小高知宏 著 オーム社 2011
C言語のプログラムの説明が詳しく、実際にプログラミングしながら学べるようになっています。
機械学習の方法は5つに分けられています。
・パラメタ調整による学習 : 回帰分析・時系列データの傾向からの予測
・帰納的学習 : 形態素分析(テキストマイニング)
・教示学習 : 教師あり学習。
与えられたデータのカテゴリ分けの方法には、
論理式(and や or で表現)、
判断木(Yes と No で表現)、
プロダクションシステム(if文で表現)がある。
・規則の学習 : 焼きなまし法
・
遺伝的アルゴリズム
・ニューラルネット : ニューラルネットワーク
「機械学習 新たな人工知能」 エテム・アルペイディン 著 日本評論社 2017
従来はプログラマーがプログラムを書いてやっていたことを、今は機械学習のモデルにデータを入れれば自動でできるようになって来ている、と考えています。
従来の方法の産物の例として、
エキスパートシステム
や
オントロジー
を挙げています。
「制御と学習の人間科学」 斎藤正男 著 コロナ社 2005
高校生でも充分読めそうなやさしい文章で、制御・計測・学習・記憶を解説しています。
情報量
・
遺伝的アルゴリズム
・
ニューラルネットワーク
も、やさしく紹介しています。
制御・計測・学習・記憶の部分は、制御の入門書、学習の入門書としても読めますが、
バラバラではなく、つながった話になっています。
また、これによって、人間の仕組みを持つ機械がどのようなものになるのかが、理解できるようになっています。
内容は、分野横断的です。
最後の方は、機械が人間の仕組みを持つ時代の話になっていて、
仮想空間も日常生活の一部となり、仮想空間からの働きかけで、現実に癒されたりする話が出て来ます。
銀河鉄道999の世界を想起させる内容でした。
「知能システム工学入門」 松本啓之亮・黄瀬浩一・森直樹 共著 コロナ社 2002
モデル化・表現方法・探索法・確率的推論・機械学習・遺伝的アルゴリズム
「やわらかい情報処理」 吉田紀彦 著 サイエンス社 2003
ニューラルネットワーク
・
遺伝的アルゴリズム
・強化学習・分散人工知能・
ゲーム理論
について、
それぞれの関わりにも触れつつ、まとめられています。
「パターン認識と学習の統計学」 甘利俊一・麻生英樹・津田宏治・村田昇 著 岩波書店 2003
この本は、
パターン認識
の手法全般、
カーネル法
、バギングとブースティングの 3つの部分に分かれていて、それぞれの著者が異なります。
「マスターアルゴリズム 世界を再構築する「究極の機械学習」」 ペドロ・ドミンゴス 著 講談社 2021
「一般的なアルゴリズムは、入力を入れると出力が出る。
機械学習のアルゴリズムは、データと結果を入れると、データを結果に変えるアルゴリズムが得られる。」、
このような説明の仕方で、機械学習は、アルゴリズムを作るアルゴリズムとして説明しています。
筆者としては、機械学習の手順は、アルゴリズムの中のパラメータの値を決めているものなので、新しい何かが生まれている訳ではないと思いますが、
この本では、新しい何かが生まれているような説明になっています。
そして、新しい何かをどんなものでも生み出せる究極のアルゴリズムとして、「マスターアルゴリズム」が存在する可能性を説明しています。
この仮説の根拠として、決定木などの機械学習の個々のアルゴリズムが、まったく異なる分野で役立っていることを挙げています。
また、生物が様々なことを学習できることや、数学の理論が実際の世界の様々なところに当てはまることなども根拠にしています。
順路 次は 教師ありと教師なしの学習