LoginSignup
5
6

More than 3 years have passed since last update.

文系エンジニアにも分かる機械学習~機械学習とはナニモノ~

Last updated at Posted at 2019-09-21

目次

1.Introduction
 1-1)目的
 1-2)対象

2.機械学習とは
 2-1)特徴量
 2-2)ベクトル
 2-3)回帰
 2-4)最適化

3.参考文献

1.Introduction

1-1)目的

本などでインプットした知識をアウトプットして脳内整理する目的で
Qiita投稿を始めました。
そのため、粒度が荒かったり誤った情報がある可能性がありますので
その際はご指摘頂ければ嬉しいです。

1-2)対象

この記事の対象としては、
ITの世界に入って間もない方や、ITとは無関係のお仕事や勉強をされている方です。
難しい内容でもかみ砕いて誰にでも分かりすい記事となるようにしていきます。
自分自身の理解も深めたいため、かなり初歩的なところから記載していきます。
それでは本題に入ります。

2.機械学習とは

文字通り、機械(コンピュータ)が学ぶということ。
人間が四則演算のやり方を先生や親に教えてもらって学習するのと同じように、
人間がコンピュータに勉強させるイメージ。

さらに、コンピュータが学び取ったことを活用して、
世の中の様々な出来事を予測します。

例)天気の予測 / 地震予測 / 病気の診断 / 犯罪者の罪の重さ判断

もちろん、コンピュータが天気の意味や病気の症例の意味そのものを理解しているのではありません。

人間がコンピュータに対して、問題と解答のパターン(データ)を大量に入力し、
その大量データに基づいて
「こういう時はこうなる」「こういうケースではこうやって計算する」というように
コンピュータが解法パターンを見出すことにより、解答にたどりつけるようになります。

2-1)特徴量

▶どんなところに注目したらよいか

例)かっこいいランナーとかっこよくないランナーの判断基準
ランナー茶道
(画像引用元)

  • 背筋のまっすぐさ
  • 足の上がり具合
  • 目線の高さ
  • 腕の振り具合
  • ピッチ
  • ストライド
  • 速さ(タイム)

このような判断基準の一つひとつを特徴量と言います。

2-2)ベクトル

▶特徴量ごとの数字をまとめたもの

例)チョメチョメさんのベクトル
ベクトル.PNG

2-3)回帰

▶コンピュータが大量のデータを学習して、学習したデータ・数値から知らない数値を予測すること

予測する仕組み

ベクトルの数値を入力すると出力が返ってくる関数を作ります。

イメージ
関数.PNG
中学校・高校で習う数学の問題ではXとYの値が与えられていて、
それらを関数にあてはめて答えを求める問題が多いかと思います。

機械学習では、入力と出力の値(ベクトル)をコンピュータに大量に学習させ、
コンピュータが入力と出力との間の法則性を見出します。
そうして入力から出力を求められるような関数を作ることにより、
未知の値を予測することができるようになります。

関数はシンプルな直線の一次関数かもしれないし、
得体の知れないウネウネしたグラフの関数かもしれません。

2-4)最適化

▶正しい出力を求められるように、関数を少しずつ調整していくこと

イメージ
学習データのうち、入力をxとし、出力をYとします。
最適化前はプロットされた点とグラフ(関数)が交わっている箇所が1つしかない状態です。
しかし、最適化をすると学習データの全てがグラフと交わります。
このようにして、グラフの傾きを変えたり、高さを変えたりして調整することを最適化と言います。

最適化.PNG

3.参考文献

多くの情報を以下の本から得ています。
機械学習についてストーリー仕立てで分かりやすく書かれています。
amazonのページはこちら

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6