I have been meddling with google's deeplearn.js lately for fun. It is surprisingly good given how new the project is and it seems to have a sold roadmap. However it still lacks something like

So, I quickly built one for

1.

Tensor output.

Add this to your code:

2. flatten - Flattens an input tensor.

*tf.layers*and*tf.contrib.layers*which have many higher level functions that has made using tensorflow so easy. It looks like they will be added to Graphlayers in future but their priorities as of now is to fix the lower level APIs first - which totally makes sense.So, I quickly built one for

*tf.layers.conv2d*and*tf.layers.flatten*which I will share in this post. I have made them as close to function definitions in tensorflow as possible.1.

*conv2d*- Functional interface for the 2D convolution layer.**Arguments**:**inputs**Tensor input.**filters**Integer, the dimensionality of the output space (i.e. the number of filters in the convolution).**kernel_size**Number to specify the height and width of the 2D convolution window.**graph**Graph opbject.**strides**Number to specify the strides of convolution.**padding**One of "valid" or "same" (case-insensitive).**data_format**"channels_last" or "channel_first"**activation**Optional. Activation function which is applied on the final layer of the function.**Function**should accept Tensor and graph as parameters**kernel_initializer**An initializer object for the convolution kernel.**bias_initializer**An initializer object for bias.**name**string which represents name of the layer.

**Returns**:

Tensor output.

**Usage:**

Add this to your code:

2. flatten - Flattens an input tensor.