Distributed conditional computation

L'objectif de cette thèse est de présenter différentes applications du programme de recherche de calcul conditionnel distribué.  On espère que ces applications, ainsi que la théorie présentée ici, mènera à une solution générale du problème  d'intelligence artificielle, en particulier en ce qui a trait à la nécessité d'efficience.  La vision du calcul conditionnel distribué consiste à accélérer l'évaluation et l'entraînement de modèles profonds,  ce qui est très différent de l'objectif usuel d'améliorer sa capacité de généralisation et d'optimisation.  Le travail présenté ici a des liens étroits avec les modèles de type mélange d'experts.  Dans le chapitre 2, nous présentons un nouvel algorithme d'apprentissage profond qui  utilise une forme simple d'apprentissage par renforcement sur un modèle d'arbre de décisions à base  de réseau de neurones. Nous démontrons la nécessité d'une contrainte d'équilibre pour maintenir la  distribution d'exemples aux experts uniforme et empêcher les monopoles. Pour rendre le calcul efficient,  l'entrainement et l'évaluation sont contraints à être éparse en utilisant un routeur échantillonnant des experts d'une distribution multinomiale étant donné un exemple.  Dans le chapitre 3, nous présentons un nouveau modèle profond constitué d'une représentation  éparse divisée en segments d'experts. Un modèle de langue à base de réseau de neurones est construit à partir  des transformations éparses entre ces segments. L'opération éparse par bloc est implémentée pour utilisation  sur des cartes graphiques. Sa vitesse est comparée à deux opérations denses du même calibre pour démontrer  le gain réel de calcul qui peut être obtenu. Un modèle profond utilisant des opérations éparses contrôlées  par un routeur distinct des experts est entraîné sur un ensemble de données d'un milliard de mots.  Un nouvel algorithme de partitionnement de données est appliqué sur un ensemble de mots pour  hiérarchiser la couche de sortie d'un modèle de langage, la rendant ainsi beaucoup plus efficiente.  Le travail présenté dans cette thèse est au centre de la vision de calcul conditionnel distribué  émis par Yoshua Bengio. Elle tente d'appliquer la recherche dans le domaine des mélanges d'experts  aux modèles profonds pour améliorer leur vitesse ainsi que leur capacité d'optimisation.  Nous croyons que la théorie et les expériences de cette thèse sont une étape importante sur  la voie du calcul conditionnel distribué car elle cadre bien le problème, surtout en ce qui  concerne la compétitivité des systèmes d'experts. The objective of this paper is to present different applications of the distributed conditional computation research program.  It is hoped that these applications and the theory presented here will lead to a general solution of the problem of artificial intelligence, especially with regard to the need for efficiency.  The vision of distributed conditional computation is to accelerate the evaluation and training of deep models which is very different from the usual objective of improving its generalization and optimization capacity.  The work presented here has close ties with mixture of experts models.   In Chapter 2, we present a new deep learning algorithm that  uses a form of reinforcement learning on a novel neural network decision tree model.  We demonstrate the need for a balancing constraint to keep the distribution of examples to experts uniform and to prevent monopolies. To make the calculation efficient, the training and evaluation are constrained to be sparse by using a gater that  samples experts from a multinomial distribution given examples.   In Chapter 3 we present a new deep model consisting of a sparse representation divided into segments of experts.  A neural network language model is constructed from blocks of sparse transformations between these expert segments.  The block-sparse operation is implemented for use on graphics cards.  Its speed is compared with two dense operations of the same caliber to demonstrate  and measure the actual efficiency gain that can be obtained. A deep model using  these block-sparse operations controlled by a distinct gater is trained on a dataset of one billion words.  A new algorithm for data partitioning (clustering) is applied to a set of words to  organize the output layer of a language model into a conditional hierarchy, thereby making it much more efficient.   The work presented in this thesis is central to the vision of distributed conditional computation as issued by Yoshua Bengio. It attempts to apply research in the area of  mixture of experts to deep models to improve their speed and their optimization capacity.  We believe that the theory and experiments of this thesis are an important step  on the path to distributed conditional computation because it provides a good framework for the problem,  especially concerning competitiveness inherent to systems of experts.

Keyphrases: calcul conditionnel distribué, réseau de neurones, apprentissage profond, apprentissage supervisé, apprentissage par renforcement, arbres de décisions, modèle de langage, softmax hierarchique, mélange d'experts, hierarchical softmax, torch, distributed conditional computation, neural network, deep learning, supervised learning, reinforcement learning, decision tree, language model, mixture of experts, torch