22 февраля 2011 года
Для свободного пользования выложена случайная выборка предложений (с нарушенным порядком) из корпуса со снятой омонимией объёмом 180 тыс. словоупотреблений (90 тыс. – пресса, по 30 тыс. из художественных текстов, законодательства и научных текстов).
Да, я читал статью как раз перед реализацией модуля. Хотел сравнить результаты работы скрипта на тестовом примере из соревнования, но для этого мне нужно еще реализовать токенизатор.
Но наиболее интересно было бы построить pos-tagger с расширенными характеристиками, который предсказывал не только часть речи, но и род, число, падеж и прочие.
— почему выбраны именно эти фичи?
# 1001 — съешьте, 2001 — ьте, 3001 — те
Фичи подобраны интуитивно, я взял само слово, два варианта окончания (2 и 3 буквы), два варианта приставки, а также часть речи предыдущих слов. В большинстве случаев, само слово это уже информативная фича, но если оно отсутствовало в обучающей выборке, то на помощь приходят окончания и приставки. Чтобы снять неоднозначность (когда слово может быть несколькими частями речи) в качестве фич добавлены части речи предыдущих слов (пробовал 2 и 3 слова).
— почему выбран SVM как классификатор? (а не, к примеру, наивный байес)
По-моему, выбор классификатора не настолько влияет на производительность, как например, выбор характеристик и данных для обучения. Можно, конечно, поэкспериментировать с различными алгоритмами обучения, но я привык работать с SVM.
И предложение. Попробуйте использовать контекст для разметки. Тут несколько вариантов
Я как раз таки использую части речи предыдущих слов, наверное, плохо в статье описал. Пробовал также использовать и другие характеристики, но экспериментальные результаты были меньше на 1-2%.
И он был прав: Глокая куздра штеко будланула бокра и курдячит бокрёнка
[('Глокая', 'прил.'), ('куздра', 'сущ.'), ('штеко', 'нареч.'), ('будланула', 'глаг.'), ('бокра', 'сущ.'), ('и', 'союз'), ('курдячит', 'глаг.'), ('бокрёнка', 'сущ.')]
Tagged 8 words in 0.0 sec, 10870 words per sec
я как раз этим планирую заняться следующим этапом
Для интереса прогнал через TreeTagger, он выдал следующее:
потея Vmgp---a-p потеть - глагол
, , ,
пью Vmip1s-a-p пить - глагол
киндзмараули Vmis-p-a-e - глагол
, , ,
кричу Vmip1s-a-p кричать - глагол
пернатым Afpmsi пернатый - прилаг.
: - :
гули-гули Vmis-p-a-e - глагол
т.е. чуть получше, но тоже запутался в "киндзмараули" и "гули-гули"
Фичи подобраны интуитивно, я взял само слово, два варианта окончания (2 и 3 буквы), два варианта приставки, а также часть речи предыдущих слов. В большинстве случаев, само слово это уже информативная фича, но если оно отсутствовало в обучающей выборке, то на помощь приходят окончания и приставки. Чтобы снять неоднозначность (когда слово может быть несколькими частями речи) в качестве фич добавлены части речи предыдущих слов (пробовал 2 и 3 слова).
По-моему, выбор классификатора не настолько влияет на производительность, как например, выбор характеристик и данных для обучения. Можно, конечно, поэкспериментировать с различными алгоритмами обучения, но я привык работать с SVM.
Я как раз таки использую части речи предыдущих слов, наверное, плохо в статье описал. Пробовал также использовать и другие характеристики, но экспериментальные результаты были меньше на 1-2%.
Глокая куздра штеко будланула бокра и курдячит бокрёнка
[('Глокая', 'прил.'), ('куздра', 'сущ.'), ('штеко', 'нареч.'), ('будланула', 'глаг.'), ('бокра', 'сущ.'), ('и', 'союз'), ('курдячит', 'глаг.'), ('бокрёнка', 'сущ.')]
Tagged 8 words in 0.0 sec, 10870 words per sec
«Our rock stars aren't like your rock stars»