docstr: Get the training dataset
  
  Parameters
  ----------
  features
  skip_unreliable
      Whether to skip the unreliable spans in the training set
  
  Returns
  -------
  train_dataset
  num_token_answer_mismatch
  num_unreliable
docstr_tok: ["Get","the","training","dataset","Parameters","--","--","--","--","--","features","skip_unreliable","Whether","to","skip","the","unreliable","spans","in","the","training","set","Returns","--","--","--","-","train_dataset","num_token_answer_mismatch","num_unreliable"]
code: def get_train(self, features, skip_unreliable=True):
      """Get the training dataset
  
      Parameters
      ----------
      features
      skip_unreliable
          Whether to skip the unreliable spans in the training set
  
      Returns
      -------
      train_dataset
      num_token_answer_mismatch
      num_unreliable
      """
      train_dataset = []
      num_token_answer_mismatch = 0
      num_unreliable = 0
      for feature in features:
          if feature.token_answer_mismatch:
              num_token_answer_mismatch += 1
          if feature.unreliable_span:
              num_unreliable += 1
          if skip_unreliable and feature.unreliable_span:
              # Skip when not reliable
              continue
          # Process the feature
          chunk_features = self.process_sample(feature)
          train_dataset.extend(chunk_features)
      return train_dataset, num_token_answer_mismatch, num_unreliable
  
imports: import os
  import json
  import time
  import logging
  import argparse
  import ast
  import functools
  import collections
  import dataclasses
  from dataclasses import dataclass
  from multiprocessing import Pool, cpu_count
  import mxnet
  import numpy
  from mxnet.lr_scheduler import PolyScheduler
  import gluonnlp.data.batchify
  from models import ModelForQABasic, ModelForQAConditionalV1
  from eval_utils import squad_eval
  from squad_utils import SquadFeature, get_squad_examples, convert_squad_example_to_feature
  from gluonnlp.models import get_backbone
  from gluonnlp.utils.misc import repeat, grouper, set_seed, init_comm, logging_config, parse_ctx
  from gluonnlp.initializer import TruncNorm
  from gluonnlp.data.sampler import SplitSampler
  from gluonnlp.utils.parameter import grad_global_norm, clip_grad_global_norm, count_parameters, deduplicate_param_dict
label_desc: Use image node_id 3 for calling the SquadDatasetProcessor obj's underlying member method code with example usage: obj.get_train(features, skip_unreliable) and returns: train_dataset,  num_token_answer_mismatch,  num_unreliable