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

एक कृत्रिम न्यूरॉन

एक न्यूरॉन का आउटपुट निकालें: इनपुट का वेटेड योग और बायस, फिर sigmoid से गुज़ारें।

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

  • इनपुट, वज़न और बायस जोड़ना
  • योग को एक्टिवेशन से गुज़ारना
  • देखना कि न्यूरॉन अनुमान कैसे लगाता है

समस्या

एक कृत्रिम न्यूरॉन हर इनपुट को एक वेट से गुणा करता है, बायस जोड़ता है और परिणाम को एक्टिवेशन फ़ंक्शन से गुज़ारता है:

z = x₁×w₁ + x₂×w₂ + … + xₙ×wₙ + bias

आउटपुट = sigmoid(z) = 1 / (1 + e^(-z))

neuron_output(inputs, weights, bias) लागू करें।

इनपुट

inputs: इनपुट मान।

weights: हर इनपुट के लिए एक वेट (inputs जितनी ही लंबाई)।

bias: न्यूरॉन का बायस।

आउटपुट

न्यूरॉन का आउटपुट लौटाएँ, 0 और 1 के बीच की एक दशमलव संख्या।

सीमाएँ

1 ≤ inputs की लंबाई = weights की लंबाई ≤ 100

-10 ≤ हर इनपुट, वेट और बायस ≤ 10

उदाहरण

उदाहरण 1
इनपुट:
bias = 0.5
inputs = [1.0, 2.0, 3.0]
weights = [0.2, 0.4, 0.6]

अपेक्षित आउटपुट:
expected = 0.964429
इनपुट:
double bias = 0.5;
std::vector<double> inputs = {1.0, 2.0, 3.0};
std::vector<double> weights = {0.2, 0.4, 0.6};

अपेक्षित आउटपुट:
double expected = 0.964429;
इनपुट:
double bias = 0.5;
double[] inputs = new double[] {1.0, 2.0, 3.0};
double[] weights = new double[] {0.2, 0.4, 0.6};

अपेक्षित आउटपुट:
double expected = 0.964429;

व्याख्या

z = 1×0.2 + 2×0.4 + 3×0.6 + 0.5 = 3.3, और sigmoid(3.3) ≈ 0.964429।

उदाहरण 2
इनपुट:
bias = 0.0
inputs = [0.5, -1.0]
weights = [2.0, 1.0]

अपेक्षित आउटपुट:
expected = 0.5
इनपुट:
double bias = 0.0;
std::vector<double> inputs = {0.5, -1.0};
std::vector<double> weights = {2.0, 1.0};

अपेक्षित आउटपुट:
double expected = 0.5;
इनपुट:
double bias = 0.0;
double[] inputs = new double[] {0.5, -1.0};
double[] weights = new double[] {2.0, 1.0};

अपेक्षित आउटपुट:
double expected = 0.5;

व्याख्या

z = 0.5×2 + (-1)×1 + 0 = 0, और sigmoid(0) = 0.5: न्यूरॉन ठीक बीच में है, कोई निर्णय नहीं ले पा रहा।

कैसे हल करें

पहले खुद कोशिश करें, फिर एक-एक करके संकेत खोलें।

संकेत 1

यह बस inputs का weighted sum है, उसमें bias जोड़कर अंत में sigmoid लगानी है.

संकेत 2

हर input को उसके corresponding weight से pair करें और bias जोड़ने से पहले products को accumulate करें.

संकेत 3

ध्यान रहे final output raw sum नहीं, sigmoid से होकर जाना चाहिए.

अपेक्षित जटिलता

समय O(n), अतिरिक्त स्थान O(1)

संदर्भ

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

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

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

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