
'''This module contains convolution network structures.'''

from . import feedforward


class Regressor(feedforward.Regressor):
    '''A regressor attempts to produce a target output.

    A convolutional regression model takes the following inputs during training:

    - ``x``: A three-dimensional array of input data. Each element of axis 0 of
      ``x`` is expected to be one moment in time. Each element of axis 1 of
      ``x`` holds a single sample from a batch of data. Each element of axis 2
      of ``x`` represents the measurements of a particular input variable across
      all times and all data items.

    - ``targets``: A two-dimensional array of target output data. Each element
      of axis 0 of ``targets`` is expected to be one moment in time. Each
      element of axis 1 of ``targets`` holds a single sample from a batch of
      data. Each element of axis 2 of ``targets`` represents the measurements of
      a particular output variable across all times and all data items.
    '''

    def __init__(self, layers=(), loss='mse', weighted=False):
        super(feedforward.Regressor, self).__init__(
            layers=layers, loss=loss, in_dim=4, out_dim=2, weighted=weighted)


class Classifier(feedforward.Classifier):
    '''A classifier attempts to match a 1-hot target output.

    Unlike a feedforward classifier, where the target labels are provided as a
    single vector, a recurrent classifier requires a vector of target labels for
    each time step in the input data. So a recurrent classifier model requires
    the following inputs for training:

    - ``x``: A three-dimensional array of input data. Each element of axis 0 of
      ``x`` is expected to be one moment in time. Each element of axis 1 of
      ``x`` holds a single sample in a batch of data. Each element of axis 2 of
      ``x`` represents the measurements of a particular input variable across
      all times and all data items in a batch.

    - ``labels``: A one-dimensional vector of integer target labels. Each
      element of ``labels`` is expected to be the class index for a single batch
      item.
    '''

    def __init__(self, layers=(), loss='xe', weighted=False):
        super(feedforward.Classifier, self).__init__(
            layers=layers, loss=loss, in_dim=4, out_dim=1, weighted=weighted)


'''This module contains convolution network structures.'''

from . import feedforward


class Regressor(feedforward.Regressor):
    '''A regressor attempts to produce a target output.'''

    INPUT_NDIM = 4
    '''Number of dimensions for holding input data arrays.'''


class Classifier(feedforward.Classifier):
    '''A classifier attempts to match a 1-hot target output.'''

    INPUT_NDIM = 4
    '''Number of dimensions for holding input data arrays.'''

Fix up conv models to match current master.
Fix up conv models to match current master.

  
  '''This module contains convolution network structures.'''
  
  from . import feedforward
  
  
  class Regressor(feedforward.Regressor):
-     '''A regressor attempts to produce a target output.
+     '''A regressor attempts to produce a target output.'''
  
+     INPUT_NDIM = 4
+     '''Number of dimensions for holding input data arrays.'''
-     A convolutional regression model takes the following inputs during training:
- 
-     - ``x``: A three-dimensional array of input data. Each element of axis 0 of
-       ``x`` is expected to be one moment in time. Each element of axis 1 of
-       ``x`` holds a single sample from a batch of data. Each element of axis 2
-       of ``x`` represents the measurements of a particular input variable across
-       all times and all data items.
- 
-     - ``targets``: A two-dimensional array of target output data. Each element
-       of axis 0 of ``targets`` is expected to be one moment in time. Each
-       element of axis 1 of ``targets`` holds a single sample from a batch of
-       data. Each element of axis 2 of ``targets`` represents the measurements of
-       a particular output variable across all times and all data items.
-     '''
- 
-     def __init__(self, layers=(), loss='mse', weighted=False):
-         super(feedforward.Regressor, self).__init__(
-             layers=layers, loss=loss, in_dim=4, out_dim=2, weighted=weighted)
  
  
  class Classifier(feedforward.Classifier):
-     '''A classifier attempts to match a 1-hot target output.
+     '''A classifier attempts to match a 1-hot target output.'''
  
+     INPUT_NDIM = 4
+     '''Number of dimensions for holding input data arrays.'''
-     Unlike a feedforward classifier, where the target labels are provided as a
-     single vector, a recurrent classifier requires a vector of target labels for
-     each time step in the input data. So a recurrent classifier model requires
-     the following inputs for training:
  
-     - ``x``: A three-dimensional array of input data. Each element of axis 0 of
-       ``x`` is expected to be one moment in time. Each element of axis 1 of
-       ``x`` holds a single sample in a batch of data. Each element of axis 2 of
-       ``x`` represents the measurements of a particular input variable across
-       all times and all data items in a batch.
- 
-     - ``labels``: A one-dimensional vector of integer target labels. Each
-       element of ``labels`` is expected to be the class index for a single batch
-       item.
-     '''
- 
-     def __init__(self, layers=(), loss='xe', weighted=False):
-         super(feedforward.Classifier, self).__init__(
-             layers=layers, loss=loss, in_dim=4, out_dim=1, weighted=weighted)
- 
Fix up conv models to match current master.
## Code Before:

'''This module contains convolution network structures.'''

from . import feedforward


class Regressor(feedforward.Regressor):
    '''A regressor attempts to produce a target output.

    A convolutional regression model takes the following inputs during training:

    - ``x``: A three-dimensional array of input data. Each element of axis 0 of
      ``x`` is expected to be one moment in time. Each element of axis 1 of
      ``x`` holds a single sample from a batch of data. Each element of axis 2
      of ``x`` represents the measurements of a particular input variable across
      all times and all data items.

    - ``targets``: A two-dimensional array of target output data. Each element
      of axis 0 of ``targets`` is expected to be one moment in time. Each
      element of axis 1 of ``targets`` holds a single sample from a batch of
      data. Each element of axis 2 of ``targets`` represents the measurements of
      a particular output variable across all times and all data items.
    '''

    def __init__(self, layers=(), loss='mse', weighted=False):
        super(feedforward.Regressor, self).__init__(
            layers=layers, loss=loss, in_dim=4, out_dim=2, weighted=weighted)


class Classifier(feedforward.Classifier):
    '''A classifier attempts to match a 1-hot target output.

    Unlike a feedforward classifier, where the target labels are provided as a
    single vector, a recurrent classifier requires a vector of target labels for
    each time step in the input data. So a recurrent classifier model requires
    the following inputs for training:

    - ``x``: A three-dimensional array of input data. Each element of axis 0 of
      ``x`` is expected to be one moment in time. Each element of axis 1 of
      ``x`` holds a single sample in a batch of data. Each element of axis 2 of
      ``x`` represents the measurements of a particular input variable across
      all times and all data items in a batch.

    - ``labels``: A one-dimensional vector of integer target labels. Each
      element of ``labels`` is expected to be the class index for a single batch
      item.
    '''

    def __init__(self, layers=(), loss='xe', weighted=False):
        super(feedforward.Classifier, self).__init__(
            layers=layers, loss=loss, in_dim=4, out_dim=1, weighted=weighted)

## Instruction:
Fix up conv models to match current master.
## Code After:

'''This module contains convolution network structures.'''

from . import feedforward


class Regressor(feedforward.Regressor):
    '''A regressor attempts to produce a target output.'''

    INPUT_NDIM = 4
    '''Number of dimensions for holding input data arrays.'''


class Classifier(feedforward.Classifier):
    '''A classifier attempts to match a 1-hot target output.'''

    INPUT_NDIM = 4
    '''Number of dimensions for holding input data arrays.'''
