| def continuous_feature(name): | |
| return ContinuousFeature(name) | |
| class ContinuousFeature: | |
| def __init__(self, name): | |
| self.name = name | |
| def global_category(name, size): | |
| return GlobalCategory(name, size) | |
| class GlobalCategory: | |
| def __init__(self, name, size): | |
| self.name = name | |
| self.size = size | |
| def local_category(name): | |
| return LocalCategory(name) | |
| class LocalCategory: | |
| def __init__(self, name): | |
| assert name.startswith('task_'), \ | |
| "only task feature supported: {}".format(name) | |
| self.name = name | |
| def local_feature(name): | |
| return LocalFeature(name) | |
| class LocalFeature: | |
| def __init__(self, name): | |
| assert name.startswith('task_'), \ | |
| "only task feature supported: {}".format(name) | |
| self.name = name | |
| def sparse_local_feature(index, value): | |
| return SparseLocalFeature(index, value) | |
| class SparseLocalFeature: | |
| def __init__(self, index, value): | |
| assert index.startswith('task_'), \ | |
| "only task feature supported for index: {}".format(index) | |
| assert value.startswith('task_'), \ | |
| "only task feature supported for value: {}".format(value) | |
| self.index = index | |
| self.value = value | |
| def variable_feature(name): | |
| return VariableFeature(name) | |
| class VariableFeature: | |
| def __init__(self, name): | |
| self.name = name | |