目前,我正在为数据科学做课程。在这里,有下面的示例可以在Tensorflow中训练模型:
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense,Dropout
model = Sequential()
# Choose whatever number of layers/neurons you want.
model.add(Dense(units=78,activation='relu'))
model
我一直在谷歌( Google )或学校集群上做深入的学习,所有的事情都做得很好。最近,我需要建立一个工作站来从头开始深入学习,我意识到我对在GPU上运行一个框架(如tensorflow或py手电筒)所需要安装的东西的理解非常有限。
那么,谁能用简单的术语来解释,英伟达司机、数据自动化系统和cuDNN的目的是什么?它们是如何一起工作的,或者是在彼此之上的,为什么我需要为tensorflow/Py手电筒安装它们呢?
由于未知的原因,下面的代码在GPU上比在CPU上慢两倍。有人能解释一下原因吗:
import time
import tensorflow as tf
with tf.device('/device:GPU:0'): # gpu takes: 5.132448434829712 seconds
# with tf.device('/cpu:0'): # cpu takes: 3.440524101257324 seconds
i = tf.constant(0)
while_condition = lambda i: tf.less(
我正在创建一个conda环境,仅用于从tensorflow-gpu通道使用conda-forge包。
conda create -n tst -c conda-forge tensorflow-gpu
这将导致安装tensorflow-gpu 和 tensorflow包:
The following NEW packages will be INSTALLED:
_tflow_1100_select: 0.0.1-gpu
...
tensorboard: 1.10.0-py36_0 conda-forge
tensorflow:
我正在阅读的GPU速度和CPU速度。既然CPU有很多GPU不需要承担的责任,为什么我们一开始就把它们进行比较呢?这句话“我想不起来第二次我看到一家公司推广的竞争基准是一个数量级的慢”,这句话听起来像是英特尔和NVIDIA都在生产GPU。
显然,从程序员的角度来看,您想知道将您的应用程序移植到GPU是否值得您的时间和精力,在这种情况下(公平)比较是有用的。但是,总是用来比较它们吗?
我想要的是一个技术解释,解释为什么英特尔会像安迪基恩( Andy )所认为的那样,推广他们的速度比NVIDIA更慢的基准。
我的CPU是Intel Core2 Duo T5550,GPU是GeForce 8400 m G. CUDA版本5.5.22,OpenCV版本2.4.8。
测试代码如下:
double t = (double)getTickCount();
gpu::threshold(src, dst, thres, binMax, THRESH_BINARY);
t = ((double)getTickCount() - t)/getTickFrequency();
cout << "Times passed in seconds: " << t <<
我正在训练一个神经模型,使用keras和tensorflow作为后端。日志文件以以下消息开头: nohup: ignoring input
2019-02-12 17:44:29.414526: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 AVX512F FMA
2019-02-12 17:44:30.191565: I tensorflow/core/c
我只想把细节也贴在这里。但基本上,我有一个正在耗尽内存的实现。
此处参考的Github问题:
这是错误消息:
UserWarning: Viewer requires Qt
warn('Viewer requires Qt')
2018-11-12 09:30:54.179843: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
20
我有一个LSTM模型,我想训练多个gpus。我对代码进行了转换,在nvidia-smi中,我可以看到它正在使用所有gpu的所有内存,每个gpu都在使用大约40%的内存,但每批培训的估计时间几乎与1个gpu相同。
有人能引导我,告诉我如何在多个gpus上进行适当的训练吗?
我的代码:
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
from tensorflow.keras.layers import LSTM
fro
我一直试图用本文中的DQN来解决OpenAI月球着陆器的游戏。
问题是训练50集需要12个小时,所以一定是出了问题。
import os
import random
import gym
import numpy as np
from collections import deque
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
from tensorflow.keras.optimizers import Ada
我有一个在Ubuntu14.04上运行的Nvidia GTX 1080。我试图用tensorflow 1.0.1实现一个卷积的自动编码器,但是这个程序似乎根本不使用GPU。我使用watch nvidia-smi和htop验证了这一点。运行程序后的输出如下:
1 I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcublas.so.8.0 locally
2 I tensorflow/stream_executor/dso_loader.cc:135] successfu
我在Tensorflow中建立了一个简单的线性回归问题,并在1.13.1中使用Tensorflow CPU和GPU创建了简单的conda环境(在NVIDIA P600的后端使用CUDA 10.0 )。
然而,看起来GPU环境总是比CPU环境花费更长的时间。我正在运行的代码如下。
import time
import warnings
import numpy as np
import scipy
import tensorflow as tf
import tensorflow_probability as tfp
from tensorflow_probability import ed