「TensorFlow2.0チュートリアルの公式バージョン」ミニマルインストールTF2.0公式バージョン(CPU&GPU)のチュートリアル

0はじめに

TensorFlow 2.0、今朝、正式バージョン2.0をリリースしました。

多くのネチズンはTensorFlow 2.0 PyTorchよりも使いやすいし、深い学習フレームワークの新しいアップグレードに包括的な変更を準備している、と述べました。

この記事では私がTF2.0の公式バージョンの体験を容易にするために、ピットにステップするための最も簡単な方法で公式バージョンTF2.0(CPUとGPU)をインストールするには、ご案内いたします。

ADOは正式チュートリアルを開始しています。

 

1環境準備

私は、Pythonの環境conda管理を使用して、上記のWindows10で、現在のPIP tensorflow2.0によってインストールcondaのCUDAとcudnn(GPUサポート)、によってインストールしています。後唯一の最も簡単なインストール、ない複雑な設定環境を試してみてください。

(UbuntuとMacのバージョンにインストールされますが、この方法に従うことができcondaマルチプラットフォームサポートするので、問題はないはず、我々はよりを発行する場合は、あなたがコメントすることができ、私はUbuntuのチュートリアルをインストールします後で更新する場合があります)

1.0 conda環境準備

condaが良いの使用Pythonの管理ツールです、あなたは簡単に複数のPythonのビルド環境を管理することができます。私はいくつかの一般的に使用されるconda命令を紹介しますインストールをバックステップ。

私は、インストールminicondaを使用することをお勧めしcondaは、我々は必要なコンポーネントの一部だけを保持、アナコンダの合理化バージョンとして理解することができますので、インストールはよりもはるかに高速になりますが、また、当社の環境経営のpythonのニーズを満たすために。(SSD Anacondaは通常、インストールを完了するために10分、M百1~2時間を要し、miniconda典型的には、いくつかの、いくつかのGのメモリが搭載取ります)

miniconda推奨清華ダウンロードソース:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/

独自のバージョンを選択してくださいすることができ、

次のWindowsのバージョンには、デモとしてminicondaをインストールの上から適切なバージョンをダウンロードし、[インストール]をクリックし開くために良い管理者権限をダウンロードします。

システムはpython3.7パイソンが付属していますように、第2のminicondaで、我々が使用できるように、両方がCMDに直接、conda命令をされてチェックする必要があることに注意してください。

後に入力された入力ボックスcmdをポップアップ表示するためのcmd指示conda、オープンCMD、Windowsキー+ Rキーで使用することができますインストールされています。WindowsのCMDでの検索は、直接クリックし実行することができます。

これらの命令は、CMDのconda以下に記載されています。

  1. ビューconda環境:conda ENVリスト
  2. 新conda環境(env_name名が作成した環境で、あなたがカスタマイズすることができます):condaは-n env_nameを作成
  3. アクティベーションConda環境(UbuntuのCondaはMacOSのソースに置き換え):condaはenv_nameを活性化させます
  4. 終了conda環境:condaは無効
  5. Pythonパッケージをインストールおよびアンインストール:conda numpyの#1 condaのアンインストールnumpyのをインストール
  6. 查看已安装python列表:conda list -n env_name

知道这些指令就可以开始使用conda新建一个环境安装TF2.0了。

1.1 TF2.0 CPU版本安装

TF CPU安装比较简单,因为不需要配置GPU,所以windows ubuntu macOS安装方式都类似,缺点就是运行速度慢,但是用于日常学习使用还是可以的。

下面以windows版本做演示:一下均在命令行操作

1.1.0 新建TF2.0 CPU环境(使用conda 新建环境指令 python==3.6表示在新建环境时同时python3.6)

conda create -n TF_2C python=3.6

当弹出 :Proceed ([y]/n)? 输入y回车

完成后就可以进入此环境

1.1.1 进入TF_2C环境

conda activate TF_2C

进入后我们就可以发现:(TF_2C)在之前路径前面,表示进入了这个环境。使用conda deactivate可以退出。

我们再次进入 conda activate TF_2C ,便于执行下述命令

1.1.2 安装TF2.0 CPU版本(后面的 -i 表示从国内清华源下载,速度比默认源快很多)

pip install tensorflow==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

如果网不好的,多执行几次。然后过一会就安装好啦。下面我们做下简单测试。

1.1.3 测试TF2.0 CPU版本(把下面代码保存到demo.py使用TF_2C python运行)

import tensorflow as tf
version = tf.__version__
gpu_ok = tf.test.is_gpu_available()
print("tf version:",version,"\nuse GPU",gpu_ok)

如果没有问题的话输出结果如下:可以看到tf 版本为2.0.0 因为是cpu版本,所以gpu 为False

tf version: 2.0.0
use GPU False

1.2 TF2.0 GPU版本安装

GPU版本和CPU类似,但是会多一步对于GPU支持的安装。下面来一步步实现。安装之前确认你的电脑拥有Nvidia的GPU

1.2.0 新建TF2.0 GPU环境(使用conda 新建环境指令 python==3.6表示在新建环境时同时python3.6)

conda create -n TF_2G python=3.6

当弹出 :Proceed ([y]/n)? 输入y回车

完成后就可以进入此环境

1.1.1 进入TF_2G环境

conda activate TF_2G

バージョン1.1.2 GPUのサポートをインストールし、NVIDIAのGPU駆動型の窓は、一般的にデフォルトを持っており、それだけでcudatoolkit cudnnパッケージをインストールする必要がありますし、我々はあなたがcudatoolkit 10.0バージョンをインストールする必要があることに注意する必要があり、システムが10.0未満cudatoolkitある場合ことに注意してくださいそれは10.0に更新する必要があります

conda install cudatoolkit=10.0 cudnn

インストールTF2.0のGPUバージョン1.1.3(デフォルトのソースよりもはるかに高速の国内清華ソースからのダウンロードの後ろ-i、)

pip install tensorflow-gpu==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

ネットワークが良くない場合は、それを数回実行します。その後、しばらくたってからインストールしても大丈夫です。のは、簡単なテストをやってみましょう。

1.1.3テストTF2.0 GPUバージョン(demo.py使用TF_2Gパイソンを実行する次のコードを保存)

import tensorflow as tf
version = tf.__version__
gpu_ok = tf.test.is_gpu_available()
print("tf version:",version,"\nuse GPU",gpu_ok)

ない場合は、次のように出力結果は以下のとおりです。それはGPUのバージョンであるため、GPUは、インストールのGPUバージョンが完了したことを意味し、真であるので、TFは、バージョン2.0.0を見ることができます。

tf version: 2.0.0
use GPU True

1.2最後に、我々はコードを書くためのテストバージョンTF2.0の直線フィッティング方法を使用します

次のコードは、main.pyを保存します

import tensorflow as tf

X = tf.constant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]]) y = tf.constant([[10.0], [20.0]]) class Linear(tf.keras.Model): def __init__(self): super().__init__() self.dense = tf.keras.layers.Dense( units=1, activation=None, kernel_initializer=tf.zeros_initializer(), bias_initializer=tf.zeros_initializer() ) def call(self, input): output = self.dense(input) return output # 以下代码结构与前节类似 model = Linear() optimizer = tf.keras.optimizers.SGD(learning_rate=0.01) for i in range(100): with tf.GradientTape() as tape: y_pred = model(X) # 调用模型 y_pred = model(X) 而不是显式写出 y_pred = a * X + b loss = tf.reduce_mean(tf.square(y_pred - y)) grads = tape.gradient(loss, model.variables) # 使用 model.variables 这一属性直接获得模型中的所有变量 optimizer.apply_gradients(grads_and_vars=zip(grads, model.variables)) if i % 10 == 0: print(i, loss.numpy()) print(model.variables)

出力:

0 250.0
10 0.73648137
20 0.6172349
30 0.5172956
40 0.4335389
50 0.36334264
60 0.3045124
70 0.25520816
80 0.2138865
90 0.17925593
[<tf.Variable 'linear/dense/kernel:0' shape=(3, 1) dtype=float32, numpy=
array([[0.40784496],
       [1.191065  ],
       [1.9742855 ]], dtype=float32)>, <tf.Variable 'linear/dense/bias:0' shape=(1,) dtype=float32, numpy=array([0.78322077], dtype=float32)>]

おすすめ

転載: www.cnblogs.com/xiaosongshine/p/11615639.html