Мечтают ли нейросети об электроовцах?
Друзья, с момента основания проекта прошло уже 20 лет и мы рады сообщать вам, что сайт, наконец, переехали на новую платформу.
Какое-то время продолжим трудится на общее благо по адресу
На новой платформе мы уделили особое внимание удобству поиска материалов.
Особенно рекомендуем познакомиться с работой рубрикатора.
Спасибо, ждём вас на N-N-N.ru
Если вы пользуетесь интернетом, вы наверняка взаимодействовали с нейросетями. Это разновидность алгоритма машинного обучения, используемая во многих областях, от перевода языков до финансового моделирования. Одна из специальностей этого подхода – распознавание изображений. Несколько компаний – включая Google, Microsoft, IBM и Facebook – разработали свои алгоритмы разметки фотографий. Но пока эти алгоритмы могут совершать очень странные ошибки.
API для компьютерного зрения Microsoft Azure добавило к этому изображению следующую подпись: «стадо овец пасётся на покрытом буйной растительностью склоне холма», и тэги: «пастись, овцы, гора, скот, лошадь». Но на фото нет никаких овец. Вообще. Я каждое пятнышко изучила.
тэги: трава, поле, овца, стоит, радуга, человек
На этом фото компьютер тоже увидел овец. По случайности я знаю, что рядом с этим местом действительно паслось несколько овец. Но на фото их не видно.
тэги: склон холма, пастись, овца, жираф, стадо
А вот ещё один пример. Нейросети вообще мерещились овцы каждый раз, когда она видела подобные изображения. Что происходит? Нейросети обучаются, обрабатывая множество примеров. В данном случае ей скармливали множество изображений, размеченных людьми вручную – и на многих из них овцы были. Начиная с полного отсутствия знаний по поводу увиденного, нейросети необходимо создать правила, согласно которым изображениям нужно присваивать метку «овца». Судя по всему, она не поняла, что слово «овца» обозначает животное, а не просто траву без деревьев. Похожим образом второму фото она дала метку «радуга», поскольку тот пейзаж влажный и дождливый, не сообразив, что для радуги необходима многоцветная полоска. Может быть, нейросети чрезмерно чувствительны, и везде видят овец? Оказывается, нет. Они видят овец, только когда ожидают их увидеть. Они легко находят овец в полях и на склонах гор, но как только овцы начинают появляться в неожиданных местах, становится очевидно, насколько эти алгоритмы полагаются на угадывание и вероятности. Заведите овцу в помещение, и её обозначат, как кошку. Поднимите овцу или козу на руки, и её обозначат, как собаку.
«Слева: мужчина держит в руке собаку. Справа: женщина держит в руке собаку».
Раскрасьте их в оранжевый цвет, и они станут цветочками.
«Несколько оранжевых цветов в поле»
Посадите овцу на поводок, и её обозначат, как собаку. Посадите её в машину, и это будет собака или кошка. Если они зайдут в воду, их могут отметить, как птиц или даже белых медведей. А если козы заберутся на дерево, они превратятся в птиц. Или жирафов (оказалось, что Microsoft Azure печально известна тем, что ей везде мерещатся жирафы, из-за чрезмерного обилия жирафов, которое, по слухам, наблюдалось в начальном наборе данных).
NeuralTalk2: стая птиц летит в воздухе
Microsoft Azure: несколько жирафов стоят рядом с деревом* Нейросети сопоставляют закономерности. Они видят куски текстур, похожие на мех, участки зелёного цвета, и решают, что на картинке есть овцы. Если они видят мех и формы, напоминающие кухню, они могут решить, что видят кошек. Если жизнь идёт по правилам, распознавание изображений работает, как надо. Но как только люди или овцы делают что-то неожиданное, алгоритмы сразу демонстрируют слабину. Если вы хотите пронести что-то незаметно мимо нейросети, то вам, почти в киберпанковском стиле, поможет сюрреализм. Возможно, в будущем тайные агенты будут одеваться в куриц или водить автомобили, разукрашенные пятнами, как коровы. В ветке в твиттера, начавшейся с простого вопроса, есть множество примеров очень смешных ошибок:
Does anyone have a picture of sheep in a really unusual place? It's for pranking a neural net.
— Janelle Shane (@JanelleCShane) March 1, 2018
И вы сами можете проверить работу API для распознавания образов от Microsoft Azure и убедиться, что даже самые передовые алгоритмы полагаются на удачу и вероятности. Ещё один алгоритм, NeuralTalk2, я по большей части использовала для обработки изображений из этой ветки комментариев в твиттер. Метки: * распознавание изображений
- Источник(и):
- Войдите на сайт для отправки комментариев