Tensorflow is aimed at ML architectures that are fully differentiable (just close your eyes and say "deep learning.") and performs automatic differentiation (you just define the architecture, tensorflow figures out how to update parameters). MLpack is less flexible but provides robust implementations of several class ML algorithms that you wouldn't necessarily want to write in Tensorflow, even though you probably could.
https://summerofcode.withgoogle.com/organizations/5376684740...
See also the project's github: https://github.com/mlpack/mlpack