Скачать книгу

= gSecondsTimerInstanceCount++;

      mReferenceTime = Now ();

      }

      // Constructor with initial elapse time [s] (начальное время истечения)

      SecondsTimer (uint seconds)

      {

      mId = gSecondsTimerInstanceCount++;

      // Получить текущее время, добавить прошедшие секунды и сохранить полученное время.

      int now = Now ();

      mReferenceTime = now + seconds;

      // Только для целей отладки:

      /*

      string timeStr;

      TimeToString (now, timeStr);

      Trace (timeStr);

      TimeToString (mReferenceTime, timeStr);

      Trace (» Timer " + mId + " started. Will elapse at:" + timeStr + "\n»);

      строка timeStr;

      TimeToString (now (сейчас), timeStr);

      Trace (Трассировка) (timeStr);

      TimeToString (mReferenceTime, timeStr);

      Trace («Таймер» + mId + «запущен. Пройдет по адресу (закончится):" + timeStr + "\ n»);

      */

      }

      ~SecondsTimer ()

      {

      gSecondsTimerInstanceCount – ;

      }

      // Проверяем, истек ли таймер

      bool IsElapsed ()

      {

      int now = Now ();

      bool elapsed = now> = mReferenceTime;

      return elapsed;

      }

      // Запускаем таймер по истечении заданного времени

      void Start (uint seconds)

      {

      // Получить текущее время, добавить прошедшие секунды и сохранить полученное время.

      int now = Now ();

      mReferenceTime = now + seconds;

      }

      // Запускаем таймер для подсчета секунд

      void Start ()

      {

      // Получить текущее время, установить время истечения на то же значение.

      int now = Now ();

      mReferenceTime = now;

      }

      // Return the elapsed seconds since the timer was started

      int SecondsSinceStart ()

      {

      // Получить текущее время

      return Now () – mReferenceTime;

      }

      // Контрольное время для этого таймера

      int mReferenceTime;

      // ID таймера для этого таймера (необходим только для отладочных сообщений)

      uint mId;

      };

      Экспорт нейросети

      Что собой представляет нейросеть?

      С внутренним устройством нейросети можно познакомиться, произведя экспорт созданной нейросети (Exporting a Net) в csv-файл.

      В MemBrain есть возможность экспортировать сетевой список текущей нейронной сети через файл csv, содержащий значения, разделенные запятыми. Этот файл в дальнейщем можно использовать для импорта нейронной сети, созданной и, обученной с помощью MemBrain, в другое прикладное программное обеспечение.

      С помощью следующего диалога можно выбрать уровень детализации, который вы хотите включить в файл экспорта.

      Чтобы экспортировать сеть, выберите <File> <Export …>. Появится:

      Рис.12 Настройка экспорта нейросети

      Этот диалог позволяет выбрать свойства нейронов и ссылок, которые нужно экспортировать в файл. Когда вы сделали свой выбор, нажмите ОК. Вам будет предложено выбрать местоположение и имя файла для сохранения экспортированного файла.

      Структура и состав экспортируемого CSV файла (Net CSV File)

      Когда вы экспортируете сеть, MemBrain создает для этой цели секционированный CSV-файл. Этот файл состоит из разделов данных, которые идентифицируются несколькими ключевыми словами, каждое из которых включено в начальный и конечный теги '<' и '>' соответственно.

Скачать книгу