Как автоматически классифицировать слова в словаре? - PullRequest
0 голосов
/ 24 апреля 2011

У меня есть большой файл словаря dic.txt (на самом деле это SOWPODS ) с одним словом из английского языка в строке. Я хочу автоматически разбить этот файл на 3 разных файла easy_dic.txt (наиболее распространенные слова, которые мы используем каждый день - словарь 16-летнего ребенка), medium_dic.txt (слова, которые не так часто используются, но все же известны многим людям - знание из 30-летних минус-слов, найденных в easy_dic.txt), hard_dic.txt (очень эзотерические слова, которые могут знать только профессиональные игроки в Scrabble). Какой самый простой способ (вы можете использовать любые ресурсы из Интернета) для достижения этой цели?

Ответы [ 3 ]

4 голосов
/ 25 апреля 2011

У Google есть правильный инструмент :), и делится своей БД!

Ngram viewer - это инструмент для проверки и сравнения частоты появления слов в литературе, журналах и т. Д.

Вы можетескачайте БД и обучайте свои словари с здесь .

HTH!

Кстати, этот инструмент ОЧЕНЬ забавен в использовании и позволяет узнать даты рождения и исчезновения слова.

0 голосов
/ 25 апреля 2011

Загрузите дамп Википедии, изучите частоты слов с помощью некоторого инструмента Lingpipe (оптимальные структуры данных).Проверьте слова по частотному распределению словарей, затем разбейте их на 3 группы.

0 голосов
/ 24 апреля 2011
  • Возьмите несколько книг (желательно из трех категорий), которые доступны в машиночитаемой форме.
  • Создание гистограмм для всех слов из этих книг.
  • Слияние гистограммдля всех книг из каждой категории.
  • При обработке словаря проверьте, в какой гистограмме категории слово имеет наибольшее количество слов, и поместите слово в эту категорию.

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

...