「クラウドではじめる機械学習」で機械学習をはじめる!

   

最近はやりの機械学習やAI、ディープラーニングに興味を持っている方は多いのではないでしょうか。

データマイニングの成功事例を聞くことが多くなりましたし、AWSやAzuleで気軽に利用できる環境が整ってきています。一方でどう勉強すれば良いか悩まれている方も多いはず。

このページでは良書の「クラウドではじめる機械学習」について紹介していきます。

機械学習をはじめたいけど難しいから躊躇していた人はこのページを読むことで一歩踏み出せると思います。ぜひご参考にしてください。

「クラウドではじめる機械学習」がおすすめな理由について

機械学習を勉強したい方は下記のような悩みを持っていないでしょうか。

  • 本が大学の教科書のようなものばかりで難しそう
  • 数式で説明されると分からない
  • 一般的な言語(PHP、Ruby、C#、VB.NET、Java)の解説書が少ない
  • サンプルコードが少ない
  • 前提知識が必要だと感じてしまう

私も同じような悩みを感じ、これまで下記の本を読んできましたがどれもものにできませんでした。

わかパタと呼ばれる「わかりやすいパターン認識」

 

赤本と呼ばれる「サポートベクターマシン入門」

 

初心者でも入門できると信じていた「データサイエンティスト養成読本 機械学習入門編」

 

唯一理解できた松尾豊さんの「人工知能は人間を超えるか」もエンジニアとしてはちょっと物足りない。。

 

そしてたどり着いたおすすめの良書がこの「クラウドではじめる機械学習」です。
この本のおすすめポイントは下記の一連の流れが網羅されているからだと思います。

  • 機械学習の概念の説明
  • 数式の説明
  • クラウドで機械学習の実行
  • 学習結果の評価と改善
  • プログラミングでの利用

まるで中学校の数学を覚えるような形で解説していただいているので理解度が全然違います。

従来の大学の教科書みたいな本では、たとえ難しい理論や数式を理解できても実際に学習するための具体的な手順はわかりませんでした。だからといって誰かが共有してくれた手順でライブラリを利用して機械学習をしてみても、全体感が分からずついていけません。

この「クラウドではじめる機械学習」はバランスよく解説し、一通りの理解を自信を与えてくれるので、とにかく手を動かしてみたい方にはおすすめです。

クラウドの「Azure ML」っていいの?

この本で取り上げられているAzure ML(Azure Machine Learningの略)を覚えることはエンジニアにとって良いのでしょうか。

AIや機械学習系では不慣れな言語でのサンプルプログラムが多く、実際にコーディングできるか心配になる方が多いと思います。
MicrosoftのAzureはクラウドとして有名ですが、AWSと比較すると後追い感が強く、知名度や実績度も低く心配です。

ただそのフィルタを外して本を見てみると、本で紹介されている理論をプログラミングやデータの下準備をすることなくAzure MLの画面の操作をすることで体感することができます。

画面の操作性も分かりやすく、不慣れなパラメーターの意味は本が解説しているため理解しやすいでしょう。

機械学習について勉強したい方は、データのインポート処理や慣れていない数式のコーディングでつまづくことはしたくないはず。そういったい方にはAzule MLはぴったりでしょう。

また画面ベースでの操作により、機械学習のアルゴリズムへの入出力の関係を理解することができるため、エンジニアとしてどこを理解してどのアルゴリズムをライブラリに任せるかの当たりをつけることができるでしょう。

「クラウドではじめる機械学習」の内容について

「クラウドではじめる機械学習」で解説されている機械学習について紹介していきます。

解説されている機械学習は主に下記の内容です。

  • 回帰
  • クラス分類
  • クラスタリング
  • レコメンデーション

簡単にそれぞれについて紹介していきます。

回帰

回帰は与えられたパラメーターから値を予測することです。

クラス分類

クラス分類は、スパムメールか否か、不審者か否かなど、各カテゴリに分類することです。

クラスタリング

クラスタリングは与えられた多数のデータから、類似するデータをまとめていきグルーピングすることです。

レコメンデーション

レコメンデーションとは、おすすめ商品のピックアップをするなど、関連性の高いデータをピックアップすることです。

 

いま流行りのディープラーニングはありませんが、ディープラーニングも分野が広い(画像解析、音声解析、etc)ようなのでここからスタートしてみてはいかがでしょうか。

まとめ

エンジニアは日々増え続け、数年前と比べると開発レベルは若手でも高くなってきているように感じます。

画面に入力した情報をDBに記録して画面に結果を表示するプログラミングばかりやっていては、エンジニアとしての市場価値は相対的に下がってしまうでしょう。

ぜひ、機械学習にもチャレンジして経営や事業に対して成果の出せるエンジニアを目指しましょう!