始める無料で始める

Rectified Linear(ReLU)活性化関数

動画でDanが説明したように、「活性化関数」は各ノードで適用され、ノードの入力を出力へと変換する関数です。

Rectified Linear(ReLU)活性化関数は、非常に高性能なネットワークにつながることが知られています。 この関数は単一の数値を入力に取り、入力が負なら 0 を、正ならその入力値を返します。

例をいくつか示します:
relu(3) = 3
relu(-3) = 0

この演習はコースの一部です

Pythonで学ぶDeep Learning入門

コースを見る

演習の手順

  • relu() 関数の定義を完成させてください:
    • max() 関数を使って relu() の出力値を計算します。
  • relu() 関数を node_0_input に適用して node_0_output を計算します。
  • relu() 関数を node_1_input に適用して node_1_output を計算します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

def relu(input):
    '''Define your relu activation function here'''
    # Calculate the value for the output of the relu function: output
    output = max(____, ____)
    
    # Return the value just calculated
    return(output)

# Calculate node 0 value: node_0_output
node_0_input = (input_data * weights['node_0']).sum()
node_0_output = ____

# Calculate node 1 value: node_1_output
node_1_input = (input_data * weights['node_1']).sum()
node_1_output = ____

# Put node values into array: hidden_layer_outputs
hidden_layer_outputs = np.array([node_0_output, node_1_output])

# Calculate model output (do not apply relu)
model_output = (hidden_layer_outputs * weights['output']).sum()

# Print model output
print(model_output)
コードを編集して実行