Большие данные. Революция, которая изменит то, как мы живем, работаем и мыслим — страница 9 из 46

ов. А беспорядочность сама по себе… беспорядочна.

Представьте себе, что вам нужно измерить температуру в винограднике. Если у вас только один датчик температуры на весь участок земли, необходимо убедиться, что он работает точно и непрерывно. Если же для каждой из сотен лоз установлен отдельный датчик, вероятно, рано или поздно какой-то из них станет предоставлять неправильные данные. Полученные данные могут быть менее точными (или более «беспорядочными»), чем от одного точного датчика. Любой из отдельно взятых показателей может быть ошибочным, но в совокупности множество показателей дадут более точную картину. Поскольку набор данных состоит из большего числа точек данных, его ценность гораздо выше, и это с лихвой компенсирует его беспорядочность.

Теперь рассмотрим случай повышения частоты показателей. Если мы возьмем одно измерение в минуту, то можем быть уверены, что данные будут поступать в идеально хронологическом порядке. Измените частоту до десяти или ста показателей в секунду — и точность последовательности станет менее определенной. Так как информация передается по сети, запись может задержаться и прибыть не по порядку либо попросту затеряться. Информация получится немного менее точной, но ввиду большого объема данных отказаться от строгой точности вполне целесообразно.

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

Мы можем согласиться с беспорядочностью в обмен на масштабирование. Один из представителей консалтинговой компании Forrester однажды выразился так: «Иногда два плюс два может равняться 3,9. И это достаточно хорошо».[40] Конечно, эти данные не могут быть абсолютно неправильными, и мы готовы в некоторой степени пожертвовать точностью в обмен на понимание общих тенденций. Большие данные преобразуют цифры в нечто более вероятностное, чем точность. В этом процессе обществу придется ко многому привыкнуть, столкнувшись с рядом проблем, которые мы рассмотрим в этой книге. Но на сегодняшний день стоит просто отметить, что при увеличении масштаба беспорядочность неизбежна, и с этим нужно смириться.

Подобный переход можно заметить в том, в какой степени увеличение объема данных важнее других усовершенствований в вычислительных технологиях. Всем известно, насколько вычислительная мощность выросла за эти годы в соответствии с законом Мура, который гласит, что число транзисторов на кристалле удваивается примерно каждые два года. В результате компьютеры стали быстрее, а память — объемнее. Производительность алгоритмов, которые управляют многими нашими системами, также увеличилась, но осталась несколько в тени. По некоторым данным, вычислительные алгоритмы улучшились примерно в 43 000 раз в период между 1988 и 2003 годами — значительно больше, чем процессоры в соответствии с законом Мура.[41] Однако многие достижения, наблюдаемые в обществе благодаря большим данным, состоялись не столько за счет более быстрых чипов или улучшенных алгоритмов, сколько за счет увеличения количества данных.

Так, шахматные алгоритмы изменились лишь немного за последние несколько десятилетий, так как правила игры в шахматы полностью известны и жестко ограничены. Современные компьютерные программы по игре в шахматы играют гораздо лучше, чем их предшественники, потому что лучше просчитывают свой эндшпиль.[42] И это им удается просто потому, что в систему поступает больше данных. Варианты эндшпиля при оставшихся шести (и менее) фигурах на шахматной доске полностью проанализированы, а все возможные ходы («N = всё») представлены в виде массивной таблицы, которая в несжатом виде заполнила бы более терабайта данных. Благодаря этому компьютеры могут безупречно вести все важные эндшпили. Ни один человек не сможет переиграть систему.[43]

То, насколько можно усовершенствовать алгоритмы, увеличив количество данных, убедительно продемонстрировано в области обработки естественного языка — способа, с помощью которого компьютеры распознают слова, используемые нами в повседневной речи. Примерно в 2000 году Мишель Банко и Эрик Брилл из исследовательского центра Microsoft Research поставили задачу улучшить средство проверки грамматики — элемент программы Microsoft Word. Перед ними было несколько путей: улучшение существующих алгоритмов, поиск новых методов или добавление более сложных функций. Прежде чем выбрать один из них, они решили посмотреть, что будет, если существующие методы применить к гораздо большему количеству данных. Большинство исследований по машинному обучению алгоритмов полагались на корпусы,[44] состоящие из миллиона слов, а то и меньше. Поэтому Банко и Брилл выбрали четыре алгоритма общего назначения и ввели в них на три порядка больше данных: 10 миллионов слов, затем 100 миллионов и, наконец, миллиард.

Результаты поразили. Чем больше данных подавалось на входе, тем лучше были результаты работы всех четырех типов алгоритмов. Простой алгоритм, который хуже всех справлялся с половиной миллиона слов, показал наилучший результат, обработав миллиард слов. Степень точности возросла с 75 до более чем 95%. И наоборот, алгоритм, который лучше всех справлялся с небольшим объемом данных, показал наихудший результат при больших объемах. Следует отметить, что при этом его результат, как и результат остальных алгоритмов, значительно улучшился: с 86 до 94% точности. «Эти результаты показывают, что нам, возможно, понадобится пересмотреть свое представление о том, на что стоит тратить время и средства: на разработку алгоритмов или на развитие корпусов», — отметили Банко и Брилл в одной из своих научных статей на эту тему.[45]

Итак, чем больше данных, тем меньше затрат. А как насчет беспорядочности? Спустя несколько лет после того, как Банко и Брилл начали активно собирать данные, исследователи компании Google, их конкурента, стали рассуждать в том же направлении, но еще более масштабно. Они взялись тестировать алгоритмы, используя не миллиард слов, а корпус из целого триллиона слов. Целью Google была не разработка средства проверки грамматики, а еще более сложная задача — перевод.

Концепция так называемого «машинного» перевода появилась на заре вычислительной техники, в 1940 году, когда устройства состояли из вакуумных ламп и занимали целую комнату. Идея стала особенно актуальной во времена холодной войны, когда в руки США попало огромное количество письменных и устных материалов на русском языке, но не хватало человеческих ресурсов для их быстрого перевода.

Специалисты в области компьютерных наук начали с того, что выбрали сочетание грамматических правил и двуязычный словарь. В 1954 году компания IBM перевела 60 русских фраз на английский язык на основе словарного запаса компьютера, состоящего из 250 пар слов, и шести правил грамматики. Результаты оказались многообещающими. В компьютер IBM 701 с помощью перфокарт ввели текст «Мы передаем мысли посредством речи» и получили на выходе We transmit thoughts by means of speech. В пресс-релизе по случаю такого события отмечалось, что было «благополучно переведено» 60 предложений. Директор программы профессор Леон Достерт из Джорджтауна заявил, что машинный перевод станет «свершившимся фактом» предположительно через «лет пять, а то и три [года]».[46]

Первоначальный успех был обманчив. К 1966 году комитет по вопросам машинного перевода признал, что потерпел неудачу. Проблема оказалась сложнее, чем они предполагали. Суть перевода заключалась в обучении компьютеров не только правилам, но и исключениям. Этому трудно обучить компьютер в прямой форме. В конце концов, перевод состоит не только в запоминании и воспроизведении, как могло показаться раньше. Речь идет о поиске подходящих слов среди множества альтернативных вариантов. Что значит bonjour? «Доброе утро», «добрый день», «здравствуйте» или, может быть, «привет»? Все зависит от обстоятельств.

В конце 1980-х годов у исследователей из компании IBM родилась новая идея. Вместо того чтобы загружать словари и явные лингвистические правила в компьютер, они позволили ему автоматически вычислять статистическую вероятность того, что то или иное слово либо словосочетание на одном языке лучше всего соответствует аналогу на другом. В 1990-х годах в проекте компании IBM Candide был задействован десятилетний опыт переводов стенограмм заседаний канадского парламента, опубликованных на французском и английском языках, — около трех миллионов предложений.[47] Поскольку это официальные документы, их переводы были выполнены с соблюдением чрезвычайно высоких требований. По меркам того времени количество данных было огромным. Эта технология, получившая известность как «статистический машинный перевод», ловко превратила задачу перевода в одну большую математическую задачу. И это сработало. Компьютерный перевод неожиданно стал намного лучше. Однако вслед за начальным прорывом компании IBM не удалось внести каких-либо значительных улучшений, несмотря на большие вложения. В конечном счете проект был закрыт.

Менее чем через десять лет, в 2006-м, компания Google подалась в область перевода в рамках своей миссии «упорядочить мировую информацию и сделать ее полезной и всесторонне доступной». Вместо того чтобы использовать аккуратно переведенные на два языка страницы текста, Google задействовала более массивный, но при этом гораздо более беспорядочный набор данных — глобальную сеть интернет. Разработанная система поглощала все переводы, которые ей только удавалось найти, с целью обучить компьютер. Она обрабатывала корпоративные сайты на нескольких языках, а также идентичные переводы официальных документов и отчетов межправительственных организаций, таких как Организация Объединенных Наций и Европейская комиссия. Даже переводы книг в рамках проекта по сканированию книг были пущены в дело. Вместо трех миллионов тщательно переведенных предложений, используемых в проекте Candide, по словам Франца Оча, главы службы «Google Переводчик» и одного из ведущих специалистов в этой области, система Google охватывала миллиарды страниц документов с широким спектром качества перевода. Корпус этой системы содержал триллион слов и насчитывал 95