2011-08-24 56 views
6

Chúng ta cần thực hiện hồi quy logistic trong Java. Chúng tôi đã sử dụng mã này trong Python http://blog.smellthedata.com/2009/06/python-logistic-regression-with-l2.html và về cơ bản cũng muốn điều tương tự trong Java. Tôi được hướng dẫn tới Weka, nhưng giấy phép không mang tính thương mại.Hồi quy logistic trong Java

Tôi tìm thấy API Omegahat có trình tối ưu hóa BFGS như Scipy, nhưng tôi không thể tìm ra API: http://www.omegahat.org/api/org/omegahat/Numerics/Optimizers/OptimizerAlgorithmBFGS.html Tôi muốn triển khai một lớp với mô hình và đưa vào các hàm khả năng. Nhưng model.eval có một ModelPointNumeric cũng có một eval. Trong mọi trường hợp, nó không tương quan rõ ràng với toán học như mã python sử dụng numpy là. Api apgahat có được sử dụng hoặc duy trì không? Tôi không thể tìm thấy một danh sách gửi thư cho nó.

Trả lời

7

Cảm ơn các yếu tố đầu vào. Sau khi tìm kiếm nhiều, tôi tìm thấy điều này: http://mallet.cs.umass.edu/optimization.php Đây gần như là một bản dịch 1: 1 về cách thực hiện gọn gàng hoạt động, nó cho phép chúng ta tự hồi quy logistic với các công thức toán học. Vì vậy, tôi có thể tham gia lớp python của chúng tôi và thực hiện 4-5 phương pháp cần thiết và sau đó chuyển nó cho trình giải mã BFGS để thực hiện hồi quy logistic của chúng tôi.

Nó hoạt động rất tốt, điều duy nhất chúng tôi phải nhận ra là Mallet tối đa hóa hàm và Numpy có một trình tối ưu hóa.

1

Nếu bạn không tìm thấy gì khác, hãy xem Apache Commons Math: nó là thư viện các thành phần toán học và thống kê nhẹ, khép kín giải quyết các vấn đề phổ biến nhất không có sẵn trong ngôn ngữ lập trình Java hoặc Commons Lang.

Chúc may mắn.

1

Có một số simple implementation for Java on GitHub, chỉ trong 2 lớp (cộng với một tiện ích). Nó có lẽ không được tối ưu hóa nhưng không có phụ thuộc để tải xuống.

Tôi đã tạo một pull request để đơn giản hóa nó hơn nữa thành một tệp.

+2

Xin chào, tôi đã xem xét một chút thông qua mã và trình tối ưu hóa không sử dụng hàm chi phí (lik), vì vậy tôi tự hỏi điều gì thực sự được tối ưu hóa tại đây. Rõ ràng là độ dốc của hàm chi phí dễ tính toán, nhưng cập nhật trọng số không cập nhật chính xác theo như tôi có thể nói. –

+0

@WernerVanBelle Tôi thực sự không thực sự biết làm thế nào để tính toán hồi quy logistic, tôi chỉ crunched nó vào một tập tin duy nhất cho các bài kiểm tra, nhưng nó là sự thật rằng một vài điều cảm thấy không đúng cách thực hiện. Nếu bạn phát hiện ra vấn đề, tôi sẽ vui lòng sửa chúng! – Matthieu

Các vấn đề liên quan