-
Notifications
You must be signed in to change notification settings - Fork 0
2 BasicElement
- synapse_learning_rate (default 0.01) - темп корректировки веса синапсов
- lqv_learning_rate (default 0.01) - темп корректировки ядер LQV-кластеров
- d_neuron_learning_rate (default 0.01) - темп корректировки статистики вознаграждения D-нейрона
- lqv_kernels_usage_threshold_frequency (default 0.05) - минимальная частота выбора ядра LQV-кластера. "пустые" LQV-кластера автоматически реактивируются, получая другое ядро.
- lqv_kernels_usage_frequency_learning_rate (default 0.01) - темп обновления статистики выбора ядра LQV-кластера.
- d_neuron_reassessment_prob (default 0.001) - Влияет только на D-нейрон. Определяет вероятность переоценки вознаграждения за выбор альтернативного действия.
Реализация синапса.
Конструктор синапса.
Параметры:
- signal_source (required) - объект источника сигнала. Источник сигнала должен реализовывать интерфейс Template.SignalSource.
- signal_index (required) - индекс сигнального канала. Источник сигнала может иметь более одного канала. Поэтому для однозначности помимо самого источника сигнала необходимо указать и номер сигнального канала.
- weight (default 1.0) - начальный вес синапса. В процессе функционирования вес синапса адаптивно изменяется. Вес синапса должен иметь положительное значение.
Итерация работы синапса. Синапс считывает сигнал из источника и корректирует свой вес.
Сигнал на выходе синапса.
Вес синапса. Вес синапса принимает только не отрицательные значения. В отличие от "классической" архитектуры ИНС, здесь синапс не изменяет проводимый сигнал. Вес синапса используется для расчета средневзвешенной суммы сигналов из группы синапсов.
Реализация дендрита.
Конструктор дендрита.
Параметры:
- synapses (default None) - начальный список синапсов, из которых дендрит принимает сигнал. _В отличие от "классической" архитектуры ИНС, где один синапс передает сигнал только в один нейрон, здесь один синапс может поставлять сигнал в группу нейронов (опосредованно через дендриты). Для этого достаточно один и тот же объект синапса передать в конструктор нескольких нейронов.
Добавление синапсов к дендриту.
Параметры:
- synapses (required) - список добавляемых синапсов
Итерация работы дендрита. Считываются сигналы с синапсов, веса синапсов и вычисляется итоговый средневзвешенный сигнал. Сам дендрит только считывает сигналы из синапсов. Их работу дендрит не инициирует.
Сигнал на выходе дендрита.
Реализация LQV-нейрона.
Конструктор нейрона.
Параметры:
- dendrites (required) - список дендритов, исходящие сигналы которых принимаются нейроном.
- number_of_kernels (required) - Количество ядер LQV-кластеров, в которые отображается вектор сигналов от дендритов нейрона. Минимальное значение 2.
Возвращает количество сигнальных каналов источника сигнала, в данном случае LQV-нейрона.
Возвращает значение выходного сигнала нейрона.
Параметры:
- signal_index - номер сигнального канала. Может меняться от 0 до get_number_of_outputs() - 1.
Итерация работы нейрона:
- Нейрон инициирует работу дендритов.
- Нейрон считывает выходные сигналы дендритов.
- Вычисляется вектор расстояний между LQV-ядрами и входным вектором сигналов.
- Вектор расстояний отображается в выходные сигналы нейрона.
- Корректируются LQV-ядра (обучение LQV-нейрона).
Сброс выходных сигналов нейрона в нулевые значения. Можно сказать, стирание кратковременной памяти нейрона.
Реализация D-нейрона.
Конструктор нейрона.
Параметры:
- dendrites (required) - список дендритов, исходящие сигналы которых принимаются нейроном.
- number_of_kernels (required) - Количество ядер LQV-кластеров, в которые отображается вектор сигналов от дендритов нейрона. Минимальное значение 2.
Метод необходим для реализации интерфейса Template.SignalSource. Для D-нейрона всегда возвращает 1.
Возвращает значение выходного сигнала D-нейрона. Фиктивный параметр _dummy потребовался для реализации интерфейса Template.SignalSource.
Итерация работы нейрона:
- Нейрон инициирует работу дендритов.
- Нейрон считывает выходные сигналы дендритов.
- Входной вектор сигналов отображается на один из LQV-ядер.
- Решается какой сигнал вернуть из нейрона
- Корректируются LQV-ядра и и другие параметры генерации выходного сигнала (обучение D-нейрона).
Параметры:
- reward (required) - Уровень вознаграждения нейрона за свое прошлое поведение. Положительное значение указывает на полезное поведение. Отрицательное значение указывает на отрицательные результаты поведения. Передается значение 0 в случае отсутствия повода для "поощрения" или "наказания" нейрона.
Сброс выходного сигнала нейрона в нулевое значения. Можно сказать, стирание кратковременной памяти нейрона.