Почему Matlab R2010 не может загрузить объекты нейронной сети из R2007? - PullRequest
4 голосов
/ 21 сентября 2011

У меня есть нейронная сеть, которую я сохраняю в файл .mat в Matlab 2007.

Я пытаюсь загрузить нейронную сеть из файла с помощью load filename.mat.Это прекрасно работает с версиями R2007b и R2008, но когда я пытаюсь загрузить R2010b, я получаю следующее сообщение:

Предупреждение: при запуске метода loadobj класса произошла ошибка.Объект, который был загружен из MAT-файла, был копией объекта до запуска метода loadobj.Остальные переменные также были загружены из MAT-файла.
Обнаружена ошибка:
Ссылка на несуществующее поле 'name'

Странно то, что оно появляетсякак будто переменная, содержащая нейронную сеть, существует, но она не работает должным образом.Ни одна из функций, использующих нейронную сеть, не работает в R2010.

Кто-нибудь сталкивался с подобной проблемой?Как сохранить нейронную сеть, чтобы она была совместима с Matlab R2010?
Или, что еще лучше, как правильно загрузить ее в Matlab 2010?

Ответы [ 2 ]

4 голосов
/ 21 сентября 2011

Да , похоже, другие люди сталкивались с этой проблемой (нейронные сети не загружаются в MATLAB 2010), согласно этому посту MATLAB Central , в котором Андреас Гозер (менеджер технической поддержки)в Mathworks) предлагает:

Если вы столкнетесь с этой проблемой в будущем, обратитесь в службу технической поддержки и обратитесь к решению 1-EGNM3S.

Очевидно, вам нужен «фиксированный файл net.m», который может предоставить техническая поддержка.Я не проверял это, так как сам не имею этой проблемы.

Внимательно читая сообщение об ошибке, я бы сказал, что загруженная переменная содержит «необработанный» объект, который был сохранен в.MAT-файл, вполне возможно, структура.Вы можете запустить whos myvarname, чтобы проверить.Чтобы «оживить» эту структуру в объекте, она должна быть обработана перегруженной функцией loadobj для ее типа объекта, который обычно автоматически вызывается функцией load MATLAB.В этом случае loadobj, который поставляется с нейронным сетевым объектом в R2010, кажется не полностью обратно совместимым ...

1 голос
/ 21 сентября 2011

Я подозреваю, что базовые объекты для нейронной сети изменились с 2007b и что определение в R2010b не совместимо с данными, хранящимися в MAT-файле.

Я рекомендую следовать ответу Джонаса.В качестве альтернативы вы можете попробовать загрузить его и повторно сохранить в промежуточном выпуске MATLAB или сохранить данные из объектов нейронной сети и перестроить их в R2010b.

...