А есть что-нибудь такое, что мы хоть каким-то боком используем сегодня?
Упомянутый Бэкус изобрёл форму Бэкуса[-Наура], Грейс Хопер придумала Кобол, Маккарти — если не ошибаюсь, Лисп…
Вообще мне кажется, что там народ как-то варился в собственном соку, и по сути дела, вся эта работа сгинула в никуда. Хотя верю, что было много прекрасного придумано.
Из реально используемых достижений сходу сейчас могу вспомнить разве что «расстояние Левенштейна», надеюсь, что есть ещё что-то.
«Texai is an knowledge-based, open source project to create artificial intelligence.» — звучит, конечно, круто :)
Честно говоря, попытался понять, но сходу не дошло. Видно, что они ориентируются в большей степени на анализ сущностей (т.е. создания «портретов» объектов), создании контекста. При этом не совсем ясно, как конкретно может происходить анализ зависимостей в предложениях как таковых.
По поводу дерева зависимостей: в статьях обычно пишут, что dependency links «ближе» к семантическим связям, чем связи phrase structure. А какие связи вы бы назвали семантическими? Мне кажется, тут зависит от того, как строить…
По поводу идей Хомского. Как же получается, что для естественных языков идеи не работают, но остаются влиятельными?
А по поводу «предикативного предложения» — честно говоря, я просто сделал кальку с финского «predikatiivilause». В учебнике базового уровня приводится пять типов предложений, «на улице сыро» относится вот к этому типу. Надо сказать, там всё равно используется вспомогательный глагол «быть», но по-русски как-то вот не могу запихнуть «быть» в «на улице сыро»…
А вы хотите сразу адаптировать XDK под себя, что-либо переписать? :)
По идее, вам должно быть всё равно, как это работает. XDK — это готовый парсер, для которого пишется XDG-грамматика (а она уже никакого отношения к constraint programming не имеет).
Грубо говоря, какая разница, на каком языке написан компилятор Паскаля, если писать вам на Паскале?..
По поводу синтеза — не знаю, но по-моему, в нынешней реализации предусмотрен только один сценарий: на входе текст и грамматика, на выходе дерево.
Хм, интересно…
Я сейчас проверил по большому словарю — да, «нии-чан» даётся как «просто брат», хотя в электронном словаре такой расшифровки нет.
Но что характерно, это явно контекстно-зависимый перевод, т.к. для написания используется тот же иероглиф, что и для «старшего брата». Хотя лучше уточнить, я пока ещё специалистом в японском себя назвать не могу.
Верно, но это лишь у меня в качестве примеров идут КС-грамматики. Поклонники хомскианского подхода могут возразить, что контекстно-зависимые грамматики никто не отменял.
По поводу XDG. Я ещё буду об этом проекте рассказывать :) По-моему, это самое лучшее, что есть на сегодня в dependency parsing. Однако «движок» куда лучше, чем грамматики, для него предлагаемые. Не только для русского, вообще ни для какого языка приличных грамматик под XDK нет, насколько мне известно. Только полуигрушечные примеры.
А по поводу constraint programming — честно сказать, мне кажется, что нынешняя реализация и есть наилучшая. Штука в том, что dependency parsing грамматик XDG в чистом виде это NP-полная задача. С помощью constraint programming автор автоматически врубает кучу оптимизаций, предусмотренных средой. Если кто захочет писать свой алгоритм, это будет, мягко говоря, нелегко.
Эм, вот так сходу не скажу, но посмотрите исходники на вышеупомянутых лемматайзере и аот.ру
У Сокирко есть статьи на эту тему.
Так или иначе, анализатор аот.ру основан на словаре Зализняка, стало быть, таблицы должны присутствовать.
С этим та же проблема, что и с выбором метода и т.п. — слишком велико разнообразие вариантов, чтобы все их охватить в одной книге.
Например, много где цитируют монографию Журафски. Быть может, по уровню охвата и вправду это самая обширная книга.
Однако про dependency parsing в ней вообще ничего или два слова (могу ошибаться, давно её листал).
К сожалению, вам сначала придётся определиться с узкой задачей, а потом уже смотреть литературу по теме. По крайней мере, для меня самого это проблема.
А по поводу анализатора Сокирко — не могу согласиться. Зайдите на aot.ru/demo/morph.html
Если ввести «прыгать», он пишет, что это инфинитив, а если «прыгаю» — Г[лагол].
Проблема в том, что «масло слишком тонко размазано». Одни занимаются морфологией, другие синтаксисом, третьи — извлечением фактов… К тому же, всё завязано на конкретные языки. Если вас интересует, скажем, русский, толку с того, что такая-то фирма имеет кучу алгоритмов для работы с английским или немецким. И борьба подходов, методов ещё не завершена :)
Упомянутый Бэкус изобрёл форму Бэкуса[-Наура], Грейс Хопер придумала Кобол, Маккарти — если не ошибаюсь, Лисп…
Вообще мне кажется, что там народ как-то варился в собственном соку, и по сути дела, вся эта работа сгинула в никуда. Хотя верю, что было много прекрасного придумано.
Из реально используемых достижений сходу сейчас могу вспомнить разве что «расстояние Левенштейна», надеюсь, что есть ещё что-то.
Честно говоря, попытался понять, но сходу не дошло. Видно, что они ориентируются в большей степени на анализ сущностей (т.е. создания «портретов» объектов), создании контекста. При этом не совсем ясно, как конкретно может происходить анализ зависимостей в предложениях как таковых.
По поводу идей Хомского. Как же получается, что для естественных языков идеи не работают, но остаются влиятельными?
А по поводу «предикативного предложения» — честно говоря, я просто сделал кальку с финского «predikatiivilause». В учебнике базового уровня приводится пять типов предложений, «на улице сыро» относится вот к этому типу. Надо сказать, там всё равно используется вспомогательный глагол «быть», но по-русски как-то вот не могу запихнуть «быть» в «на улице сыро»…
По идее, вам должно быть всё равно, как это работает. XDK — это готовый парсер, для которого пишется XDG-грамматика (а она уже никакого отношения к constraint programming не имеет).
Грубо говоря, какая разница, на каком языке написан компилятор Паскаля, если писать вам на Паскале?..
По поводу синтеза — не знаю, но по-моему, в нынешней реализации предусмотрен только один сценарий: на входе текст и грамматика, на выходе дерево.
Я сейчас проверил по большому словарю — да, «нии-чан» даётся как «просто брат», хотя в электронном словаре такой расшифровки нет.
Но что характерно, это явно контекстно-зависимый перевод, т.к. для написания используется тот же иероглиф, что и для «старшего брата». Хотя лучше уточнить, я пока ещё специалистом в японском себя назвать не могу.
В разных языках транскрипция разной степени сложности.
В русском средне, в английском сложно… слишком уж разнообразны источники, откуда в английский приходили слова, сохраняя произношение.
По поводу XDG. Я ещё буду об этом проекте рассказывать :) По-моему, это самое лучшее, что есть на сегодня в dependency parsing. Однако «движок» куда лучше, чем грамматики, для него предлагаемые. Не только для русского, вообще ни для какого языка приличных грамматик под XDK нет, насколько мне известно. Только полуигрушечные примеры.
А по поводу constraint programming — честно сказать, мне кажется, что нынешняя реализация и есть наилучшая. Штука в том, что dependency parsing грамматик XDG в чистом виде это NP-полная задача. С помощью constraint programming автор автоматически врубает кучу оптимизаций, предусмотренных средой. Если кто захочет писать свой алгоритм, это будет, мягко говоря, нелегко.
У Сокирко есть статьи на эту тему.
Так или иначе, анализатор аот.ру основан на словаре Зализняка, стало быть, таблицы должны присутствовать.
Например, много где цитируют монографию Журафски. Быть может, по уровню охвата и вправду это самая обширная книга.
Однако про dependency parsing в ней вообще ничего или два слова (могу ошибаться, давно её листал).
К сожалению, вам сначала придётся определиться с узкой задачей, а потом уже смотреть литературу по теме. По крайней мере, для меня самого это проблема.
И своё мнение о подходах гугла я ещё выскажу :))
А по поводу анализатора Сокирко — не могу согласиться. Зайдите на aot.ru/demo/morph.html
Если ввести «прыгать», он пишет, что это инфинитив, а если «прыгаю» — Г[лагол].
Это просто транслитерация на катакану русского слова «брат» :)))
Проблема в том, что «масло слишком тонко размазано». Одни занимаются морфологией, другие синтаксисом, третьи — извлечением фактов… К тому же, всё завязано на конкретные языки. Если вас интересует, скажем, русский, толку с того, что такая-то фирма имеет кучу алгоритмов для работы с английским или немецким. И борьба подходов, методов ещё не завершена :)