Это продолжение предыдущей статьи на https://medium.com/@mkvjayanth1/implementing-a-neural-network-from-scratch-using-classes-in-python-216b74ee8c58
Вот пример того, как создать и обучить нейронную сеть с 2 входными нейронами, 2 скрытыми нейронами и 1 выходным нейроном: (XOR)
# create the neural network with 2 input neurons, 2 hidden neurons, and 1 output neuron nn = NeuralNetwork([2, 2, 1], sigmoid_activation) # create the dataset with input and output values X = np.array([[1, 1], [1, 0], [0, 1], [0, 0]]) y = np.array([[1], [0], [0], [0]]) # train the network nn.train(X, y, learning_rate=0.1, epochs=1000)
В этом примере мы создали нейронную сеть с 2 входными нейронами, 2 скрытыми нейронами и 1 выходным нейроном. Мы также создали набор данных с входными значениями [1, 1], [1, 0], [0, 1], [0, 0]
и соответствующими выходными значениями [1], [0], [0], [0]
. Нейронная сеть обучается с использованием этих входных и выходных данных со скоростью обучения 0.1
и 1000
эпох.
После обучения нейронную сеть можно использовать для прогнозирования новых входных данных. Вот пример того, как сделать прогноз для первого ввода в наборе данных:
# make a prediction for the first input in the dataset inputs = X[0] output = nn.forward(inputs) print(output) # [0.5]
В этом примере нейронная сеть используется для прогнозирования первых входных данных в наборе данных, а выходные данные распечатываются.
Важно отметить, что это простой пример, и есть много других факторов, которые следует учитывать для более надежной и точной нейронной сети, таких как использование лучших алгоритмов оптимизации, методов регуляризации и отдельного набора данных проверки для проверки производительности. модели во время обучения и предотвращения переобучения.
Следите за новостями здесь: https://linktr.ee/jayanthmkv