Java: метод удаления общих слов в API? - PullRequest
1 голос
/ 25 апреля 2010

Связанный:

  1. Сообщение на форуме

Прежде чем изобретать велосипед, мне нужно знать, существует ли такой метод. Разбор слов в соответствии со списком, таким как список , не кажется сложным, но есть лингвистические аспекты, например, какие слова больше всего подчеркивают при разборке, как насчет контекста?

1 Ответ

2 голосов
/ 25 апреля 2010

То, что вы пытаетесь сделать, это удалить " стоп-слова " из текста. Вы можете найти список английских стоп-слов по ссылке. В зависимости от того, сколько стоп-слов вы используете, может быть более эффективно создать HashSet слов, чтобы вы могли определить, является ли слово стоп-словом в постоянном времени (с помощью содержит () функция), что подразумевает, что фильтрация всего текста будет занимать линейное время по количеству слов. Это такая простая операция, что я сомневаюсь, что вы найдете какую-то библиотеку для этого, но это не должно занять много времени.

Что касается выбора слов для использования ... это действительно зависит от того, что вы пытаетесь сделать. Если вы выполняете какой-то алгоритм машинного обучения для модели пакета слов , то вам действительно нужно попробовать разные варианты слов и посмотреть, какие из них приводят к наименьшей ошибке проверки. С точки зрения контекста, много слов действительно не нужны. Любой, кто хорошо говорит по-английски, может сказать вам, когда вы выбросили «или» или «или». Могут быть общие слова, которые важны для определенной неоднозначности, но в зависимости от вашего приложения они могут быть или не быть необходимыми. Например, если вы хотите знать, кто что-то сделал, то устранение «он», «она» и т. Д. Может быть проблемой, но если вас волнует только то, произошло ли такое-то действие, а вы на самом деле не не важно, кто это сделал, тогда исключить местоимения было бы хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...