Fabrício,

O randomForest tem suas principais funções implementadas em C.  É possível um programa standalone em C para chamar essas funções. Veja o código fonte do pacote para isso.

Veja também classes em C++ feitas para funções C desse pacote em
https://code.google.com/p/randomforest-matlab/source/browse/trunk/RF_Class_C/src/
emboram sejam para serem chamadas em matlab, fica a idéia.

Att.
Elias.

On 19/08/13 20:10, Fabrício Barth wrote:
Escrever um componente que lê a estrutura de árvores do randomForest e cria uma estrutura em ruby/python é factível. No entanto, eu queria ter certeza que não existam componentes que façam isto antes de começar a implementação de um componente novo.

Manoel, você conhece algo que converte um modelo em R para python?

Valeu!


2013/8/19 Manoel Galdino <mcz.fea@gmail.com>

Talvez seja mais fácil vc implementar em python, e depois chamar o python do ruby?

Ou então, usa o r só pra privatização mesmo e reimplementa no ruby. 

Abçs
M

Em 19/08/2013 13:35, "Fabrício Barth" <fabricio.barth@gmail.com> escreveu:
Pessoal,

Usei o algoritmo randomForest do pacote http://cran.r-project.org/web/packages/randomForest/randomForest.pdf para criar um classificador com 80% de acurácia. Quero utilizar este modelo (classificador) em ambiente de produção, integrado a uma aplicação escrita em Ruby. 

Para implementar a integração eu já fiz alguns testes com:

1) RApache: http://rapache.net/
5) R com a opção "-e EXPR" via bash do unix.
6) Exportar o modelo usando PMML (http://journal.r-project.org/archive/2009-1/RJournal_2009-1_Guazzelli+et+al.pdf) e importá-lo no ruby.

No entanto, nenhuma das opções é rápida e robusta o sufiente para processar 4e+09 requisições em no máximo 4 horas. Aliás, se eu fosse fazer um ranking das opções, eu diria que em primeiro lugar está "R com a opção "-e EXPR" via bash do unix", seguido por RScript, depois RinRuby e depois todas as outras alternativas.

A parte em Ruby já foi desenvolvida para processar paralelamente em várias máquinas. No entanto, o gargalo da aplicação está sendo a execução do modelo em R. 

Alguém conhece alguma forma para converter um modelo preditivo em R (no caso, randomForest) para uma estrutura em C ou Ruby?

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.



--
Fabrício J. Barth
http://fbarth.net.br
http://blog.fbarth.net.br
http://twitter.com/fbarth
http://www.flickr.com/fbarth


_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.