Комментарии 67
Я догадался кто такой Илон, но не понятно кто Андрей. )
Считаю в Тесла выбрали абсолютно правильный подход, полагаться на машинное зрение а не лидары, GPS и проч. технологии. Я б ещё даже добавил микрофоны, по звуку можно определить (с определённой вероятностью) тип и качество покрытия например, выбоины, лужи и т.п. Или когда правое колесо съезжает с на обочину. Или удар в бампер.
Учитывая важность зрительной информации, как Тесла чистит свои камеры, и как определяет пятна загрязнений? Водитель пользуется дворниками, в крайнем случае остановит авто и почистит стекла. А что делает автопилот? Отключается?
Ещё вопрос вспомнил: как Тесла справляется с левосторонним движением? Держат ли они отдельные НС на оба вида движения?
А если датчики заглючат? А если соседняя машина подаёт сигнал?
Обязательно когда-нибудь заглючат. Это ж техника и вероятности на больших числах работают весьма предсказуемо — какому-то 1 водиле из 1 000 000 однажды не повезёт.
Что касается Индии — ну, Тесла же не может и не обязана учитывать специфику вождения и ПДД каждого региона. У нас вон вообще чулками стопаки и поворотники тонируют, а наносить разметку считают зашкваром — как с этим Тесле решать вопрос?
Не использовать микрофоны не очень умно, как минимум до того пока на дороге остаются живые водители.
В презентации и среди вопросов не было про загрязнение камер. Я думаю, это сравнительно не сложная задача. Если камеры засыпало снегом на парковке — машина может просто отказаться ехать и попросить очистить их. Если загрязнение происходит на ходу, наверное, в зависимости от того насколько все плохо, машина может выдавать предупреждения, переходить в более осторожный режим вождения и предлагать съехать на заправку для очистки. В критической ситуации — производить аварийную остановку.
Почему например не поставить небольшой экран с изображением будущей траектории машины, и информацией про разгон/торможение?
Т.е. мне например было бы удобней быть в курсе, ну или иметь возможность узнать что машина собирается делать.
Или это никому не интересно/не надо?

Странно что для построения карты расстояний по нескольким камерам и кадрам они используют нейросеть, а не какой-нибудь специальный алгоритм под эту задачу.
Ошибка сети не означает ошибку разработчика. Это может быть ошибка аннотатора или уникальная ситуация, к которой нейросеть не готова.
Примеры аварий с автопилотами теслы как раз похожи на эти случаи, то не ожидали что автомобиль белого цвета может находиться поперек дороги, то отбойник был какой-то не такой.
По этой причине не используется алгоритм, а применяют нейросеть.
По этой причине в тексте указали, что в процентах (99,9999) последние девятки (уникальные ситуации) учесть будет сложнее всего.
Интересно каково им писать софт зная, что точно из-за твоей ошибки софт убьет кого-нибудь
Представьте, каково будет человеку, если благодаря его работе разобьется, условно, 10 человек, а не 100.
вот что действительно интересно — как им удается забирать данные оттуда?
Благодаря мощному железу, передают сжатые данные, только ту их часть, которая важна для обучения и только тогда, когда сработало условие для отправки.
Еще Илон в двух словах упомянул большую программу в Tesla под названием «Доджо». Это мощный суперкомпьютер для тренировки нейросетей. Он сможет обрабатывать громадный объем сырых видео данных для обучения без учителя.
Человек тоже. А значит нельзя спокойно уснуть в машине, которую ведёт белковый водитель.
Как работают простые и жёсткие классические алгоритмы, мы видим на примерах аварий самолётов. Любой классический алгоритм имеет право на ошибку, например из-за железа.
Очень просто определить ситуации, когда НС начинает чудить: когда на основе полученных данных в какой-то момент времени она выдает 2 или несколько вариантов дорожной обстановки. Тогда надо притормаживать и передать управление водителю.
он должен быть как минимум на порядок безопаснее водителя
А при чем тут профессиональные водители из первого предложения?
Это нужно, что бы приняли именно вы. Но это не обязательно. На первом этапе достаточно, что бы приняли пара процентов населения, что бы был спрос. Всё равно сделать автомобилей на весь мир за год ну удастся, а значит и принятие всеми первые несколько лет не нужно. Достаточно разрешения от властей и отсутствие массовых протестов (если вдруг люди массово будут против, тогда внедрение отложится)
А надёжность классического алгоритма низка по причине наличия миллиона разных ситуаций. Для одной ситуации у вас алгоритм надёжен, но прописать миллион — не выйдет. С сетями это намного проще, а значит выше шансы, что он хоть как-то сработает (например, угробит автомобиль, но спасет людей внутри).
Во всех других случаях, когда речь идет о качестве вождения, сложных ситуациях и статистике, то да, нейронная сеть лучше классического алгоритма. Она лучше сохранит жизнь пешеходам, лучше решит что делать если столкновение неизбежно, изящнее поведет себя на дороге при маневрах и т.д.
Вообще, это вопрос архитектуры ПО автопилота.
Вас устроит, если автомобиль будет экстренно тормозить от пакета? И устроит аварию, резко притормозив и уйдя в сторону, гарантированно не смертельную?
Необходимо не только расстояние до объекта. Нужно учитывать других участников движения и что это за объект. Человек не будет объезжать голубя ценой двух разбитых машин. А объезжать вкопанный штырь — вполне возможно, что и будет. А лидар вам не расскажет, что это за предмет.
Худшее что случится — машина притормозит перед большим неподвижным безобидным объектом, лежащим на дороге (я бы тоже тормозил) или спокойно его объедет.
Если нейронная сеть специально ехала в этот объект, считая его абсолютно безобидным (неподвижный большой пакет?), то притормозить все равно не помешает. Если нейронная сеть ехала в этот объект потому что это было меньшее из зол, то алгоритм тоже не найдет безопасной траектории и не станет вмешиваться: уже в любом случае все плохо, пусть решение ищут алгоритмы минимизации ущерба (классические или та же нейронная сеть).
Подстраховаться от столкновений с другими автомобилями пересекающими траекторию сложнее, но тоже можно.
Реальная архитектура конечно будет намного сложнее и умнее. Написанное выше — просто пример как лидар может позволить застраховаться от причуд обученной нейронной сети.
Вам верно несколько раз сказали про радар. В чем преимущество лидара в этой ситуации, мне, честно говоря, не ясно. Оно есть?
От классического алгоритма в этом случае требуется решение только одной задачи: гарантированно обнаружить объект на пути и избежать опасного для жизни водителя столкновения с ним, когда это еще возможно. Кто захочет связываться с машиной, которая на ровном месте без особой причины может обнять столб потому что нейронной сети что-то померещилось? Надежная реализация подобного классического алгоритма возможна на базе лидара или достаточно совершенного радара.
Иррациональность ошибок нейросетей была бы важна, если бы классические алгоритмы в принципе показывали хотя бы сравнимую точность в задачах компьютерного зрения.
Если мне предложат черную коробку, которая с вероятностью один на миллион врежется в ограждение на скорости 120 из за какой-то сложной особенности нейронной сети, которую потом никто даже не сможет разобрать, то это участие в русской рулетке психологически будет трудно принять.Я думаю, примерно так же рассуждали первые пассажиры паровозов и лифтов. Человеческая логика и мораль очень пластичны. Может оказаться, что ваши внуки вообще не будут обращать на это внимание и будут лишь усмехаться над страхами древних.
А такой алгоритм проще сделать на основании информации лидара.
Почему это? Часть ПО отвечающая за принятие решений вообще может не зависеть от части отвечающей за «зрение» (распознание, класификацию, вычисление расстояния, скорости, вектора и тп). То есть что данные с лидара, что с камер после обработки в таком случае будут приводится к одному формату.
Лидар нужен для исключения ситуаций когда нейронная сеть по камерам ничего не поняла и решила ехать прямо сквозь пешехода.
У нас зимой, за пределами городов, часто умудряются раскатать дороги так, что там оказывается тройная колея: по крайне правой и центральной едут туда, а по крайне левой и центральной — оттуда. Когда встречаются, то кто-то или оба должны отрулить в сторонку для разъезда.
Или вовсе одна колея для туда и обратно…
Хотел бы я по такой дороге на тесле проехать и посмотреть как на ней снесет мозг ее автопилоту в при появлении встречки… :)
Но, наверное, если набрать достаточно обучающих данных, то и по такой дороге можно научить железяку ездить.
К сожалению, это больше наша проблема, а не Тесла. Не думаю, что много стран, где так (не)следят за дорогами, и в которых спрос на машины Тесла будет заметным для компании. А значит решение таких задач будет в весьма низком приоритете.
Уверен что можно обучить НС оптимальному стилю езды и по заснеженной трассе, и по бездорожью. Но будет ли Тесла этим заниматься сейчас? Как в любой задаче, на охват 80% дорожных ситуаций нужно 20% усилий. И на оставшиеся 20% — 80% усилий. Т.е. им нужно будет (условно) в 4 раза увеличить обучающую выборку, размер НС, производительность процессора и т.п.
Пока автопилот не научится реагировать на самые сложные, нестандартные и даже абсурдные ситуации это будет ещё сырая, недоработанная версия.
Т.е. это всегда будет недоработанная версия? Очевидно, что ситуации могут быть самыми разными и предусмотреть всё невозможно по определению.
Аргументация в стиле «Этот автопилот предназначен для дорог Лос-Анджелеса» бредова по своей сути и крайне опасна для пользователей.
Обычная аргументация и, конечно, абсолютно безопасна для пользователей автопилота на дорогах Лос-Анджелеса.
Т.е. это всегда будет недоработанная версия? Очевидно, что ситуации могут быть самыми разными и предусмотреть всё невозможно по определению.
Дело не в том, что предусмотреть все ситуации на дороге нельзя. Дело в том, что для разработчика продукта, от которого зависят жизни и здоровье людей просто не позволительно отмахнуться от потенциально опасной ситуации комментарием «В нашем регионе низкий шанс столкнуться с подобными обстоятельствами, потому мы не будем к ним готовиться».
Хотя бы потому, что их могут за подобное засудить. Гибель или нанесение вреда здоровью, что потенциально возможно при неполной проработке подобного ПО и риске зависания/бага, в данном случае получается явно по причине халатности разработчика…
Не важно, хотят они этим заниматься или нет, они обязаны это делать. Поэтому им и придётся:
набрать достаточно обучающих данных, и по такой дороге научить железяку ездить.
Садится такой новичок за руль, а тесла ему говорит:
— Не дрейфь, ща я тебе покажу как надо вести машину! =)
Или начинающий водитель выполнил маневр, а тесла ему говорит:
— Ты был слишком близко к другим авто при перестроении, а еще забыл включить поворотник!
Мы получили разметку, знаки, светофоры, других участников движения, предсказали их поведение. Что дальше? Как автомобиль планирует движение? Там применяются классические методы, машинное обучение, все вместе? Как реализуются правила дорожного движения? Вот мы распознали знак, как определить допустимое поведение?
Я немного интересовался этой темой, почитал разные научные статьи, правда, по большей части они уже старые. Разные методы, например, интерполяция траектории в виде полинома, коэффициенты которого подбираются, чтобы минимизировать некую функцию стоимости, методы поиска на графах, Rapidly Exploring Radom Trees и так далее…
Я бы копал в сторону полностью автономных городов где все дороги, светофоры, знаки, работы, транспортные средства занесены в компьютер и он всем управляет, такое себе GTA реальной жизни. Тогда даже светофоры не нужны так как компьютер и так будет знать о дорожной обстановке и сможет синхронизировать проезд машин через перекрестки. При таком подходе, пробки сведутся к минимуму, скорость передвижения в городе возрастет в разы.
Или переходной вариант, все ТС и людей обзавести датчиками. Данные отправляются в центральный компьютер а он управляет автономными машинами, или передает им данные об обстановке. Вышел или выехал на дорогу без датчика и был сбит автономной машиной — пинай на себя. Хотя можно встроить базовые радары для предотвращения подобных ситуаций.
весь автопилот это датасет -> ручная разметка -> обучениеТак нет же. Они наоборот делают упор на автоматическую разметку. Автоматическая разметка объектов и расстояний радаром и ультразвуковыми датчиками, автоматическая разметка перестроений (и не только) постфактум по сохраненному видео, автоматическая разметка поведением водителей-людей, self-supervision в конце концов.
И масштабирование ручной разметки заметно облегчено автоматическим поиском заданных дорожных ситуаций, не нужно просматривать миллионы км только чтобы найти там велосипеды или животных.
Справедливости ради надо сказать, что в других видео машина вела себя поживее.

У вас будет выбор, согласны ли вы на ненулевой шанс помять крыло.Получается, ответственность будет постоянно переключаться с автопилота на водителя и обратно? И если что — логи послужат доказательством, мол «водитель принял ответственность за возможный ущерб».
Люди пристраиваются и едут за автомобилем впереди и сеть запоминает это поведение.Жаль, а могла бы найти более оптимальное поведение.
Как Tesla обучает автопилот