-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 57e36bb
Showing
47 changed files
with
3,450 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Sphinx build info version 1 | ||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. | ||
config: c6b51c10e20ffa45be5c63e767b50c1b | ||
tags: 645f666f9bcd5a90fca523b33c5a78b7 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
.. Lateral Connections documentation master file, created by | ||
sphinx-quickstart on Mon May 22 17:18:05 2023. | ||
You can adapt this file completely to your liking, but it should at least | ||
contain the root `toctree` directive. | ||
Self-Organisation in a Biologically Inspired Learning Framework Based on Bernoulli Neurons | ||
========================================================================================== | ||
|
||
Welcome to the online showcase of my master's thesis, titled "Self-Organisation in a Biologically Inspired Learning Framework Based on Bernoulli Neurons." This exploration delves into the crossroads of neuroscience and machine learning, focusing on the fascinating phenomenon of self-organisation within an novel learning framework. | ||
Please find the abstract, the full thesis, and videos presenting the results below. | ||
|
||
.. toctree:: | ||
:maxdepth: 1 | ||
:caption: Contents | ||
|
||
presentation | ||
thesis | ||
results/final_results | ||
|
||
--- | ||
|
||
.. raw:: html | ||
|
||
<embed> | ||
<p><a href="_static/results/msc_thesis-Pascal_Sager-V1_0.pdf" target="_blank">Download</a> the thesis as PDF.</p> | ||
</embed> | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
Presentation | ||
============ | ||
|
||
.. video:: _static/results/thesis_defence_presentation.mp4 | ||
:width: 800 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,136 @@ | ||
Results | ||
======= | ||
|
||
In the following, video visualisations of the results presented in the thesis are shown. | ||
The input into the model is a line that is rotating counter-clockwise around the origin. | ||
This input is fed into the sensory system that is shown in the center of the video. | ||
The sensory system has 4 filters to extract different features. These features are visualised with different colors. | ||
|
||
The output of the sensory system is fed into the *S1*, the network with lateral connections building net fragments. | ||
These net fragments are visualised in the top right corner of the video, using the same colors per feature channel as the sensory system. | ||
|
||
The net fragments are fed into *S2*, that maps the net fragments to a 1D representation of length :math:`16`. This 1D vector is visualised | ||
as circles in the bottom center of the video. Thereby, a green circle corresponds to an active neuron, while a red circle corresponds | ||
to an inactive neuron. | ||
The reconstructed net fragment of *S2* is shown in the bottom right corner of the video. | ||
|
||
In the following, the results from multiple experiments are visualised. For each experiment, two videos are shown: | ||
Both videos are produced by the same model using the same weights. However, the first | ||
video shows the activations if a fixed threshold of :math:`0.5` (*S1*) and :math:`0.9` (*S2*) for each neuron is used (i.e. probabilities :math:`\geq 0.5` / :math:`\geq 0.9` lead to an activation of a neuron). | ||
This helps to better understand the behaviour of the model. | ||
The second video shows the activations if the neurons are sampled from a Bernoulli distribution. | ||
This corresponds to the behaviour of the model during training. | ||
|
||
Please not that the model has only seen horizontal, vertical, and diagonal lines during training. | ||
Therefore, *S2* only stored these lines in its memory. | ||
However, *S1* can also build net fragments for data not seen during training. | ||
|
||
.. warning:: | ||
If the videos are not shown, the encoding is not supported by your browser. | ||
Please try a Chromium-based browser (e.g. Google Chrome, Brave Browser, etc.). | ||
|
||
|
||
Rotating Line | ||
~~~~~~~~~~~~~ | ||
|
||
The following videos show the behaviour of the model if the line is rotated around the origin. | ||
|
||
|
||
**Fixed Threshold** | ||
|
||
|
||
.. video:: ../_static/results/final_results/threshold/normal.mp4 | ||
:width: 450 | ||
|
||
**Bernoulli Sampling** | ||
|
||
.. video:: ../_static/results/final_results/bernoulli/normal.mp4 | ||
:width: 450 | ||
|
||
|
||
Noise in the Input | ||
~~~~~~~~~~~~~~~~~~ | ||
|
||
The following videos show the behaviour of the model if each *input* pixel is flipped with a probability of :math:`0.005`. | ||
The model is not able to filter all noise. A reason is that each filter activates quite strongly to noise in the input data, | ||
leading to many active neurons at the same position. This noise roughly correspond to the same pattern that can | ||
be observed at line endings. Therefore, the noise receives lateral support and is not properly suppressed by inhibitory signals. | ||
|
||
**Fixed Threshold** | ||
|
||
.. video:: ../_static/results/final_results/threshold/005_noise.mp4 | ||
:width: 450 | ||
|
||
**Bernoulli Sampling** | ||
|
||
.. video:: ../_static/results/final_results/bernoulli/005_noise.mp4 | ||
:width: 450 | ||
|
||
|
||
Noise in the Feature Channels | ||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
The same experiment is repeated, but this time the noise is added to each *feature channel* after the filter has been applied. | ||
Thus, the same amount of noise is added, but not at the same position per channel. | ||
As it can be observed, the model is able to filter the noise much better. | ||
The reason is that the noise is not concentrated at the same position per channel, but is distributed over the whole image. | ||
Therefore, the noise does not receive enough lateral support and is suppressed. | ||
|
||
**Fixed Threshold** | ||
|
||
.. video:: ../_static/results/final_results/threshold/005_noise_per_channel.mp4 | ||
:width: 450 | ||
|
||
**Bernoulli Sampling** | ||
|
||
.. video:: ../_static/results/final_results/bernoulli/005_noise_per_channel.mp4 | ||
:width: 450 | ||
|
||
|
||
Interrupted Line | ||
~~~~~~~~~~~~~~~~ | ||
|
||
The following videos show the behaviour of the model if the line is interrupted in the middle. | ||
Due to the lateral support, the model is able to reconstruct the line if up to :math:`8` pixels are missing. | ||
This is quite remarkable, as the model has never seen such a line during training and the lateral support range | ||
is limited to :math:`11` pixels. | ||
|
||
|
||
5 Missing Pixels | ||
^^^^^^^^^^^^^^^^ | ||
|
||
**Fixed Threshold** | ||
|
||
.. video:: ../_static/results/final_results/threshold/5_black_pixels.mp4 | ||
:width: 450 | ||
|
||
**Bernoulli Sampling** | ||
|
||
.. video:: ../_static/results/final_results/bernoulli/5_black_pixels.mp4 | ||
:width: 450 | ||
|
||
8 Missing Pixels | ||
^^^^^^^^^^^^^^^^ | ||
|
||
**Fixed Threshold** | ||
|
||
.. video:: ../_static/results/final_results/threshold/8_black_pixels.mp4 | ||
:width: 450 | ||
|
||
**Bernoulli Sampling** | ||
|
||
.. video:: ../_static/results/final_results/bernoulli/8_black_pixels.mp4 | ||
:width: 450 | ||
|
||
10 Missing Pixels | ||
^^^^^^^^^^^^^^^^^ | ||
|
||
**Fixed Threshold** | ||
|
||
.. video:: ../_static/results/final_results/threshold/10_black_pixels.mp4 | ||
:width: 450 | ||
|
||
**Bernoulli Sampling** | ||
|
||
.. video:: ../_static/results/final_results/bernoulli/10_black_pixels.mp4 | ||
:width: 450 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
Thesis | ||
====== | ||
|
||
.. raw:: html | ||
|
||
<embed> | ||
<object data="_static/results/msc_thesis-Pascal_Sager-V1_0.pdf" type="application/pdf" width="100%" height="600px"> | ||
<p>Unable to display PDF file. <a href="_static/results/msc_thesis-Pascal_Sager-V1_0.pdf" target="_blank">Download</a> instead.</p> | ||
</object> | ||
</embed> |
Oops, something went wrong.