При работе с исходным кодом необходимо учитывать особенности механизма обмена данными в платформе.
Kaspersky Neuromorphic Platform обеспечивает обмен данными между популяциями и проекциями, а также между объектами платформы и объектами внешней среды. Обмен данными между популяциями и проекциями осуществляется через сообщения.
Обмен данными между популяциями и проекциями
Нейроны популяции генерируют сообщения, содержащие спайки, на которые может быть подписано более одной проекции. Спайки популяций передаются проекциям синапсов.
После получения спайков бэкенд вычисляет синаптические воздействия. Проекции отправляют сообщения со значениями синаптических воздействий постсинаптическим популяциям нейронов.
Обмен данными между бэкендом и внешней средой
Бэкенд принимает данные от внешней среды в виде спайков. Спайки могут быть переданы в бэкенд в синхронном режиме (по запросу пользователя). Для получения спайков вызывается блокирующий метод источника данных.
Сообщения от бэкенда во внешнюю среду могут передаваться подписчикам по сигналу бэкенда или в синхронном режиме по запросу пользователя.
Если требуется, вы можете реализовать и использовать асинхронный режим для обмена данными между бэкендом и внешней средой.
Обмен данными между нейронной сетью и внешней средой
Из внешней среды в нейронную сеть данные поступают через каналы ввода, которые преобразуют эти данные в спайки.
Во внешнюю среду нейронная сеть передает данные через каналы вывода, подключенные к указанным популяциям и преобразующие спайки в данные. Передача данных (например, потенциала мембраны) возможна также через подсистему мониторинга.
Если требуется, вы можете реализовать и использовать собственные объекты платформы для обмена данными между нейронной сетью и внешней средой.
В начало