Pattern — это модуль веб-майнинга для Python. Он имеет инструменты для:
Интеллектуальный анализ данных: веб-сервисы (Google, Twitter, Wikipedia), веб-сканер, парсер HTML DOM.
Обработка естественного языка: тегеры частей речи, n-граммный поиск, анализ настроений, WordNet
Машинное обучение: модель векторного пространства, кластеризация, классификация (KNN, SVM, Perceptron)
Сетевой анализ: центральность графа и визуализация.
Он хорошо документирован, тщательно протестирован с помощью более 350 модульных тестов и поставляется в комплекте с более чем 50 примерами. Исходный код распространяется под лицензией BSD.
В этом примере классификатор обучается на прилагательных, полученных из Twitter с использованием Python 3. Сначала собираются твиты, содержащие хэштег #win или #fail. Например: «Сегодня милой старушке дайте чаевые в размере 20 долларов #win» . Затем теги части речи слова анализируются, сохраняя только прилагательные. Каждый твит преобразуется в вектор, словарь прилагательных → количество элементов, помеченных WIN
или FAIL
. Классификатор использует векторы, чтобы узнать, какие другие твиты больше похожи на WIN
или FAIL
.
из шаблона.web импортировать Twitterиз шаблона.en импортировать тегиз шаблона.вектор импортировать KNN, counttwitter, knn = Twitter(), KNN() для i в диапазоне (1, 3): для твита в twitter.search('#win OR # fail', start=i, count=100):s =twitter.text.lower()p = '#win' в s и 'WIN' или 'FAIL'v = tag(s)v = [слово в слово, позиция в v if pos == 'JJ'] # JJ = adjectivev = count(v) # {'sweet': 1}if v:knn.train(v, type=p)print(knn.classify('бургер из сладкого картофеля') )print(knn.classify('тупое автоисправление'))
Шаблон поддерживает Python 2.7 и Python 3.6. Чтобы установить Pattern, чтобы он был доступен во всех ваших скриптах, разархивируйте загрузку и в командной строке выполните:
компакт-диск с выкройкой-3.6 установка python setup.py
Если у вас есть pip, вы можете автоматически загрузить и установить его из репозитория PyPI:
шаблон установки pip
Если ничего из вышеперечисленного не помогло, вы можете сообщить Python о модуле тремя способами:
Поместите папку шаблонов в ту же папку, что и ваш скрипт.
Поместите папку шаблонов в стандартное расположение модулей, чтобы она была доступна всем скриптам:
c:python36Libsite-packages
(Windows),
/Library/Python/3.6/site-packages/
(Mac OS X),
/usr/lib/python3.6/site-packages/
(Unix).
Добавьте расположение модуля в sys.path
вашего скрипта перед его импортом:
МОДУЛЬ = '/users/tom/desktop/pattern'import sys; если МОДУЛЬ отсутствует в sys.path: sys.path.append(MODULE) from template.en импортировать дерево синтаксического анализа
Документацию и примеры см. в документации пользователя.
3.6
BSD , дополнительную информацию см. LICENSE.txt
.
Де Смедт Т., Далеманс В. (2012). Шаблон для Python. Журнал исследований машинного обучения, 13 , 2031–2035 гг.
Исходный код размещен на GitHub, вклады и пожертвования приветствуются.
В состав Pattern входят следующие наборы данных, алгоритмы и пакеты Python:
Брилл Тагер , Эрик Брилл
Брилл-тагер для голландца Йеруна Герцена
Brill tagger для немца , Герольда Шнайдера и Мартина Фолька
Brill tagger для испанского языка , обученный на Wikicorpus (Сэмюэл Риз и Джемма Боледа и др.)
Брилл-таггер для французского языка , обученный на Лефффе (Бенуа Саго и Лионель Клеман и др.)
Brill tagger для итальянского языка , взято из Викисловаря.
Английское множественное число , Дэмиан Конвей
Изменение испанского глагола , Фред Джеле
Изменение французского глагола , Боб Салита
Фреймворк Graph JavaScript , Аслак Хеллесой и Дэйв Гувер
LIBSVM , Чи-Чунг Чанг и Чи-Джен Линь
LIBLINEAR , Ронг-Эн Фан и др.
Центральность NetworkX , Арик Хагберг, Дэн Шульт и Питер Сварт
корректор орфографии Питер Норвиг
Авторы:
Том Де Смедт ([email protected])
Уолтер Далеманс ([email protected])
Авторы (в хронологическом порядке):
Фредерик Де Блезер
Джейсон Винер
Дэниел Фризен
Йерун Герцен
Томас Кромбез
Кен Уильямс
Петерис Эриньш
Раджеш Наир
Ф. Де Смедт
Радим Ржегуржек
Том Лоредо
Джон ДеБовис
Томас Силео
Герольд Шнайдер
Мартин Волк
Сэмюэл Джозеф
Шубханшу Мишра
Роберт Элвелл
Фред Йеле
Антуан Мазьер + fabelier.org
Реми де Зутен + closealert.nl
Кеннет Кох
Йенс Гриволла
Фабио Марфия
Стивен Лория
Колин Молтер + tevizz.com
Питер Булл
Маурицио Самбати
Дэн Фу
Сальваторе Ди Дио
Винсент Ван Аш
Фредерик Элверт