आसान 0 हल किए गए 0% स्वीकृति

Activation Functions

Apply sigmoid, ReLU, Leaky ReLU or tanh to every value in a list.

आप क्या सीखेंगे

  • Implement common activation functions
  • Understand why networks need non-linearity
  • Avoid overflow in the sigmoid

समस्या

अनुवाद दिखाएँ

After a neuron adds up its weighted inputs, an activation function decides its output. Without one, a neural network could only learn straight lines.

Implement activate(name, values) and apply the named function to every value:

nameformula
"sigmoid"1 / (1 + e^(-x))
"relu"max(0, x)
"leaky_relu"x if x > 0, otherwise 0.01 × x
"tanh"(e^x - e^(-x)) / (e^x + e^(-x))

Input

name: One of "sigmoid", "relu", "leaky_relu" or "tanh".

values: A list of numbers.

Output

Return a list with the activation applied to each value, in the same order.

सीमाएँ

1 ≤ length of values ≤ 1,000

-50 ≤ each value ≤ 50

उदाहरण

उदाहरण 1
इनपुट:
name = "sigmoid"
values = [0.0, 2.0, -2.0]

अपेक्षित आउटपुट:
expected = [0.5, 0.880797, 0.119203]
इनपुट:
std::string name = "sigmoid";
std::vector<double> values = {0.0, 2.0, -2.0};

अपेक्षित आउटपुट:
std::vector<double> expected = {0.5, 0.880797, 0.119203};
इनपुट:
string name = "sigmoid";
double[] values = new double[] {0.0, 2.0, -2.0};

अपेक्षित आउटपुट:
double[] expected = new double[] {0.5, 0.880797, 0.119203};

व्याख्या

sigmoid(0) = 1 / (1 + 1) = 0.5, sigmoid(2) ≈ 0.880797 and sigmoid(-2) ≈ 0.119203. Sigmoid squeezes any number into the range 0 to 1.

उदाहरण 2
इनपुट:
name = "relu"
values = [-1.5, 0.0, 3.0]

अपेक्षित आउटपुट:
expected = [0.0, 0.0, 3.0]
इनपुट:
std::string name = "relu";
std::vector<double> values = {-1.5, 0.0, 3.0};

अपेक्षित आउटपुट:
std::vector<double> expected = {0.0, 0.0, 3.0};
इनपुट:
string name = "relu";
double[] values = new double[] {-1.5, 0.0, 3.0};

अपेक्षित आउटपुट:
double[] expected = new double[] {0.0, 0.0, 3.0};

व्याख्या

ReLU keeps positive values and turns negative values into 0: [0, 0, 3].

संदर्भ

यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।

दूसरों से सीखें

समुदाय समाधान

अभी तक कोई प्रकाशित समाधान नहीं। पहला साझा करने के लिए इस चुनौती को हल करें।