- Представлен пакет ЦП
- Все реализации слоев перенесены в пакет cpu.
- Добавлен префикс «Cpu» к именам интерфейсов слоев.
- Инструкции и реализация уровня идентификации перемещены в соответствующие подпакеты активации.
- Теперь есть абстрактный базовый класс уровня активации и интерфейс.
- Удалена функция активацииLayers.
- Введены инструкции по оптимизации (аналог инструкций по слоям)
- Инструкции для оптимизируемых слоев теперь требуют инструкций по оптимизации.
- Добавлен префикс «ЦП» к именам реализаций оптимизатора на базе ЦП.
- Пакеты «cpu» и «cuda» содержат реализации инструкций в подпакетах «layers» и «optimization».
- Аккумуляторы и функции плотного/разреженного обновления перемещены в подпакет оптимизации процессора.
- Удалены интерфейсы DenseForward и Chainable.
- Организованные базовые классы и интерфейсы для слоев CUDA (аналогично базовым классам и интерфейсам для слоев ЦП)
- Введены инструкции слоя CUDA.
- Слои CUDA создаются для данной среды CUDA.
- Добавлены интерфейсы CudaEntryPointInstruction, CudaForwardLayerInstruction и CudaActivationLayerInstruction.
- CublasProjectionLayer теперь реализует CudaForwardLayerInstruction, а CudaSigmoidLayer реализует CudaActivationLayerInstruction.
- Уровни CUDA распространяют указатели на данные на устройстве, а не на сами данные.
- Функция cublasProject больше не обращается к результату устройства с хоста.
- Переписал CudaSigmoidLayerTest
- Функция фабрики сигмовидных инструкций и, косвенно, функция активацииLayer ожидают параметр измерения. Это необходимо для создания экземпляра CublasSigmoidLayer.
- Сокращены названия некоторых параметров: «weightInitializationStrategy» переименовано в «weightInitialization», «optimizationStrategy» изменено на «оптимизация» и т.д.
- Удалены демонстрации CUDA: они будут повторно реализованы и улучшены в ходе следующих нескольких коммитов.
Вычисления v0.7.8
schedule
24.04.2022