1

Я ищу идеи/направление для решения проблемы у меня есть:Как сегментировать/вес затрат и подготовки данных по-разному на основе значения, для нейронных сетей

Контекст: У меня есть почасовые временные ряды данных (т.е. один ряд признаков для каждого из 24 часов в день), на 1000 дней. В течение каждого часа я пытаюсь предсказать целевое значение. Теперь, Мне больше нравится точность определенных часов дня (например, 08: 00-18: 00) по сравнению с оставшимися часами дня.

Проблема/вопрос: Как я могу настроить свою функцию стоимости, чтобы больше интересоваться точностью в эти часы? Или это вопрос взвешивания данных по-разному, чтобы дать больший вес часам 08: 00-18: 00?

Подход: Я закодировал MLP в Tensorflow и использую среднюю квадратную ошибку в качестве моей функции стоимости, а Адам - ​​оптимизатором. И хотя этот подход хорош для повышения общей точности (т. Е.> 90%), точность наших ключевых часов недостаточно высока.

Вот моя стоимость функции:

cost = tf.reduce_mean(tf.abs(pred-y)/y) 

Есть ли у вас какие-нибудь идеи? Спасибо! :)

ответ

1

Вы можете добавить местозаполнитель (размер партии на 1), который представляет собой важный пример тренировки. Получите стоимость для каждой строки в вашей партии (размер партии на 1) и поточечно умножьте свой заполнитель на свои затраты.

+0

Отличная идея и спасибо за ваш ответ. Это то, о чем я тоже думал, умножая стоимость на вектор констант, которые отличаются в зависимости от того, насколько важен час. Таким образом, стоимость каждого часа имеет соответствующий множитель. – choops

+0

Это было первое, о чем я думал, но это было бы трудно настроить на 24 часа. Интересно, можете ли вы каким-то образом узнать вес? Может быть, какой-то механизм внимания? Разве это не то, для чего они нужны? –

+0

oh хорошая точка re: внимание! Я посмотрю на это. И да, я собираюсь изменить форму своих входных данных, поэтому я подаю их в виде 24-х блоков за раз. – choops

 Смежные вопросы

  • Нет связанных вопросов^_^