Несколько веков спустя Альберт Эйнштейн высказал гипотезу, что простые законы Ньютона перестают выполняться, когда скорость движения объектов приближается к скорости света. К подобной точке зрения склонялись и другие ученые; большинство экспериментов подтверждало правоту Эйнштейна. «Всё следует упрощать до тех пор, пока это возможно, но не более того», – метко выразился ученый. Однако полученные им результаты не означали, что ньютоновская модель мира абсолютно не верна: в повседневной жизни она давала прекрасное приближение. Законы Ньютона остаются актуальными и по сей день и отлично работают для простых процессов – например, если мы ведем автомобиль или ставим эксперименты в школьной лаборатории.
Теория Эйнштейна, в свою очередь, не выдерживает столкновения с мельчайшими частицами, которые, как выяснилось, подчиняются правилам совсем другой механики – квантовой. Современные физики пытаются состыковать общую теорию относительности Эйнштейна с квантовой механикой; если это удастся, можно будет говорить о глобальной «теории всего».
Простые модели не способны охватить все многообразие нашего мира, однако приближение они, как правило, дают очень хорошее. Найдите простое объяснение какому-либо факту – и получите возможность довольно точно предсказывать развитие однотипных ситуаций. В информатике в последнее время этот принцип проявляется особенно ярко.
Сегодня вы можете взять выписанный вам чек, сфотографировать на телефон и отправить в банк по интернету. Программа проанализирует изображение и вычленит сумму и номер счета, даже если чек заполнен от руки. Сотрудникам банка не придется вручную обрабатывать чек, если только это не было оговорено заранее.
Расшифровать номер счета в нижней части чека для программы никакого труда не составляет. Цифры строго соответствуют установленному формату, специально разработанному так, чтобы номер легко распознавался компьютером.
А вот сумма в 30 долларов выписана от руки. Откуда машине знать, о какой сумме речь, если почерк у каждого свой?
Рис. 2.1.
ЧекЗадача явно непростая. Взять хотя бы цифру «два» насколько по-разному пишут ее разные люди!
Рис. 2.2.
ДвойкиПодобными проблемами занимается особая математическая дисциплина – машинное обучение. На первом этапе алгоритм получает большую обучающую выборку (в нашем случае – несколько тысяч примеров написания для каждой цифры). По ней он должен сконструировать относительно несложную модель, которая позволит корректно отличать одну рукописную цифру от другой. Хорошо натренированный алгоритм безошибочно распознает незнакомые цифры даже в том случае, когда обучение завершилось давно.
За последние двадцать лет в этой области удалось добиться впечатляющих успехов. Современные методы классификации данных позволяют анализировать уже не тысячи, а миллионы обучающих примеров. Распознавать теперь можно не только чеки; некоторые программы редактирования изображений умеют вполне сносно фильтровать фотографии по лицам. Сайты интернет-компаний (
Дальше, очевидно, все станет только лучше. С какого-то момента успехи и достижения польются непрерывным потоком. Значит ли это, что сбривать больше нечего?
Нет, не значит. Принцип Оккама гласит, что самое простое описание следует считать самым лучшим, однако не помогает нам это описание найти. Современные методы машинного обучения работают с данными довольно примитивной структуры; обычно это просто набор не связанных друг с другом свойств. Найти самое простое описание, т. е. создать небольшую эффективную программу (на каком языке, неважно), которая умела бы быстро классифицировать данные, – задача чрезвычайно трудная и принадлежит классу NP.
Урбанский алгоритм позволяет быстро решить любую проблему из NP, а значит, найти простую программу для классификации данных будет не сложнее, чем решить школьную задачку по программированию. От нас потребуется лишь подавать на вход большие обучающие выборки: всю остальную работу алгоритм сделает сам. Так мы сможем получить практически любые знания.
Мы уже знаем, что при помощи новых технологий можно победить болезни и усовершенствовать национальную американскую игру. Вернемся назад в будущее и посмотрим, как урбанский алгоритм изменил саму суть искусства.
Автоматизация творческого процесса