Использование машинного обучения для оценки вероятности возникновения события с учетом потока данных
У меня есть поток данных (например, 3D-положение), генерируемых системой, которая выглядит следующим образом:
(поз1, время1) (поз2, время2) (поз3, время3) ...
Я хочу использовать технику машинного обучения для оценки вероятности (или обнаружения) конкретного события по заданному потоку данных. Что я сделал:
- Я пометил свои данные в каждом кадре с помощью YES, если событие произошло в этом кадре, в противном случае для него установлено значение NO.
(pos1, time1, NO) (Pos2, time2, Yes) (pos3, time3, NO)... (posK, timeK, Yes)...
- задайте длину окна, например L, для модели поезда, задав L последовательных кадров, и соответствующий тег задается тегом последнего элемента в этом окне:
(pos1, Pos2, pos3, NO) (pos2, Pos3, pos4, NO) (pos3, Pos4, pos5, NO)... (posK-2, PosK-1, posK, YES)...
- Наконец, я обучил свою модель этому набору.
- Для тестирования я объединяю L последовательных кадров и прошу модель найти соответствующий тег для этого набора данных (например, ДА или НЕТ).
Я понимаю, что появление "НЕТ" встречается намного чаще, чем "ДА". Просто потому, что система в основном находится в режиме ожидания, а у меня нет событий. Так что это влияет на обучение.
Не могли бы вы дать мне несколько советов: 1) какая модель машинного обучения лучше всего подходит для этой проблемы. 2) В данный момент я классифицирую вывод "ДА" или "НЕТ", но мне хотелось бы иметь вероятность наступления события в любое время. Какую модель вы предлагаете?
Спасибо
1 ответ
Я думаю, что на самом деле здесь есть два вопроса: как построить набор данных и какой предиктор использовать.
Для построения набора данных в определенный момент времени i обязательно выберите & ell; случаи, происходящие до того, как я (выражение в вашем вопросе сделало впечатление, что вы выбираете тот, в том числе я). Тем не менее, метка результата должна быть такой же, как у меня. В конце концов, вы пытаетесь предсказать будущее, основываясь на настоящем, не так ли? Прогнозировать настоящее на основе настоящего довольно просто.
Еще один момент - как выбрать & ell; или даже выбрать один & ell;, Обратите внимание, что если вы выберете несколько различных значений & ell; Тогда вы получите многомерную модель.
Наконец, вопрос, который вы прямо задали, - какой предиктор использовать. Это слишком широко, чтобы ответить, не зная вашего набора данных (и играя с ним). Возможно, вы захотите прочитать о компромиссе смещения дисперсии, чтобы понять, почему не существует "лучшего" предиктора для какой-либо проблемы.
Сказав это, я бы предложил начать с логистической регрессии, которая является простым и надежным классификатором, который также выводит вероятности (как вы и просили).