Я практический исследователь, и мне нравится тестировать жизнеспособные решения, поэтому я стараюсь проводить много экспериментов. Например, если я вычисляю оценку сходства между документами, я мог бы попробовать много мер. Фактически, для каждой меры мне может потребоваться выполнить несколько прогонов, чтобы проверить влияние некоторых параметров.
До сих пор я отслеживал входы прогонов и их результаты, записывая результаты в файлы с как можно большей информацией о входах. Проблема в том, что получение определенного результата иногда становится проблемой, даже если я пытаюсь добавить входную информацию в имя файла. Я пытался использовать электронную таблицу со ссылками на результаты, но это не имеет большого значения.
Какие инструменты / процесс вы используете для учета ваших экспериментов?
источник
Ответы:
Вы можете посмотреть на http://deeplearning.net/software/jobman/intro.html
это было разработано для глубокого изучения (я думаю), но это не зависит от приложения. По сути, это версия API подхода SeanEasters.
источник
Недавно я столкнулся с похожей проблемой: как управлять извлечением различных функций из большого набора данных, не зная заранее, какими они будут. (Даже повторное вычисление средних значений было бы вычислительно дорогостоящим.) Кроме того, как бы я управлял прогнозами, основанными на разных наборах функций? То есть, если бы я добавил новую функцию, как бы я узнал, какие модели обучать новым функциям? Это может быстро превратиться в огромный снежный ком.
Мое текущее решение - отслеживать все это в локальной базе данных NoSQL (MongoDB). Например, у меня может быть коллекция
features
, каждая запись которой имеет имя, описание того, как была рассчитана функция, файл python, который выполнял извлечение, и т. Д.Аналогично, коллекция
models
включает модели, работающие с данными. У каждой записи может быть имя, список функций, которые использовались для обучения модели, ее возможные параметры, прогнозируемые значения в удерживаемом наборе тестов, показатели эффективности работы модели и т. Д.С моей точки зрения, это имеет ряд преимуществ:
Исходя из вашего вопроса, кажется, что вы могли бы адаптировать этот подход к рабочему процессу вашей проблемы. Установите Mongo или другую выбранную базу данных, а затем сохраните каждый экспериментальный прогон, его входные данные, его результаты и все остальное, что вы, возможно, захотите отслеживать в ходе проекта. Это должно быть гораздо проще, чем электронная таблица, по крайней мере.
источник