見出し画像

TensorFlowのチュートリアル紹介

はじめに

  • 本投稿の内容について
    こんにちは。SHIFT DAAE(ダーエ)部の栗山です。本記事ではTensorFlowのチュートリアルを紹介します。ディープラーニングのフレームワークはほかにもありますが、以下の理由から入門にはTensorFlowのチュートリアルがおすすめです。

    • 環境構築不要

      • GoogleアカウントがあればOK

    • 説明がとても丁寧

      • 前提知識がないとわかりづらい部分があるので、本投稿でそれを補っていきます

  • 構成
    本記事は「ディープラーニング入門」をテーマにした全3回の投稿の2回目です。全体の構成は以下のようになります。

    1. AI技術におけるディープラーニングの位置づけ ←前回

    2. TensorFlowのチュートリアル紹介 ← 今回

    3. ディープラーニングで始めに知っておきたい理論の紹介

|チュートリアルの紹介

本投稿では、以下のチュートリアルの補足解説をします。
TensorFlowのチュートリアルはとてもよくできているのですが、それでもはじめてディープラーニングをやる場合はわからないことが多いと思います。
本投稿を参考にしつつ、以下のリンク先で実際にチュートリアルを行って頂ければと思います。

はじめてのニューラルネットワーク:分類問題の初歩

上記リンク先に移動し、「Run in Google Colab(※下記画像参照)」をクリックします。そこからGoogle Colabを使用してWEB上でTensorFlowのチュートリアルを進めることができます。

|ディープラーニングのモデルの概要

上記チュートリアルのディープラーニングのモデルを以下に図解します。
画像データを入力し、その画像が何であるか?(分類結果)を出力します。
※以下の「画像データ」はTensorFlowのチュートリアルよりお借りしました。

|入力データの説明

入力データについて説明します。
入力データである画像は以下のように「28マス × 28マス 」で構成されます。1マスの値は256段階の白黒データです。
これからの画像を訓練用に60,000枚、評価用に10,000枚使用します。

|ディープラーニングのモデルの構成

今回のモデルは以下のようなネットワークになります。
入力層、中間層、出力層の3層からなる多段階のニューラルネットワークです(多段階のニューラルネットワークをディープラーニングと呼びます)。

  • 入力層

    • 入力データを受け取ります

    • 画像データに対応するように(28×28で)784個のノードがあります

  • 中間層

    • 中間層は、入力層からデータを受け取り、出力層へと渡します

    • 今回のモデルでは中間層には128個のノードがあります

  • 出力層

    • 出力層は、中間層からデータを受け取り、画像を分類します

    • (※画像が10個のクラスに属する確率を出力します。上記画像の例では、靴の確率が2%、Tシャツの確率が88%・・・といった結果を出しています)

|モデル作成から予測までの流れ

チュートリアルの大まかな流れは、以下のようになります。
※チュートリアルでは画像データを確認する処理が多いので、全体の流れを見失いそうになりますね。

  1. 画像データの取得

  2. 画像データの確認

  3. ディープラーニングのモデル構築

  4. モデルの訓練

  5. モデルの評価

  6. モデルによる予測

最後に

お読みいただきどうもありがとうございます。
本投稿がディープラーニングを理解する上での助けになれば幸いです。

参考資料

MAGAZINE

\もっと身近にもっとリアルに!DAAE公式Twitter/


執筆者プロフィール:Kuriyama Akira
株式会社SHIFT DAAE(ダーエ)で開発エンジニアをしています。前職はPM&エンジニア(C++)です。モダンなWEBアプリは色々と学ぶことが多く、そういった内容もブログに書いていきたいです。

お問合せはお気軽に
https://service.shiftinc.jp/contact/

SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/

SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/

SHIFTの導入事例
https://service.shiftinc.jp/case/

お役立ち資料はこちら
https://service.shiftinc.jp/resources/

SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/