fork download
  1. import numpy as np
  2. from itertools import product # To generate all binary combinations
  3.  
  4. # Initialisierung der Schwellenwerte
  5. lower_threshold = 0.8
  6. upper_threshold = 1.2
  7.  
  8. # Lernrate
  9. learning_rate = 0.1
  10.  
  11. # Trainingsdaten (Inputs für das XOR-Problem und andere)
  12. inputs = [[0, 0], [0, 1], [1, 0], [1, 1]]
  13.  
  14. # Alle möglichen Zieltabellen (16 Kombinationen)
  15. all_possible_targets = list(product([0, 1], repeat=4))
  16.  
  17. # Trainingsloop für jede mögliche Zieltabelle
  18. for table_index, targets in enumerate(all_possible_targets, start=1):
  19. print(f"\n=== Wahrheitstabelle {table_index}: Targets = {targets} ===")
  20.  
  21. # Trainingsloop mit max. 1000 Iterationen
  22. max_iterations = 1000
  23. epoch = 0
  24. network_trained = False
  25. start_weights = None
  26. final_weights = None
  27. final_bias = None
  28. all_epoch_outputs = [] # Store outputs of all epochs for debugging and transparency
  29.  
  30. while epoch < max_iterations:
  31. epoch += 1
  32. all_correct = True # Flag, um zu überprüfen, ob alle Ausgaben korrekt sind
  33. current_weights = np.random.rand(2) # Zufällige Startgewichte (nur positive Werte)
  34. bias = np.random.rand() # Randomly initialize the bias term for this epoch
  35.  
  36. if epoch == 1: # Die erste Iteration nach Initialisierung
  37. start_weights = current_weights # Speichere die Startgewichte
  38.  
  39. epoch_outputs = [] # To store outputs of this epoch
  40.  
  41. for input_vector, target in zip(inputs, targets):
  42. # Berechnung der gewichteten Summe mit Bias
  43. weighted_sum = np.dot(input_vector, current_weights) + bias
  44.  
  45. # Aktivierungsfunktion (einfache Schwellenwertfunktion)
  46. output = 1 if lower_threshold < weighted_sum < upper_threshold else 0
  47.  
  48. # Fehlerberechnung
  49. error = target - output
  50.  
  51. # Wenn ein Fehler vorliegt, dann weise die Gewichte an
  52. if error != 0:
  53. all_correct = False
  54. current_weights += learning_rate * error * np.array(input_vector)
  55. bias += learning_rate * error # Update the bias
  56.  
  57. epoch_outputs.append((input_vector, output, target)) # Save each iteration's output
  58.  
  59. all_epoch_outputs.append(epoch_outputs)
  60.  
  61. # Überprüfe, ob alle Ausgaben korrekt sind
  62. if all_correct:
  63. network_trained = True
  64. final_weights = current_weights # Speichere die finalen Gewichte
  65. final_bias = bias # Speichere die finale Bias
  66. break # Stoppe, wenn alle Ausgaben korrekt sind
  67.  
  68. # Wenn Tabelle nach 100 Iterationen nicht gelernt wurde, setze neue zufällige Startgewichte
  69. if epoch % 100 == 0:
  70. print(f"Nicht funktionierende Startgewichte: {start_weights}")
  71. start_weights = np.random.rand(2) # Setze neue Startgewichte
  72.  
  73. if network_trained:
  74. print(f"Das Netzwerk hat Wahrheitstabelle {table_index} korrekt nach {epoch} Iterationen gelernt.")
  75. print(f"Die Working Startgewichte waren: {start_weights}")
  76. print(f"Die finalen Gewichte sind: {final_weights}")
  77. print(f"Der finale Bias ist: {final_bias}")
  78.  
  79. # Testen des Netzwerks nach den Lern-Iterationen
  80. print("\nFinal Test Output:")
  81. for input_vector, target in zip(inputs, targets):
  82. weighted_sum = np.dot(input_vector, final_weights) + final_bias
  83. output = 1 if lower_threshold < weighted_sum < upper_threshold else 0
  84. print(f"Input: {input_vector}, Target: {target}, Output: {output}")
  85.  
  86. # Optionally, print out the outputs of each epoch for transparency
  87. print("\nEpoch Outputs:")
  88. for epoch_index, epoch_outputs in enumerate(all_epoch_outputs):
  89. print(f"Epoch {epoch_index + 1}:")
  90. for input_vector, output, target in epoch_outputs:
  91. print(f" Input: {input_vector}, Output: {output}, Target: {target}")
  92.  
  93. else:
  94. print(f"Das Netzwerk hat Wahrheitstabelle {table_index} nach {epoch} Iterationen nicht korrekt gelernt.")
  95.  
Success #stdin #stdout 0.48s 29340KB
stdin
Standard input is empty
stdout
=== Wahrheitstabelle 1: Targets = (0, 0, 0, 0) ===
Das Netzwerk hat Wahrheitstabelle 1 korrekt nach 8 Iterationen gelernt.
Die Working Startgewichte waren: [0.79198681 0.54415176]
Die finalen Gewichte sind: [0.97673763 0.64299294]
Der finale Bias ist: 0.6723320939161155

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 0, Output: 0
Input: [1, 0], Target: 0, Output: 0
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 1, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 1, Target: 0
Epoch 4:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 5:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 6:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 7:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 8:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 2: Targets = (0, 0, 0, 1) ===
Das Netzwerk hat Wahrheitstabelle 2 korrekt nach 3 Iterationen gelernt.
Die Working Startgewichte waren: [0.90177675 0.77285735]
Die finalen Gewichte sind: [0.58676608 0.46874324]
Der finale Bias ist: 0.13795479175927794

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 0, Output: 0
Input: [1, 0], Target: 0, Output: 0
Input: [1, 1], Target: 1, Output: 1

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 2:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 3:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 1, Target: 1

=== Wahrheitstabelle 3: Targets = (0, 0, 1, 0) ===
Das Netzwerk hat Wahrheitstabelle 3 korrekt nach 2 Iterationen gelernt.
Die Working Startgewichte waren: [0.91774233 0.80044372]
Die finalen Gewichte sind: [0.74139342 0.90522727]
Der finale Bias ist: 0.41377989441018503

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 0, Output: 0
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 4: Targets = (0, 0, 1, 1) ===
Das Netzwerk hat Wahrheitstabelle 4 korrekt nach 13 Iterationen gelernt.
Die Working Startgewichte waren: [0.51943671 0.28999208]
Die finalen Gewichte sind: [0.78652848 0.02634704]
Der finale Bias ist: 0.10610313541778615

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 0, Output: 0
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 1, Output: 1

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 3:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 4:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 5:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 6:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 7:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 8:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 9:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 10:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 11:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 12:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 13:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1

=== Wahrheitstabelle 5: Targets = (0, 1, 0, 0) ===
Das Netzwerk hat Wahrheitstabelle 5 korrekt nach 3 Iterationen gelernt.
Die Working Startgewichte waren: [-0.00939843  0.82043627]
Die finalen Gewichte sind: [0.02190181 0.96911264]
Der finale Bias ist: 0.21056663449368096

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 0, Output: 0
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 1, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 6: Targets = (0, 1, 0, 1) ===
Das Netzwerk hat Wahrheitstabelle 6 korrekt nach 11 Iterationen gelernt.
Die Working Startgewichte waren: [1.07398913 0.79405459]
Die finalen Gewichte sind: [0.1418374  0.94780496]
Der finale Bias ist: 0.10759294239687878

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 0, Output: 0
Input: [1, 1], Target: 1, Output: 1

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 3:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 4:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 1, Target: 1
Epoch 5:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 6:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 7:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 8:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 9:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 10:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 1
Epoch 11:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 1, Target: 1

=== Wahrheitstabelle 7: Targets = (0, 1, 1, 0) ===
Das Netzwerk hat Wahrheitstabelle 7 korrekt nach 12 Iterationen gelernt.
Die Working Startgewichte waren: [1.05727945 0.28242841]
Die finalen Gewichte sind: [0.68554615 0.60195374]
Der finale Bias ist: 0.3258317633274491

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 4:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 5:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 6:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 7:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 8:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 9:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 10:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 11:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 12:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 8: Targets = (0, 1, 1, 1) ===
Das Netzwerk hat Wahrheitstabelle 8 korrekt nach 24 Iterationen gelernt.
Die Working Startgewichte waren: [1.13312102 0.88309728]
Die finalen Gewichte sind: [0.1529872  0.08170848]
Der finale Bias ist: 0.7272064293831566

Final Test Output:
Input: [0, 0], Target: 0, Output: 0
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 1, Output: 1

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 2:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 3:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 4:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 5:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 6:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 7:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 8:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 9:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 10:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 11:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 12:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 13:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 14:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 15:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 16:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 17:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 18:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 19:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 20:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 21:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 22:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 23:
  Input: [0, 0], Output: 1, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 24:
  Input: [0, 0], Output: 0, Target: 0
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1

=== Wahrheitstabelle 9: Targets = (1, 0, 0, 0) ===
Das Netzwerk hat Wahrheitstabelle 9 korrekt nach 7 Iterationen gelernt.
Die Working Startgewichte waren: [0.26326648 0.20742581]
Die finalen Gewichte sind: [0.36842205 0.70316684]
Der finale Bias ist: 0.8424291732913616

Final Test Output:
Input: [0, 0], Target: 1, Output: 1
Input: [0, 1], Target: 0, Output: 0
Input: [1, 0], Target: 0, Output: 0
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 4:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 5:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 1, Target: 0
Epoch 6:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 7:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 10: Targets = (1, 0, 0, 1) ===
Nicht funktionierende Startgewichte: [0.14018326 0.77051189]
Nicht funktionierende Startgewichte: [0.24235333 0.47328857]
Nicht funktionierende Startgewichte: [0.29926289 0.8825035 ]
Nicht funktionierende Startgewichte: [0.98886176 0.79102067]
Nicht funktionierende Startgewichte: [0.92666328 0.39854702]
Nicht funktionierende Startgewichte: [0.2220513  0.05297827]
Nicht funktionierende Startgewichte: [0.37476609 0.43114177]
Nicht funktionierende Startgewichte: [0.48196683 0.0878386 ]
Nicht funktionierende Startgewichte: [0.01713097 0.94993234]
Nicht funktionierende Startgewichte: [0.63262587 0.38700363]
Das Netzwerk hat Wahrheitstabelle 10 nach 1000 Iterationen nicht korrekt gelernt.

=== Wahrheitstabelle 11: Targets = (1, 0, 1, 0) ===
Das Netzwerk hat Wahrheitstabelle 11 korrekt nach 40 Iterationen gelernt.
Die Working Startgewichte waren: [ 0.04458601 -0.03175567]
Die finalen Gewichte sind: [0.24387195 0.50449809]
Der finale Bias ist: 0.8544634974566705

Final Test Output:
Input: [0, 0], Target: 1, Output: 1
Input: [0, 1], Target: 0, Output: 0
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 4:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 5:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 6:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 7:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 8:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 9:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 10:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 11:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 12:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 13:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 14:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 15:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 16:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 17:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 18:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 19:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 20:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 21:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 22:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 23:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 24:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 25:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 26:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 27:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 28:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 29:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 30:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 31:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 32:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 33:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 34:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 35:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 36:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 37:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 38:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 39:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 0
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 40:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 0
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 12: Targets = (1, 0, 1, 1) ===
Nicht funktionierende Startgewichte: [0.41151359 0.5790887 ]
Nicht funktionierende Startgewichte: [0.74166198 0.24974337]
Nicht funktionierende Startgewichte: [0.1905432  0.24141266]
Nicht funktionierende Startgewichte: [0.56944323 0.45714785]
Nicht funktionierende Startgewichte: [0.26697318 0.64857771]
Nicht funktionierende Startgewichte: [0.59322687 0.45742844]
Nicht funktionierende Startgewichte: [0.82549091 0.99004356]
Nicht funktionierende Startgewichte: [0.29547281 0.1640646 ]
Nicht funktionierende Startgewichte: [0.90567294 0.51380785]
Nicht funktionierende Startgewichte: [0.90615912 0.65291827]
Das Netzwerk hat Wahrheitstabelle 12 nach 1000 Iterationen nicht korrekt gelernt.

=== Wahrheitstabelle 13: Targets = (1, 1, 0, 0) ===
Das Netzwerk hat Wahrheitstabelle 13 korrekt nach 4 Iterationen gelernt.
Die Working Startgewichte waren: [0.81441676 0.27245453]
Die finalen Gewichte sind: [0.53725299 0.31232216]
Der finale Bias ist: 0.8831803415070067

Final Test Output:
Input: [0, 0], Target: 1, Output: 1
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 0, Output: 0
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 2:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 0
  Input: [1, 1], Output: 1, Target: 0
Epoch 4:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 0
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 14: Targets = (1, 1, 0, 1) ===
Nicht funktionierende Startgewichte: [0.54220401 1.0420626 ]
Nicht funktionierende Startgewichte: [0.02123254 0.17547187]
Nicht funktionierende Startgewichte: [0.5267869  0.81816837]
Nicht funktionierende Startgewichte: [0.3109622  0.66906488]
Nicht funktionierende Startgewichte: [0.23279579 0.68796052]
Nicht funktionierende Startgewichte: [0.37118363 0.24712997]
Nicht funktionierende Startgewichte: [0.6859808  0.08959029]
Nicht funktionierende Startgewichte: [0.57650016 0.57009832]
Nicht funktionierende Startgewichte: [0.81869572 0.83305522]
Nicht funktionierende Startgewichte: [0.74344556 0.82125252]
Das Netzwerk hat Wahrheitstabelle 14 nach 1000 Iterationen nicht korrekt gelernt.

=== Wahrheitstabelle 15: Targets = (1, 1, 1, 0) ===
Das Netzwerk hat Wahrheitstabelle 15 korrekt nach 24 Iterationen gelernt.
Die Working Startgewichte waren: [0.86234029 0.60193411]
Die finalen Gewichte sind: [0.33409687 0.37850994]
Der finale Bias ist: 0.8104543484429535

Final Test Output:
Input: [0, 0], Target: 1, Output: 1
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 0, Output: 0

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 2:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 3:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 4:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 5:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 6:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 7:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 8:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 9:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 10:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 11:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 12:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 13:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 0
Epoch 14:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 15:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 16:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 17:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 18:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 19:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 20:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 21:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 22:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 23:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0
Epoch 24:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 0

=== Wahrheitstabelle 16: Targets = (1, 1, 1, 1) ===
Nicht funktionierende Startgewichte: [1.11003187 1.16750026]
Das Netzwerk hat Wahrheitstabelle 16 korrekt nach 105 Iterationen gelernt.
Die Working Startgewichte waren: [0.08868685 0.73585111]
Die finalen Gewichte sind: [0.04165402 0.00041247]
Der finale Bias ist: 0.9202810371242847

Final Test Output:
Input: [0, 0], Target: 1, Output: 1
Input: [0, 1], Target: 1, Output: 1
Input: [1, 0], Target: 1, Output: 1
Input: [1, 1], Target: 1, Output: 1

Epoch Outputs:
Epoch 1:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 2:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 3:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 4:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 5:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 6:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 7:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 8:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 9:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 10:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 11:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 12:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 13:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 14:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 15:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 16:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 17:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 18:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 19:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 20:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 21:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 22:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 23:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 24:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 25:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 26:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 27:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 28:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 29:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 30:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 31:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 32:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 33:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 34:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 35:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 36:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 37:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 38:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 39:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 40:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 41:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 42:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 43:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 44:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 45:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 46:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 47:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 48:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 49:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 50:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 51:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 52:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 53:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 54:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 55:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 56:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 57:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 58:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 59:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 60:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 61:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 62:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 63:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 64:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 65:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 66:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 67:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 68:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 69:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 70:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 71:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 72:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 73:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 74:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 75:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 76:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 77:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 78:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 79:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 80:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 81:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 82:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 83:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 84:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 85:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 86:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 87:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 88:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 89:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 90:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 91:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 92:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 93:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 94:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 95:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 96:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 97:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 98:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 99:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 1, Target: 1
Epoch 100:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 101:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 102:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 103:
  Input: [0, 0], Output: 0, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 104:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 0, Target: 1
  Input: [1, 0], Output: 0, Target: 1
  Input: [1, 1], Output: 0, Target: 1
Epoch 105:
  Input: [0, 0], Output: 1, Target: 1
  Input: [0, 1], Output: 1, Target: 1
  Input: [1, 0], Output: 1, Target: 1
  Input: [1, 1], Output: 1, Target: 1