Честно говоря, английский язык не так прост, как вам кажется. Хотя компьютеры могут делать удивительные вещи, то, что делает человеческий мозг при использовании английского (или любого другого языка), еще сложнее.
Например, предположим, что мы хотим создать читающую машину для слепых. Первая проблема, с которой мы столкнемся, - это, конечно, превращение письменных символов на странице в звуки речи. Это само по себе сложная задача, но предположим, что мы можем сказать компьютеру, как произносить каждое слово в словаре. Даже в этом случае мы столкнемся с множеством головоломок.
Возьмем, например, четыре буквы read; их можно произнести как reed или red. Как машина узнает в каждом случае, какое произношение является правильным? Предположим, она сталкивается со следующими предложениями:
(1) Девочки будут читать газету. (тростник) (2) Девочки прочитали газету. (красный)
Мы могли бы запрограммировать машину на произношение слова read как reed, если оно идет сразу после will, и red, если оно идет сразу после have. Но тогда предложения (3) - (5) вызовут затруднения.
(3) Будут ли девочки читать газету? (reed)
(4) Читали ли газету люди доброй воли? (красный)
(5) Читали ли исполнители завещания газету? (красный)
В предложении (3) will не стоит рядом с read, однако read произносится как reed. В предложениях (4) и (5) will стоит рядом с read, но произносится red. Как мы можем запрограммировать машину, чтобы все получилось правильно?
Прежде всего, машина должна знать, что в предложениях (1) и (2) will и have являются "вспомогательными" глаголами. Это означает, что они изменяют основной глагол read - в данном случае, указывая на то.
указывая, происходит ли чтение в прошлом или будущем. Таким образом, мы можем сказать компьютеру, что read произносится как reed после вспомогательного will и как red после вспомогательного have.
В (3) will снова является вспомогательным глаголом, изменяющим read, хотя эти два слова не находятся рядом друг с другом. Поэтому его следует произносить как reed. Но в (4) и (5) will не является вспомогательным глаголом, это существительное. В этих предложениях вспомогательный глагол, изменяющий read, - have, как и в (2), поэтому read следует произносить как red.
Как машина может это определить? Она не может определить это по одним только словам, поскольку will выглядит одинаково в предложениях (3) - (5). Вместо этого ей необходимо провести грамматический анализ текста, чтобы выяснить, какие слова объединяются во фразы и к какой категории относится каждое слово (существительное, глагол и т.д.). Чтобы понять, насколько сложной может оказаться эта задача, рассмотрим еще несколько случаев:
(6) Девочки, которые будут отдыхать на следующей неделе, уже прочитали газету? (красный)
(7) Пожалуйста, попросите девочек прочитать газету. (тростник) (8) Девочки уже прочитали газету? (красный)
В предложении (6) перед read стоят have и will, и оба они являются вспомогательными глаголами. Но will модифицирует be, а have модифицирует read. Чтобы сопоставить глаголы с их вспомогательными глаголами, машина должна знать, что девушки, которые будут отдыхать на следующей неделе, являются отдельной фразой внутри предложения.
В предложении (7) have - это вовсе не вспомогательный глагол, а основной глагол, который означает что-то вроде "вызывать" или "приводить в действие". Для правильного произношения машина должна быть способна распознать разницу между командой, подобной (7), и очень похожим вопросом в (8), который требует произношения red.
Мы очень быстро перешли к детальному грамматическому анализу, просто пытаясь понять, как машина может определить, когда произносить read как reed, а когда как red - то, что знает любой школьник. Этот конкретный вопрос может показаться неважным, но проблемы, подобные этой, возникают постоянно.
постоянно возникают в любом компьютерном приложении, использующем человеческий язык, начиная от читающих машин для слепых и заканчивая автоматизированной телефонной системой, которая сообщает вам, когда придет срок сдачи книг в библиотеку.синтаксической теории позволили нам гораздо лучше понять грамматические конструкции - в английском и многих других языках - чем когда-либо прежде. Проблема "тростник против красного" - это очень простой пример бесчисленных головоломок, для решения которых требуются инструменты синтаксического анализа, разработанные лингвистами. За последние три-четыре десятилетия достижения синтаксической теории позволили нам гораздо лучше понять грамматические конструкции - в английском и многих других языках - чем когда-либо прежде. Благодаря этим достижениям компьютеры впервые смогли использовать "естественный" человеческий язык, по крайней мере, в некоторых ограниченных пределах - например, для перевода документов с одного языка на другой. Но даже самое простое использование языка требует огромного количества лингвистических знаний, которые должны быть запрограммированы в компьютере, как показывает проблема тростника/краса.
Как бы ни были сложны эти вопросы для компьютеров, люди решают множество подобных проблем каждый раз, когда читают, пишут, говорят или слушают. И мы делаем это без особых усилий, даже не замечая сложности того, что мы делаем, и уж точно не осознавая, как мы это делаем.