Нейронная сеть обучения вектора квантования
lvqnet(hiddenSize,lvqLR,lvqLF)
LVQ (обучение вектора квантование) нейронные сети состоят из двух слоев. Первый слой преобразует входные векторы в кластеры, которые найдены сетью во время обучения. Второй слой объединяет группы кластеров первого слоя в классы, заданные целевыми данными.
Общее количество кластеров первого слоя определяется количеством скрытых нейронов. Чем больше скрытый слой, тем больше кластеров может узнать первый слой, и может быть сделано более комплексное отображение входов с целевыми классами. Относительное количество кластеров первого слоя, назначенных каждому целевому классу, определяется согласно распределению целевых классов во время инициализации сети. Это происходит при первой автоматической настройке сети train
вызывается или вручную конфигурируется функцией configure
, или инициализированный вручную функцией init
вызывается.
lvqnet(hiddenSize,lvqLR,lvqLF)
принимает эти аргументы,
hiddenSize | Размер скрытого слоя (по умолчанию = 10) |
lvqLR | Скорость обучения LVQ (по умолчанию = 0,01) |
lvqLF | Функция LVQ-обучения (по умолчанию = |
и возвращает LVQ нейронную сеть.
Другая опция для lvq
функция обучения learnlv2
.
Здесь сеть LVQ обучена классификации цветов радужки.
[x,t] = iris_dataset; net = lvqnet(10); net.trainParam.epochs = 50; net = train(net,x,t); view(net) y = net(x); perf = perform(net,y,t) classes = vec2ind(y);
perf = 0.0489