Archive for mai, 2017

Construire une machine pour faire du deep learning

Il ne vous a sans doute pas échappé qu’en ce moment il y a une grande effervescence autour de « l’intelligence artificielle » dans le grand public, principalement car il y a une grande fébrilité autour du machine learning.

Cette fébrilité a des effets sur le marché de l’emploi (il est très difficile de recruter des profils machine learning/data en ce moment, et quand on a ce profil on est assailli par une surenchère d’offres de plus en plus hautes), et plus prosaïquement sur le prix du matériel qui permet de faire tourner les algos associés (oui, j’ai des actions NVIDIA ^^).

La grande mode est aux techniques de deep learning. Mon objectif dans ce billet n’est pas d’expliquer le deep learning (pour débuter lisez déjà wikipedia, puis ensuite le livre de Goodfellow, bengio et Courville qui est dispo gratuitement ou payant sur amazon), mais de vous parler des éléments techniques permettant de mettre en place des réseaux profonds.

Il y a naturellement de très nombreuses bibliothèques pour faire du deep learning (voir ici) qui ont presque tout le support CUDA, et c’est pour cela qu’il vous faut du GPU de chez NVIDIA pour vous amuser sans avoir besoin d’attendre des jours pour entrainer le moindre réseau. Pour le dire plus clairement, sans GPU pas la peine de vous y mettre.

Nous allons voir maintenant deux machines pour faire du deep learning (et aussi la plupart des tâches liées à des GPUs puissants). J’ai casé partout mon lien d’affiliation, mais soyez prudent, amazon n’est pas toujours l’endroit le moins cher !

La machine pas chère.

Si vous n’avez pas un budget illimité, notamment si vous voulez juste vous amuser un peu mais pas rivaliser dans les compétitions Kaggle, ou faire de la presta, ou si vous n’avez pas un projet ambitieux, une machine avec un GPU vous permettra d’apprendre en toute quiétude.

  • Il faut d’abord un GPU, ce sera pour cette machine une GTX 1070 (elles sont toutes là sur amazon avec mon lien d’affil) ou une GTX 1080 (ici)
  • Il vous faut un CPU et une carte mère avec de la RAM. Un i5-6600 est largement suffisant (240 euros ici), auquel vous collez un peu de RAM (16G pour 140 euros) et vous mettez le tout sur une carte mère du type de la Gigabyte GA-Z170XP-SLI (je ne sais pas si elle se vend encore, mais un truc du genre).
  • Pour le disque dur, sans moyens prenez du SATA en 1TB, ça vous coutera 50 euros (56 pour celui là).
  • Il ne manque enfin que le boitier, auquel il faut rajouter une alimentation puissante car un GPU ça consomme (je mets celle là, mais c’est sans doute overkill).

Au final, vous en avez pour un peu plus de 1000 euros, et je suis prêt à parier que vous pouvez vous en tirer pour beaucoup moins en récupérant un peu de matos chez vous.

La machine puissante.

Si vous avez des besoins en calcul très fort ou bien si vous avez un portefeuille bien rempli et que vous voulez vous amuser, je vous propose une config de ce type :

  • Pour le CPU, on part sur plus puissant avec un core i7 5930K. 6 coeurs et 3,5GHz, ça laisse de la marge sachant que le deep learning sur GPU utilise peu ou pas le CPU. A noter qu’a priori avec celui là vous avez 40 lanes PCIe, donc vous pouvez mettre jusque 4 GPUs. Il est là sur Amazon.
    Pour ventiler le CPU, un Noctua comme celui-là. N’oubliez pas la pâte thermique pour mettre entre les deux !
  • Pour la carte mère, il y a un choix pléthorique, l’Asus X99 fait le job.
    Elle est dispo ici.
  • Il faut de la RAM, mais en théorie pas beaucoup car il n’y en a pas besoin pour le calcul sur le GPU. Ceci étant, avec une machine pareille vous aurez peut-être envie de faire d’autres choses aussi, et dans ce cas 64 GB ça semble OK. De la RAM DDR4 est alors l’idéal. Il y en a sur Amazon.
  • Le nerf de la guerre pour faire du calcul sur des GPUs, c’est les GPUs. Un bon rapport prix/puissance, c’est les Titan X (architecture Pascal). Je vous propose de prendre deux GeForce GTX Titan X 12 GB (bon courage pour en trouver elles sont en rupture un peu partout). Si vous abandonnez votre recherche, prenez des GTX 1080 (dispo ici). Elles sont moins chères, prenez en plus ^^.
  • Il faut ensuite un boitier et une alim. N’oubliez pas que vous faites une machine qui va consommer comme jamais de l’électricité. Visez donc une alimentation entre 850 et 1500 W selon les GPUs que vous aurez mis dans la machine. Il y a du choix chez Corsair, mais aussi du bon matos chez EVGA en 850 W ou en 1000 W.
    Pour le boitier, tout est bon du moment qu’il est assez grand et ventilable. Moi j’aime bien le Corsair Air 540, mais au bureau notre plus gros boitier c’est une grosse bouse moche qui fait le job !
  • Enfin, il vous faut du disque. Si vous faites bien les choses vous avez déjà un NAS de grande capacité pas loin, donc il vous fait un disque rapide mais pas forcément énorme. Prenez donc un SSD de 1 TB, ça ira parfaitement. Un très bn choix sera par exemple un Samsung 850 EVO de 1 TB.

Si vous faites le calcul, la facture est lourde, en TTC cela fait entre 4000 et 4500 euros (entre 3300 et 3750 HT donc). Mais là vous aurez une puissance de feu vraiment importante, et à vous la joie du deep learning au niveau des champions !

N’hésitez pas à commenter, avec votre courtoisie habituelle bien sûr.

 

 

 

 

Du nouveau aux ix-labs

Ce billet assez court est en fait un message de service à destination de tous ceux qui suivent l’aventure des ix-labs. Il y a effectivement de la nouveauté puisque Guillaume rejoint totalement les ix-labs. Cela étonnera peut-être certains qui pensaient que Guillaume était déjà 100% aux ix-labs, mais ce n’était pas le cas puisqu’il avait aussi un certains nombre d’activités dans la société Nalrem Medias dont il est le boss.

En fait, puisque nous dévoilons tout ici, Nalrem Medias et les ix-labs vont fusionner pour devenir une seule entité (qui portera le nom des ix-labs). Ainsi nous aurons trois pôles d’activités :

  • Un pôle R&D qui comme son nom l’indique portera toutes nos activités R&D avec notamment de la prestation de recherche/innovation pour des tiers, ainsi que le développement, la maintenance et la commercialisation des outils (comme https://yourtext.guru/ et d’autres sur lesquels nous ne communiquons pas).
  • Un pôle formation qui porte les formations des frères Peyronnet « habituelles », les formations R, Python, data science et les lives.
  • Un pôle édition, qui vous vous en doutez, est centré sur l’exploitation de nos sites avec des monétisations via publicité, affiliation et publications de « textes » 😉

Voilà, vous savez tout, à bientôt pour de nouvelles aventures !