Генератор случайных чисел. Необходимо обучить сеть генерировать последовательность случайных чисел из диапазона [0,1]с заданными k первыми моментами. Напомним, что для выборки роль первого момента играет среднее значение, второго — средний квадрат, третьего — средний куб и так далее. Есть два пути решения этой задачи. Первый — используя стандартный генератор случайных чисел подготовить задачник и обучить по нему сеть. Этот путь плох тем, что такой генератор будет просто воспроизводить последовательность чисел, записанную в задачнике. Для получения такого результата можно просто хранить задачник.
Второй вариант — обучать сеть без задачника! Пусть нейросеть принимает один входной сигнал и выдает один выходной. При использовании сети выходной сигнал первого срабатывания сети (первое случайное число) будет служить входным сигналом для второго срабатывания сети и так далее.
Для построения оценки зададимся тремя наборами чисел: M i — необходимое значение i- го момента, L i — длина последовательности, на которой i- ый момент сгенерированной последовательности должен не более чем на s i отличаться от M i . s i — точность вычисления i- го момента.
Выборочная оценка совпадения i- го момента в сгенерированной последовательности на отрезке, начинающемся с j- го случайного числа, вычисляется по следующей формуле:
где α l — выходной сигнал, полученный на l- ом срабатывании сети. Для оценки точности совпадения i- го момента в сгенерированной последовательности на отрезке, начинающемся с j- го случайного числа, воспользуемся оценкой числа с допуском s i :
Таким образом, при обучении сети генерации последовательности из N случайных чисел оценку можно записать в следующем виде:
Производная оценки по выходному сигналу l- го срабатывания сети можно записать в следующем виде:
Используя эту оценку можно обучать сеть генерировать случайные числа. Удобство этого подхода к решению задачи обучения генератора случайных чисел в том, что можно достаточно часто менять инициирующий сеть входной сигнал, что позволит сети генерировать не одну, а много различных последовательностей, обладающих всеми необходимыми свойствами.
При использовании предложенной оценки нет никаких гарантий того, что в генерируемой сетью последовательности не появятся сильно скоррелированные подпоследовательности. Для удаления корреляций можно модифицировать оценку так, чтобы она возрастала при появлении корреляций. Рассмотрим две подпоследовательности длинны L , первая из которых начинается с α i , а другая с α i+k . Коэффициент корреляции этих последовательностей записывается в виде:
В этой формуле приняты следующие обозначения: — среднее по последовательности, начинающейся с α i ; — средний квадрат последовательности начинающейся с α i . Вычисление такого коэффициента корреляции довольно долгий процесс. Однако вместо выборочных моментов в формулу можно подставить значения моментов, которые последовательность должна иметь. В этом случае формула сильно упрощается:
Добавку для удаления корреляций последовательностей длиной от L 1до L 2и смещенных друг относительно друга на смещения от h 1до h 2можно записать в виде:
При необходимости можно ввести и другие поправки, учитывающие требования к генератору случайных чисел.
Составные интерпретатор ответа и оценка
При использовании нейронных сетей для решения различных задач возникает необходимость получать от сети не один ответ, а несколько. Например, при обучении сети решению задачи диагностики отклонений в реакции на стресс нейронная сеть должна была определить наличие или отсутствие тринадцати различных патологий. Если одна сеть может выдавать только один ответ, то для решения задачи необходимо задействовать тринадцать сетей. Однако в этом нет необходимости. Поскольку каждый ответ, который должна выдавать сеть, имеет только два варианта, то можно использовать для его получения классификатор на два класса. Для такого классификатора необходимо два выходных сигнала. Тогда для решения задачи достаточно получать 26 выходных сигналов: первые два сигнала — для определения первой патологии, третий и четвертый — для второй и так далее. Таким образом, интерпретатор ответа для этой задачи состоит из тринадцати интерпретаторов, а оценка из тринадцати оценок. Более того, нет никаких ограничений на типы используемых интерпретаторов или оценок. Возможна комбинация, например, следующих ответов: число с допуском, классификатор на восемь классов, случайное число.
Читать дальше