Параметр Дьявол - Как установить их, когда нет возможности проверить основную истину [закрыто]

9

Вопрос:

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

Я прочитал множество статей и реализовал базовые алгоритмы, в которых - говорят, что набор параметров был установлен «эмпирически» - и часто я обнаруживал, что именно они влияют на общность алгоритма (даже если теория, лежащая в основе метода, элегантна, соблазнительна и обоснована)

Буду признателен, если вы поделитесь своими мыслями. И нет правильного или неправильного ответа на этот вопрос. Я просто хочу знать, как все остальные справляются с этим.

Предпосылки / Источник-на-вопрос:

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

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

Я хотел бы привести вам конкретный пример, чтобы он помог вам подумать:

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

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

Этот параметр devil более проблематичен, когда вы устанавливаете параметры для некоторых промежуточных шагов в вашем алгоритме.

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

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

Пожалуйста, поделитесь своими мыслями.

cdeepakroy
источник
1
Открытие I want to kick up a discussion ...действительно хороший признак того, что то, что вы спрашиваете, не подходит для формата * .SE.
Питер К.

Ответы:

2

Предполагая , что является основанием истина, ( по крайней мере теоретически ) один из возможных путей преодоления проблемы «занудство» является создание «самозагрузки» земля правда. Если у вас уже есть достойный алгоритм, который выполняет свою работу примерно, например, в 80-90% случаев, вы можете запустить свой алгоритм на большом количестве экземпляров и попросить пользователя отметить только ошибки. Этот подход имеет свои недостатки, такие как смещение в сторону вашего алгоритма.

Тем не менее, есть некоторые случаи, в которых нет никакой истинной правды, только различные компромиссы системы. Например, система обработки изображений требуется для получения четкого, цветного, нешумного изображения. Очевидно, вы не можете иметь их все одновременно. В таком случае вы должны использовать объективные метрики, которые можно рассчитать на основе результатов вашей системы. (См. Imatest , DXO анализатор для обработки изображений).

Если у вас есть такие методы, существуют методы многоцелевой оптимизации, которые могут создать соответствие между компромиссами (которые понятны пользователю) и внутренними параметрами.

В любом случае, вы никогда не должны давать пользователю параметр, который он не может понять. Если все не получается, просто жестко закодируйте параметр.

Андрей Рубштейн
источник
2

Это действительно очень сложная проблема, но в этой области много работы. Для одного примера, посмотрите на эту статью Ramani & Fessler о подходе SURE. Во введении представлен большой обзор методов выбора параметров, обязательно ознакомьтесь с их ссылками.

lp251
источник