TensorFlow单层感知机实现
生活随笔
收集整理的這篇文章主要介紹了
TensorFlow单层感知机实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
TensorFlow單層感知機實現
簡單感知機是一個單層神經網絡。它使用閾值激活函數,正如 Marvin Minsky 在論文中所證明的,只能解決線性可分的問題。雖然限制了單層感知機只能應用于線性可分問題,但具有學習能力已經很好了。
當感知機使用閾值激活函數時,不能使用 TensorFlow 優化器來更新權重。不得不使用權重更新規則:
η 是學習率。為了簡化編程,當輸入固定為 +1 時,偏置可以作為一個額外的權重。那么,上面的公式可以用來同時更新權重和偏置。
下面討論如何實現單層感知機:
-
導入所需的模塊:
-
定義要使用的超參數:
-
指定訓練數據。在這個例子中,取三個輸入神經元(A,B,C)并訓練它學習邏輯 AB+BC:
-
定義要用到的變量和用于計算更新的計算圖,最后執行計算圖:
-
以下是上述代碼的輸出:
那么,如果使用 Sigmoid 激活函數,而不是閾值激活函數,會發生什么?首先,可以使用 TensorFlow 優化器來更新權重。其次,網絡將表現得像邏輯回歸。
總結
以上是生活随笔為你收集整理的TensorFlow单层感知机实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TensorFlow六种激活函数
- 下一篇: TensorFlow反向传播算法实现