Kolejna ważna kategoria przetwarzania, systemy uczenia maszynowego automatyzują podejmowanie decyzji dotyczących danych. Korzystają z informacji o szkoleniach, aby zajmować się kolejnymi punktami danych, automatycznie generując wyniki, takie jak rekomendacje lub grupy. Systemy te są szczególnie przydatne, gdy chcesz zamienić wyniki jednorazowej analizy danych w usługę produkcyjną, która będzie wykonywać coś podobnego na nowych danych bez nadzoru. Niektóre z najbardziej znanych zastosowań tych technik są takie, jak rekomendacje produktów Amazon.
WEKA
WEKA jest opartą na Javie strukturą i GUI dla algorytmów uczenia maszynowego. Zapewnia architekturę wtyczek dla naukowców, którzy dodają własne techniki, z interfejsem linii poleceń i okien, co ułatwia zastosowanie ich do własnych danych. Możesz go używać do wykonywania wszystkich czynności, od podstawowego klastrowania do zaawansowanej klasyfikacji, a także wiele narzędzi do wizualizacji wyników. Jest on powszechnie używany jako narzędzie dydaktyczne, ale jest także bardzo przydatny do prototypowania i eksperymentowania poza klasą. Posiada mocny zestaw narzędzi do przetwarzania wstępnego, które ułatwiają ładowanie danych, a następnie masz dużą bibliotekę algorytmów na wyciągnięcie ręki, dzięki czemu możesz szybko wypróbować pomysły, aż znajdziesz rozwiązanie, które działa na twój problem. Interfejs wiersza poleceń pozwala na zastosowanie dokładnie tego samego kodu w sposób automatyczny do produkcji.
Mahout
Mahout jest strukturą open source, która może obsługiwać popularne algorytmy uczenia maszynowego na ogromnych zbiorach danych. Aby osiągnąć tę skalowalność, większość kodu jest napisana jako możliwa do zrównoleglenia praca nad Hadoop. Jest wyposażony w algorytmy do wykonywania wielu typowych zadań, takich jak grupowanie i klasyfikowanie obiektów w grupy, rekomendowanie elementów na podstawie zachowań innych użytkowników i często spotykane atrybuty. Praktycznie rzecz biorąc, struktura ułatwia korzystanie z technik analitycznych w celu implementacji funkcji, takich jak “Rekomendacja” Osoby, które kupiły ten kupiony produkt “na swojej stronie. Jest to intensywnie wykorzystywany projekt z aktywną społecznością programistów i użytkowników. Warto go wypróbować, jeśli masz znaczną liczbę transakcji lub podobnych danych, z których chcesz uzyskać więcej korzyści.
scikits.learn
Trudno znaleźć dobre, gotowe do użycia narzędzia do praktycznej nauki maszyn. Wiele projektów jest skierowanych do studentów i naukowców, którzy chcą uzyskać dostęp do wewnętrznych mechanizmów algorytmów, co może zniechęcać, gdy szukasz więcej czarnej skrzynki do rozwiązania konkretnego problemu. To luka, którą scikits.learn naprawdę pomaga wypełnić. Jest to pięknie udokumentowany i łatwy w użyciu pakiet Pythona oferujący interfejs wysokiego poziomu dla wielu standardowych technik uczenia maszynowego. Gromadzi większość technik, które mieszczą się w standardowej definicji uczenia maszynowego (biorąc zestaw danych treningowych i wykorzystując go do przewidywania czegoś użytecznego na temat danych otrzymanych później) i oferuje popularny sposób ich łączenia i wymiany. To sprawia, że jest to bardzo owocna piaskownica do eksperymentowania i szybkiego prototypowania, z bardzo łatwą ścieżką do używania tego samego kodu w produkcji, gdy działa dobrze.