Люди ещё 20 лет назад сделали WoG, в котором этого "серьёзного объёма труда без исходников" явно больше (там огромные проблемы с балансом и со многим другим, но мы сейчас не об этом).
THQ Nordic тут не при чем, в готике мододелы за много лет до них делали совершенно сумасшедшие вещи, делая с нуля, по сути, совершенно новую игру. Или тот же скайрим.
Хота, безусловно, хороша, особенно тем, что она пытается свой контент вписать в атмосферу игры и правит серьёзные проблемы игры, не сильно меняя ее, но последнее обновление не предлагает ничего феноменального.
Так и не понял, почему это уникальное явление. Круто, что Герои 3 развиваются, но, серьезно, называть "уникальным явлением" появление одного нового замка (который нужно еще балансить и балансить) и одной новой компании - это сильное преувеличение. Особенно если учесть, что по той же старой готике недавно вышел глобальный Архолос.
Вся суть бэггинга в построении множества различных слабых классификаторов, не нужно потом отбирать лучшие классификаторы, которые, к тому же, являются лучшими только на тестовых данных.
Более того, это даже вредно для итогового ансамбля, потому что сильно увеличивается риск переобучения. И это не говоря о том, что нет никакого смысла ускорять Random Forest, работающий и так быстрее подавляющего большинства моделей.
Если все пользователи продолжат ехать по предложенному маршруту и никак иначе, то да, фидбека не будет и вероятности не пересчитаются. Такие ситуации мы обрабатываем на этапе пост-сортировки построенных маршрутов: например, если альтернативный маршрут будет значительно быстрее основного (самого удобного), то он станет основным. За счет этого построение все равно изменится и вероятности в итоге пересчитаются.
Согласен, сложные маневры на загруженных улицах - большая проблема, введение вероятностей совершения поворотов в том числе помогают немного ее нивелировать, по крайней мере для тех поворотов, где стабильно напряженная дорожная ситуация
Мы пытаемся найти компромисс между тем, чтобы вести, с одной стороны, по удобным дорогам, а с другой стороны, поменьше стоять в пробках. Поэтому сейчас в том числе ушли от того, чтобы предлагать самый быстрый маршрут первым в списке: предлагаем лучший исходя из нескольких критериев. Добавить в этот список критерий "процент времени, проведенного в пробке" кажется интересной идеей
1) Мы сейчас стараемся это учитывать: предсказываем скорости на дорогах на час вперед и при построении маршрута берем именно те скорости, которые будут в момент, когда пользователь будет проезжать это место. Соответственно, если прогнозные скорости будут низкими, то мы предложим другой, более быстрый маршрут :)
2) Да, это отличная идея и мы хотим в итоге к этому прийти, работаем в этом направлении
В ноутбуках можно в рамках одной сессии легко вернуться в начало любого пункта и что-то переделать, можно быстро построить новые графики, попробовать разные способы чистки датасета, попробовать разные признаки, пока не получим хорошие, исправить ошибки и так далее, не тратя кучу процессорного времени на то, чтобы перезапускать все шаги с самого начала. Можно оставлять себе развернутые пометки в отдельных блоках, что проверил и почему от этого в итоге отказался.
Да, с помощью скриптов эти все проблемы можно решить, потратив на разработку дополнительное время, но зачем? Учитывая, что эти оптимизации все-равно вряд ли доедут до прода.
Ноутбуки - это классная штука, когда ты еще не знаешь, что конкретно ты хочешь сделать и что в итоге получить.
В целом, посыл верный, но более правильный путь - это пользоваться блокнотами там, где это необходимо. В самом начале экспериментов сразу лезть в IDE и писать скрипты - это не самая лучшая идея, учитывая, что большие датасеты могут загружаться в память и подготавливаться несколько минут, и словить ошибку после загрузки из-за какой-то мелочи (что часто случается в силу особенностей питона) очень неприятно, можно потратить кучу времени впустую. Да и вообще, каждый раз полностью перезапускать пайплайн, когда он еще не доведен до ума - накладно. Плюс в ноутбуках есть такая прекрасная вещь, как Markdown блоки, которые позволяют записывать свои мысли и описывать, что вообще там происходит, что нужно еще попробовать и так далее. Ну и не забываем про удобство работы с графиками, в скриптовом подходе это делать неудобно и долго по времени, поскольку датасеты в памяти не хранятся.
Потому что он слишком сильно менял игру. И как это вообще отменяет факт того, что технически вог было делать сложнее, чем хоту?
Люди ещё 20 лет назад сделали WoG, в котором этого "серьёзного объёма труда без исходников" явно больше (там огромные проблемы с балансом и со многим другим, но мы сейчас не об этом).
THQ Nordic тут не при чем, в готике мододелы за много лет до них делали совершенно сумасшедшие вещи, делая с нуля, по сути, совершенно новую игру. Или тот же скайрим.
Хота, безусловно, хороша, особенно тем, что она пытается свой контент вписать в атмосферу игры и правит серьёзные проблемы игры, не сильно меняя ее, но последнее обновление не предлагает ничего феноменального.
Так и не понял, почему это уникальное явление. Круто, что Герои 3 развиваются, но, серьезно, называть "уникальным явлением" появление одного нового замка (который нужно еще балансить и балансить) и одной новой компании - это сильное преувеличение. Особенно если учесть, что по той же старой готике недавно вышел глобальный Архолос.
Вся суть бэггинга в построении множества различных слабых классификаторов, не нужно потом отбирать лучшие классификаторы, которые, к тому же, являются лучшими только на тестовых данных.
Более того, это даже вредно для итогового ансамбля, потому что сильно увеличивается риск переобучения. И это не говоря о том, что нет никакого смысла ускорять Random Forest, работающий и так быстрее подавляющего большинства моделей.
Если все пользователи продолжат ехать по предложенному маршруту и никак иначе, то да, фидбека не будет и вероятности не пересчитаются. Такие ситуации мы обрабатываем на этапе пост-сортировки построенных маршрутов: например, если альтернативный маршрут будет значительно быстрее основного (самого удобного), то он станет основным. За счет этого построение все равно изменится и вероятности в итоге пересчитаются.
Большинство вычислений для вероятностей выполняется еще на этапе sql запроса, финальный процессинг уже на питоне
Согласен, сложные маневры на загруженных улицах - большая проблема, введение вероятностей совершения поворотов в том числе помогают немного ее нивелировать, по крайней мере для тех поворотов, где стабильно напряженная дорожная ситуация
Мы пытаемся найти компромисс между тем, чтобы вести, с одной стороны, по удобным дорогам, а с другой стороны, поменьше стоять в пробках. Поэтому сейчас в том числе ушли от того, чтобы предлагать самый быстрый маршрут первым в списке: предлагаем лучший исходя из нескольких критериев. Добавить в этот список критерий "процент времени, проведенного в пробке" кажется интересной идеей
1) Мы сейчас стараемся это учитывать: предсказываем скорости на дорогах на час вперед и при построении маршрута берем именно те скорости, которые будут в момент, когда пользователь будет проезжать это место. Соответственно, если прогнозные скорости будут низкими, то мы предложим другой, более быстрый маршрут :)
2) Да, это отличная идея и мы хотим в итоге к этому прийти, работаем в этом направлении
Ничего я не мешаю. Я говорю конкретный сценарий работы, в котором, например, может происходить следующее:
1) Загружаем большой датасет
2) Заполняем пропуски, чистим выбросы
3) Визуализируем, смотрим распределения
4) Создаем признаки
5) etc
В ноутбуках можно в рамках одной сессии легко вернуться в начало любого пункта и что-то переделать, можно быстро построить новые графики, попробовать разные способы чистки датасета, попробовать разные признаки, пока не получим хорошие, исправить ошибки и так далее, не тратя кучу процессорного времени на то, чтобы перезапускать все шаги с самого начала. Можно оставлять себе развернутые пометки в отдельных блоках, что проверил и почему от этого в итоге отказался.
Да, с помощью скриптов эти все проблемы можно решить, потратив на разработку дополнительное время, но зачем? Учитывая, что эти оптимизации все-равно вряд ли доедут до прода.
Ноутбуки - это классная штука, когда ты еще не знаешь, что конкретно ты хочешь сделать и что в итоге получить.
В целом, посыл верный, но более правильный путь - это пользоваться блокнотами там, где это необходимо. В самом начале экспериментов сразу лезть в IDE и писать скрипты - это не самая лучшая идея, учитывая, что большие датасеты могут загружаться в память и подготавливаться несколько минут, и словить ошибку после загрузки из-за какой-то мелочи (что часто случается в силу особенностей питона) очень неприятно, можно потратить кучу времени впустую. Да и вообще, каждый раз полностью перезапускать пайплайн, когда он еще не доведен до ума - накладно. Плюс в ноутбуках есть такая прекрасная вещь, как Markdown блоки, которые позволяют записывать свои мысли и описывать, что вообще там происходит, что нужно еще попробовать и так далее. Ну и не забываем про удобство работы с графиками, в скриптовом подходе это делать неудобно и долго по времени, поскольку датасеты в памяти не хранятся.