
Machine Learning
文章平均质量分 64
踏莎行hyx
疏影横斜水清浅,暗香浮动月黄昏。
展开
-
pytorch基于DP和DDP实现多GPU数据并行的模型加速训练
在做深度学习AI模型训练过程中,可以充分利用多GPU进行模型加速并行训练。这里基于pytorch的DP和DDP特性实现了数据并行的模型多GPU训练,其中DP支持单机多GPU,任务式多线程的,DDP支持单机多GPU和多机分布式多GPU,任务式多进程的,一般来说DDP的方式能保证多个GPU的负载均衡,但是执行效率要看实际场景和数据量。以下式极简的代码示例。原创 2023-06-15 14:14:44 · 706 阅读 · 0 评论 -
pytorch导出模型并使用onnxruntime C++部署加载模型推理
机器学习的框架众多,为了方便复用和统一后端模型部署推理,业界主流都在采用onnx格式的模型,支持pytorch,tensorflow,mxnet多种AI框架。为了提高部署推理的性能,考虑采用onnxruntime机器学习后端推理框架进行部署加速,通过简单的C++ api的调用就可以满足基本使用场景。原创 2023-02-28 17:14:51 · 2193 阅读 · 1 评论 -
pytorch使用matplotlib和tensorboard实现模型和训练的可视化
pytorch构建和训练深度学习模型的过程中,往往需要能够直观的观测到可视化的过程,比如画出训练曲线等。对于简单的曲线绘制可以使用matplotlib库做出基本的图,如果需要更加高级的可视化过程,pytorch有好几个工具都可以做到,比如tensorwatch,visdom,tensorboard,实测下来发现tensorboard用起来比较方便和成熟稳定。(pytorch自从1.2版本依赖就正式支持了独立的tensorboard,不再需要去安装tensorboardX了)本文通过简单线性模型训原创 2020-07-13 16:41:48 · 9214 阅读 · 2 评论 -
pytorch基于RNN实现文本情感分析并用C++加载模型预测
文本情感分析是机器学习自然语言处理NLP中常见的应用场景,给定一段文本,识别其中的情绪或态度,对其进行分类并标签化。这个手段可以应用于书籍电影评价、用户对产品满意度调查、人机对话感情色彩提取和金融研报分析。本文以美国IMDB电影网站的评论数据为例,用pytorch构建和训练基于循环神经网络LSTM的模型,然后用C++ libtorch加载模型对于给定的电影评论文本进行预测,判断改评论是正面的还是负面的,代码和数据实例参考了动手学机器学习pytorch版环境开发工具windows7/ubunt原创 2020-07-08 17:41:49 · 2426 阅读 · 2 评论 -
linux下深度学习框架tensorflow2.0的编译和C++接口使用
谷歌发布了tensorflow2.0后带来全新的使用体验和深度学习实践模式,这里基于新版本进行编译,并使用其C++接口编写示例。环境本文只针对linux系统(windows下尝试过多次后未成功,放弃)ubuntu14.04gcc4.8.5cmake3.10.2编译目的是编译出tensorflow的动态链接库以及准备好tensorflow第三方依赖库安装bazeltensorf...原创 2019-06-15 00:02:11 · 7988 阅读 · 5 评论 -
机器学习库dlib的C++编译和使用(windows和linux)
dlib是一个C++编写的工具集,相比于深度学习库而言,dlib内部更多的是封装了很多传统机器学习计算函数,例如回归分析、支撑向量机、聚类,开箱即用,对外提供了C++和python两种接口。本文通过一个C++调用dlib的demo来体验一下dlib这个强大的工具库。获取从官网dlib官网或者github地址dlib源码下载最新源码这里用的是dlib-19.17编译windows和lin...原创 2019-05-28 16:59:57 · 8442 阅读 · 7 评论 -
机器学习库dlib的python包编译和使用(windows和linux)
dlib库有对应的python扩展接口包,安装后就可以用python来调用ldib库写程序。获取从官网dlib官网或者github地址dlib源码下载最新源码这里用的是dlib-19.17安装选择从源码编译安装(python2和python3都行)保险起见,在编译安装之前最好打开dlib-19.17/dlib/CMakeLists.txt,显示地设置不使用blas、lapack、cud...原创 2019-05-30 12:06:34 · 2238 阅读 · 3 评论 -
mxnet使用mxboard实现网络和训练过程可视化
mxnet作为一个强大的机器学习工具,一直缺乏像tensorflow一样的可视化工具,dmlc社区最近将tensorflow的tensorboard部分代码抽出来做成了一个适配mxnet的记录工具mxboard,使得mxnet里面打印出来的log,可以在tensorboard里面实现可视化mxnet自带可视化在这之前,可以先看看mxnet之前的网络可视化方式,mxnet内部集成了gra...原创 2018-06-19 17:15:19 · 6490 阅读 · 1 评论 -
windows下编译深度学习框架mxnet并使用C++训练模型
大多数情况下,mxnet都使用python接口进行深度学习程序的编写,方便快捷,但是有的时候,需要把机器学习训练和识别的程序部署到生产版的程序中去,比如游戏或者云服务,此时采用C++等高级语言去编写才能提高性能,本文介绍了如何在windows系统下从源码编译mxnet,安装python版的包,并使用C++原生接口创建示例程序。目标编译出libmxnet.lib和libmxnet...原创 2018-05-29 23:37:17 · 12103 阅读 · 37 评论 -
mxnet训练模型、导出模型、加载模型 进行预测(python和C++)
mxnet支持将已训练的模型导出成网络和参数分离的json和params文件,方便离线加载进行预测和验证,同时由于mxnet支持python,C++,scala等多种编程语言,这一特性使得mxnet可以在生产系统上部署「fine-tuning」本文以一个简单那的线性回归训练模型的例子,来介绍如何在mxnet中训练模型,导出模型,加载模型,进行后续预测,其中预测部分采用了python和C++双版...原创 2018-06-11 18:16:19 · 16649 阅读 · 16 评论 -
linux下编译深度学习框架mxnet并使用C++训练模型
mxnet是最近流行的深度学习框架之一,使用起来体验不错,不过平常都是用python接口写程序,本文介绍如何在linux下从源码编译mxnet并使用其C++接口编程。本文所使用的环境是ubunt14.04,g++4.8,如果是其他类unix发行版(fedora,mac os)同理。目标编译出libmxnet.a,libmxnet.so,本文只编译cpu版 链接共享库,调用C++接口...原创 2018-03-29 09:33:38 · 8206 阅读 · 14 评论