Perpustakaan pembelajaran mesin lengkap untuk Java / Scala [ditutup]


8

Python banyak perpustakaan ML (seperti scikit-belajar yang hebat) Apakah ada yang baik untuk java / scala, yang mengandung banyak algo (regresi, klasifikasi, clustering, cross-validasi, pemrosesan fitur), stabil & terpelihara dan mampu menangani dataset besar?

Saya baru saja menemukan Mahout, Breeze / Nak, dan Weka, tetapi mereka tidak tampak sehebat yang Python.

Selain itu, jika tidak ada yang setara, bagaimana saya bisa menghubungkan kode java dengan Python secara efisien?


Mungkin pertimbangkan untuk menambahkan sedikit detail tentang apa yang membuat scikit-belajar hebat dibandingkan dengan Mahout & c.
Scortchi

Banyak algoritma untuk klasifikasi, regresi, pemilihan fitur, pengurangan fitur, dan sebagainya. Selain itu, ia memiliki komunitas besar kontributor dan dukungan
boskaiolo

Bisakah Anda sedikit lebih spesifik tentang apa yang ingin Anda capai? Cara umum untuk "menghubungkan" java dan python adalah dengan menggunakan jython, jython.org .
sandris

Jawaban:


16

Anda mungkin dapat membantu ini daftar curated luas dari ML perpustakaan, kerangka kerja dan perangkat lunak . Secara khusus, ini berisi sumber daya yang Anda cari - daftar ML untuk Java dan Scala .


7
saya adalah pemilik daftar itu - saya ingin menambahkan bahwa daftar ini diperbarui secara berkala - dengan permintaan penarikan datang setiap minggu
Joseph Misiti

@JosephMisiti: Terima kasih atas pembaruannya. Itu baik untuk diketahui - teruskan.
Aleksandr Blekh

5

Apache Spark dan khususnya komponennya, MLlib, persis seperti yang Anda cari. MLlib berisi implementasi untuk klasifikasi, regresi, pengurangan dimensi, dll. Anda dapat memprogram dalam Scala, Java, dan Python.

Ini pada dasarnya kerangka kerja komputasi terdistribusi sangat cepat yang dapat dijalankan dalam cluster Hadoop. Untuk tujuan pengembangan, Anda dapat dengan mudah menjalankannya dalam mode mandiri (tanpa Hadoop) pada mesin lokal Anda juga.

Lihatlah panduan MLlib di sini: https://spark.apache.org/docs/latest/mllib-guide.html


1

Hava lihat di JavaML ( http://java-ml.sourceforge.net/ ) dan Encog ( http://www.heatonresearch.com/encog ). Yang terakhir ini lebih berfokus pada Neural Networks daripada pada banyak algoritma.

Juga, weka mungkin tidak memiliki java API yang sangat ramah (karena, pertama-tama, ini adalah aplikasi GUI, bukan perpustakaan), tetapi ketika Anda terbiasa, Anda mulai menghargai berapa banyak hal yang diterapkan di sana.

Saya telah berhasil menggunakan semuanya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.