-
-
环境为tf 1.8GPU为GPU: 1*v100NV3如图:训练的时候很慢,输入nvidia-smi发现gpu负载一直是0,这似乎一直没有用到gpu
-
-
如题,在Teminal可看到GPU,但是notebook找不到GPU,GPU无法使用。求大佬给个建议
-
全栈服务系统中,通过一台后台服务器可调配多台GPU服务器。在添加新的GPU服务器时,需在后台服务器上添加新的GPU服务器信息,而在新的GPU服务器上进行相关配置,使二者构建交互通道。配置新GPU服务器的主要步骤如下: 1.登录Cloud VR后台管理系统网址 2.服务器管理操作 3.GPU服务器文件配置1.登录Cloud VR后台管理系统网址 后台管理系统主要用于后台管理员对系统的用户、服务器、游戏内容、订单等进行整体监控与管理,其网址为:http://ip/vradmin(ip指后台CentOS服务器的IP地址)。 账号登录界面如下: 在上图中输入管理员账号与密码后,点击按钮进行图形验证,验证成功则进入后台管理界面管理。2.服务器管理操作 进入后台管理界面后可看到网页左侧菜单栏如下(左),点击“服务器管理”,出现三个选项(右)。 点击“云服务器”,出现如下界面: 然后点击“添加服务器”按钮,弹出添加服务器窗口 添加服务器需要编辑部分:服务器区域、服务器名称、服务器ID、服务器IP、服务器备注。a. 服务器区域选择时,可先在“区域列表”中进行添加,添加结果会在上图中的下拉选项中显示。(例如添加的GPU服务器属于上海区域,可先在“区域列表”中添加区域“上海”,然后在服务器区域下拉框中选择“上海”。)b. 服务器名称可自行设置c. 服务器IP为GPU服务器IPd. 服务器ID可自行设置e. 备注可空置 编辑完成后,点击“确认添加”则新GPU服务器添加成功,可 “云服务器”界面查看所有服务器信息,如下图下半部分所示: 3.GPU服务器文件配置 GPU云服务器添加成功后,需对该GPU云服务器上的GameMonitor程序的config.json文件进行相关配置,具体配置如下:“ServerId”修改为后台管理系统中该服务器添加时所设的“服务器ID”“WebApiAddr”修改为“tcp://ip:5556”( ip指CentOS后台管理服务器的IP地址) 然后重新启动GameMonitor程序,则新的GPU服务器添加成功。
-
目前我的模型存在精度损失,导致结果完全不正确,我想先确认一下我的图片预处理是不是正确的:在GPU上的图片预处理是:resize (416,416,3) -> 归一化:像素值除以127.5再减1在300上的预处理: 预处理引擎resize(416,416) dvpp处理的YUV格式 -> 归一化在转换模型时做:配置为 有点疑惑的是这个input Image Size是(512,416)是不是因为Dvpp处理之后是128位对齐?还有个疑惑是,在GPU上图片BGR格式输入大小是(416*416*3=519168),而在300上YUV格式输入大小是(319488=512*416*1.5 ?)不知道以上至模型推理前对图片的操作GPU和300所做是否等效,不然我就考虑是后半部分代码出了问题
-
看到Atlas 200 DK安装tensorflow我突发奇想能不能安装tensorflow-gpu?板子上有GPU吗,如果没有,那么安装tensorflow有什么用?还不如在自己电脑跑CPU,还有如果板子上跑tensorflow,那么问题来了,怎么和自己AICore对接起来运行更快?我们知道板子就是用来推理,如果用tensorflow在板子上推理,在加上板子的芯片,那就不错了。问题是支持吗?
-
我使用yolov3-tiny的caffe模型转换得到了Atlas200DK支持的om模型,没有进行量化和加密,没有减均值,推理能够得到输出数据,同样的caffe模型在GPU上计算输出的数据在0-1之间,但是利用Atlas200DK推理得到的数据非常大,基本都大于1,yolov3-tiny包含两个输出,第一个输出阶段的算子均为conv,pooling等常规算子,结果差异巨大,希望给个排查问题的思路,谢谢!
-
RT,开发板没有视频输出接口,有内置的GPU吗?
-
化鲲为鹏,我有话说华为吓人技术GPU Turbo技术发布了好久,的确的确会给手机性能带来很大的提升,尤其是打游戏时,但是官方给的资料寥寥无几,求大神科普。落款:云南大学
-
#化鲲为鹏,我有话说#因为实际场景中需要用到深度学习的识别模型,所以目前采用还是x86带GPU加速的服务器,想问下如果迁移到ARM服务器上,是否有GPU的相关支持,网上找了有关ARM的GPU方式是树莓派+神经计算棒,华为ARM服务器啥时候能上线相关的GPU服务呢
-
微话题 “如何利用GPU云资源训练自己的TensorFlow模型?”希望大家能够畅所欲言。如果大家有其他任何与TensorFlow模型相关的问题,也可以在本帖回复直接咨询云享专家江魁。=====【华为云·微话题】如何利用GPU云资源训练自己的TensorFlow模型? =====人工智能的火热,带来了一波学习TensorFlow深度学习框架的热潮。聊深度学习免不了要用GPU,但目前一块GPU费用较高,对于个人学习者和创业公司来讲的话,按需配置的云GPU服务器是一个不错的选项。华为云提供了按需配置的GPU服务器。云资源购买很方便,但GPU服务器的配置安装往往依赖一些Nvidia开发的组件,其文档晦涩难懂,很容易把新手拒之门外。幸运的是,在这个Docker流行的时代,有一些工作可以用容器化的服务来简化。Nvidia也开发了Nvidia-docker支持容器化。今天我们就来讨论一下如何利用GPU云资源训练自己的TensorFlow模型?期望看到大家精彩的评论:1、你是如何训练自己的TensorFlow模型?2、你在华为云服务器上训练自己的TensorFlow模型有没有碰到什么问题?如何解决的?3、你尝试着在GPU云资源部署你的Nvidia-docker时最大的收获是什么?4、你的TensorFlow训练的模型在用Restful API发布时有没有碰到什么问题?微话题活动:参与本次微话题讨论,有机会获得优质评论奖,赢取华为小天鹅蓝牙音箱。活动时间:2019年7月24日-8月7日参与方式:直接在本帖回复关于以上4个问题中的任意1个或多个问题的理解或评论获奖方式:活动结束后,将由云享专家 江魁 选取出2名优质评论奖,各送出华为小天鹅蓝牙音箱1个。评奖标准:回复话题数量和内容质量。优质评论:云的记忆:1、你是如何训练自己的TensorFlow模型?接触人工智能一年多,报了网课,前段时间第一次在华为提供的Modelarts AI实践营上 训练了 花草识别,猫狗识别 以及一个YOLO3模型。也是通过你们华为云第一次训练自己的第一个TensorFlow模型,算是入门,感谢华为。 2、你在华为云服务器上训练自己的TensorFlow模型有没有碰到什么问题? 记得第二期实践的时候,上传数据集到你们 对象存储的那个桶,通过你们那个 Browers传东西 传到 66%的时间就一直传不上去了,这个东西是个大的bug,需要修复,后面是通过另外一种命令行的方式上传的,后面多次遇到其他的一些大大小小的问题,但是都解决了,后面遇到再反馈 3、你尝试着在GPU云资源部署你的Nvidia-docker时最大的收获是什么? 没有实践过,通过你们Modelarts 学会做深度学习的时候,后面有计划这样去部署。因为感觉更自由。 4、你的TensorFlow训练的模型在用Restful API发布时有没有碰到什么问题? 还没遇到过。 buyi:利用TensorFlow,然后基于 CNN 数字识别的代码,采用简单的卷积神经网络模型,模型为: 输入 - 第一层卷积 - 第一层池化 - 第二层卷积 - 第二层池化 - 第一层全连接 - 第二层全连接。实现1—9的数字识别,根据ModelArts开发步骤,总结下列流程。1. 训练数据集下载上传2. CNN 模型构建3. 创建一个源文件 mnist_model.py123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778from __future__ import absolute_importfrom __future__ import divisionfrom __future__ import print_function import argparseimport sysimport tempfile from tensorflow.examples.tutorials.mnist import input_data import tensorflow as tf FLAGS = None def deepnn(x): with tf.name_scope('reshape'): x_image = tf.reshape(x, [-1, 28, 28, 1]) #第一层卷积层,卷积核为5*5,生成32个feature maps. with tf.name_scope('conv1'): W_conv1 = weight_variable([5, 5, 1, 32]) b_conv1 = bias_variable([32]) h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1) + b_conv1) #激活函数采用relu # 第一层池化层,下采样2. with tf.name_scope('pool1'): h_pool1 = max_pool_2x2(h_conv1) # 第二层卷积层,卷积核为5*5,生成64个feature maps with tf.name_scope('conv2'): W_conv2 = weight_variable([5, 5, 32, 64]) b_conv2 = bias_variable([64]) h_conv2 = tf.nn.relu(conv2d(h_pool1, W_conv2) + b_conv2)#激活函数采用relu # 第二层池化层,下采样2. with tf.name_scope('pool2'): h_pool2 = max_pool_2x2(h_conv2) #第一层全连接层,将7x7x64个feature maps与1024个features全连接 with tf.name_scope('fc1'): W_fc1 = weight_variable([7 * 7 * 64, 1024]) b_fc1 = bias_variable([1024]) h_pool2_flat = tf.reshape(h_pool2, [-1, 7*7*64]) h_fc1 = tf.nn.relu(tf.matmul(h_pool2_flat, W_fc1) + b_fc1) #dropout层,训练时候随机让某些隐含层节点权重不工作 with tf.name_scope('dropout'): keep_prob = tf.placeholder(tf.float32) h_fc1_drop = tf.nn.dropout(h_fc1, keep_prob) # 第二层全连接层,1024个features和10个features全连接 with tf.name_scope('fc2'): W_fc2 = weight_variable([1024, 10]) b_fc2 = bias_variable([10]) y_conv = tf.matmul(h_fc1_drop, W_fc2) + b_fc2 return y_conv, keep_prob #卷积def conv2d(x, W): return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME') #池化def max_pool_2x2(x): return tf.nn.max_pool(x, ksize=[1, 2, 2, 1], strides=[1, 2, 2, 1], padding='SAME')#权重def weight_variable(shape): initial = tf.truncated_normal(shape, stddev=0.1) return tf.Variable(initial) #偏置def bias_variable(shape): initial = tf.constant(0.1, shape=shape) return tf.Variable(initial) 训练模型123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596from __future__ import absolute_importfrom __future__ import divisionfrom __future__ import print_function import argparseimport sysimport tempfile from tensorflow.examples.tutorials.mnist import input_data import tensorflow as tf import mnist_model FLAGS = None def main(_): mnist = input_data.read_data_sets(FLAGS.data_dir, one_hot=True) #输入变量 x = tf.placeholder(tf.float32, [None, 784]) #输出变量,数字是1-10 y_ = tf.placeholder(tf.float32, [None, 10]) # 构建网络,输入—>第一层卷积—>第一层池化—>第二层卷积—>第二层池化—>第一层全连接—>第二层全连接 y_conv, keep_prob = mnist_model.deepnn(x) #第一步对网络最后一层的输出做一个softmax,第二步将softmax输出和实际样本做一个交叉熵 #cross_entropy返回的是向量 with tf.name_scope('loss'): cross_entropy = tf.nn.softmax_cross_entropy_with_logits(labels=y_, logits=y_conv) #求cross_entropy向量的平均值得到交叉熵 cross_entropy = tf.reduce_mean(cross_entropy) #AdamOptimizer是Adam优化算法:一个寻找全局最优点的优化算法,引入二次方梯度校验 with tf.name_scope('adam_optimizer'): train_step = tf.train.AdamOptimizer(1e-4).minimize(cross_entropy) #在测试集上的精确度 with tf.name_scope('accuracy'): correct_prediction = tf.equal(tf.argmax(y_conv, 1), tf.argmax(y_, 1)) correct_prediction = tf.cast(correct_prediction, tf.float32) accuracy = tf.reduce_mean(correct_prediction) #将神经网络图模型保存本地 graph_location = tempfile.mkdtemp() print('Saving graph to: %s' % graph_location) train_writer = tf.summary.FileWriter(graph_location) train_writer.add_graph(tf.get_default_graph()) #将训练的网络保存下来 saver = tf.train.Saver() with tf.Session() as sess: sess.run(tf.global_variables_initializer()) for i in range(5000): batch = mnist.train.next_batch(50) if i % 100 == 0: train_accuracy = accuracy.eval(feed_dict={ x: batch[0], y_: batch[1], keep_prob: 1.0})#输入是字典,表示tensorflow被feed的值 print('step %d, training accuracy %g' % (i, train_accuracy)) train_step.run(feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5}) test_accuracy = 0 for i in range(200): batch = mnist.test.next_batch(50) test_accuracy += accuracy.eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0}) / 200; print('test accuracy %g' % test_accuracy) save_path = saver.save(sess,"mnist_cnn_model.ckpt") if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('--data_dir', type=str, default='./', help='Directory for storing input data') FLAGS, unparsed = parser.parse_known_args() tf.app.run(main=main, argv=[sys.argv[0]] + unparsed) for i in range(200): batch = mnist.test.next_batch(50) test_accuracy += accuracy.eval(feed_dict={x: batch[0], y_: batch[1], keep_prob: 1.0}) / 200; print('test accuracy %g' % test_accuracy) save_path = saver.save(sess,"mnist_cnn_model.ckpt") if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('--data_dir', type=str, default='./', help='Directory for storing input data') FLAGS, unparsed = parser.parse_known_args() tf.app.run(main=main, argv=[sys.argv[0]] + unparsed) 4. 然后执行5. 实现预测代码创建源文件 predict_mnist_model.py12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061from __future__ import absolute_importfrom __future__ import divisionfrom __future__ import print_function import argparseimport sysimport tempfile from tensorflow.examples.tutorials.mnist import input_data import tensorflow as tf import mnist_modelfrom PIL import Image, ImageFilter def load_data(argv): grayimage = Image.open(argv).convert('L') width = float(grayimage.size[0]) height = float(grayimage.size[1]) newImage = Image.new('L', (28, 28), (255)) if width > height: nheight = int(round((20.0/width*height),0)) if (nheigth == 0): nheigth = 1 img = grayimage.resize((20,nheight), Image.ANTIALIAS).filter(ImageFilter.SHARPEN) wtop = int(round(((28 - nheight)/2),0)) newImage.paste(img, (4, wtop)) else: nwidth = int(round((20.0/height*width),0)) if (nwidth == 0): nwidth = 1 img = grayimage.resize((nwidth,20), Image.ANTIALIAS).filter(ImageFilter.SHARPEN) wleft = int(round(((28 - nwidth)/2),0)) newImage.paste(img, (wleft, 4)) tv = list(newImage.getdata()) tva = [ (255-x)*1.0/255.0 for x in tv] return tva def main(argv): imvalue = load_data(argv) x = tf.placeholder(tf.float32, [None, 784]) y_ = tf.placeholder(tf.float32, [None, 10]) y_conv, keep_prob = mnist_model.deepnn(x) y_predict = tf.nn.softmax(y_conv) init_op = tf.global_variables_initializer() saver = tf.train.Saver() with tf.Session() as sess: sess.run(init_op) saver.restore(sess, "mnist_cnn_model.ckpt") prediction=tf.argmax(y_predict,1) predint = prediction.eval(feed_dict={x: [imvalue],keep_prob: 1.0}, session=sess) print (predint[0]) if __name__ == "__main__":main(sys.argv[1])这样就可进行一个简单的数字预测,利用率TensorFlow相关函数和简单神经网络。
-
微话题 “如何利用GPU云资源训练自己的TensorFlow模型?”希望大家能够畅所欲言。如果大家有其他任何与TensorFlow模型相关的问题,也可以在本帖回复直接咨询云享专家江魁。=====【华为云·微话题】如何利用GPU云资源训练自己的TensorFlow模型? =====人工智能的火热,带来了一波学习TensorFlow深度学习框架的热潮。聊深度学习免不了要用GPU,但目前一块GPU费用较高,对于个人学习者和创业公司来讲的话,按需配置的云GPU服务器是一个不错的选项。华为云提供了按需配置的GPU服务器。云资源购买很方便,但GPU服务器的配置安装往往依赖一些Nvidia开发的组件,其文档晦涩难懂,很容易把新手拒之门外。幸运的是,在这个Docker流行的时代,有一些工作可以用容器化的服务来简化。Nvidia也开发了Nvidia-docker支持容器化。今天我们就来讨论一下如何利用GPU云资源训练自己的TensorFlow模型?期望看到大家精彩的评论:1、你是如何训练自己的TensorFlow模型?2、你在华为云服务器上训练自己的TensorFlow模型有没有碰到什么问题?如何解决的?3、你尝试着在GPU云资源部署你的Nvidia-docker时最大的收获是什么?4、你的TensorFlow训练的模型在用Restful API发布时有没有碰到什么问题?微话题活动:参与本次微话题讨论,有机会获得优质评论奖,赢取华为小天鹅蓝牙音箱。活动时间:2019年7月24日-8月7日参与方式:直接在本帖回复关于以上4个问题中的任意1个或多个问题的理解或评论获奖方式:活动结束后,将由云享专家 江魁 选取出2名优质评论奖,各送出华为小天鹅蓝牙音箱1个。评奖标准:回复话题数量和内容质量。
-
人工智能的火热,带来了一波学习TensorFlow深度学习框架的热潮。聊深度学习免不了要用GPU,但目前GPU费用较高,对于个人学习者和创业公司来讲的话,按需配置的云GPU服务器是一个不错的选项。华为云提供了按需配置的GPU服务器,云资源购买很方便,但GPU服务器的配置安装往往依赖一些Nvidia开发的组件,如何快速进行部署,可以用容器化的服务来简化,华为云专家技术公开课邀-请到云享专家江魁,对这套开发组件作一次系统介绍。【立即报名】点击报名链接,进行线上预约观看https://developer.huaweicloud.com/signup/da8435fc6e274e93868a1cb37ad2eebd【你分享,我送礼】了解专家课程详情:
推荐直播
-
华为云云原生FinOps解决方案,为您释放云原生最大价值
2024/04/24 周三 16:30-18:00
Roc 华为云云原生DTSE技术布道师
还在对CCE集群成本评估感到束手无策?还在担心不合理的K8s集群资源申请和过度浪费?华为云容器服务CCE全新上线云原生FinOps中心,为用户提供多维度集群成本可视化,结合智能规格推荐、混部、超卖等成本优化手段,助力客户降本增效,释放云原生最大价值。
去报名 -
鲲鹏开发者创享日·江苏站暨数字技术创新应用峰会
2024/04/25 周四 09:30-16:00
鲲鹏专家团
这是华为推出的旨在和众多技术大牛、行业大咖一同探讨最前沿的技术思考,分享最纯粹的技术经验,进行最真实的动手体验,为开发者提供一个深度探讨与交流的平台。
即将直播 -
产教融合专家大讲堂·第①期《高校人才培养创新模式经验分享》
2024/04/25 周四 16:00-18:00
于晓东 上海杉达学院信息科学与技术学院副院长;崔宝才 天津电子信息职业技术学院电子与通信技术系主任
本期直播将与您一起探讨高校人才培养创新模式经验。
去报名
热门标签