glue-suite-v2 / glue-suite-v2.py
mathemakitten's picture
WIP
146c951
raw
history blame
1.66 kB
from datasets.features import Features, Sequence, Value
from evaluate.module import EvaluationModuleInfo
import evaluate
from typing import Optional, Union, Callable
from dataclasses import dataclass
from datasets import Dataset
@dataclass
class SubTask:
data: Optional[Union[str, Dataset]] = None
subset: Optional[str] = None
split: Optional[str] = None
data_preprocessor: Optional[Callable] = None
args_for_task: Optional[dict] = None
class Suite(evaluate.EvaluationSuite):
def __init__(self, name):
super().__init__(name)
def setup(self):
self.preprocessor = None #lambda x: x["text"].lower()
self.suite = [
SubTask(
data="imdb",
split="test[:10]",
data_preprocessor=lambda x: x["text"].lower(),#self.preprocessor,
args_for_task={
"metric": "accuracy",
"input_column": "text",
"label_column": "label",
"label_mapping": {
"LABEL_0": 0.0,
"LABEL_1": 1.0
}
}
),
SubTask(
data="sst2",
split="test[:10]",
data_preprocessor=self.preprocessor,
args_for_task={
"metric": "accuracy",
"input_column": "sentence",
"label_column": "label",
"label_mapping": {
"LABEL_0": 0.0,
"LABEL_1": 1.0
}
}
)
]