docs: def splits(cls, text_field, label_field, root='.data',
                 train='train.txt', validation='dev.txt', test='test.txt',
                 train_subtrees=False, **kwargs):
          """Create dataset objects for splits of the SST dataset.
  
          Arguments:
              text_field: The field that will be used for the sentence.
              label_field: The field that will be used for label data.
              root: The root directory that the dataset's zip archive will be
                  expanded into; therefore the directory in whose trees
                  subdirectory the data files will be stored.
              train: The filename of the train data. Default: 'train.txt'.
              validation: The filename of the validation data, or None to not
                  load the validation set. Default: 'dev.txt'.
              test: The filename of the test data, or None to not load the test
                  set. Default: 'test.txt'.
              train_subtrees: Whether to use all subtrees in the training set.
                  Default: False.
              Remaining keyword arguments: Passed to the splits method of
                  Dataset.
          """
          path = cls.download(root)
  
          train_data = None if train is None else cls(
              os.path.join(path, train), text_field, label_field, subtrees=train_subtrees,
              **kwargs)
          val_data = None if validation is None else cls(
              os.path.join(path, validation), text_field, label_field, **kwargs)
          test_data = None if test is None else cls(
              os.path.join(path, test), text_field, label_field, **kwargs)
          return tuple(d for d in (train_data, val_data, test_data)
                       if d is not None)