Source code for obp.dataset.base

# Copyright (c) Yuta Saito, Yusuke Narita, and ZOZO Technologies, Inc. All rights reserved.
# Licensed under the Apache 2.0 License.

"""Abstract Base Class for Logged Bandit Feedback."""
from abc import ABCMeta, abstractmethod


[docs]class BaseRealBanditDataset(metaclass=ABCMeta): """Base Class for Real-World Bandit Dataset."""
[docs] @abstractmethod def load_raw_data(self) -> None: """Load raw dataset.""" raise NotImplementedError
[docs] @abstractmethod def pre_process(self) -> None: """Preprocess raw dataset.""" raise NotImplementedError
[docs] @abstractmethod def obtain_batch_bandit_feedback(self) -> None: """Obtain batch logged bandit feedback.""" raise NotImplementedError
[docs]class BaseSyntheticBanditDataset(metaclass=ABCMeta): """Base Class for Synthetic Bandit Dataset."""
[docs] @abstractmethod def obtain_batch_bandit_feedback(self) -> None: """Obtain batch logged bandit feedback.""" raise NotImplementedError