Поиск ошибок в ‘черном ящике’: Эффективный подход тестирования для глубоких платформ изучения, используемых в самоходных автомобилях, вредоносном обнаружении и других системах

Это – одна из проблем позади совершенствования, глубоко изучая системы как самоходные автомобили. Глубоко системы изучения основаны на искусственных нейронных сетях, которые смоделированы после человеческого мозга с нейронами, связанными вместе в слоях как сеть. Эта подобная сети нервная структура позволяет машинам обработать данные с нелинейным подходом – чрезвычайно обучающий самим, чтобы проанализировать информацию через то, что известно как данные тренировки.Когда вход представлен системе, будучи «обученным» – как изображение типичного шоссе с двумя переулками, представленного самоходной автомобильной платформе – система признает его, управляя анализом через его сложную логическую систему.

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

Угловой пример случая: самоходная автомобильная система могла бы быть запрограммирована, чтобы признать кривую в шоссе с двумя переулками в большинстве случаев. Однако, если освещение ниже или более ярко, чем нормальный, система может не признать его, и ошибка могла произойти. Один недавний пример – катастрофа Tesla 2016 года, которая была вызвана частично…Проливание света в черный ящик глубоких систем изучения – то, чего Иинси Као из Университета Лихай и Цзюньфэн Ян и Сумен Яна из Колумбийского университета – наряду с аспирантом Колумбии Кэсинь Пэем – достигли с DeepXplore, первым автоматизированным тестированием белой коробки таких систем.

Оценивая DeepXplore на реальных наборах данных, исследователи смогли выставить тысячи уникальных неправильных поведений углового случая. Они представят свои результаты на двухлетнем Симпозиуме ACM 2017 года по Принципам Операционных систем (SOSP) конференция в Шанхае, Китай 29-го октября на Сессии I: Буг Хантинг.«Наша работа DeepXplore предлагает первую испытательную метрику освещения, названную ‘освещение нейрона’, чтобы опытным путем понять, обеспечил ли испытательный входной набор плохо против хорошего освещения логики решения и поведений глубокой нейронной сети», говорит Као, доцент информатики и разработки.

В дополнение к представлению освещения нейрона как метрика исследователи демонстрируют, как техника для обнаружения логических ошибок в более традиционных системах – названный тестированием дифференциала – может быть применена к глубоким системам изучения.«DeepXplore решает другую трудную проблему требования многих вручную маркированных испытательных исходных данных. Это делает так, перепроверяя многократный DNNs и умно ища исходные данные, которые приводят к непоследовательным результатам глубоких нейронных сетей», говорит Янг, адъюнкт-профессор информатики. «Например, учитывая изображение, захваченное самоходной автомобильной камерой, если две сети думают, что автомобиль должен повернуть налево и третье думает, что автомобиль должен повернуть направо, тогда угловой случай вероятен в третьей глубокой нейронной сети. Нет никакой потребности в маркировке руководства, чтобы обнаружить это несоответствие».

Команда оценила DeepXplore на реальных наборах данных включая Udacity самоходные автомобильные данные о проблеме, данные изображения ImageNet и MNIST, вредоносные данные Android Drebin, и вредоносные данные PDF из Contagio/VirusTotal и производственное качество, глубокие нейронные сети, обученные на этих наборах данных, таких как они, оценили вершину в Udacity самоходная автомобильная проблема.Их результаты показывают, что DeepXplore нашел тысячи неправильных угловых поведений случая (например, самоходные автомобили, врезавшиеся в ограждения) в 15 современных состояниях глубоко изучение моделей с в общей сложности 132, 057 нейронов обученный на пяти популярных наборах данных, содержащих приблизительно 162 ГБ данных.

Команда обнародовала их общедоступное программное обеспечение для других исследователей, чтобы использовать и начала веб-сайт, DeepXplore (www.deepxplore.org), чтобы позволить людям загрузить свои собственные данные, чтобы видеть, как процесс тестирования работает.Больше освещения нейронаСогласно статье, которая будет издана после конференции (см. предварительную версию здесь), DeepXplore разработан, чтобы произвести исходные данные, которые максимизируют освещение нейрона системы глубоко изучения (DL).

Авторы пишут: «На высоком уровне освещение нейрона систем DL подобно, чтобы закодировать освещение традиционных систем, стандартной метрики для измерения суммы кодекса, осуществленного входом в традиционном программном обеспечении. Однако само кодовое освещение не хорошая метрика для оценки освещения систем DL как большинство правил в системах DL, в отличие от традиционного программного обеспечения, не написано вручную программистом, а скорее усвоен из данных тренировки».

«Мы нашли, что для большинства глубоких систем изучения проверили, даже единственный беспорядочно выбранный испытательный вход смог достигнуть 100%-го кодового освещения – однако, освещение нейрона составляло меньше чем 10%», добавляет Яна, доцент информатики.Исходные данные, произведенные DeepXplore, достигли и на 33,2% более высокого освещения нейрона на 34,4% в среднем, чем то же самое количество беспорядочно выбранных исходных данных и соперничающих исходных данных (исходные данные к моделям машинного обучения, которые нападавший намеренно проектировал, чтобы заставить модель делать ошибку), соответственно.Дифференциал, проверяющий, относился к глубокому изучению

Главный администратор и Янг показывают, как многократные глубокие системы изучения с подобной функциональностью (например, самоходные автомобили Google, Tesla и Uber) могут использоваться в качестве поперечной ссылки на оракулов, чтобы определить ошибочные угловые случаи без ручных проверок. Например, если один самоходный автомобиль решит повернуть налево, в то время как другие поворачивают направо для того же самого входа, один из них, вероятно, будет неправильным. Такие отличительные методы тестирования были применены успешно в прошлом для обнаружения логических ошибок без ручных технических требований в большом разнообразии традиционного программного обеспечения.

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

«DeepXplore в состоянии произвести многочисленные исходные данные, которые приводят к глубокой нейронной сети misclassifications автоматически и эффективно», добавляет Янг. «Эти исходные данные могут быть возвращены к учебному процессу, чтобы улучшить точность».Добавляет Као: «Наша конечная цель должна быть в состоянии проверить систему, как самоходные автомобили, и сказать создателям, действительно безопасно ли это и при каких условиях».