CPU vs GPU (conv) Réseaux de Neurones calcul
Je suis un étudiant à l'IA qui va beaucoup travailler avec pylearn et Théano (je pourrais aussi essayer de la torche et caffe) cette année, pour la mise en œuvre des réseaux de Neurones, et je suis sur le point d'acheter un ordinateur portable pour cette question.
Je voudrais avoir votre aide en fonction de votre expérience en la matière.
Je n'ai pas un gros budget donc je ne peux pas se permettre beaucoup de choses. J'ai deux ou trois questions simples:
Qui est le mieux pour les bibliothèques comme théano, torche, caffe : ATI ou NVIDIA ?
Quelqu'un at-il essayer de calcul GPU sur Geforce 740M 820M 840M quelque chose comme cela ? et est-il mieux que les Processeurs? ou si je ne peux pas se permettre un énorme GPU, est-il mieux acheter un ordinateur portable avec une bonne i7 au lieu que ces (bon marché) cartes?
Je vous remercie pour votre temps,
Oui, je pense que c'est une bonne conclusion. Je pourrais construire une station de travail et SSH.
OriginalL'auteur Sam | 2015-09-06
Vous devez vous connecter pour publier un commentaire.
Alors après lecture de vos réponses, et certains articles de blog, ma conclusion est la suivante:
N'essayez pas de faire un ordinateur portable de votre poste de travail principal pour l'apprentissage en profondeur ! Il est tout simplement trop cher : Vous aurez juste dépenser des milliers de dollars pour un ordinateur portable de configuration qui pourrait coûter des centaines pour un ordinateur de bureau. Et le moins cher n'est pas la peine.
Je pense que je vais acheter un 13" ordinateur portable et de commencer à construire un solide bureau, alors je ferais un accès ssh.
Ces deux liens sont grands pour avoir une bonne compréhension sur GPU choix.
http://timdettmers.com/2017/04/09/which-gpu-for-deep-learning/
https://www.linkedin.com/pulse/20141013042457-89310056-which-gpu-to-use-for-deep-learning
Merci à vous tous !
OriginalL'auteur Sam
Que pour votre première question, je ne sais pas à propos de ces bibliothèques pour la mise en œuvre de NN. Mais Si vous avez utilisé quelque chose comme octave/Matlab, les deux ont des bibliothèques pour NN qui rendent l'utilisation de CUDA pour la formation NNs. GPU vs CPU.... La mise en œuvre de la lettre et de l'apprentissage de la machine, en général, est fortement basée sur les vecteurs/matrices et les opérations matricielles comme la multiplication/addition..etc. Quand il s'agit de la matrice des opérations, vous ne pensez pas deux fois, vous pouvez toujours opter pour les Gpu. Le fonctionnement de la matrice sont Single instruction Multiple Data activités qui font usage du Gpu fortement. En gros, c'est la même opération (ce qui est généralement simple) exécutées sur d'énormes quantités de données de manière indépendante. Vous n'avez pas besoin d'un GPU avancé. J'ai utilisé 320GTX sur mon vieux macbook et il était assez bon (je suis en supposant que vous êtes un étudiant et sera mise en œuvre soit une preuve de concept ou de projets académiques et non pas au niveau du secteur de projet).
bien sûr, la bande passante est très important. La raison en est , même si vous pouvez faire paralléliser vos calculs sur le gpu pour obtenir le maximum de débit, ce qui n'a pas d'importance si vous ne pouvez pas transférer ces résultats à partir de la gpu (devez comprendre comment le transfert de données est géré entre l'hôte et le périphérique si vous savez à propos de programmation CUDA). mais encore une fois c'est hors de propos de ce que j'ai dit, en gros, la plupart des algorithmes d'apprentissage que j'ai entendu parler de dépendre sur les opérations matricielles et compte tenu des données de l'indépendance des opérations sur les matrices, il sera généralement mieux sur le GPU que le CPU.
OriginalL'auteur mkmostafa
L'apprentissage de la Machine les opérations sont généralement réduits à matrice-matrice de multiplications. Actuellement, la matrice de la matrice de multiplications sont très efficaces sur les Gpu que le Cpu parce que les Gpu ont beaucoup plus de threads que de Processeurs. En outre, NVIDIA ont pris en charge pour CUDA toolkit pour assez certain nombre d'années. La plate-forme est maintenant arrivé à maturité. De nombreux DL bibliothèques (par exemple, Café, Théano, Torche, TensorFlow) sont en train d'exploiter le CUDA supporte pour BLAS (basic linear algebra subroutines) et de DNN (réseaux de neurones), les bibliothèques. L'apprentissage en profondeur des bibliothèques les développeurs n'auront pas à consacrer beaucoup de temps à optimiser matrice-matrice de multiplications.
En outre, il semble que l'optimisation des Processeurs code pour le même niveau de Gpu dans certaines opérations (matrice-matrice des opérations) est assez dur (ce que nous avons appelé ninja optimisations). Pour une meilleure appréciation de ce que les autres ont vécu, veuillez voir les discussions à https://github.com/BVLC/caffe/pull/439.
OriginalL'auteur beahacker