Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Coba is a powerful framework built to facilitate research with online contextual bandit (CB) algorithms.
To start using Coba right away we recommend visiting our documentation.
Think for a second about the last time you considered evaluating CB methods for a research project
Coba was built from the ground up to do these three things and more.
Coba is...
But don't take our word for it. We encourage you to look at the code yourself or read more below.
Coba is architected around a simple workflow: (Learners, Environments) -> Experiments -> Results -> Analysis.
Environments represent unique CB problems that need to be solved. Learners are the CB algorithms that we can use to solve these problems. Experiments are combinations of Environments and Learners that we want to evaluate. And Results are the outcome of an Experiment, containing all the data from the Experiment.
Learners are algorithms which are able to improve their action selection through interactions with environments.
A number of algorithms are provided natively with Coba for quick comparsions. These include:
Environments are the core unit of evaluation in Coba. They are nothing more than a sequence of interactions with contexts, actions and rewards. A number of tools have been built into Coba to make simulation creation easier. All these tools are defined in the coba.environments
module. We describe a few of these tools here.
Classification data sets are the easiest way to create Environments in Coba. Coba natively supports:
If more customization is needed beyond what is offered above then you can easily create your own simulation by implementing Coba's Environment
interface and generating interactions.
Experiments are combinations of Learners and Environments. The Experiment class orchestrates the complex tasks of evaluating learners on environments in a resource efficient, repeatable, and robust manner. Experiments can be run on any number of processes (we often run on 96 core machines) and writes all results to file as it runs so that it can be restarted if it gets interrupted.
The end result of an Experiment is a Result object that supports easy analysis. The result class provides a number of plots as well as filtering capabilities out of the box. If the built in functionality isn't advanced enough data can be exported to pandas dataframes where all manner of advanced filtering and plotting can be performed.
To learn more, many working code examples are provided in the documentation.
FAQs
A contextual bandit research package
We found that coba demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.