Example #1
0
    def __init__(self,
                 modelConfig,
                 inferenceArgs,
                 metricSpecs,
                 sourceSpec,
                 sinkSpec=None):
        """Initialization.

    Args:
      modelConfig: The model config dict.
      metricSpecs: A sequence of MetricSpec instances.
      sourceSpec: Path to the source CSV file.
      sinkSpec: Path to the sink CSV file.
    """
        self.model = ModelFactory.create(modelConfig)
        self.model.enableInference(inferenceArgs)
        self.metricsManager = MetricsManager(metricSpecs,
                                             self.model.getFieldInfo(),
                                             self.model.getInferenceType())
        self.sink = None
        if sinkSpec is not None:
            # TODO: make this work - sinkSpec not yet supported.
            raise NotImplementedError('The sinkSpec is not yet implemented.')
            #self.sink = BasicPredictionLogger(
            #    self.model.getFieldInfo(), sinkSpec, 'myOutput',
            #    self.model.getInferenceType())
            #self.sink.setLoggedMetrics(
            #    self.metricsManager.getMetricLabels())
        self.datasetReader = BasicDatasetReader(sourceSpec)