import tensorflow as tf

#Place Holders for the input/output data

def create_placeholders(Nfeat, Nlab):
    """
    Creates the placeholders for the tensorflow session.

    Arguments:
    Nfeat -- scalar, size of the feature vector (number of features)
    Nlab  -- scalar, size of the label vector   (number of labels)

    Returns:
    X -- placeholder for the data input, of shape [n_x, None] and dtype "float"
    Y -- placeholder for the input labels, of shape [n_y, None] and dtype "float"
    """
    X = tf.placeholder(shape= [Nfeat, None], dtype= "float64" )
    Y = tf.placeholder(shape= [Nlab, None],  dtype= "float64" )

    return X, Y

#parameters initialization

def initialize_parameters(layers, activation, stbeta):

    '''
    Initialise the parameters of the model:

    Arguments:
    layers: Topology of the network. Array contaning number of layers and number of units in each layer.
    activation: list of activation functions, for each layer in the network.

