Pony’s Stable

Putting Hand on OpFromGraph

This two week, I start working on OpFromGraph. Which is the second part of the proposal.

Currently, if a FunctionGraph have repeated subgraph, theano will optimize these sub-graphs individually, which is not only a waste of computational resources but a waste of time. If we can extract a common structure in FunctionGraph and make it a Op, we can only optimize the sub-graph of this Op once and reuse it every where. This will speed up the optimization process. And OpFromGraph provides such feature.

To make OpFromGraph works well, it should support GPU and can be optimized. Following feature are expected:

  • __eq__() and __hash__()
  • connection_pattern() and “infer__shape()“`
  • Support GPU
  • c_code()

I implement two feature in last two week: connection_pattern and infer_shape. I hope I can make OpFromGraph a useful feature at the end of this GSoC :).