From bda88776f72cbf49cfccb8ac3e6f2c0c12473ce5 Mon Sep 17 00:00:00 2001 From: judsonupchurch Date: Mon, 14 Oct 2024 21:08:00 +0000 Subject: [PATCH] Export File Type Tests --- lecture01/lecture_01.html | 7755 +++++++++++++++++++++++++++++++++++++ lecture01/lecture_01.pdf | Bin 0 -> 24208 bytes lecture01/lecture_01.py | 82 + 3 files changed, 7837 insertions(+) create mode 100644 lecture01/lecture_01.html create mode 100644 lecture01/lecture_01.pdf create mode 100644 lecture01/lecture_01.py diff --git a/lecture01/lecture_01.html b/lecture01/lecture_01.html new file mode 100644 index 0000000..09ad58a --- /dev/null +++ b/lecture01/lecture_01.html @@ -0,0 +1,7755 @@ + + + + + +lecture_01 + + + + + + + + + + + + +
+ + + + + +
+ + diff --git a/lecture01/lecture_01.pdf b/lecture01/lecture_01.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bef5406cfaf2e9010a11a8a4b956ae8fb5bd3265 GIT binary patch literal 24208 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 HmPY>{W`Ez2 literal 0 HcmV?d00001 diff --git a/lecture01/lecture_01.py b/lecture01/lecture_01.py new file mode 100644 index 0000000..7f60d8a --- /dev/null +++ b/lecture01/lecture_01.py @@ -0,0 +1,82 @@ +# %% [markdown] +# # Neuron with 3 inputs + +# %% +inputs = [1, 2, 3] +weights = [0.2, 0.8, -0.5] +bias = 2 + +output = (inputs[0]*weights[0] + inputs[1]*weights[1] + inputs[2]*weights[2] + bias) + +print(f"Output: {output}") + +# %% [markdown] +# # Neuron with 4 inputs + +# %% +inputs = [1.0, 2.0, 3.0, 2.5] +weights = [0.2, 0.8, -0.5, 1.0] +bias = 2 + +output = (inputs[0]*weights[0] + inputs[1]*weights[1] + inputs[2]*weights[2] + inputs[3]*weights[3] + bias) + +print(output) + +# %% [markdown] +# # Layer of 3 neurons with 4 inputs + +# %% +num_neurons = 3 +num_inputs = 4 +inputs = [1.0, 2.0, 3.0, 2.5] +weights = [[0.2, 0.8, -0.5, 1.0], + [0.5, -0.91, 0.26, -0.5], + [-0.26, -0.27, 0.17, 0.87]] +biases = [2, 3, 0.5] + +outputs = [] +for i in range(num_neurons): + output = 0 + for j in range(num_inputs): + output += inputs[j]*weights[i][j] + output += biases[i] + outputs.append(output) + +print(outputs) + +# %% [markdown] +# # Layer of 3 neurons with 4 inputs + +# %% +num_neurons = 3 +num_inputs = 4 +inputs = [1.0, 2.0, 3.0, 2.5] +weights = [[0.2, 0.8, -0.5, 1.0], + [0.5, -0.91, 0.26, -0.5], + [-0.26, -0.27, 0.17, 0.87]] +biases = [2, 3, 0.5] + +outputs = [] +for neuron_weights, neuron_bias in zip(weights, biases): + neuron_output = 0 + for input, weight in zip(inputs, neuron_weights): + neuron_output += input*weight + neuron_output += neuron_bias + outputs.append(neuron_output) + +print(outputs) + +# %% [markdown] +# # Single Neuron using Numpy + +# %% +import numpy as np + +inputs = [1.0, 2.0, 3.0, 2.5] +weights = [0.2, 0.8, -0.5, 1.0] +bias = 2 + +output = np.dot(inputs, weights) + bias +print(output) + +