-
-
Notifications
You must be signed in to change notification settings - Fork 46.6k
/
Copy pathbinary_step.py
37 lines (24 loc) · 887 Bytes
/
binary_step.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
"""
This script demonstrates the implementation of the Binary Step function.
It's an activation function in which if the input to the
activation function is greater than a threshold, the neuron is
activated, else it is deactivated
It's a simple activation function which is mentioned in this wikipedia article:
https://en.wikipedia.org/wiki/Activation_function
"""
import numpy as np
def binary_step(vector: np.ndarray) -> np.ndarray:
"""
Implements the binary step function
Parameters:
vector (ndarray): A vector that consitis of numeric values
Returns:
vector (ndarray): A vector that consitis of values 0 or 1
>>> vector = np.array([-1.2, 0, 2, 1.45, -3.7, 0.3])
>>> binary_step(vector)
array([0, 0, 1, 1, 0, 1])
"""
return np.where(vector > 0, 1, 0)
if __name__ == "__main__":
import doctest
doctest.testmod()