Czy istnieje zalecany pakiet do uczenia maszynowego w Pythonie? [zamknięte]

Czy istnieje zalecany pakiet do uczenia maszynowego w Pythonie?

Mam wcześniejsze doświadczenie we wdrażaniu różnych algorytmów uczenia maszynowego i statystycznych w C++ i MATLAB, ale po pracy w Pythonie jestem ciekawy dostępnych pakietów dla Pythona.

Author: Peter Mortensen, 2009-08-17

14 answers

AFAIK, pomarańczowy może być najlepszym wyborem w tej chwili.
PyML też jest dobry.
PyMC dla estymacji bayesowskiej.
i, jest książka "Machine Learning: an Algorithmic Perspective", jest wiele przykładów kodu Pythona w książce, może warto ją przeczytać.
i jest wpis na blogu: Klasyfikacja pragmatyczna z Pythonem.
Tylko moje dwa centy.

 44
Author: sunqiang,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-13 22:56:37

Istnieje również scikit-learn (BSD, z zależnościami tylko od numpy & scipy). Zawiera różne algorytmy uczenia nadzorowanego, takie jak:

  • SVM oparty na libsvm i liniowy z scipy.sparse bindings for wide features datasets
  • Metody bayesowskie
  • HMMs
  • L1 i L1+L2 metody regresji regularnej aka modele Lasso i elastycznej sieci zaimplementowane z algorytmami takimi jak LARS i zejście współrzędnych

Posiada również nienadzorowaną algorytmy klastrowania takie jak:

  • kmeans++
  • meanshift
  • propagacja powinowactwa
  • spectral clustering

A także inne narzędzia takie jak:

  • ekstraktory funkcji dla zawartości tekstowej (token i char ngrams + haszujący vectorizer)
  • univariate feature selections
  • proste narzędzie do rur
  • liczne implementacje strategii weryfikacji krzyżowej
  • Ocena i wykreślanie wskaźników wydajności (krzywa ROC, AUC, macierz zamieszania,..)
  • Narzędzie do wyszukiwania siatki do wykonywania strojenia hiper-parametrów za pomocą walidacji krzyżowej równoległej
  • integracja z joblib w celu buforowania częściowych wyników podczas pracy w środowisku interaktywnym (np. przy użyciu ipython)

Każda implementacja algorytmu zawiera przykładowe programy demonstrujące jego użycie na danych zabawek lub zestawach danych z życia.

Ponadto, oficjalne repozytorium źródłowe jest hostowane na GitHubie więc prosimy o dodawanie poprawek i ulepszeń przy użyciu funkcji regularnego żądania pobierania w celu interaktywnej weryfikacji kodu.

 99
Author: ogrisel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-07-10 21:49:15

Ogólnym przyjaznym dla użytkownika pakietem jest Orange -- coś jak Weka lub RapidMiner, jeśli je znasz.

Poza tym, istnieje wiele pakietów i zestawów narzędzi do różnych zadań. Jako punkt wyjścia należy zapoznać się z pakietami Pythona wymienionymi na mloss.

 11
Author: ars,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-17 21:07:58

Warto zajrzeć:

Http://www.shogun-toolbox.org/, który posiada interfejsy dla wielu języków, w tym Pythona. Jest też http://www.pybrain.org/, która jest (moim zdaniem) natywną implementacją algorytmów ML. Mam nadzieję, że to pomoże.

 7
Author: oort,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-17 19:36:21

Dla maszyn obsługujących Wektory, spójrz na LibSVM , które między innymi mają interfejs Pythona.

 5
Author: Piotr Byzia,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-19 19:24:48

Samouczki Deep Learning opisują, jak rozwijać i trenować Głębokie sieci neuronowe. Używana biblioteka używa nawet GPU Nvidia, jeśli jest dostępna.

 5
Author: Ivo Danihelka,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-21 21:05:54
 4
Author: sastanin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:34:08

Dałem Orange spróbować.

Jest potężny, ale jeśli przejrzysz dokumentację, zdasz sobie sprawę, że autor ma swój własny szalony styl pisania Pythona. Jego kod robi się dość tajemniczy, jeśli jesteś stosunkowo nowy w Pythonie, więc nie polecam Orange, chyba że znasz Pythona.

 4
Author: 4cents,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-27 23:02:38
 3
Author: Mike,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-02-09 15:32:24

Nie jestem pewien, czy dokładnie nazwałbyś to uczenie maszynowe, ale pakiet nltk nie klasyfikuje tekstu w stylu Bayesowskim. Możesz użyć danych uczenia się i danych testowych, aby zobaczyć, że jest wnioskowanie zasad dotyczących danych.

 2
Author: hughdbrown,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-17 19:42:03

Jest to świetna lista przygotowana przez SciPy, wielu znanych pakietów Pythona, między innymi związanych z uczeniem maszynowym: sztuczna inteligencja i uczenie maszynowe

 2
Author: Piotr Byzia,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-29 17:05:35

Jeśli szukasz sieci neuronowej, Wiązanie Pythona dla fann jest dość łatwe w użyciu i zawiera narzędzia do szkolenia sieci

 1
Author: chub,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-27 23:34:54

Spójrz na modułowy zestaw narzędzi do przetwarzania danych (MDP) . Implementuje kilka algorytmów z uczenia maszynowego i statystyk i jest dojrzały i dobrze udokumentowany.

 1
Author: nikow,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-06-07 08:01:49

SVMlight jest czasami przydatną alternatywą dla LibSVM ! LibSVM jest również fantastyczny.

 0
Author: Kyle.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-13 21:50:35