Йоханн-Маттис Лист — старший научный сотрудник Института человеческого развития Общества Макса Планка, специалист по исторической лингвистике, разработчик интерактивных систем автоматизированного сравнения языков. Среди его главных проектов — LingPy — пакет на языке Python для автоматического сравнения языков и поиска родственных слов. В интервью Лист рассказывает, как занялся междисциплинарными исследованиями и в чем их ценность, что общего между биологией и лингвистикой и как жонглирование помогает ему в научной работе.
О своей работе
Мы разрабатываем интерактивные системы для сравнительного анализа языков. Но именно интерактивные, то есть предполагающие участие человека. Система помогает сравнивать языки в исторической перспективе, но она не выполняет сравнение автоматически. Надо, чтобы мы еще могли исправлять ошибки, которые делает компьютер (а компьютер делает много ошибок), и интерпретировать результаты. Поэтому мы объединяем цифровые методы и качественные исследования.
Большее внимание мы уделяем исторической лингвистике и лингвистической типологии. Я лично еще занимаюсь разработкой методов для автоматизированного сравнения языков, которые затем передаю экспертам, чтобы они могли их улучшить. Сравнение языков включает много этапов. И моя цель — «оцифровать» каждый этап компаративного метода: перевести данные в подходящий формат, затем сравнить языки и скорректировать результаты, определить, где именно проходят родственные связи и какие еще существуют сходства между этими языками, и наконец построить филогению в виде дерева или сети. Так мы можем автоматически или полу-автоматически реконструировать праязыки.
О первом знакомстве с компьютерными методами
Когда я пошел в докторантуру, я полгода искал работу и не мог ничего найти — мне просто все отказывали. Сейчас я понимаю, что тогда мне очень повезло, потому что потом меня взяли на работу, которая предполагала использование алгоритмов. Я был там экспертом по качественным, нецифровым методам и должен был помогать разрабатывать количественные, компьютерные методы. Но нам не хватало людей, умеющих программировать, и я решил, что смогу научиться этому сам, и в итоге очень полюбил кодить.
Так что это было в целом самообразование с небольшой критикой от моего двоюродного брата-физика, который научил меня создавать циклы с while: мой код становился таким длинным, что я не знал, что с ним делать. Так я научился программировать на Python, и это изменило многое, потому что именно так ты начинаешь действительно понимать и применять алгоритмы.
О роли цифровых методов
Лингвисты боятся, что продвинутые компьютерные технологии заменят их полностью. То же самое с профессиональными переводчиками: есть угроза, что машинный перевод заберет у них всю работу. Но этого не происходит. Мы пользуемся машинным переводом скорее в личных целях: например, если вы хотите прочитать что-то короткое, вроде поста в интернете, просто чтобы понять, что́ разные люди говорят на разных языках. Для подобных целей машинного перевода достаточно. Но никто не станет переводить автоматически закон, Конституцию или роман. Поэтому стоит ценить те глубокие знания, которые мы получили в ходе качественных исследований, и научную интуицию классических исследователей.
Но в то же время нужно развить цифровые методы до такой степени, чтобы они могли быть отправной точкой в исследованиях и лингвистам нужно было только корректировать результаты. Это упрощает работу, и у качественного исследователя-лингвиста будет больше времени на решение действительно интересных задач.
О том, что меняют компьютерные методы
Совершенно точно [с распространением цифровых методов] изменилось отношение людей к деревьям языков (генетическим классификациям) и филогениям. Сейчас всё больше лингвистов хотят этим заниматься: собрать свои данные и получить филогенетическое дерево, потому что они поняли, что вручную не смогут сделать это достаточно детально.
Проблема в том, что филологи, которые занимаются исключительно качественными исследованиями, не до конца понимают, что́ возможно исследовать количественно и какие проблемы мы уже можем решить с помощью компьютера. Филологи требуют приложение, которое помогло бы им провести исследование, и они получают его. Но на самом деле, им нужны такие программисты, которые не просто сделают то, чего от них требуют, а бросят вызов исследователям и спровоцируют их на создание чего-то нового. Ведь существует много инструментов, о которых филологи могут не знать, если недостаточно информированы. Поэтому нам нужно объединить классических филологов и специалистов по цифре. Нам нужны люди, которые связывают две дисциплины.
А междисциплинарное исследование получится, только если участники готовы хоть немного изучить соседнюю область. Специалисты по цифровым методам могут просто не понимать процессы, с которыми имеют дело, процессы эволюции языка, например. Лингвисты же часто не задумываются над тем, как можно формализовать то, что они изучили. Так что думаю, что у обеих сторон есть слабости. Лингвисты должны научиться оценивать и проверять полученные знания, а инженеры — правильно понимать суть задачи. Участники исследования должны по-настоящему интересоваться научными областями своих коллег, только так можно что-нибудь сделать вместе.
О том, что общего и разного между биологией и лингвистикой
Биологию и лингвистику объединяет системный аспект некоторых изменений. Гены не просто развиваются, они развиваются под каким-то системным давлением. То же самое в лингвистике: например, развитие звуков — системное изменение.
С другой стороны, такие случаи довольно сложны для исследования, и биологи их недооценивают. Биологам очень сложно объяснить, что мы на самом деле не знаем, все ли языки и языковые модули развивались единожды. Хомский сказал бы, что они эволюционируют только один раз, но у него нет серьезных аргументов. Его аргументы основываются на понятии универсальной грамматики: если универсальная грамматика действительно существует, то она развивалась только раз. Но никто не знает, действительно ли она существует. У некоторых племен язык появился сам по себе, и мы не сможем описать универсальную грамматику через сравнение всех языков мира. Также с универсальной грамматикой мы приходили бы к мертвой точке, пытаясь сравнить африканские языки с языками Юго-Восточной Азии для реконструкции Прамирового языка, который никогда не существовал.
Биологи имеют дело с жизнью, которая у организмов одна, и развивается она единожды. Так что они всегда могут всё сравнить: они находят общие гены, даже когда сравнивают растение с человеком. У нас так не получится. Мы должны сначала доказать, что языки родственны, и только затем мы можем их сравнивать.
О неопределенности в науке
Это-то мне и нравится в современных науках — мы можем принять неопределенность и сказать, что мы просто чего-то не знаем. Из наших исследований праиндоевропейского языка мы знаем только то, что наше представление о нём постоянно менялось. Мы абсолютно уверены, что он существовал, но как он звучал, мы не знаем, и, может, никогда не узнаем.
Это как с завязанными глазами стрелять в мишень, при этом не зная, где она. И как определить, что ты попал в цель? Можно собрать несколько людей, которые будут пытаться делать то же самое, и собрать несколько типов доказательств. Можно определить положение мишени по тому, насколько доказательства близки друг к другу. Мне кажется, этот вопрос — больше для области философии или методологии науки, или теории науки, где как раз обсуждается проблема научной неопределенности.
Работать с неопределенностью важно, как и принять то, что один вывод, который кажется лучшим сейчас, может оказаться неверным через 10 лет. Например, мы вычислили, что сино-тибетской языковой семье около 7200 лет. Но возможно, через пять лет люди возьмут те же данные и найдут больше родственных слов, или найдут больше данных, и сделают вывод, что ей 10 тысяч лет.
Но факт может и подтвердиться. Такое было в индоевропеистике: Соссюр предсказал, что в праиндоевропейском должно было быть 3 звука, которые невозможно классифицировать, не зная, как они звучали, — сонантические коэффициенты. Затем лингвисты проанализировали хеттский язык, и нашли те самые звуки в хеттском. Так что и доверяя методологии, можно получить новые результаты.
О проекте LingPy
LingPy — «лингвистический Python». Я его создал, когда начал работать над PhD. Это питоновский пакет для количественных исследований в области исторической лингвистики. Как LingPy помогает исследователям? Если они немного знакомы с Python и могут на нем программировать, либо если они воспользуются нашими туториалами, то они могут загрузить в него сколько угодно понятий на 10, и более, языках и, следуя рекомендациям, запустить автоматическое обнаружение родственных слов — это основное предназначение LingPy. Можно даже перевести данные в нужный формат и построить дерево.
Основные алгоритмы LingPy работают стабильно больше 5 лет и помогают мне в моей лингвистической деятельности. Создавались и другие программы по обнаружению родственных слов, некоторые могут быть чуть лучше, но пакет работает очень точно, и никто так и не сделал нового прорыва в этой области.
О графическом интерфейсе для LingPy
Если бы у меня было больше свободного времени, я бы потратил его на программирование. Но тогда я бы делал, что хочу, не отчитываясь ни перед кем, я бы просто программировал для себя.
Я бы тогда закончил наш проект графического интерфейса, в котором пользователи могли бы запускать алгоритмы, которые сейчас запускаются на Python, и одновременно анализировать результат, менять его и применять инструменты. Так что это был бы большой пакет, который можно было бы установить на компьютер и начать анализ. У меня нет времени на такую программу: нужно изучить литературу по созданию графических интерфейсов, написать много кода. Я бы хотел его создать еще и потому, что это помогло бы распространить наши методы, сделать их доступными для большего количества людей, которые сейчас, возможно, не знают, как ими пользоваться.
О жонглировании
Я жонглирую дольше, чем занимаюсь наукой, — почти 25 лет. Думаю, жонглирование научило меня терпению. Каждый раз, когда я начинаю практиковаться, тело еще холодное, мячи постоянно падают. Конечно, я расстраиваюсь, но я знаю, что могу это сделать. Даже если в этот день я не в лучшей форме, всё равно всё получится, если я буду продолжать. И я знаю, что в конце меня ждет вознаграждение. Жонглирование — это сочетание неудач, дисциплины и вознаграждения.
В жонглировании неудачи так часты, что человек просто становится к ним неуязвим, он учится прощать себя за то, что что-то не работает или работает не так, как хотелось. Он учится верить, что, если усердно работать, в конце концов всё получится. Жонглирование учит быть реалистом: существует то, что на данный момент возможно. Ты не сможешь жонглировать девятью мячами, пока не научишься жонглировать семью.
Но в целом, эта вера в свои силы мне очень помогает. Ты привыкаешь к падающим мячам. Надо просто их поднять и начать заново. Некоторым моим коллегам сложно найти мотивацию и справляться с тем, что что-то не работает. Поднять и начать заново — это то, чему учит жонглирование.
В подготовке материала участвовали: Евгения Заковоротная, Лев Ходос, Олий Курилов.
Иллюстрации: Кира Харлашова.