Это пошаговое руководство должно показать, как работать с PMSE (и, возможно, как начать). Оно познакомит вас с основными функциями, которые представляют собой основную функциональность PMSE.
Универсальный программный пакет и промежуточное ПО для SNLP. Философия UNIX: набор из небольших модулей, которые могут быть объединены в новую цепочку инструментов. Языково-независимый. Написан на Perl, автоматизированный набор тестов с высоким покрытием кода, поддержка UTF-8. На основе CLI, эффективная и параллельная обработка. Подробная документация. Доступен интерактивный режим.
Сначала мы должны определить рабочую среду. PMSE разработан для обработки документов независимо от языка, на котором они написаны. Поэтому мы приняли стратегию работы с документами на различных языках. Мы установили корневой каталог для библиотеки, который расположен в:
/data/library/
Когда корень библиотеки установлен, могут быть добавлены каталоги для конкретных языков. Код получен из спецификации языка iso-639-3. Таким образом, каталог для английского языка будет:
/data/library/e/n/g/.
Если вы хотите создать свою библиотеку с нуля, вам понадобится каталог, в котором будут размещены исходные файлы. Мы называем такой каталог original, как только у вас будут файлы, вам нужно обработать их (преобразовать в простой текст, выполнить токенизацию, извлечение n-грамм и так далее), чтобы получить желаемую информацию. Обработанные файлы будут храниться в каталоге derived.
Скрипт P_daf был разработан для предоставления платформы для автоматической загрузки. P_daf читает INI-файл, в котором указан URL цели. Вот пример очень простого INI-файла под названием demo.ini:
[global]
lastfetch = 2013-01-30 00:00:00
interval = 6 months
name = demo
[Hyperion]
threads = 1;
BASE = http://www.gutenberg.org
url = %BASE%/ebooks/5436
match = a\shref="(?http://www.gutenberg.org/ebooks/(?\d+).(?kindle).noimages)"\stype
get = $file store = "$ENV{PMCORP_ROOT}/e/n/g/original/Hyperion.mobi"
Значение разделов и аргументов в файле описано в руководстве PMSE. Файл demo.ini должен быть сохранен в каталоге $PMSE_BIN/cfg/daf.d/. Если вы разместили INI там, вы можете теперь вызвать скрипт:
P_daf --fetch demo
После загрузки файл 5436.epub должен быть размещен в каталоге /data/library/e/n/g/original/.
Сначала перейдите в библиотеку, а затем вызовите скрипт P_dmf. Для преобразования формата MOBI в txt вам следует установить менеджер электронных книг calibre, который используется P_dmf как один из интегрированных инструментов. Вы можете использовать флаг PM_CONVERTOR_WARNINGS=1 для отображения конверторов, которые отсутствуют в вашей системе.
cd /data/library/e/n/g/
PM_CONVERTOR_WARNINGS=1 P_dmf --in /data/library/e/n/g/original/
Если все прошло хорошо, вы должны увидеть каталог /data/library/e/n/g/derived/. Он должен содержать текстовый файл с именем Hyperion.txt. Давайте отобразим его структуру:
tree derived/
derived/
├── Hyperion.mobi
│ ├── lvl.last
│ └── Hyperion.mobi
│ │ └── Hyperion.txt -> /data/library/e/n/g/derived/Hyperion.mobi/./lvl.1/Hyperion.mobi/Hyperion.txt
│ └── lvl.1
│ └── Hyperion.mobi
│ └── Hyperion.txt
Текстовый файл содержит заголовок и нижний колонтитул с информацией Gutenberg. Мы будем использовать P_rer для 'очистки' файла.
P_rer 's{.+?(Title:\sHyperion)}{$1}xms' Hyperion.txt
P_rer 's{\*\*\*\sEND\sOF\sTHE\sPROJECT.+}{}xms' Hyperion.txt
Удаление этих разделов обеспечит правильность извлеченных лингвистических данных. (Повторение токенов может повлиять на распределение частот.)
В PMSE существует простой предопределенный токенизатор и сегментатор предложений для английского языка. Оба используют P_rer и имеют форму макроса. Макрос здесь - это оболочка shell - скрипт, который вызывается с определенными аргументами.
MAK_tokenize Hyperion.txt eng
MAK_1s1l -l eng -i Hyperion.txt
Основная функциональность PMSE - это генерация n-грамм и подсчет различной статистической информации. Следующий код будет принимать в качестве входных данных все txt-файлы в каталоге derived и будет генерировать биграммы и подсчитывать их MI-оценку.
P_gnp --in derived/ --cluster count --ifilter '+token=\A[\w\d]+\z' --out bigrams --measure 'mi=all' --report 3
Примечание: Мы использовали спецификацию n-грамм по умолчанию. Параметр имеет такую форму: --ngrams 2 2 ' ' (n-граммы размера 2, из окна размера 2, и разделитель между токенами - пробел).
Биграммы хранятся как внутренний объект PMSE. Скрипт P_dvf способен преобразовать эту структуру в различные форматы. Также он способен фильтровать и сортировать результаты.
P_dvf --in mi_1\|2 --filter '($value < 9) | ($key =~ m{\b(that|this|was|and|we|she|he|I|a|is|are|the|be)\b}xmsi)' --sort '+val'
email: sales@petamem.com
phone: +49 911 894 6455
fax: +420 284 680 110
Верите или нет, теперь самое приятное. PMSE - это коммерческий продукт для академического сектора, и PetaMem хочет предложить вам пакет "все включено, без хлопот, без забот". Мы также хотим, чтобы этот программный пакет был доступен для всех. Существует две простые лицензионные модели: На пользователя на рабочую станцию, что составляет 49 EUR в месяц, или на весь отдел, что составляет 499 EUR в месяц без ограничений на количество пользователей или рабочих станций (включая студентов). Вся цена + 19% НДС, который не применяется, если вы находитесь за пределами Германии и имеете НДС-Id.
Мы обещаем лицензирование "без хлопот, без забот". С лицензионной стоимостью вы получаете не только право на использование программного обеспечения, но также бесплатные обновления и бесплатную поддержку. Любые обновления/понижения лицензии интуитивны и делают то, что вы имеете в виду. У вас было пять отдельных лицензий и вы хотите лицензию на отдел или наоборот? Нет проблем! Просто сообщите нам по электронной почте, и мы скорректируем условия лицензирования в тот же рабочий день.
И это еще не все: наша компания привержена открытому исходному коду, и когда мы полагаемся на коммерческое программное обеспечение, есть лишь несколько вещей, которых мы хотим избежать больше, чем привязки к поставщику. У вас могут быть подобные опасения при использовании коммерческого продукта, и мы полностью это понимаем. Если вы решите прекратить лицензионную подписку на PMSE - что ж - вы сохраняете PMSE и можете продолжать его использовать. Вы теряете бесплатные обновления и бесплатную поддержку, но продолжаете использовать программное обеспечение. Бесплатно.
Если у вас есть какие-либо дополнительные вопросы относительно лицензирования или вы хотите заказать продукт, пожалуйста, не стесняйтесь обращаться по адресу sales@petamem.com.
Если у вас есть дополнительные подробные технические вопросы, пожалуйста, обращайтесь по адресу support@petamem.com
закрыть