Как симуляции решат самую большую проблему в машинном обучении.
Нет сомнений в том, что машинное обучение часто кажется волшебным. Как инженер по машинному обучению я до сих пор восхищаюсь, когда моя модель решает очень сложную многомерную задачу, которая в противном случае была бы неразрешима. Я убежден, что решения на основе данных решат самые сложные проблемы будущего, такие как беспилотные автомобили, и что программное обеспечение 2.0 будет играть очень важную роль.
Однако производительность этих алгоритмов сильно зависит от ваших данных. Если вы когда-либо тренировали нейронную сеть самостоятельно, вы быстро обнаружите, что ограничены как качеством, так и количеством ваших данных.
Мы могли бы резюмировать это так:
- Если у вас достаточно данных хорошего качества → Производительность может быть хорошей.
- Если у вас плохие данные → производительность будет плохой.
Откуда мне взять достаточно хороших данных?
На мой взгляд, получение данных - самая сложная проблема в машинном обучении. Если вы хотите научить машину водить машину, вам потребуются тысячи миль за рулем. Если вы хотите определить, когда разбивается окно, вам нужно будет самостоятельно разбить тысячи окон и записать их звуки (я действительно знаю компанию, которая это сделала).
Разбивать тысячи разных окон дорого и отнимать много времени. Это самое большое узкое место в решении большинства проблем с помощью решения на основе данных, такого как машинное обучение.
Моделирование
Но что, если бы вы могли создать хорошую симуляцию, в которой мы могли бы разбивать окна и водить машины. Мы могли сгенерировать миллионы обучающих выборок в кратчайшие сроки и без каких-либо усилий.
Это именно то, что OpenAI сделала, например, со своей системой рук роботов под названием Dactyl:
Наша система под названием Dactyl полностью обучена моделированию и передает полученные знания в реальность, адаптируясь к реальной физике с помощью методов, над которыми мы работали в течение последнего года.
Он полностью обучен моделированию, позвольте этому погрузиться на секунду. Действительно подумайте, что это значит. Весь процесс обучения проходил в симуляторе, где обучение очень дешево. После обучения они перенесли знания, полученные в ходе моделирования, в реальный мир. Результат потрясающий, как вы можете видеть на видео ниже:
Хорошие симуляторы - это не только мечта крутых VR-игр. Это полностью решило бы проблему данных. Вам нужны миллионы образцов какого-нибудь крайнего случая в автономном вождении? Просто воссоздайте эту сцену в симуляции и посмотрите, что получится. Уже есть очень крутой симулятор для обучения системам самостоятельного вождения. Он называется CARLA.
Это огромный шаг в правильном направлении и, возможно, единственный способ добиться полного самоуправления. Только подумайте, как сложно было бы записать каждый крайний случай в реальном мире.
Заключение
Я думаю, что в будущем мы больше не будем ограничены нашими ресурсами в реальном мире, а только тем, насколько хороши наши симуляции. Симуляция должна быть настолько хорошей, что если что-то работает внутри нее, то должно работать и за ее пределами (в реальном мире).
Спасибо за чтение и, как всегда, продолжайте учиться!
Если вы хотите больше и оставаться в курсе, вы можете найти меня здесь:
- Twitter: @ elfouly_sharif
- GitHub: SharifElfouly
- LinkedIn: https://www.linkedin.com/in/sharif-elfouly-975146142/