當前位置:成語大全網 - 漢語詞典 - Tensorflow2.0(2)-定制密集層和訓練流程

Tensorflow2.0(2)-定制密集層和訓練流程

在開始時,展示了tensorflow2.0的壹個初級實際例子。相比1.x版本,操作性好很多。接下來,我們將繼續從更基礎的層面來理解tf2.0的各種實現。

Tensorflow2.0使用keras構建網絡。這種打包的基礎/高級api使用起來無疑更方便,但妳不妨自己實現壹些功能,在學習過程中加深理解。

以最簡單的全連接層和訓練過程的實現為例,

只需建立壹個網絡:

我們可以用類來定制Dense的功能,這也很簡單。

這樣就可以直接用自定義類DenseLayer替換keras的全連接層。

對於分類的損失函數,也是簡單粗暴的。對於標簽格式是one_hot,TF . nn . soft max _ cross _ entropy _ with _ logistics,

相反,本文自然使用TF . nn . sparse _ soft max _ cross _ entropy _ with _ logistics。

關於tf2.0,好像是tf。GradientTape()保留了下來,這部分自定義漸變計算可謂是壹章,以後再探討。

所以把單步訓練和梯度更新過程寫在壹起。

因為softmax包含在loss_func的計算中,所以在最後壹層沒有添加激活函數。

參考上壹篇文章,但也有壹些不同,其中沒有使用測試集,只關註訓練時損失的變化過程。

最後,妳可以看到損失下降得非常快。

結束。