Я працюю над проблемою класифікації часових рядів, де вхід - це дані про використання голосу часових рядів (у секундах) протягом перших 21 днів рахунку стільникового телефону. Відповідна цільова змінна - це чи скасовано цей обліковий запис у межах 35-45 днів. Отже, це проблема бінарної класифікації.
Я отримую дуже погані результати від усіх методів, які я намагався до цього часу (в різній мірі). Спочатку я спробував класифікацію k-NN (з різними модифікаціями) і отримав надзвичайно погані результати. Це приводило мене до вилучення особливостей із часового ряду - тобто середня величина, дисперсія, макс., Хв, загальні нульові дні, загальний кінцевий нульовий день, різниця між середньою середньою половиною та другою половиною і т.д. нулі днів і загальний кінцевий нульовий день (використовуючи кілька алгоритмів класифікації). Це було найкраще, але виступ був все ще не дуже хороший.
Наступною моєю стратегією було переосмислити негативні випадки мого навчального набору, оскільки їх було так мало. Це призвело до більш правильного прогнозування скасування, але за рахунок більшої кількості помилкових позитивних результатів.
Я починаю думати, що, можливо, самі дані про використання часових рядів просто не дуже прогнозовані (хоча здоровий глузд говорить, що так і має бути). Можливо, є якась латентна змінна, яку я не розглядаю. Перегляд даних також показує деяку дивну поведінку. тобто деякі приклади показують дуже мало або зменшують використання (або іноді взагалі немає) і не скасовують, а деякі показують нарощування використання, яке скасовується. Можливо, ця суперечлива поведінка не породжує дуже чітку межу рішення для класифікатора.
Іншим можливим джерелом помилок є той факт, що багато прикладів тренувань дуже рідкісні (тобто багато днів із використанням 0). Одна ідея, яку я ще не пробував, - це розділити часовий ряд на сегменти і генерувати певні функції таким чином, але я не маю великих надій.