Os dados de texto e genômicos são compostos de tokens seqüenciais, como palavras e nucleotídeos que dão origem a construções sintáticas de ordem superior. Neste trabalho, buscamos fornecer uma biblioteca Python abrangente implementando campos aleatórios condicionais (CRFs), uma classe de modelos gráficos probabilísticos, para uma predição robusta dessas construções a partir de dados seqüenciais.
Python Sequence Labeling (PySeqLab) é um pacote de código aberto para realizar a aprendizagem supervisionada em tarefas de previsão estruturada. Implementa modelos CRFs, que são modelos discriminatórios de (i) CRFs de cadeia linear de ordem superior e de (ii) CRF semi-Markov de primeira ordem (semi-CRFs) de primeira ordem. Além disso, fornece vários algoritmos de aprendizagem para estimar os parâmetros do modelo, como (i) descendência de gradiente estocástica (SGD) e suas múltiplas variações, (ii) perceptron estruturado com vários esquemas de média que suportam a busca exata e inexata usando uma estrutura de “violação de violação” ( iii) algoritmo de aprendizagem online probabilístico baseado em pesquisa (SAPO) e (iv) uma interface para Broyden-Fletcher-Goldfarb-Shanno (BFGS) e os algoritmos BFGS de memória limitada. Viterbi e Viterbi A * são usados para inferência e decodificação de seqüências. Usando PySeqLab, construímos modelos (classificadores) e avaliaram seu desempenho em três domínios diferentes: (i) processamento de linguagem natural biomedica (PNL), (ii) análise de seqüência de DNA preditiva e (iii) reconhecimento de atividade humana (HAR). O desempenho de última geração comparável aos sistemas baseados em aprendizagem em máquina foi alcançado nos três domínios sem engenharia de recursos ou o uso de fontes de conhecimento.
PySeqLab está disponível através de https://bitbucket.org/A_2/pyseqlab com tutoriais e documentação.
ahmed.allam@yale.edu ou michael.krauthammer@yale.edu.
Os dados suplementares estão disponíveis na Bioinformática online.