Нейроные сети постоянного времени (LTCs)

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


Оставайтесь с нами!

Это официальный репозиторий для LTC-сетей, описанный в статье: https://arxiv.org/abs/2006.04439 Этот репозиторий позволяет вам обучать модели непрерывного времени с обратным распространением во времени (BPTT). Доступные модели непрерывного времени::

МоделиРекомендации
Жидкостные сети постоянной времениhttps://arxiv.org/abs/2006.04439
Нейронные Одыhttps://papers.nips.cc/paper/7892-neural-ordinary-differential-equations.pdf
Rnns непрерывного времениhttps://www.sciencedirect.com/science/article/abs/pii/S089360800580125X
Непрерывные Стробируемые рекуррентные единицы (ГРУ)https://arxiv.org/abs/1710.04110

Реквизиты

Все модели были реализованы протестированы с TensorFlow 1.14.0 и python3 на машинах Ubuntu 16.04 и 18.04. Все последующие шаги предполагают, что они выполняются в этих условиях.

Подготовка

Сначала мы должны загрузить все наборы данных, запустив

источник download_datasets.sh

Этот скрипт создает папку data, в которой хранятся все загруженные наборы данных.

Обучение и оценка моделей

На каждый набор данных приходится ровно один модуль python:

  • Сегментация жестов рук: gesture.py
  • Обнаружение занятости номера: occupancy.py
  • Распознавание человеческой деятельности: har.py
  • Прогнозирование объема трафика: traffic.py
  • Прогнозирование уровня озона: ozone.py

Каждый скрипт принимает следующие четыре агрумента:

  • --model: lstm | ctrnn | ltc | ltc_rk | ltc_ex
  • --epochs: number of training epochs (default 200)
  • --size: number of hidden RNN units (default 32)
  • --log: interval of how often to evaluate validation metric (default 1)

Каждый сценарий обучает заданную модель для заданного числа эпох и оценивает производительность проверки после каждого logшага. В конце обучения восстанавливается наиболее эффективная контрольная точка, и модель оценивается на тестовом наборе. Все результаты сохраняются в resultsпапке путем добавления результата в CSV-файл.

Например, мы можем обучить и оценить CT-RNN, выполнив

python3 har.py --модель ctrnn

После завершения работы скрипта должен быть создан файлresults/har/ctrnn_32.csv, содержащий следующие столбцы:

  • best epoch: Номер эпохи, который достиг наилучшего показателя валидации
  • train loss: Тренировочные потери достигаются в лучшую эпоху
  • train accuracy: Тренировочная метрика достигнута в лучшую эпоху
  • valid loss: Потеря валидации, достигнутая в лучшую эпоху
  • valid accuracy: Наилучшая метрика валидации, достигнутая во время обучения
  • test loss: Потеря на тестовом наборе
  • test accuracy: Метрика на тестовом наборе

Гиперпараметры

ПараметрЦенностьОписание
Размер минибатча16Количество обучающих выборок, по которым вычисляется обновление градиентного спуска
Скорость обучения0.001/0.020,01-0,02 для LTC, 0,001 для всех других моделей.
Скрытые блоки32Количество скрытых блоков каждой модели
ОптимизаторАдамСм. (Kingma and Ba, 2014)
beta_10.9Параметр метода Adam
beta_20.999Параметр метода Adam
Эпсилон1е-08Параметр Эпсилон-шляпы метода Адама
Количество эпох200Максимальное количество тренировочных эпох
Длина BPTT32Обратное распространение через длину времени во временных шагах
ОДА решатель sreps1/6относительно входного периода выборки
Интервал оценки валидации1Интервал эпох обучения при оценке метрик по валидации

Анализ Длины Траектории

Запустите main.mфайл, чтобы получить результаты длины траектории для желаемой настройки, настраиваемой в коде.


Источник: github.com

Комментарии: