2014-01-10 1 views
-1

Мне нужно собрать информацию из источника и классифицировать информацию на основе определенных правил. Ввод будет текстовым. Например: «Радж любит есть шоколадные конфеты. Рохан любит цветы. Рави очень популярен».Определение правил и выводов, основанных на грамматике, в android

Из того, что я узнал до даты, мы можем пометить текст на основе nounfrases, verbfrase и т. Д. Итак, я планирую сначала пометить текст. Теперь я хочу определить такие правила, как:

если nounfrase появляется после «love *», то добавьте шоколад в список. Аналогичным образом, , если nounfrase появляется после «like *», затем добавьте цветы к списку.

Теперь, для классификации, я создам классы, определяющие RDF, и индивидуумы для шоколада и цветов.

Мой вопрос здесь 1. Как определить правила грамматики в Android? 2. Получив существительные фразы, как классифицировать эти существительные под классом элементов, которые определены в RDF?

Спасибо.

+0

Вам нужно сделать синтаксический анализ для извлечения существительного, или вы предполагаете, что если фраза продолжается после глагола, то где-то есть существительное? Являются ли существительные ограниченными списком существительных, которые у вас есть? – ilomambo

+0

Я использую теггер для извлечения существительных. Существительные, которые мне нужны, чтобы быть экстрактом, были бы обычными, такими как цветок, шоколад и т. Д., И позже были бы сопоставлены с атрибутом RDF. Но если семантический анализатор доступен, было бы здорово. Это повысит точность системы –

ответ

0

Я предполагаю, что вы спрашиваете о , как программировать, а не как использовать Android в качестве ОС.

К сожалению, в java для Android нет инструментов грамматики, вам нужно будет использовать парсер для естественного языка (см. this parser online, также есть API для программирования).
Парсеры, такие как YACC, BISON, ANTLR или подобные (вы получите много информации, используя эти термины), не подходят для вас, поскольку они требуют однозначных грамматик, а естественный язык - не что иное, как однозначный.

Если ваш ввод относительно прост, вы должны рассмотреть возможность использования своего рода регулярного анализа и классификации. Это намного проще и проще реализовать. Java поддерживает все виды манипуляций с регулярными выражениями.

+0

У нас есть аналогичный автономный парсер для Android? Онлайн-парсер был чем-то полезным. Я могу разобрать текст, а затем использовать регулярное выражение вместе с OWL, чтобы выполнить эту работу. Спасибо –

+0

@rohitminni На самом деле, на связанной странице в моем ответе вторая ссылка «здесь» показывает вам, как использовать ее с вашего собственного кода JavaScript javascript. Я не останавливался на этом, но, возможно, это то, что вы ищете. – ilomambo

+0

@rohitminni Кроме того, на домашней странице анализатора Standford (см. Приведенную выше ссылку, и вы ее найдете) у вас есть интересные ссылки на расширения в Java и других языках, кроме того, что вы можете загрузить сам синтаксический анализатор. – ilomambo

 Смежные вопросы

  • Нет связанных вопросов^_^