ホーム » TensorLayer » TensorFlow : TensorLayer : FAQ

TensorFlow : TensorLayer : FAQ

TensorFlow : TensorLayer : FAQ (翻訳/解説)

翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 12/06/2018

* 本ページは、TensorLayer の以下のドキュメントの一部を翻訳した上で適宜、補足説明したものです:

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

FAQ

TensorLayer をどのように効果的に学習するか

貴方がどのステージにいようとも、TensorLayer のソースコードとこの web サイト の Understand layer / Your layer を読むためにちょうど 10 分を費やすことを勧めます、抽象的な方法が誰に取っても非常に単純であることを見い出すでしょう。ソースコードを読むことは TensorFlow をより良く理解する助けとなりそして貴方自身のメソッドを容易に実装することを可能にします。

 

初心者

深層学習が初めてである人に対しては、contirbutors がこの web サイトで多くのチュートリアルを提供しています、これらのチュートリアルはオートエンコーダ、畳込みニューラルネットワーク、リカレント・ニューラルネットワーク、単語埋め込みと深層強化学習等を理解する案内をするでしょう。貴方が深層学習の基本を既に理解している場合には、チュートリアルはスキップして GitHub 上のサンプルコードを読み、スクラッチからサンプルを実装することを勧めます。

 

技術者

産業からの人々のために、contributors は多くの形式が一貫したサンプルを提供しました、コンピュータ・ビジョン、自然言語処理、そして強化学習をカバーしています。加えて、(オンラインで見つけられる) 画像キャプショニング、セマンティック/インスタンス・セグメンテーション、機械翻訳、チャットボット等の製品レベルのサンプルを既に実装した多くの TensorFlow ユーザもいます。注目すべき点は、特にコンピュータ・ビジョンのためのラッパー Tf-Slim は TensorLayer とシームレスに接続可能であることです。従って、貴方のプロジェクトで使用可能なサンプルを見つけることができるかもしれません。

 

研究者

学術からの人々のために、TensorLayer は元々は新規のアルゴリズムを実装する際に他のライブラリに伴う問題に直面した PhD 学生により開発されました。編集可能なモードで TensorLayer をインストールすることが推奨されます、そうすれば TensorLayer で貴方のメソッドを拡張できます。画像キャプショニング、ビジュアル QA 等のような画像関連の研究者のために、TensorLayer で既存の Tf-Slim 事前訓練モデルを使用することは非常に有用であることを見い出すかもしれません (Tf-Slim と接続するための特別な層が提供されます)。

 

幾つかの層を訓練から除外する

更新することを望む変数のリストを得る必要があるかもしれません、TensorLayer は変数リストを得るための 2 つの方法を提供します。

最初の方法はネットワークの all_params を使用することです、デフォルトでは、それは変数を順番にストアします。tl.layers.print_all_variables(train_only=True) あるいは network.print_params(details=False) を通して変数情報を表示出力できます。どの変数を更新するか選択するために、下を行なうことができます。

train_params = network.all_params[3:]

2 番目の方法は与えられた名前で変数を取得します。例えば、層名が dense を含む総ての変数を得たい場合には、下のようにできます。

train_params = tl.layers.get_variables_with_name('dense', train_only=True, printable=True)

変数リストを得る後、変数の一部だけを更新するように次のように optimizer を定義できます。

train_op = tf.train.AdamOptimizer(0.001).minimize(cost, var_list= train_params)

 

Logging

TensorLayer は実行情報をログするために Python logging module を採用しています。logging モジュールはデフォルトではコンソールにログを表示出力します。logging モジュールを configure することを望む場合、その マニュアル に従ってください。

 

可視化

Cannot Save Image

SSH 制御を通してスクリプトを実行する場合、時々次のエラーを見つけるかもしれません。

_tkinter.TclError: no display name and no $DISPLAY environment variable

それが発生する場合、sudo apt-get install python3-tk を実行するか、import tensorlayer as tl の前に import matplotlib そして matplotlib.use(‘Agg’) してください。代替的に、visualize.py か貴方自身のコードのトップに次のコードを追加してください。

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt

 

マスター・バージョンをインストールする

TensorLayer の総ての新しい特徴を使用するためには、Github から新しいバージョンをインストールする必要があります。その前に、既に git をインストールしていることを確実にする必要があります。

[stable version] pip install tensorlayer
[master version] pip install git+https://github.com/tensorlayer/tensorlayer.git

 

モデルをロードする

tl.files.load_npz() は tl.files.save_npz() によりセーブされた npz モデルだけをロードできることに注意してください。TensorLayer ネットワークにロードしたいモデルを持つ場合、最初にパラメータを順番にリストに割り当てて、それからパラメータを貴方の TensorLayer モデルにロードするために tl.files.assign_params() を使用することができます。

 

以上






AI導入支援 #2 ウェビナー

スモールスタートを可能としたAI導入支援   Vol.2
[無料 WEB セミナー] [詳細]
「画像認識 AI PoC スターターパック」の紹介
既に AI 技術を実ビジネスで活用し、成果を上げている日本企業も多く存在しており、競争優位なビジネスを展開しております。
しかしながら AI を導入したくとも PoC (概念実証) だけでも高額な費用がかかり取組めていない企業も少なくないようです。A I導入時には欠かせない PoC を手軽にしかも短期間で認知度を確認可能とするサービの紹介と共に、AI 技術の特性と具体的な導入プロセスに加え運用時のポイントについても解説いたします。
日時:2021年10月13日(水)
会場:WEBセミナー
共催:クラスキャット、日本FLOW(株)
後援:働き方改革推進コンソーシアム
参加費: 無料 (事前登録制)
人工知能開発支援
◆ クラスキャットは 人工知能研究開発支援 サービスを提供しています :
  • テクニカルコンサルティングサービス
  • 実証実験 (プロトタイプ構築)
  • アプリケーションへの実装
  • 人工知能研修サービス
◆ お問合せ先 ◆
(株)クラスキャット
セールス・インフォメーション
E-Mail:sales-info@classcat.com