tensorflow.nn
modülü birçok temel sinir ağı işlemi için destek sağlar.
Birçok etkinleştirme işlevinden biri de sigmoid işlevidir. olarak tanımlanır,
sigmoid işlevi (0, 1) aralığında çıktı verir, bu da onu aşağıdakiler için ideal kılar: Verilerin belirli bir sınıfa ait olma olasılığını bulmamız gereken ikili sınıflandırma görevleri. Sigmoid işlevi her noktada türevlenebilir ve türevi şeklinde çıkıyor. İfade bir sigmoid işlevi içerdiğinden değeri yeniden kullanılabilir geri yayılımı hızlandırmak için.
Sigmoid işlevi, her iki ucunda düzleştiği için "kaybolan gradyanlar" probleminden muzdariptir, bu da geri yayılırken çok küçük ağırlık değişiklikleriyle sonuçlanır. Bu, sinir ağının öğrenmeyi reddetmesine ve takılmasına neden olabilir. Bu nedenle, sigmoid işlevinin yerini, doğrultulmuş doğrusal birim (ReLU) gibi diğer doğrusal olmayan işlevler alır.
tf.nn.sigmoid ()
[alias tf.sigmoid
], Tensorflow`ta sigmoid işlev desteği sağlar.
Sözdizimi : tf.nn.sigmoid (x, ad = Yok ) veya tf.sigmoid (x, ad = Yok)
Parametreler :
x : Aşağıdaki türden herhangi bir tensör: float16 , float32, float64, Complex64 veya Complex128.
ad (isteğe bağlı): İşlemin adı.Dönüş tipi : Bir tensör x ile aynı türde.
Kod # 1:
# Tensorflow kitaplığını içe aktar
içe aktar
tensorflow as tf
# 6 boyutlu sabit vektör
a
=
tf.constant ([
1.0
3.4
,
-
2.1
tf.float32 )
# Sigmoid işlevini kullanma ve
# sonucu ' '
b
=
tf.nn.s igmoid (a, ad
=
`sigmoid`
)
# Sess olarak tf.Session () ile bir Tensorflow oturumu başlatma
:
print
(
`Giriş türü:`
(
`Giriş: `
, sess.run (a))
yazdır
(
` Dönüş türü: `
, b)
print
Çıktı:
Giriş türü: Tensör ("Const_1: 0", şekil = ( 6,), dtype = float32) Girdi: [1. -0.5 3.4000001 - 2.0999999 0. -6.5] Dönüş tipi: Tensör ("sigmoid: 0", şekil = (6,), dtype = float32) Çıkış: [0.7310586 0.377540668 0.96770459 0.10909683 0.5 0.00150118]
Kod # 2: Oluşturma
# Tensorflow kitaplığını içe aktar
import
tensorflow as tf
# NumPy kitaplığını içe aktarma
import
numpy as np
# Matplotlib.pylot işlevini içe aktar
içe aktar
matplotlib.pyplot as plt
# Vektör boyutu 15, -5 ile 5 arası değerlerle
a
= < /kod>
-
5
,
# sigmoid işlevinin uygulanması ve
# sonucu & öğesine kaydedin #39; '
=
`sigmoid`
)
# Bir Tensorflow oturumundan başlat
oturum olarak tf.Session () ile:
print
(
`Girdi:`
, a)
yazdır
(
`Çıktı:`
, sess .run (b))
plt.plot (a, sess.run (b), color
=
`kırmızı`
, işaretçi
=
"o"
)
plt. başlık (
"tensorflow.nn.sigmoid"
)
plt.xlabel (
"X"
)
plt.ylabel (
"Y"
)
plt.show ()
< güçlü>Çıktı:
Girdi: Girdi: [-beş. -4,28571429 -3,57142857 -2,85714286 -2,14285714 -1,42857143 -0,71428571 0. 0,71428571 1,42857143 2,14285714 2,85714286 3,57142857 4,28571429 5.] Çıkış: [0,00669285 0,01357692 0,02734679 0,05431327 0,10500059 0,19332137 0,32865255 0,5 0,67134745 0,80667863 0,89499941 0,94568673 0,97265321 0,98642308 0,99330715]
< şekil sınıfı = aligncenter amp-wp-inline-e407ac51e00eb7ad9e758d070160c9d8>