Preprocessor

预处理器是用于数据 ETL 的脚本。它的作用是将杂乱、未清洗的数据转换为标准化、清洗过的数据。Twinkle 支持的预处理方式是运行在 dataset.map 方法上。

Preprocessor 的基类:

class Preprocessor:

    def __call__(self, rows: List[Dict]) -> List[Trajectory]:
        ...

格式为传入一系列原始样本,输出对应的Trajectory。如果某个样本无法使用,可以直接忽略它。输入条数和输出条数不必相同。

我们提供了一些基本的 Preprocessor,例如 SelfCognitionProcessor

dataset.map('SelfCognitionProcessor', model_name='some-model', model_author='some-author')

Preprocessor 包含 call 方法,这意味着你可以使用 function 来代替类:

def self_cognition_preprocessor(rows):
    ...
    return [Trajectory(...), ...]