Skip to content

Instantly share code, notes, and snippets.

@tridemax
tridemax / Deep learning engineer position.md
Last active July 5, 2016 21:35
Deep learning engineer position (Sapiens, Kyiv)

Position

Sapiens is looking for deep learning researcher/engineer to strengthen our R&D team in Kyiv, Ukraine.

Our active area of research includes:

  • Automatic Speech Recognition (language agnostic models, end-to-end training).
  • Advanced Natural Language Processing (dialogue systems, multi-language shared semantic space).
  • Text-To-Speech syntesis (early stage, based on auto-encoding approach).
  • Medicine related weak AIs (ECG annotation, etc).

Requirements

@tridemax
tridemax / Test.md
Last active July 9, 2016 08:45
Deep learning engineer test

##Terms Get the latest rnn_cell.py from TensorFlow distribution. There is mi_linear.py attached to this gist, which is equivalent to function linear from rnn_cell.py but implements Multiplicative Integration with Recurrent Neural Networks (http://arxiv.org/pdf/1606.06630v1.pdf).

To complete the test, modify rnn_cell.py (set the name like mi_rnn_cell.py) to use Multiplicative Integration instead of classic approach in all types of RNNs, rename all modified classes (like LSTMCell -> MILSTMCell), update all the comments with proper namings and parameters description (imagine this file should be commited to TensorFlow repository).

To ease the requirements, features like sharding of weight matrices in LSTMCell could be stripped from modified implementation. For example, provided mi_linear function accepts only two parameters instead of parameters list. So it's ok to simplify where seems applicable but please do not strip peepholes from LSTMCell.

Prepare comparative tests (MIGRUCell vs GR

# flatten
flatten1 = tf.reshape(maxpool1,[maxpool1.get_shape().as_list()[0],-1], name="flatten1")
flatten2 = tf.reshape(maxpool2,[maxpool2.get_shape().as_list()[0],-1], name="flatten2")
flatten3 = tf.reshape(maxpool3,[maxpool3.get_shape().as_list()[0],-1], name="flatten3")
# concat all convos outputs
flatten = tf.concat(1, [flatten1, flatten2, flatten3], name="flatten")
name: "predictor_dev"
platform: "tensorflow_savedmodel"
max_batch_size: 0
input [
{
name: "channels"
data_type: TYPE_FP16
dims: [ -1, -1, -1 ]
},
{