И снова морфология

Оказывается, написать морфологический анализатор не так и просто. Впрочем, кто бы сомневался! Поэтому я пошел другим путем и стал рыскать в интернете в поисках уже готового решения. Нашлось несколько решений, которые подходят в той или иной мере.

Решение первое: программа написана на прологе, скомпилирована в DLL и даже имеет файл хендлера для С++. У программы есть большой словарь, что является плюсом. Правда, не совсем понятно, как она работает. Но то, что она работает хорошо, видно по журналу отчета - сложносочиненные предложения она щелкает “на раз”, выделяя основные и вспомогательные члены предложения и указывая связи между ними. Например фраза “Российская Федерация обеспечивает целостность и неприкосновенность своей территории” разбирается в вот такую структуру:

+– # [существительные, объединеные союзом,им.пад.]
+– # [первая часть союза,третье лицо,ж.род,ед.число,им.пад.]
+– и [союз и,третье лицо,ж.род,ед.число,им.пад.]
¦ +– федерация [существительное,третье лицо,ж.род,ед.число,им.пад.]
¦ +– российская [прилагательное,третье лицо,ж.род,ед.число,им.пад.]
¦ +– обеспечивает [глагол,третье лицо,ж.род,ед.число,Н вр.,невозв.]
¦ +– целостность [существительное,третье лицо,ж.род,ед.число,вин.пад.]
+– неприкосновенность [существительное,третье лицо,ж.род,ед.число,им.пад.]
+– территории [существительное,третье лицо,ж.род,ед.число,род.пад.]
+– своей [местоименное прилагательное,третье лицо,ж.род,ед.число,род.пад.]

Что с этим можно сделать я пока еще не знаю, но в целом программа очень хороша! Кроме того, у меня возникли трудности с подключением этой DLL к своему коду.
Continue reading »

Выбор платформы. Часть вторая.

Итак, выбор платформы осуществлен. После достаточно долгого размышления выбор был сделан в пользу связки +. В этом посте я постараюсь объяснить причину такого выбора.

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

Continue reading »

Выбор платформы

Одним из важных вопросов, который возникает в начале каждой серьезной разработки: на какой платформе все это будет работать.

В настоящий момент альтернатив две: Linux или FreeBsd и Windows. Под линуксом работы должны вестись на связке + (PGSQL,FIREBIRD), под виндой - + MSSQL (PGSQL, FIREBIRD). Оракл я в расчет не беру, так как эта среда достаточно сложна и, не имея опыта работы с ней, нет смысла туда соваться. Но с другими связками я работаю уже длительное время и не имею особых предпочтений.

Все понимают, что у каждой платформы есть свои преимущества и недостатки. И для правильного выбора платформы нужно описать все плюсы и все минусы каждой из них.

Continue reading »