Implementation of Perceptron Algorithm for NAND Logic Gate with 2-bit Binary Input Last Updated : 05 May, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report A Perceptron is one of the simplest types of deep learning models. It is used to make decisions based on input values and is like a basic brain cell that can "learn" to give output like 0 or 1 from given inputs. In this article, we will show how a perceptron can be used to perform the task of NAND logic gate. A NAND gate gives output of 0 only when both inputs are 1. In all other cases the output is 1. NAND Truth Table is:Input 1Input 2Output001011101110It is the opposite of the AND gate that's why it is called NAND gate (Not of And gate).Perceptron for NAND GateA perceptron takes binary inputs, multiplies them with weights, adds a bias and passes the result through an activation function usually a step function.y = \Theta(w_1 x_1 + w_2 x_2 + b)where:x_1, x_2: Inputsw_1, w_2:​Weights for the inputsb: Bias\Theta(z): Step functionStep Function:\Theta(z) = \begin{cases}1 & \text{if } z \geq 0 \\0 & \text{if } z < 0\end{cases}Choose Weights and Bias for NANDWe need to find w_1, w_2,and, b such that the perceptron behaves like a NAND gate. Let’s use this configuration:w_1 = -1w_2 = -1b = 1.5 The inputs x_1 \,and\,x_2go into the perceptron. The weights and bias are used to calculate the weighted sum. and the step function determines the output.Nand gate implementationLet’s implement this into Python.Step 1: Define the Step Activation Function Python import numpy as np def step_function(z): return 1 if z >= 0 else 0 Step 2: Perceptron logic for 2 inputs Python def perceptron(x1, x2, w1, w2, b): z = (x1 * w1) + (x2 * w2) + b return step_function(z) Step 3: Set weights and bias Python w1 = -1 w2 = -1 b = 1.5 Step 4: Test all combinations Python print("NAND Gate Output:") for x1 in [0, 1]: for x2 in [0, 1]: output = perceptron(x1, x2, w1, w2, b) print(f"NAND({x1}, {x2}) = {output}") Output:NAND Gate OutputThe code correctly predicts the NAND gate outputs for all input combinations. The perceptron outputs matches expected truth table. Comment More infoAdvertise with us Next Article Implementation of Perceptron Algorithm for NAND Logic Gate with 2-bit Binary Input G goodday451999 Follow Improve Article Tags : Machine Learning Neural Network python Practice Tags : Machine Learningpython Similar Reads Python Tutorial - Learn Python Programming Language Python is one of the most popular programming languages. Itâs simple to use, packed with features and supported by a wide range of libraries and frameworks. Its clean syntax makes it beginner-friendly. It'sA high-level language, used in web development, data science, automation, AI and more.Known fo 10 min read Machine Learning Tutorial Machine learning is a branch of Artificial Intelligence that focuses on developing models and algorithms that let computers learn from data without being explicitly programmed for every task. In simple words, ML teaches the systems to think and understand like humans by learning from the data.Machin 5 min read Linear Regression in Machine learning Linear regression is a type of supervised machine-learning algorithm that learns from the labelled datasets and maps the data points with most optimized linear functions which can be used for prediction on new datasets. It assumes that there is a linear relationship between the input and output, mea 15+ min read Support Vector Machine (SVM) Algorithm Support Vector Machine (SVM) is a supervised machine learning algorithm used for classification and regression tasks. It tries to find the best boundary known as hyperplane that separates different classes in the data. It is useful when you want to do binary classification like spam vs. not spam or 9 min read Logistic Regression in Machine Learning Logistic Regression is a supervised machine learning algorithm used for classification problems. Unlike linear regression which predicts continuous values it predicts the probability that an input belongs to a specific class. It is used for binary classification where the output can be one of two po 11 min read 100+ Machine Learning Projects with Source Code [2025] This article provides over 100 Machine Learning projects and ideas to provide hands-on experience for both beginners and professionals. Whether you're a student enhancing your resume or a professional advancing your career these projects offer practical insights into the world of Machine Learning an 5 min read K means Clustering â Introduction K-Means Clustering is an Unsupervised Machine Learning algorithm which groups unlabeled dataset into different clusters. It is used to organize data into groups based on their similarity. Understanding K-means ClusteringFor example online store uses K-Means to group customers based on purchase frequ 4 min read K-Nearest Neighbor(KNN) Algorithm K-Nearest Neighbors (KNN) is a supervised machine learning algorithm generally used for classification but can also be used for regression tasks. It works by finding the "k" closest data points (neighbors) to a given input and makesa predictions based on the majority class (for classification) or th 8 min read Backpropagation in Neural Network Back Propagation is also known as "Backward Propagation of Errors" is a method used to train neural network . Its goal is to reduce the difference between the modelâs predicted output and the actual output by adjusting the weights and biases in the network.It works iteratively to adjust weights and 9 min read Introduction to Convolution Neural Network Convolutional Neural Network (CNN) is an advanced version of artificial neural networks (ANNs), primarily designed to extract features from grid-like matrix datasets. This is particularly useful for visual datasets such as images or videos, where data patterns play a crucial role. CNNs are widely us 8 min read Like