Тестирование OpenNNАнализ

Я пытаюсь запустить простую проблему в OpenNN. Большинство из них работает нормально, но когда я добираюсь до TestingAnalysis, использование учебного кода выдает мне сообщение об ошибке о том, что количество экземпляров тестирования равно нулю. Достаточно справедливо, так как я на самом деле не предоставил ему тестовый набор. У меня есть доступный набор тестов, но я не знаю, как именно вы должны его предоставить, в учебнике ничего не сказано, и когда я смотрю на примеры, их код выглядит следующим образом:

        TestingAnalysis testing_analysis(&neural_network, &data_set);
TestingAnalysis::LinearRegressionResults linear_regression_results = testing_analysis.perform_linear_regression_analysis();

… но это похоже на тот же код, что и в учебном пособии, и буквально нигде в исходном файле нет ни одной строки кода, чтобы установить для набора данных что-либо, кроме исходного обучающего набора. Тем не менее, пример работает нормально, без сбоев в тестовом анализе, но также и без видимых действий.

Что мне не хватает?

0

Решение

Есть несколько способов решения этой проблемы, на самом деле неплохо бы пройти один за другим здесь (наконец, у меня были и простые ошибки при работе с библиотекой OpenNN)

  1. Получение сообщений об ошибках (форсирование их отображения)

Документация класса тестирования анализа —
http://www.opennn.net/documentation/reference/class_open_n_n_1_1_testing_analysis.html

Когда вы пытаетесь выполнить такой анализ, не забудьте установить флаг отображения ( void set_display (const bool &) плюс дополнительно void check (void) const, который проверит, не являются ли указатели ненулевыми, тем не менее, это просто перепроверка для вашего случая) Наконец, пожалуйста, используйте void save (const std::string &) const или же std::string to_string (void) const методы, которые позволят вам получить некоторую дату от этого объекта.

  1. Тестирование ввода / вывода данных

Поскольку все это зависит от данных, это, как правило, логическая ошибка с нашей стороны (например, для проектов аппроксимации нет возможности передать набор данных одним экземпляром (одна строка, только входы и выходы для них), также я просто получаю огромные ошибки при попытке просто инициировать набор данных с экземплярами, которые не равны по размерам.)

Было бы полезно увидеть результаты в простой форме, чтобы можно было проанализировать данные объекта f. е. Vector< Matrix< double > > calculate_error_data (void) const

  1. Анализ GUI (Нейронный дизайнер) https://www.neuraldesigner.com/download

Это самый простой подход, это приложение основано на OpenNN, поэтому вся работа может быть смоделирована там намного быстрее, прежде чем мы начнем с нашего кода.
На каждом шагу есть куча журналов и информации. (Обычно лучше начинать здесь и переходить к нашим собственным шаблонам кода, когда мы более уверены, что мы хотим сделать с NN)

Для лучшего ответа предоставьте дополнительную информацию, например, «что такое набор данных и нейронная сеть, являются ли методы« execute_ », запускаемые на необработанных, неинициализированных объектах или объектах со случайными данными, где в коде они используются». OpenNN имеет собственный поток вызовов методов, так что все это имеет значение.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]