Консультация № 174148
11.11.2009, 23:19
35.00 руб.
0 4 1
Доброго времени суток, уважаемые эксперты!
Вопрос касается программы Matlab. Конкретнее: нейронные сети в Matlab.
Не могу понять, почему матлаб не выводит никаких других весовых коэффициентов слоёв, кроме как первого слоя. На сколько я понимаю, никаких трудностей при выводе весовых коэффициентов любого слоя нейронной сети возникать не должно.
Вот код для среды Matlab, который я использую:
Код:

pr=zeros(2,2);
pr(:,1)=-1;
pr(:,2)=1;
net=newff(pr,[2, 2],{'tansig','purelin'})

Далее, при вводе строки:
Код:

net.iw{1}

матлаб выдает весовые коэффициенты первого слоя, как от него и ожидается:
Код:

ans =

1.8916 0.5848
-1.9697 0.2009

Но при попытке вывода весовых коэффициентов любого другого слоя(в нашем случае остаётся лишь 2-ой(выходной) слой) матлаб пишет следующее:
Код:

ans =

[]

Почему он так делает?
Как заставить матлаб вывести весовые коэффициенты остальных слоёв?

Обсуждение

Неизвестный
12.11.2009, 00:09
общий
это ответ
Здравствуйте, Motoden!
На самом деле всё просто:
с помощью команды net.iw{1} вы вызывает информацию о значениях матрицы весов 1-ого входного слоя (как мне кажется, буква "i" в iw{} от слова input - так, по крайней мере, проще запомнить). Как ни странно, в MATLAB'е у ИНС может быть несколько входных слоёв. Решили так сделать.
Для того, чтобы посмотреть матрицу весов второго (внутреннего и по совокупности выходного), линейного слоя используйте команду net.lw{2} (а здесь, скорее всего, "l" от слова lays, т.е. слои, но не факт).
Удачи.
5
Неизвестный
12.11.2009, 00:24
общий
Кучумов Евгений Владимирович:
Спасибо огромное!
Вы во всём оказались правы: iw - inputWeight, lw - layersWeight.
Надо же, ведь самого-то главного я и не написал: я пытался посмотреть весовые коэффициенты 2-го слоя командой:
Код:

net.iw{2}

вместо
Код:

net.lw{2}

Это вопрос разъедал мой мозг уже несколько месяцев! Спасибо большое!
Неизвестный
12.11.2009, 00:49
общий
Пожалуйста.
Всегда рад помочь.
Есть одна книжка интересная В.С. Медведев, В.Г. Потёмкин, Нейронные сети. MATLAB 6/Под общ. ред. к.т.н. В.Г. Потемкина. - М.: ДИАЛОГ-МИФИ, 2002. - 496 с. (скачать можно здесь: http://www.yugzone.ru/x/neiyronnye-seti-matlab-6/), которая по сути является добротным, дословным переводом мануала ППП Neural Toolbox системы MATLAB с небольшими добавлениями от авторов.
В ней Вы можете найти много интересного: краткое описание теории ИНС, подробное описание команд ППП Neural Toolbox MATLAB и конкретные примеры...
Я без неё при работе с ИНС в MATLAB'е никуда...
Ещё раз удачи.
Неизвестный
12.11.2009, 00:51
общий
Motoden:
Посмотрите, пожалуйста, моё предыдущее сообщение!
Форма ответа