langml.prompt.clf.ptuning

Module Contents

Classes

DataGenerator

PTuningForClassification

class langml.prompt.clf.ptuning.DataGenerator(data: List[str], labels: List[str], tokenizer: langml.tokenizer.Tokenizer, template: langml.prompt.base.Template, batch_size: int = 32)[source]

Bases: langml.prompt.base.BaseDataGenerator

__len__(self)[source]
make_iter(self, random: bool = False)[source]
class langml.prompt.clf.ptuning.PTuningForClassification(prompt_model: BasePromptModel, tokenizer: langml.tokenizer.Tokenizer)[source]

Bases: langml.prompt.base.BasePromptTask

fit(self, data: List[str], labels: List[str], valid_data: Optional[List[str]] = None, valid_labels: Optional[List[str]] = None, model_path: Optional[str] = None, epoch: int = 20, batch_size: int = 16, early_stop: int = 10, do_shuffle: bool = True, f1_average: str = 'macro', verbose: int = 1)[source]

Fitting ptuning model for classification :param - data: List[str], texts of traning data :param - labels: List[Union[str, List[str]]], traning labels :param - valid_data: List[str], texts of valid data :param - valid_labels: List[Union[str, List[str]]], labels of valid data :param - model_path: Optional[str], path to save model, default None, do not to save model :param - epoch: int, epochs to train :param - batch_size: int, batch size, :param - early_stop: int, patience of early stop :param - do_shuffle: whether to shuffle data in training phase :param - f1_average: str, {‘micro’, ‘macro’, ‘samples’,’weighted’, ‘binary’} or None :param - verbose: int, 0 = silent, 1 = progress bar, 2 = one line per epoch

predict(self, text: str) str[source]
load(self, model_path: str)[source]

load model :param - model_path: str, model path