学習方法

10分でわかる機械学習の始め方

s.fujii0909

機械学習とかディープラーニングを始めてみたいけど、機械学習って何なの?
どうやって勉強すればいいの? とわからないことが多いですよね

自分も始めた時は数学やプログラムで、かなり つまづきました
そこで、機械学習を始めるための簡単な紹介と機械学習の勉強の仕方についてまとめてみました

最近は色々な道具(フレームワーク)が揃っているので、プログラミングして原理を理解しながら背後の数学的な理論を学習することをおすすめします

機械学習とは?

機械学習とは、データ分析の手法でデータをコンピュータに学習させ、データのパターンを見つけ出す方法のことです

人工知能(AI)やディープラーニングといったキーワードで近年盛んに研究がされてきました

例えば、画像の中から猫を見つけたり、LINEの自動会話機能で違和感なく やり取りすることに使われていたり、英語を自然な日本語に翻訳するための機械翻訳に使われていたりします

機械学習は大きく分けると3つに分類されます

  1. 教師あり学習
    学習する際に答えがある場合に使われる手法です
    人間で言うと問題集を解いて答えあわせをしながら学習をしていくことに似ています
  2. 教師なし学習
    データに答えがない場合に使います
    答えがないのでコンピュータがそれらしい答えを探すことになります
    通販サイトのおすすめの商品を出す場合に使われていたりします
  3. 強化学習
    最初からデータがなくて、コンピュータがデータを試行錯誤しながら取得して
    一番いい方法を見つける手法です
    例えば、マリオをコンピュータにクリアさせる場合、試行錯誤しながら最適な行動をマリオにとらせてクリアさせるときに使われます

3種類の分類があると言いましたが、最初は❶教師あり学習から取り掛かるのがいいと思います

機械学習を始めるために必要な知識

プログラミング

何はともあれ、コンピュータを使って機械に学習させる必要があるので プログラムの知識は
必要になります
特に機械学習ではPythonという言語で実装することが多いのでPythonの知識は必要不可欠です

数学

機械学習を学習する上で数学の知識は必要不可欠です
具体的には大学で習う、線形代数、微分積分(解析学)や統計学の知識が必要になってきます
ただ、難しい数学を最初から使わないようにに噛み砕いてくれている書籍などがあるので
身構えなくても大丈夫です

開発環境

機械学習を実行する環境を用意する必要があります

ハードウェアとしてはPCが必要になります
GPU(Graphical Processing Unit)があれば自分のPCで色々試すことができますが
なくても GoogleのColaboratoryなら無料でGPU環境を使うことができるので心配ありません
自分の環境で制約なく使いたくなればGPU付きのPCの購入を検討しましょう

ソフトウェアとしては以下に上げるような知識が必要になってきますが
始めはGoogle Colaboratoryで実行すれば大丈夫です

エディタVS Code, emacs, vimなどのソースコードを書くための環境
仮想環境自分の環境を壊さない、自分以外の環境でも実行できる技術
バージョン管理ソースコードを変更した時の履歴を覚えてくれるシステム
OSLinux(Ubuntu)が標準的
組み込みロボットやIoT機器に組み込んで使う場合
必要なソフトウェア知識

機械学習の学習の進め方

冒頭にも挙げましたが、最近はGoogle ColaboratoryやPythonのフレームワーク、データセットが充実しているので比較的簡単に機械学習を試すことができます
それらの環境で実行しながら数学的な理論を勉強していくのがいいと思います

自分のPCで実行したり、チームで開発する場合は別途、開発環境についても知っていく必要がありますが 最初は肩肘張らずに気軽に機械学習を試していきましょう!

ABOUT ME
ラーニングマン
ラーニングマン
エンジニアサラリーマン
仕事で使いそうだから機械学習を色々勉強しましたが、あまり使わなかった中堅エンジニアです。

せっかくなので、これから機械学習・ディープラーニングを勉強しようと思っている人の助けになればと思いブログを立ち上げました。

間違いやアドバイスがあれば気軽に連絡していただけると嬉しいです。
記事URLをコピーしました