2012-01-27 12 views
16

Czy znasz dobrą bibliotekę do gradientowego zwiększania uczenia maszynowego drzewa?Biblioteka dla drzewa podnoszącego gradient

korzystnie:

  • dobrych algorytmów takich jak adaboost, TreeBoost, AnyBoost, LogitBoost itp
  • ustawionego słabych klasyfikatorów
  • zdolnych zarówno do klasyfikacji i prognozowania (regresji)
  • ze wszystkimi rodzaje dozwolonych sygnałów: liczby, kategorie lub dowolny tekst
  • C/C++ lub Python
  • otwiera nasz

Do tej pory znalazłem http://www.multiboost.org/home który wygląda dobrze. Ale zastanawiam się, czy istnieją inne biblioteki?

Odpowiedz

0

Osobiście preferuję uruchamianie weka (która jest java) przy użyciu modułu podprocesu python. Jednak moi współpracownicy często używają:

  • orange - zalecany mi jako najlepszy zestaw narzędzi do nauki maszyn dla Pythona.
  • opencv - która jest C++, ale ma powiązania Pythona. Ta biblioteka została pierwotnie opracowana dla Computer Vision, ale ma zaimplementowane wiele algorytmów ML (w tym boosting).
+0

Weka wygląda dobrze, dzięki. Orange wydaje się nie obsługiwać drzew zwiększających nachylenie (afaik obsługuje tylko jedno drzewo). OpenCV obsługuje zwiększanie liczby drzew, ale wydaje się dość wyspecjalizowane w odniesieniu do widzenia komputerowego (potrzebujemy go bardziej do analizy tekstu, więc nie jestem pewien, czy jest on użyteczny). Dziękuję Ci! –

3

Te nie neccessarily spełnić wszystkie swoje preferencje, ale istnieje również:

  • Treenet komercjalizacji i rozszerzenie oryginalnego realizacji Jerome Friedmana. Nie open source, ale okazało się, że działa całkiem dobrze
  • R gbm package specjalnie dla drzew o wzmocnionych gradientach.
+0

R gbm wygląda dobrze. Spróbujemy. Dzięki. –

14

Jeśli szukasz wersji Pythona, najnowsza wersja scikit-learn funkcji gradientu wzmocniony drzew regresji do klasyfikacji i regresji (docs).

Jest podobny do pakietu GBM R jest - GBM jest szybsze (najmniejszych kwadratów) Gdzie regresji realizacja scikit-learn jest szybsze na testowym czasie i gdy liczba funkcji> 1000.

2

polecam xgboost (które nie istniało do czasu zadawania pytania), które jest pakietem open source R/Python.

Jest obecnie jednym z najszybciej gradientu przypominającą metod drzew, które istnieje, pozwala regresji/klasyfikacji, obsługuje macierze rzadkie ...