Проверка вычислений нейрона.
Чтобы получить нейросеть, нарисованную в конструкторе, нажимаем "Скачать".

В архиве Neuronet.zip содержатся библиотеки для подключения к проекту .net9: Neuronet.dll, Common.dll и Shader.dll. Если в одном проекте планируется использование более одной нейросети, нужно присвоить уникальное имя перед скачиванием, чтобы избежать конфликта имён. Например, если ввести цифру 1, будет сгенерирован класс NeurobenchRu.Neuronet1.
Создадим проект консольного приложения в VS Code для тестирования полученных библиотек.
Пример подключения библиотек в VS Code:

Теперь нам доступны классы из подключенных библиотек, напишем в Program:

Метод neuronet.Init() инициализирует пустую нейросеть весами и смещениями (параметрами). Если в каталоге присутствует файл parameters.json, веса будут считанны оттуда, но так как это первый запуск и файла ещё нет - параметры заполняются случайными величинами.
После инициализации можно вызвать метод neuronet.Save(), который создаст файл parameters.json:

Чтобы узнать ответ нейросети на вопрос "Идти ли сегодня гулять?" на вход нужно подать массив из трёх чисел от 0 до 1. Последовательность чисел важна, её нужно определить 1 раз и запомнить. Пусть первое число отвечает за погоду, второе за настроение, третье за наличие денег. За подачу данных на вход отвечает метод neuronet.SetInput(). После установки входа можно вызывать метод neuronet.Calculate(), сигнал пройдёт вперёд до выхода нейросети neuronet.Output.
Попробуем подать на вход [1, 0, 1], вызвать метод neuronet.Calculate() и посмотреть, что будет на выходе:

Результат будет примерно такой:

Дело в том, что веса и смещения инициализировались случайным образом. В реальной жизни веса и смещения никогда не нужно править вручную, но раз мы хотим удостовериться в правильности нашего понимания математики нейрона, поменяем веса и смещение, открыв файл parameters.json:

Где здесь веса, а где смещения нейросеть понимает по полю id, и заполняет соответствующие буферы. А мы просто догадаемся по количеству параметров: количество смещений должно равняться количеству нейронов, у нас он 1. А количество весов должно равняться количеству входов умноженному на количество нейронов в выходном слое: 3 * 1 = 3.
В параметрах с одним числом запишем число -5 (смещение). Три числа (весов) нужно переписать на 10, 2 и 1 (в той же последовательности, как мы определили выше).

Сохраняем и возвращаемся к коду, если теперь запустить выполнение, мы получим 6, как и ожидалось:
