adaptive-machine-learning / CapyMOA

Enhanced machine learning library tailored for data streams, featuring a Python API integrated with MOA backend support. This unique combination empowers users to leverage a wide array of existing algorithms efficiently while fostering the development of new methodologies in both Python and Java.
BSD 3-Clause "New" or "Revised" License
63 stars 22 forks source link

feat: Added capymoa wrapper for OUAE algorithm #184

Open DwayneAcosta opened 2 months ago

DwayneAcosta commented 2 months ago

Added the wrapper but there are errors with implementing the serializable interface

nuwangunasekara commented 2 months ago

Apart from conflicts which is on generic classes _online_accuracy_updated_ensemble.py seems okay to me.

Might want to correct the error message :

        assert (type(learner_option) == str
            ), "Only MOA CLI strings are supported for SGBT base_learner, at the moment."

to mention OUAE instead of SGBT there. Added a comment around line.

@DwayneAcosta, @hmgomes mentioned to me that you had trouble with serializable interface for OAUE, do you still have issues?

Kindly resolve the conflicts in

 src/capymoa/classifier/__init__.py
tests/test_classifiers.py 

let me know if you need any help with that a well :)

DwayneAcosta commented 2 months ago

Hi Nuwan,

Thanks for checking the algorithm! I'll make the change and do a new PR.

And yes im still having issues with the algorithm not being able to implement the serialisable interface

Kind regards, Dwayne

On Fri, Aug 23, 2024 at 12:52 PM nuwangunasekara @.***> wrote:

@.**** commented on this pull request.

In src/capymoa/classifier/_online_accuracy_updated_ensemble.py https://github.com/adaptive-machine-learning/CapyMOA/pull/184#discussion_r1728081412 :

  • :param linear_option: When checked the algorithm uses a linear weighting function.
  • """
  • mapping = {
  • "learner_option": "-l",
  • "member_count_option": "-n",
  • "window_size_option": "-w",
  • "max_byte_size_option": "-m",
  • "verbose_option": "-v",
  • "linear_option": "-f",
  • }
  • assert (type(learner_option) == str
  • ), "Only MOA CLI strings are supported for SGBT base_learner, at the moment."

Please change SGBT to OnlineAccuracyUpdatedEnsemble

— Reply to this email directly, view it on GitHub https://github.com/adaptive-machine-learning/CapyMOA/pull/184#pullrequestreview-2256018565, or unsubscribe https://github.com/notifications/unsubscribe-auth/AYGTIZNVMWF3BRH3KSJAERLZS2BU7AVCNFSM6AAAAABM46UKT2VHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDENJWGAYTQNJWGU . You are receiving this because you were mentioned.Message ID: @.***>

nuwangunasekara commented 2 months ago

Hey @DwayneAcosta, would you be able to share the errors and the code with me please?