A construção do modelo de Machine Learning envolve cálculos intensivos e repetitivos envolvendo tensores. Isso requer recursos de computação intensivos. Como um compilador regular forneceria as otimizações no nível local, ele geralmente não produz um código de execução rápida.
Theano primeiro constrói um gráfico computacional para toda a computação. Como toda a imagem da computação está disponível como uma única imagem durante a compilação, várias técnicas de otimização podem ser aplicadas durante a pré-compilação e é exatamente isso que Theano faz. Ele reestrutura o gráfico computacional, o converte parcialmente em C, move as variáveis compartilhadas para a GPU e assim por diante para gerar um código executável muito rápido. O código compilado é então executado por um Theanofunctionque atua apenas como um gancho para injetar o código compilado no tempo de execução. Theano provou suas credenciais e é amplamente aceito tanto na academia quanto na indústria.