Este guia deve ilustrar como trabalhar com PMSE (e talvez como começar). Ele apresentará funções básicas que representam a funcionalidade principal do PMSE.
Suíte de software genérica e middleware para SNLP. Filosofia UNIX: um kit de construção de pequenas unidades que podem ser combinadas para criar uma nova cadeia de ferramentas. Agnóstico em relação a idiomas. Escrito em Perl, conjunto de testes automatizado com alta cobertura de código, compatível com UTF-8. Baseado em CLI, processamento eficiente e paralelo. Documentação completa. Modo interativo disponível.
Primeiro, temos que definir o ambiente de trabalho. O PMSE foi projetado para processar documentos independentemente do idioma em que estão escritos. Portanto, adotamos uma estratégia sobre como lidar com documentos em vários idiomas. Estabelecemos uma raiz para biblioteca que está localizada em:
/data/library/
Quando a raiz da biblioteca está definida, diretórios para idiomas específicos podem ser adicionados. O código é derivado da especificação de idioma iso-639-3. O diretório para inglês será, portanto:
/data/library/e/n/g/.
Se você deseja construir sua biblioteca do zero, precisará de um diretório no qual os arquivos de origem serão colocados. Chamamos esse diretório de original, depois de ter seus arquivos, você precisa processá-los (converter para texto simples, fazer a tokenização, extração de n-gramas e assim por diante) para obter as informações desejadas. Os arquivos processados serão armazenados no diretório derived.
Um script P_daf foi projetado para fornecer uma estrutura para download automatizado. P_daf lê um arquivo INI, no qual é especificada a URL do destino. Aqui está um exemplo de arquivo INI muito simples chamado 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"
O significado das seções e argumentos no arquivo é descrito no manual do PMSE. O arquivo demo.ini deve ser armazenado no diretório $PMSE_BIN/cfg/daf.d/. Se você colocou o INI lá, agora pode chamar o script:
P_daf --fetch demo
Após o download, o arquivo 5436.epub deve estar localizado no diretório /data/library/e/n/g/original/.
Primeiro, vá para a biblioteca e depois chame o script P_dmf. Para converter o formato MOBI para txt, você deve instalar o gerenciador de e-books calibre, que é usado pelo P_dmf como uma das ferramentas integradas. Você pode usar a flag PM_CONVERTOR_WARNINGS=1 para exibir conversores que estão faltando em seu sistema.
cd /data/library/e/n/g/
PM_CONVERTOR_WARNINGS=1 P_dmf --in /data/library/e/n/g/original/
Se tudo correr bem, você deve ver o diretório /data/library/e/n/g/derived/. Ele deve conter um arquivo de texto chamado Hyperion.txt. Vamos exibir sua estrutura:
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
O arquivo txt contém um cabeçalho e rodapé com informações do Gutenberg. Usaremos P_rer para 'limpar' o arquivo.
P_rer 's{.+?(Title:\sHyperion)}{$1}xms' Hyperion.txt
P_rer 's{\*\*\*\sEND\sOF\sTHE\sPROJECT.+}{}xms' Hyperion.txt
A remoção dessas seções garantirá que os dados linguísticos extraídos estejam corretos. (A repetição de tokens pode afetar a distribuição de frequências.)
No PMSE existe um tokenizador e segmentador de sentenças simples predefinido para inglês. Ambos usam P_rer e têm forma de macro. Macro é aqui um wrapper de shell - um script com o qual é chamado com argumentos específicos.
MAK_tokenize Hyperion.txt eng
MAK_1s1l -l eng -i Hyperion.txt
A funcionalidade principal do PMSE é a geração de n-gramas e contagem de várias informações estatísticas. O código a seguir usará como entrada todos os arquivos txt no diretório derived e gerará bigramas e contará seu escore MI.
P_gnp --in derived/ --cluster count --ifilter '+token=\A[\w\d]+\z' --out bigrams --measure 'mi=all' --report 3
Nota: Usamos uma especificação padrão de n-gramas. O parâmetro tem esta forma: --ngrams 2 2 ' ' (n-gramas de tamanho 2, de janela de tamanho 2 e o separador entre tokens é um espaço em branco).
Os bigramas são armazenados como um objeto interno do PMSE. O script P_dvf é capaz de converter essa estrutura para vários formatos. Além disso, é capaz de filtrar e classificar os resultados.
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
Acredite ou não, agora vem a melhor parte. PMSE é um produto comercial para o setor acadêmico e a PetaMem quer oferecer a você um pacote "tudo incluído, sem complicações, sem preocupações". Também queremos que esta suíte de software seja acessível para todos. Existem dois modelos de licenciamento simples: Por usuário por estação de trabalho, que é 49,- EUR por mês ou para todo o departamento, que é 499,- EUR por mês sem limites no número de usuários ou estações de trabalho (incluindo estudantes). Todos os preços são + 19% de IVA, que não se aplica se você estiver fora da Alemanha e tiver um VAT-Id.
Prometemos licenciamento "sem complicações, sem preocupações". Com o custo de licenciamento, você obtém não apenas o direito de usar o software, mas também atualizações gratuitas de software e suporte gratuito. Quaisquer upgrades/downgrades de licença são intuitivos e fazem o que você quer. Você tinha cinco licenças individuais e gostaria de uma licença departamental ou vice-versa? Sem problema! Simplesmente nos informe por e-mail e ajustaremos as condições de licenciamento no mesmo dia útil.
E melhora ainda mais: nossa empresa está comprometida com o código aberto e, ao depender de software comercial, há poucas coisas que queremos evitar mais do que o aprisionamento a fornecedores. Você pode ter preocupações semelhantes ao depender de um produto comercial e entendemos completamente isso. Se você decidir encerrar a assinatura de licenciamento do PMSE - bem - você fica com o PMSE e tem permissão para continuar usando-o. Você perde as atualizações gratuitas e o suporte gratuito, mas continua usando o software. De graça.
Se você tiver mais perguntas sobre licenciamento ou se quiser fazer um pedido do produto, não hesite em entrar em contato com sales@petamem.com.
Se você tiver mais questões técnicas detalhadas, entre em contato com support@petamem.com
fechar