ディープラーニング目指して初心者は今日も行く。
初見じゃ何もわからない初心者です。
シグモイド関数?階段関数??なにこれ。
目で見たらわかりますね!
コード
シグモイド関数表示のコードは以下の通り。
numpyとmatplotlib.pylabのインストール必須です。
import numpy as np
import matplotlib.pylab as plt
def step_function(x):
return np.array(x > 0, dtype=np.int)
def sigmoid(x):
return 1 / (1 + np.exp(-x))
def plot(functions):
x = np.arange(-5.0, 5.0, 0.1)
y = eval(functions)(x)
plt.plot(x, y)
plt.ylim(-0.1, 1.1) # y軸範囲の決定
plt.show()
#plot('step_function')
plot('sigmoid')
最後を以下のように変更すると階段関数が表示されます。
plot('step_function')
#plot('sigmoid')
plot関数はeval()入れて簡単にしました。
同じこと書かなくていいので楽ちん。
引っかかった所
eval()入力のところで引っかかりました。
def plot(functions):
略
y = eval(functions)(x)
略
plot(step_function)
“TypeError: eval() arg 1 must be a string, bytes or code object”
あれ???ん????
plot()の引数がstr(文字)なのに”で囲ってませんでした!残念。
↓解決方法
plot('step_function')
なんてやつだ・・・初心者過ぎて・・・初歩的すぎる。
教科書はこれ(ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装)使ってます。初心者でもわかりやすい!でも1ページ読み飛ばしたらすぐ意味不明になります。マジで。
先にいちばんやさしいPythonの教本は読んでコード書いてます。Pythonの基礎の基礎が学べます。
続く。


