機械学習 チュートリアル
はじめての画像認識

Pythonで画像処理の基本操作から畳み込みニューラルネットワーク(CNN)まで徹底解説

初級者〜中級者対象
受講人数 82名 | 学習期間目安 1日 〜 7日
★★★★★  5.0 (1件)

icon-check 対象:初級者〜中級者 icon-check 環境:オンライン / ローカル
icon-check 受講期限:無制限 icon-check 受講料金:850円

コース概要

  • ブラウザとインターネットで実行可能(Google Colab対応)
  • Jupyter Notebookを利用したプログラミング演習
  • 画像認識 / コンピュータビジョンの概要
  • OpenCVを使った基本画像処理
  • 畳み込みニューラルネットワークの仕組み
  • Kerasを使ってCNN構築
  • 大規模画像データの読み込み
  • 画像データの拡張とモデル精度向上

本コースで学べる内容

画像認識(Image Recognintion)とは、画像や動画に写る場所や人物など、様々なオブジェクトを認識する技術を指します。近年ニュースを騒がしている自動運転なども画像認識技術を活用しています。また、レントゲン写真を解析して特定の症状/病気を検知するなど、幅広い分野で大きな期待が寄せられています。

本コース「はじめての画像認識」では、Pythonを使った画像処理の基礎から、大規模な画像データの画像認識を機械学習手法を使って行います。

コース前半ではPythonの「OpenCV」を使った画像処理の基本操作を学びます。画像データの読み込みやMatplotlibを使った画像データの表示、画像データの変形などの操作を行います。

中盤は最も初歩的なデータセットの一つである「MNIST(エムニスト)」を使い、複数の機械学習手法(ロジスティック回帰ランダムフォレストSVM)を用いて画像認識を実装します。

さらに、機械学習フレームワーク「Keras」を使って、画像認識で標準的な手法である「畳み込みニューラルネットワーク(CNN)」の構築も行います。畳み込みニューラルネットワークのの仕組みである、「畳み込み層」「プール層」「全結合層」の役割や処理方法など、CNNを動かすのに必要な知識を、数式を用いず直感的に理解できるよう解説を行います。

後半は2つの実践的な画像認識の実装を行います。1つ目は様々な構造のCNNを使って平仮名画像の認識を行います。2つ目はレントゲン写真を学習して、肺炎の検知を行います。レントゲン写真の画像認識では、「ImageDataGenerator」を使ったデータ拡張のテクニックに焦点を当てています。データ拡張による検知精度向上を試みます。両プロジェクト共にニューラルネットワークライブラリ「Keras(TensorFlowバックエンド)」を使用します。

はじめてPythonで画像処理を行う方、はじめて畳み込みニューラルネットワークを使う方向けのコースです。数式を用いた説明は最低限に留めており、直感的に理解できるよう設計されたコースです。

初めて機械学習の手法を学ぶ方へ

本コースでは機械学習およびPythonライブラリの基礎知識が必要です。コース内で下記の項目の解説は含まれませんのでご注意ください。コース受講の目安として、pandasやNumPyの初歩的な操作方法が行える方であればスムーズにご受講可能です。

  • PythonおよびNumpy、Pandas、Matplotlibの基本操作方法
  • Kerasの包括的な操作方法
  • 機械学習の基礎知識(特徴量やモデルなど)
  • 評価指標(混同行列や精度・再現率など)

初めて機械学習の手法を学ぶ方は下記の講座を先に受講されることをお勧めします。

コースの特徴

ブラウザとインターネットで実行が可能

Google Colab(グーグル・コラボ)を利用することにより、特別な環境構築やインストールなどの作業を行うことなく、ブラウザのみで実行が可能です。チュートリアルでは、Google Colabの基本的な使い方、また自身のPCに環境構築を行う方法の詳細を説明しています。

実践に役立つ知識

  • Minicondaを活用したPythonの環境構築
  • OpenCVの使い方
  • Pythonによる大量画像データの読み込み
  • 畳み込みニューラルネットワークの基本的な仕組み
  • Kerasを使った畳み込みニューラルネットワークの構築
  • KerasコールバックによるEarlyStoppingの使い方
  • 画像データの拡張(ImageDataGenerator)

受講資格

icon-check (必須)Pythonの基礎知識

icon-check (必須)機械学習の初歩的な知識

icon-check (必須)線形代数及び統計の初歩的な知識

icon-check (必須)Numpy、Pandas、Matplotlibの初歩的な知識

原則として、Python及び機械学習の初歩的な知識が前提となっています。初めて機械学習に挑む方は下記の「機械学習 準備編」の無料コースをご参照下さい。また、本チュートリアルではKaggleの無料会員登録が必要です。(参考:Kaggleとは?

コース詳細

機械学習 チュートリアル はじめての画像認識
  Chapter 1 環境構築
 icon-cog 【Windows】Minicondaを利用した環境構築 約2,200文字
 icon-cog 【Mac】Minicondaを利用した環境構築 約1,900文字
 icon-cog Google Colabを利用した環境構築 約2,100文字
  Chapter 2 画像認識技術
 icon-pencil 画像認識とは 1,300文字
 icon-pencil 画像認識の仕組み 1,500文字
 icon-pencil 画像認識の活用事例 1,200文字
  Chapter 3 画像処理の基礎
 icon-pencil OpenCV 概要 1,000文字
 icon-code 画像読み込みと表示 25行
 icon-code 画像データの変形 70行
  Chapter 4 画像認識の基礎
 icon-pencil MNIST 1,700文字
 icon-code 画像データ前処理 40行
 icon-code 機械学習手法で画像認識 15行
 icon-pencil 畳み込みニューラルネットワークの仕組み 6,200文字
 icon-code CNNで画像認識 55行
  Chapter 5 ひらがな画像認識
 icon-code NDLラボ 平仮名画像データ 50行
 icon-code 画像データの前処理 30行
 icon-code CNNモデル訓練 70行
  Chapter 6 レントゲン画像から肺炎検出
 icon-pencil データ拡張とは 1,400文字
 icon-code データ読み込みと前処理 130行
 icon-code ベースラインのモデル訓練 20行
 icon-code データ拡張を実装 55行

レビュー

icon-user 畳み込みニューラルネットワークの解説が難しすぎず簡単すぎず、ちょうど良い感じでした。書籍などでは数式を用いた解説で理解が大変でしたが、このコースの説明はそれぞれの層の役割と処理に焦点が当てられており、非常に役に立ちました。他のコースも購入させて頂きました!

講師紹介

codexa ロゴ

本コース「はじめての画像認識」はcodexa(コデクサ)の機械学習エンジニアチームにて製作・監修を行いました。アメリカでデータ分析の実績を積んだデータサイエンティストから、Webエンジニアから機械学習エンジニアへ転向をした人まで幅広い層が所属しています。上級者の一方的な講義ではなく、「初心者がいかに理解しやすいか」を目標としています。日経ソフトウェアへの記事執筆実績(2019年1月号)。

このコースを取っている方は次のコースも取っています