I parametreleri tarafından kontrol edilen bir sigmoid fonksiyonunu oluşturmak için ipython dizüstü aşağıdaki kodu yazdığı genişliğini tanımlar sigmoid merkezinin konumu, ve b tanımlar: aipython dizüstü etkileşimli fonksiyonu: kaydırma aralığı ayarlamak nasıl
Ben aşağıda fonksiyonunu yazdı yeniden yüzden%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
def sigmoid(x,a,b):
#sigmoid function with parameters a = center; b = width
s= 1/(1+np.exp(-(x-a)/b))
return 100.0*(s-min(s))/(max(s)-min(s)) # normalize sigmoid to 0-100
x = np.linspace(0,10,256)
sigm = sigmoid(x, a=5, b=1)
fig = plt.figure(figsize=(24,6))
ax1 = fig.add_subplot(2, 1, 1)
ax1.set_xticks([])
ax1.set_xticks([])
plt.plot(x,sigm,lw=2,color='black')
plt.xlim(x.min(), x.max())
Ben parametreler a ve b için etkileşim eklemek istedim:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
from IPython.html.widgets import interactive
from IPython.display import display
def sigmoid_demo(a=5,b=1):
x = np.linspace(0,10,256)
s = 1/(1+np.exp(-(x-a)/(b+0.1))) # +0.1 to avoid dividing by 0
sn = 100.0*(s-min(s))/(max(s)-min(s)) # normalize sigmoid to 0-100
fig = plt.figure(figsize=(24,6))
ax1 = fig.add_subplot(2, 1, 1)
ax1.set_xticks([])
ax1.set_yticks([])
plt.plot(x,sn,lw=2,color='black')
plt.xlim(x.min(), x.max())
w=widgets.interactive(sigmoid_demo,a=5,b=1)
display(w)
se sürgü aralığı (simetrik olması için herhangi bir yolu var mı sıfır etrafında örneğin)? Parametreler için başlangıç değerini ayarlayarak bana mümkün görünmüyor.
teşekkürler. Muhtemelen ikinci bölümü ayrı bir soru yapmalıyım, bu yüzden aralığınızı cevap olarak seçebiliyorum. – MyCarta
@MyCarta, benim düzenleme bakınız - bu yardımı yapar? – cel
Ne için lookign am parametreler a değerlerini tekrar yazıp onlar kaydırıcılar tarafından modifeid gibi dinamik b için bir yoldur. Şimdi düşünmek istediğim ayrı bir soru. – MyCarta