Boa noite Alceu, desculpe pela demora. Todas as implementações de classificador bayesiano que encontrei no CPAN trabalham com as estruturas de dados nativas do Perl, ou seja, na RAM. Quando a persistência é implementada, é através da serialização por Storable. Bom, no meu caso, a interface com o categorizador se daria por meio de um webservice. E o volume se dados com que trabalhei ameaçava não caber na RAM de uma máquina só. No mais, usei map/reduce do MongoDB para implementar um categorizador bayesiano "just for fun", por que aparentemente ninguém tinha feito isso ainda :P
ABS() 2013/5/7 Alceu Rodrigues de Freitas Junior <glasswal...@yahoo.com.br> > Olá Stanislaw, > > Eu li seu artigo em > https://gist.github.com/**creaktive/1924499<https://gist.github.com/creaktive/1924499>e > achei bastante didático, principalmente sobre a parte estatística. > > No entanto, eu devo dizer que é possível sim utilizar persistência com o > AI::Categorizer: > > if ( -e $store_file ) { > > $know_set = AI::Categorizer::KnowledgeSet-** > >restore_state($store_file); > $c = AI::Categorizer->new( > knowledge_set => $know_set, > verbose => 0 > ); > > } > else { > > $know_set = AI::Categorizer::KnowledgeSet-**>new( > name => 'Integration Errors', > verbose => 0 > ); > > $c = AI::Categorizer->new( > knowledge_set => $know_set, > verbose => 0 > ); > > create_categs( > { file => $cat_file, categorizer => $c, stop_words => $stopwords } > ); > > $know_set->save_state($store_**file); > } > > O fato de poder evitar "reaprender" economizou tempo, ciclo de CPU e > memória no programa que desenvolvi. > > No mais, por qual motivo você optou por usar MongoDB como backend? Digo, > além da escalabilidade? Não existe uma possível perda de dados neste caso? > > []'s > Alceu > > Em 18-04-2013 10:03, Stanislaw Pusep escreveu: > >> Não dá: ele é high-level demais. O que pode ser feito é uma gambiarra: >> pre-processar o documento e representá-lo com hashes de seus tokens >> customizados. Uma excelente referencia: >> http://hunch.net/~jl/projects/**hash_reps/index.html<http://hunch.net/~jl/projects/hash_reps/index.html> >> >> >> ABS() >> >> >> 2013/4/18 Alceu Rodrigues de Freitas Junior <glasswal...@yahoo.com.br >> <mailto:glasswal...@yahoo.com.**br <glasswal...@yahoo.com.br>>> >> >> >> De fato foram ótimas dicas. >> >> Só fiquei com uma dúvida: como controlar o AI::Categorizer para >> utilizar como tokens mais de uma palavra? >> >> []'s >> Alceu >> >> > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org > L<http://mail.pm.org/mailman/**listinfo/saopaulo-pm<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > > > =end disclaimer >
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer