<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Fabrício, <br>
      <br>
      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. <br>
      <br>
      Veja também classes em C++ feitas para funções C desse pacote em <br>
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      <a
href="https://code.google.com/p/randomforest-matlab/source/browse/trunk/RF_Class_C/src/">https://code.google.com/p/randomforest-matlab/source/browse/trunk/RF_Class_C/src/</a><br>
      emboram sejam para serem chamadas em matlab, fica a idéia.<br>
      <br>
      Att.<br>
      Elias.<br>
      <br>
      On 19/08/13 20:10, Fabrício Barth wrote:<br>
    </div>
    <blockquote
cite="mid:CA+ZaqT4XY0Li4QoXJ7=A3Re9QqUxVeyi0XAsiiCz=0VXEdTz2w@mail.gmail.com"
      type="cite">
      <div dir="ltr">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.
        <div>
          <br>
        </div>
        <div>Manoel, você conhece algo que converte um modelo em R para
          python?</div>
        <div><br>
        </div>
        <div>Valeu!</div>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">2013/8/19 Manoel Galdino <span
            dir="ltr"><<a moz-do-not-send="true"
              href="mailto:mcz.fea@gmail.com" target="_blank">mcz.fea@gmail.com</a>></span><br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <p>Talvez seja mais fácil vc implementar em python, e depois
              chamar o python do ruby?</p>
            <p>Ou então, usa o r só pra privatização mesmo e
              reimplementa no ruby.  </p>
            <p>Abçs<br>
              M</p>
            <div class="gmail_quote">Em 19/08/2013 13:35, "Fabrício
              Barth" <<a moz-do-not-send="true"
                href="mailto:fabricio.barth@gmail.com" target="_blank">fabricio.barth@gmail.com</a>>
              escreveu:<br type="attribution">
              <blockquote class="gmail_quote" style="margin:0 0 0
                .8ex;border-left:1px #ccc solid;padding-left:1ex">
                <div>
                  <div class="h5">
                    <div dir="ltr">Pessoal,
                      <div><br>
                      </div>
                      <div>Usei o algoritmo randomForest do pacote <a
                          moz-do-not-send="true"
href="http://cran.r-project.org/web/packages/randomForest/randomForest.pdf"
                          target="_blank">http://cran.r-project.org/web/packages/randomForest/randomForest.pdf</a> 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. </div>
                      <div><br>
                      </div>
                      <div>Para implementar a integração eu já fiz
                        alguns testes com:</div>
                      <div><br>
                      </div>
                      <div>1) RApache: <a moz-do-not-send="true"
                          href="http://rapache.net/"
                          style="text-decoration:none" target="_blank"><span
style="font-size:13px;font-family:Arial;background-color:transparent;text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">http://rapache.net/</span></a></div>
                      <div>2) Rserver: <a moz-do-not-send="true"
                          href="http://www.rforge.net/Rserve/doc.html"
                          style="text-decoration:none" target="_blank"><span
style="font-size:13px;font-family:Arial;background-color:transparent;text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">http://www.rforge.net/Rserve/doc.html</span></a></div>
                      <div>3) RinRuby: <a moz-do-not-send="true"
                          href="https://sites.google.com/a/ddahl.org/rinruby-users/"
                          style="text-decoration:none" target="_blank"><span
style="font-size:13px;font-family:Arial;background-color:transparent;text-decoration:underline;vertical-align:baseline;white-space:pre-wrap">https://sites.google.com/a/ddahl.org/rinruby-users/</span></a></div>
                      <div>4) RScript: <span
style="text-decoration:underline;font-size:13px;font-family:Arial;background-color:transparent;vertical-align:baseline;white-space:pre-wrap"><a
                            moz-do-not-send="true"
href="http://stat.ethz.ch/R-manual/R-patched/library/utils/html/Rscript.html"
                            style="text-decoration:none" target="_blank">http://stat.ethz.ch/R-manual/R-patched/library/utils/html/Rscript.html</a></span></div>
                      <div>5) R com a opção "-e EXPR" via bash do unix.</div>
                      <div>6) Exportar o modelo usando PMML (<a
                          moz-do-not-send="true"
href="http://journal.r-project.org/archive/2009-1/RJournal_2009-1_Guazzelli+et+al.pdf"
                          target="_blank">http://journal.r-project.org/archive/2009-1/RJournal_2009-1_Guazzelli+et+al.pdf</a>)
                        e importá-lo no ruby.</div>
                      <div><br>
                      </div>
                      <div>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.</div>
                      <div><br>
                      </div>
                      <div>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. </div>
                      <div><br>
                      </div>
                      <div>Alguém conhece alguma forma para converter um
                        modelo preditivo em R (no caso, randomForest)
                        para uma estrutura em C ou Ruby?</div>
                      <div>
                        <div><br>
                        </div>
                        <div>Valeu!</div>
                        -- <br>
                        Fabrício J. Barth<br>
                        <a moz-do-not-send="true"
                          href="http://fbarth.net.br" target="_blank">http://fbarth.net.br</a><br>
                        <a moz-do-not-send="true"
                          href="http://blog.fbarth.net.br"
                          target="_blank">http://blog.fbarth.net.br</a><br>
                        <a moz-do-not-send="true"
                          href="http://twitter.com/fbarth"
                          target="_blank">http://twitter.com/fbarth</a><br>
                        <a moz-do-not-send="true"
                          href="http://www.flickr.com/fbarth"
                          target="_blank">http://www.flickr.com/fbarth</a><br>
                      </div>
                    </div>
                    <br>
                  </div>
                </div>
                _______________________________________________<br>
                R-br mailing list<br>
                <a moz-do-not-send="true"
                  href="mailto:R-br@listas.c3sl.ufpr.br" target="_blank">R-br@listas.c3sl.ufpr.br</a><br>
                <a moz-do-not-send="true"
                  href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br"
                  target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
                Leia o guia de postagem (<a moz-do-not-send="true"
                  href="http://www.leg.ufpr.br/r-br-guia"
                  target="_blank">http://www.leg.ufpr.br/r-br-guia</a>)
                e forneça código mínimo reproduzível.<br>
              </blockquote>
            </div>
            <br>
            _______________________________________________<br>
            R-br mailing list<br>
            <a moz-do-not-send="true"
              href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
            <a moz-do-not-send="true"
              href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br"
              target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
            Leia o guia de postagem (<a moz-do-not-send="true"
              href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>)
            e forneça código mínimo reproduzível.<br>
          </blockquote>
        </div>
        <br>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        Fabrício J. Barth<br>
        <a moz-do-not-send="true" href="http://fbarth.net.br"
          target="_blank">http://fbarth.net.br</a><br>
        <a moz-do-not-send="true" href="http://blog.fbarth.net.br"
          target="_blank">http://blog.fbarth.net.br</a><br>
        <a moz-do-not-send="true" href="http://twitter.com/fbarth"
          target="_blank">http://twitter.com/fbarth</a><br>
        <a moz-do-not-send="true" href="http://www.flickr.com/fbarth"
          target="_blank">http://www.flickr.com/fbarth</a><br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
R-br mailing list
<a class="moz-txt-link-abbreviated" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a>
<a class="moz-txt-link-freetext" href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a>
Leia o guia de postagem (<a class="moz-txt-link-freetext" href="http://www.leg.ufpr.br/r-br-guia">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.</pre>
    </blockquote>
    <br>
  </body>
</html>