Комментарии 8
>А части речи использовались для фильтрации лишних слов: местоимений, числительных, междометий(был не важен эмоциональный окрас) итд.
А как омонимия решалась тогда?
Вот, скажем, встретилось слово «мой» — оно как местоимение отсеялось или осталось, т.к. посчиталось глаголом?
А как омонимия решалась тогда?
Вот, скажем, встретилось слово «мой» — оно как местоимение отсеялось или осталось, т.к. посчиталось глаголом?
+2
Справедливо. Такие инструменты есть. Соглашусь что nltk не часто используется, хотя штука полезная.
Но, несколько моментов: на счет качества, на счет скорости и на счет легкости вхождения.
Когда битва начинается за проценты качества nltk не помогает, а больше мешает. К примеру таггер я банально переписал, используя liblinear, потому что из коробки (и даже после перетренировки) он давал очень плохой результат на данных из твиттера.
Далее, некотоыре моменты сделаны откровенно неоптимально. Возможно, я кое-чего недоглядел, но вычисление того-же tf-idf происходило экстремально долго. Пришлось переписать (правда, кода на 10 строк с numpy). Кроме того, нешустро работали и классификаторы на более-менее приличных объемах. Было еще несколько моментов, где пришлось отказаться от nltk.
Про легкость вхождения. Здесь вы правы. Я когда-то читал nltk book. Изложение простое, лаконичное. Но тут есть проблема — оно слишком поверхностное. Так как рано или поздно вам понадобятся знания как именно устроен тот или иной классификатор, что такое энтропия и перплексия, как работаю парсеры и регекспы, и т.п.
Резюмируя, скажу что это отличный пакет для обучения. Начинаешь быстро понимать, как это все работает вместе. Но для реальной работы скорее понадобятся другие, более оптимальные инструмены.
С Freeling не работал, так что здесь молчу.
Но, несколько моментов: на счет качества, на счет скорости и на счет легкости вхождения.
Когда битва начинается за проценты качества nltk не помогает, а больше мешает. К примеру таггер я банально переписал, используя liblinear, потому что из коробки (и даже после перетренировки) он давал очень плохой результат на данных из твиттера.
Далее, некотоыре моменты сделаны откровенно неоптимально. Возможно, я кое-чего недоглядел, но вычисление того-же tf-idf происходило экстремально долго. Пришлось переписать (правда, кода на 10 строк с numpy). Кроме того, нешустро работали и классификаторы на более-менее приличных объемах. Было еще несколько моментов, где пришлось отказаться от nltk.
Про легкость вхождения. Здесь вы правы. Я когда-то читал nltk book. Изложение простое, лаконичное. Но тут есть проблема — оно слишком поверхностное. Так как рано или поздно вам понадобятся знания как именно устроен тот или иной классификатор, что такое энтропия и перплексия, как работаю парсеры и регекспы, и т.п.
Резюмируя, скажу что это отличный пакет для обучения. Начинаешь быстро понимать, как это все работает вместе. Но для реальной работы скорее понадобятся другие, более оптимальные инструмены.
С Freeling не работал, так что здесь молчу.
+1
Спасибо большое за наводку на freeling. «Нормализация и определение дат и чисел» — именно то, что совсем скоро мне понадобится!
0
Можно еще добавить scikit-learn.org/ к этому списку — это библиотека, в которой собрано почти все, что нужно для машинного обучения: много разных классификаторов (с хорошей реализацией, все что угодно), подсчет tf-idf, есть cython-реализация HMM (в дев-версии с гитхаба) и т.д.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Обработка естественного языка. Полезные инструменты