Как непрерывно обучать и проверять модель, которая влияет на свои собственные будущие данные?

Вопрос или проблема

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

Например, рассмотрим 2 продукта:

  1. Игрушка Жираф (предсказана неприбыльной)
  2. Фломастер (предсказан прибыльным)

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

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

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

Простое дерево событий.

                                        start
                                          |
                                         / \
                                        /   \
                                       /     \
                                      /       \
                                     /         \
                                    /           \
                          Игрушка Жираф         Фломастер
                            Предсказано:         Предсказано:
                            Неприбыльно.         Прибыльно.
                                  |                |
                                  |                |
                                  |                |
                            Действие предпринимать      Никаких действий
                                  |
                            Ждем 1 месяц
                                  |
                                 / \
                                /   \
                               /     \
                              /       \
                             /         \
                            /           \
                           /             \
                          /               \
                     Сценарий 1.             Сценарий 2.
              Является прибыльным.           Не является прибыльным, несмотря на действия.
                   |                                  |
                   |                                  |  
                  / \                                / \
                 /   \                              /   \
                /     \                            /     \
               /       \                          /       \
              /         \                        /         \
             /           \                      /           \
            /             \                    /             \
      Предсказание      Предсказание           Предсказание      Предсказание
       верное.        неверное.                верное.             неверное.   
          |              |                    |                |
  Прибыльно благодаря  Прибыльно          Действие не удалось.    Стало неприбыльным из-за действия.
   Действию.          потому что наше 
                   предсказание было неверным.

В случаях 1 и 2 для узлов «Игрушка Жираф» как мне определить, было ли мое предсказание неправильным/правильным или предпринятое действие повлияло на результаты. Кто из предсказания и действия был ответственен за конечный результат? 4 листовых узла — это возможные события, которые могут произойти, и мне нужно проанализировать каждый случай.

Ссылки:

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

  2. https://stats.stackexchange.com/questions/13533/что-такое-отказная-инференция-и-как-она-может-быть-использована-для-увеличения-точности

Не уверен, будет ли вторая ссылка полезной техникой или нет.

Также стоит ли рассматривать обучение с подкреплением для таких проблем, где награда может быть отложенной?

Обучение с подкреплением (RL) — полезный способ формулировать задачи, когда принимаемые действия изменяют среду.

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

Ответ или решение

Область машинного обучения и анализа данных становится все более сложной, особенно когда модель сама влияет на данные, которые будет использовать для последующих тренировок. Рассмотрим бизнес-пример интернет-рынка, на котором необходимо предсказать, будут ли определенные продукты прибыльными. В описанном случае, продукт "Жираф-игрушка" был предсказан как неприбыльный, и по нему были предприняты меры для улучшения его прибыльности. Перед нами стоит вопрос: как эти действия воздействуют на последующее обучение модели?

1. Постановка задачи

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

2. Методология континуального обучения

2.1 Разделение данных

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

  1. Группа контроля: Не предпринимать действий по некоторым продуктам, которые предсказаны как неприбыльные. Это позволит собрать данные о том, стали ли они прибыльными без внешнего вмешательства.

  2. Группа эксперимента: Применять корректирующие действия только к части продукта, предсказанных как неприбыльные.

2.2 Имитация и тестирование

Использование „A/B тестирования“ или „экспериментов“ позволит точно сегментировать и понять влияние корректирующих действий на прибыльность и на обучение модели.

3. Анализ причинно-следственных связей

Чтобы точно определить эффективность действий:

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

4. Роль Реинфорсмент обучения

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

  • Понимать, какие действия необходимо награждать, а какие — штрафовать, чтобы улучшать будущие предсказания.
  • Учесть отложенные награды и корректировать модель на их основе.

5. Экспериментальное Разделение Данных

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

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


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

Оцените материал
Добавить комментарий

Капча загружается...