Comments: | Страница 1 из 2 | << | [1] [2] | >> |
Именно этот недостаток вызывает в последние годы опасения некоторых исследователей насчет опасности того, что более глубокие знания и понимания их конкретных областей сменяются на, иронически говоря, более поверхностное использование глубоких нейронных сетей, которое дает лучшие практические результаты, но тормозит теоретическое понимание темы.
Этот вопрос уже поднимался и где аналитические методы сменялись компьютерным моделированием при помощи Software 1.0. И в этом смысле Software 2.0 менее опасна чем Software 1.0, поскольку в большей степени избегает вкладывания интерпретации в самом начале, и более похоже просто на сбор данных, чем собственно наш мозг на первой стадии познания и занимается
Edited at 2017-12-01 15:18 (UTC)
Есть шанс, что разовьется компьютерная нейрология из которой будут черпать тематические знания.
Чтение предмета по потрохам нейронных сетей.
> "Across many applications areas, we’ll be left with a choice of using a 90% accurate model we understand, or 99% accurate model we don’t."
Что-то это мне напоминает конец XVI века, когда модель солнечной системы Коперника, более простая содержательно, давала худшие предсказания положения планет на небосводе чем модель Птолемея с хитровывернутыми эпициклами.
Или борьбу фиксистов с мобилистами в геологии, завершившуюся уже на моей памяти.
То есть ситуация когда эмпирическая модель, которая нас не приближает к пониманию устройства мира дает лучшее согласие с экспериментом, чем модель которая понятна - далеко не новость в истории науки.
"Программирование", ИМХО, это выбор гиперпараметров и, в первую очередь, топологии сети. А подбор весов -- это уже исполнение программы.
Делов-то - загрузить в машину примеры проблем, где у нас есть глубокое теоретическое понимание темы, и пусть выводит нам с 99% точностью новые понимания!
(шутка. По крайней мере пока у нас нет AGI - шутка)
Забавный был бы вираж эволюции. Сначала возникают нейронные сети. Потом они осваивают речь, линейный дискурс, аристотелеву логику, системы логического вывода и прочую теорему Гёделя. Потом они пишут линейные, чёткие и логичные программы. Потом делают (в том числе с помощью этих программ) нейронную сеть. Которую потом долго и мучительно обучают линейному дискурсу, чтобы она логически выводила теории.
Пока software 2.0 не станет устойчиво к adversarial examples, оно будет годно преимущественно (или только) для игрушек.
From: (Anonymous) 2017-12-01 05:37 pm
| (Link)
|
Ой ну прямо. Вот возьмите свой, прямо скажем, мозг. Он что, устойчив к adversarial examples? Хрена лысого он устойчив, любая оптическая иллюзия тому примером, тысячи их. Однако как-то справляется же (я надеюсь).
Распознавание речи, например, вообще невозможно более-менее адекватно запрограммировать, уже очень давно использовались Hidden Markov Models, которые тоже обучались, а не «программировались», и ничего. Сейчас, с нейронными сетями, распознавание переживает бум, и никого не волнует тот факт, что веса нейронам приписываются не вручную:))
ЗЫ: по поводу «знания» как основы эффективного программирования распознавания речи ходит апокрифическая байка, что Йелинек якобы говорил: аккуратность распознавания вырастает всякий раз, когда я уволю парочку лингвистов.:))
Интересно, скоро ИИ натаскают на решение проблем Смейла?
Как метод решения этой проблемы - будем учить "Software 2.0" не решать проблему, а учить "Software 2.0" учить нас решать проблему. Или как в новой книге Пелевина - писать романы о том как решить проблему.
Видимо, это будут два разных направления: строить модели и понимать их.
Физики, например, не удовлетворятся "идеальным предсказателем", им нужно понимание. Потому что понимание даёт возможность решать более широкий класс задач: не только "каким будет результат этого эксперимента?", но и "какую установку нужно построить для получения нужного результата?" и "возможно ли получение такого результата какой-либо установкой?". Понимание принципов действия лекарств в медицине помогает не только вылечить больного (это можно и без понимания, и даже с большей эффективностью), но и сократить количество экспериментов и придумать новые лекарства.
Отсутствие понимания может привести к нежелательным последствиям в долгосрочной перспективе, ведь "software 2.0" не может это учитывать. Например, если ориентироваться исключительно на спрос на продукты питания без понимания причин этого спроса, то постепенно скатимся на наркотики. Если оценивать лишь привлекательность самолёта, то будут авиакатастрофы. Если оценивать популярность искусства, то оно перестанет быть искусством. Если оценивать коммерческую выгоду, будет исчерпание полезных ископаемых и загрязнение окружающей среды. Собственно, некоторые их этих тенденций уже и так есть, но часто их пытаются предотвратить законодательно. Если не будет понимания механизмов, то будет невозможно и противодействовать нежелательным тенденциям.
![[User Picture]](https://l-userpic.livejournal.com/9581589/1559962) | From: mfi 2017-12-02 09:53 am
| (Link)
|
В вопросе - ответ. Именно медицина. Основная цель - лечить. Не понимаем, но лечит - используем. Что никак не отменяет теорий, позволяющих двигаться дальше. Софтостроительство - инжинерия. Работает - берем. Нашли нормальные алгоритмы - тоже в дело.
Человек намеренно игнорирует функциональное программирование?
Не очень понимаю, при чем тут оно, если честно.
BET, или «bounded exhaustive testing» – это метод тестирования компьютерных систем. Через них прогоняют все возможные комбинации входных данных (понятно, меньше какой-то заданной размерности, иначе процедура не кончится никогда). Такой способ поиска багов глуповат, но надежен. Он требует избыточных мощностей и приучает не экономить ресурсы. RCP («random code programming») – это близкое по идеологии, но совершенно иное по целям и результатам направление в программировании. Здесь мы генерируем не случайные комбинации входных данных, а случайные последовательности самого программного кода. А потом прикладываем к этому коду принципы «exhaustive testing». Это как с обезьяной, способной за миллион лет настучать на машинке «Войну и мир» – только в случае с RCP мы отводим миллиард лет, делаем обезьяне серьезный оверклок воткнутым в задницу высоковольтным проводом – и ожидаем, что она напишет нам не «Войну и мир», а программу, способную написать «Войну и мир». Качество задачи меняется – поэтому нужна очень высокая производительность и большие объемы памяти. Сегодня с этим проблем нет: мощности избыточны. Достаточно задать требования к выходным секвенциям, и мы рано или поздно получим программу, которая будет делать то, что нам угодно. Мы, правда, не будем знать, как именно она работает – и в этом главная издержка метода. Процесс можно разбить на любое требуемое количество уровней – и, главное, заставить его самоорганизовываться со все большей и большей сложностью. Это существенно, потому что после какого-то момента от человеческого вмешательства все равно будет мало толку. Формирование случайного кода похоже на эволюцию первичной протоклетки в высших позвоночных – только ускоренную в миллиарды раз. Разница в том, что количество порождаемых случайным кодом тупиков и уродцев будет куда больше, чем может себе позволить природа. Это как семечко волшебной фасоли – его достаточно посадить в землю в полнолуние, и оно начинает расти, бешено делясь на сотни и тысячи рвущихся к небу побегов. Скручиваясь, эти побеги образуют огромную спиральную колонну – и та в конце концов доходит до неба. RCP-фасоль растет во все стороны сразу, но мы отбираем из этой безмерности только нужный нам мост к облакам. Сравнение с семенем, пожалуй, самое удачное – технология random code позволяет вырастить безобразное, избыточное, безумное, корявое, нелепое – но плодоносящее дерево. Достаточно знать, куда и как посадить семечко.
Пелевин, iPhuck 10
Я как-то пытался методом simulated annealing создать программу, которая выдаёт простые числа. Для тренировки они получали первые 10 простых чисел, но сколько они ни эволюционировали, 11-е простое число не находили. По крайней мере за те несколько минут, что у меня хватило терпения ждать.
оверлорды, оверлорды, а я маленький такой... Страница 1 из 2 | << | [1] [2] | >> |
| |