В XDK вроде бы есть какая-то рудиментарная поддержка морфологии, но для случаев сложнее английского это точно не работает.
По поводу обобщений «eats» с формами — не помню, но верю. Классы слов («переходные», «непереходные») точно поддерживаются.
А вот по поводу «дофигищща» — как раз это меня не напрягает.
Допустим, есть скрипт, который на основании вывода морф. анализатора генерирует требуемые правила.
Реально для разбора одного предложения нужны только правила, относящиеся к словам данного предложения.
Получается, что для разбора фразы нужно всего-то 5-10 правил. (Понимаю, при этом будут вопросы к производительности, но это уже другая тема).
Я, к сожалению, слабо верю в эти проекты, потому что факты — это хорошо, но их явно недостаточно. Например, с помощью фактов и логических операций трудно описывать события во времени (есть темпоральная логика, но это другая история). Скажем, я не совсем чётко представляю себе, как описать то, что если мальчик пошёл в школу в 8 утра и вернулся в 14 часов дня — значит, в 11 утра он, скорее всего, был в школе.
Честно говоря, я не совсем понимаю, как с помощью decision trees можно решать проблемы NLP.
Хотя сама по себе штука весьма полезная, конечно, но в других задачах! :)
Смотря что вы понимаете под «обобщённой моделью». Если это «универсальный парсер», который берётся анализировать что угодно от норвежского до суахили — конечно, такого не будет. Если же речь идёт о теоретическом формализме, в рамках которого строится модель данного конкретного языка — в это я как раз верю. Языки слишком разообразны для одного алгоритма, но слишком похожи, чтобы им требовался радикально разный подход. Скажем, все компиляторы построены на более-менее одних принципах, хотя языки программирования могут существенно отличаться.
«Склонять фразы» — не берусь судить.
«Склонять имена» — умеют, см. часть про морфологический анализ. В русском языке иностранные имена склоняются так же, как и все прочие слова. Ну, может, с отдельными исключениями :)
Видите ли, в чём проблема — в памяти компьютера можно держать сколь угодно абстрактную модель, но ведь создавать её приходится на основе реальных слов фразы. И если предполагать, что любое слово фразы может соотноситься с любым анонимным объектом — мы выходим на ту же NP-complete задачу.
Жаргонизмы и прочее, конечно, затрудняют разбор, но и без них в языке хватает неоднозначностей. Это называется «каламбур», целый пласт юмора на этом явлении построен :)
Я не говорил «красочнее», я сказал «с тем же успехом». А по поводу прибыльности… чёрт его знает — вон Ютюб по популярности ниже третьего места не опускается. Насколько читал, его до сих пор даже в ноль не вывели, прибыльности там нет.
Так что поживём — увидим.
Во-первых, вы просто рассуждаете американоцентрично. Что значит «весь мир»? Вот фэйсбуком весь мир пользуется?
А вы расскажите об этом китайцам с QQ и японцам с Mixi.
Во-вторых, я не понимаю, каким образом та или иная географическая точка может сделать стартап популярным. В терминах выгод и невыгод ведения бизнеса я еще рассуждать могу.
Но если задаться целью… Линукс, the pirate bay (а почему нет?), rapidshare.de, MySQL (шведский), Panoramio (испания, куплено гуглом).
В Европе проводятся конкурсы стартапов, этим занимаются активно. Почитайте.
Парсер не пытается определить смысл. Его задача — это выявление связи между словами, семантика слов — это не по его части. Впрочем, об этом ещё поговорим. Возможность перевести на «универсальный» язык есть. Например, для этого существует Интерлингва. Но на практике это всё достаточно плохо работает. Представьте себе, что «сёгун и его самураи» будет переведено как «князь и его дружина» :)
Один мой товарищ по безалаберности потерял банковскую карточку (пластиковую). Звонит в поддержку (а я слышу): «здравствуйте! У меня карточка утерялась!» Вроде бы и не виноват :)
Мой научный руководитель говорил, что все эти субъекты-объекты и прочее — игры философов и лингвистов. Называйте как хотите. Если карточка «утерялась», стало быть она — субъект, хотя понятно, что сама утеряться она не могла ;)
Но все эти разговоры к синтаксическому анализу относятся косвенно. Я бы просто сказал, что глагол присоединяет к себе слова, стоящие в том или ином падеже. А как их называть — дело ваше.
(технически я не могу перенести ветку куда бы то ни было, откомментируйтесь тогда в пятой части или позже...)
Я пока сочиняю следующие части, может, после этого смогу ознакомиться с данными теориями.
Про Дабл Р ничего не знаю, а вот про LSA — скажу. Это чисто статистический метод выявления неявных («латентных») зависимостей между словами на основе частотного анализа текстов. Если на него пытаются опираться, для меня это скорее дурной сигнал :)
Я бы сказал, что это вопрос скорее философский, чем технический. Потому что технически в любом языке фраза состоит из слов, связанных как-то между собой. А «субъект», «объект», «предикат» — это смысловые понятия, существующие во всех языках. Да, разные языки используют разные средства для их вычленения. В школе Австралии, наверно, такое можно было бы разбирать так же, как мы разбираем слова по частям: приставка, корень, суффикс, окончание.
Что касается японского — наверно, можно себе вообразить такие хитрые предложения, но если брать обычные «я читаю газету утром», в переводе на японский получится вполне обычная структура с субъектом, объектом и предикатом. Хотя деление на тему и рему тоже будет присутствовать.
На самом деле многие вещи приходится решать волевым усилием. Например, «я буду ходить в школу» — вот здесь «буду ходить» — это реально один глагол или всё-таки два слова, связанные между собой? Ведь по сути здесь одно действие, просто будущее время выражено двумя словами. Или «я не пойду домой». Можно сказать, что «не пойду» — это одно действие, один глагол.
По-моему, сейчас к Штатам и Европа подтянулась. Раньше они были особо привлекательны для бизнеса низкими налогами, но сейчас, если не ошибаюсь, в Штатах налоги выросли, а в Европе — снизились. Так что с тем же успехом можно рассматривать любую приличную европейскую страну.
У нокиа 3310 (дефолтная прошивка :) ) есть относящийся к теме жуткий баг:
После посылки смс тебя выкидывают назад в окно набора текста, где смс уже есть. По идее, можно поправить пару символов и переслать смс другому человеку, но на практике это НЕ работает — сообщение уходит прежнему адресату!
В лингвистике субъект — это подлежащее, объект — дополнение, предикат — сказуемое (просто латинизированные термины).
«До и после» — относится разве что к понятиям темы и ремы, так называемое «актуальное членение предложения».
Да вроде ближе… это чисто грамматические понятия. Например, «существительное мужского рода».
На выходе получаются деревья одного и того же вида, различия лишь в том, как парсер устроен изнутри. Классический нелексикализованный анализатор описан здесь. Он изучает размеченный корпус текстов (трибанк), и далее для входной фразы пытается построить дерево, статистически наиболее близкое к деревьям в трибанке, если я правильно понимаю механику. Например, изучив трибанк, парсер может для себя вывести следующие правила (по Хомскому):
S → NP VP
NP → pron
VP → v NP
NP → det n
Т.е. тут нет конкретных слов, есть только части речи, синтаксические составляющие и т.п.
Лексикализованный парсер так или иначе опирается на конкретные свойства конкретных слов языка.
В диссере Какконена об этом хорошо написано (поиск по слову unlexicalized, а про лексикализацию тоже много где есть, см. стр. 35, к примеру)
По поводу обобщений «eats» с формами — не помню, но верю. Классы слов («переходные», «непереходные») точно поддерживаются.
А вот по поводу «дофигищща» — как раз это меня не напрягает.
Допустим, есть скрипт, который на основании вывода морф. анализатора генерирует требуемые правила.
Реально для разбора одного предложения нужны только правила, относящиеся к словам данного предложения.
Получается, что для разбора фразы нужно всего-то 5-10 правил. (Понимаю, при этом будут вопросы к производительности, но это уже другая тема).
Хотя сама по себе штука весьма полезная, конечно, но в других задачах! :)
«Склонять фразы» — не берусь судить.
«Склонять имена» — умеют, см. часть про морфологический анализ. В русском языке иностранные имена склоняются так же, как и все прочие слова. Ну, может, с отдельными исключениями :)
Жаргонизмы и прочее, конечно, затрудняют разбор, но и без них в языке хватает неоднозначностей. Это называется «каламбур», целый пласт юмора на этом явлении построен :)
Так что поживём — увидим.
А вы расскажите об этом китайцам с QQ и японцам с Mixi.
Во-вторых, я не понимаю, каким образом та или иная географическая точка может сделать стартап популярным. В терминах выгод и невыгод ведения бизнеса я еще рассуждать могу.
Но если задаться целью… Линукс, the pirate bay (а почему нет?), rapidshare.de, MySQL (шведский), Panoramio (испания, куплено гуглом).
В Европе проводятся конкурсы стартапов, этим занимаются активно. Почитайте.
Мой научный руководитель говорил, что все эти субъекты-объекты и прочее — игры философов и лингвистов. Называйте как хотите. Если карточка «утерялась», стало быть она — субъект, хотя понятно, что сама утеряться она не могла ;)
Но все эти разговоры к синтаксическому анализу относятся косвенно. Я бы просто сказал, что глагол присоединяет к себе слова, стоящие в том или ином падеже. А как их называть — дело ваше.
Я пока сочиняю следующие части, может, после этого смогу ознакомиться с данными теориями.
Про Дабл Р ничего не знаю, а вот про LSA — скажу. Это чисто статистический метод выявления неявных («латентных») зависимостей между словами на основе частотного анализа текстов. Если на него пытаются опираться, для меня это скорее дурной сигнал :)
Что касается японского — наверно, можно себе вообразить такие хитрые предложения, но если брать обычные «я читаю газету утром», в переводе на японский получится вполне обычная структура с субъектом, объектом и предикатом. Хотя деление на тему и рему тоже будет присутствовать.
На самом деле многие вещи приходится решать волевым усилием. Например, «я буду ходить в школу» — вот здесь «буду ходить» — это реально один глагол или всё-таки два слова, связанные между собой? Ведь по сути здесь одно действие, просто будущее время выражено двумя словами. Или «я не пойду домой». Можно сказать, что «не пойду» — это одно действие, один глагол.
После посылки смс тебя выкидывают назад в окно набора текста, где смс уже есть. По идее, можно поправить пару символов и переслать смс другому человеку, но на практике это НЕ работает — сообщение уходит прежнему адресату!
ОЧЕНЬ опасно :)
По логике вещей, у любого действия (глагола-сказуемого) всегда есть субъект (подлежащее) и объект (дополнение).
«До и после» — относится разве что к понятиям темы и ремы, так называемое «актуальное членение предложения».
На выходе получаются деревья одного и того же вида, различия лишь в том, как парсер устроен изнутри. Классический нелексикализованный анализатор описан здесь. Он изучает размеченный корпус текстов (трибанк), и далее для входной фразы пытается построить дерево, статистически наиболее близкое к деревьям в трибанке, если я правильно понимаю механику. Например, изучив трибанк, парсер может для себя вывести следующие правила (по Хомскому):
S → NP VP
NP → pron
VP → v NP
NP → det n
Т.е. тут нет конкретных слов, есть только части речи, синтаксические составляющие и т.п.
Лексикализованный парсер так или иначе опирается на конкретные свойства конкретных слов языка.
В диссере Какконена об этом хорошо написано (поиск по слову unlexicalized, а про лексикализацию тоже много где есть, см. стр. 35, к примеру)