Обработка регулярно растущего набора функций

10

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

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

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

Максим Фриденталь
источник

Ответы:

4

В идеальном мире вы сохраняете все свои исторические данные и действительно запускаете новую модель с новой функцией, извлеченной задним числом из исторических данных. Я бы сказал, что затраченные на это вычислительные ресурсы на самом деле весьма полезны. Это действительно проблема?

Да, это общепринятая методика построения ансамбля классификаторов и объединения их результатов. Вы можете построить новую модель параллельно только на новых функциях и усреднить ее прогноз. Это должно повысить ценность, но вы никогда не будете фиксировать взаимодействие между новыми и старыми функциями, так как они никогда не будут отображаться вместе в классификаторе.

Шон Оуэн
источник
2

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

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

INSYS
источник