В Kaspersky Neuromorphic Platform используется формат SONATA для описания топологии нейронной сети.
В формате SONATA нейронная сеть представляется в виде графа, состоящего из вершин, соответствующих нейронам, и ребер, соединяющих вершины графа и соответствующих синапсам. Нейронам и синапсам присваиваются типы соответствующих популяций и проекций. Параметры, назначенные типам нейронов или синапсов, автоматически присваиваются всем нейронам или синапсам этих типов. Кроме того, нейронам, синапсам и их типам могут быть назначены атрибуты, которые определяют различные аспекты нейронной сети (например, положение, тип, параметры модели).
Популяция нейронов состоит из одной или нескольких групп нейронов с единообразной табличной структурой. Популяции сериализуются в HDF5-файлы и связываются между собой CSV-файлом, описывающим типы нейронов и атрибуты, применимые к этим типам. Группы нейронов представляются в виде групп HDF5-файлов, содержащих наборы данных, длины которых соответствуют количеству нейронов в группах. Данные в HDF5-файлах хранятся в бинарном виде.
Аналогично нейронам, синапсы определяются в проекциях, хранящихся в HDF5-файлах. В этих файлах описываются атрибуты для каждого синапса. Проекция синапсов состоит из одной или нескольких групп синапсов с единообразной табличной структурой. Каждый HDF5-файл связан с CSV-файлом, в котором определены типы синапсов и атрибуты, применимые к синапсам этих типов.
На рисунке ниже представлена схема загрузки объекта нейронной сети из формата SONATA и сохранение топологии сети в формат SONATA.

Загрузка и сохранение нейронной сети