![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
机器学习
分享机器学习相关技术知识,包括pytorch , TensorFlow, xgboost 等
一棵栗子树
一失足 千古恨 龙游浅滩遭虾戏;
君莫悔 待重头 卷土重来未可知。
展开
-
【pytorch】在win10 VS2017环境下使用libtorch部署pytorch模型
安装libtorchpytorch的c++接口,PyTorch C ++ API - 也称为LibTorch,能够将pytorch训练的模型在C++环境下进行部署。它可以直接从官网下载得到Start Locally | PyTorch我的电脑没有GPU,因此计算模式选择CPU,根据下面的下载链接选择debug版或者release版本,下载解压即可。新建VS2017项目需要注意的是,这里一定要使用VS2017,因为pytorch中使用了C++14标准,老版本的VS201...原创 2021-12-04 08:16:45 · 1044 阅读 · 1 评论 -
【xgboost】xgboost模型的保存与加载
xgboost模型的保存方法有多种方法可以保存xgboost模型,包括pickle,joblib,以及原生的save_model,load_model函数其中Pickle是Python中序列化对象的标准方法。这里使用Python pickle API序列化xgboost模型,并将序列化的格式保存到文件中示例代码import pickle# save model to file 模型保存pickle.dump(model, open("pima.pickle.dat", "wb"))原创 2021-11-20 21:02:49 · 6734 阅读 · 0 评论 -
【xgboost】使用m2cgen将xgboost模型转化为C代码
m2cgen 简介m2cgen(Model 2 Code Generator)-是一个轻量级库,它提供了一种将经过训练的统计模型转换为本机代码(Python、C、Java、Go、JavaScript、Visual Basic、C#、PowerShell、R、PHP、Dart、Haskell、Ruby、F#、Rust)的简便方法。简而言之,它可以将python scikit-learn 等训练的机器学习模型转成C,JAVA等能够直接运行的代码,从而在无需依赖库的情况下直接运行m2cgen 安装原创 2021-11-19 15:04:01 · 3106 阅读 · 4 评论 -
【xgboost】使用XGBClassifier对iris鸢尾花数据集进行图像分类
iris鸢尾花数据集是入门级的图像分类数据集,通过这个简单的demo,我们可以快速上手xgboost的使用,具体代码如下:from sklearn.datasets import load_irisfrom xgboost.sklearn import XGBClassifierfrom xgboost import plot_importanceimport matplotlib.pyplot as pltfrom sklearn.model_selection import trai.原创 2021-11-19 14:45:28 · 3066 阅读 · 0 评论 -
【xgboost】XGBClassifier的参数设置
XGBClassifier的主要参数及意义XGBoost参数地址:https://xgboost.readthedocs.io/en/latest/parameter.html在运行 XGBoost 之前,我们必须设置三种类型的参数:常规参数、提升器参数和任务参数。 常规参数与我们用于提升的提升器有关,通常是树模型或线性模型; 提升器参数取决于你所选择的提升器; 学习任务参数决定了学习场景,例如回归任务可以使用不同的参数进行排序相关的任务; 命令行参数的行为与 x...原创 2021-11-19 14:21:30 · 2484 阅读 · 0 评论 -
【Tensorflow】Ubuntu16.04 下 Opencv3.4.0 tensorflow C++ API 联合调用测试
一、前言前两篇博客已经介绍了如何在Linux环境下安装配置Opencv,以及编译Tensorflow的C++接口,由于在项目中常常同时用到这两个库,即使用Opencv读取和简单处理图片,再输入至Tensorflow创建的神经网络中进行进一步处理。故本文主要介绍如何编写程序读取tensorflow训练并固化的pb模型,调用Opencv读取图片,并转换为tensorflow所需要的格式,输入至...原创 2019-07-18 17:32:13 · 567 阅读 · 0 评论 -
【Tensorflow】Ubuntu16.04下编译tensorflow C++ API接口并调用模型
一、前言在深度学习项目开发过程中,通常在python环境中训练和测试模型,测试稳定后再将其转移至C++平台进行部署,之前的文章已经介绍过如何在Win10 VS2015环境下编译tensorflow C++ API,因工作原因,需要将Windows环境的项目转移至Linux下,本文记录了在Ubuntu16.04下编译tensorflow C++ API接口并调用的过程。二、配置.版本及相关依...原创 2019-07-16 20:53:05 · 1345 阅读 · 3 评论 -
【TensorFlow】在win10 VS2015环境下编译TensorFlow C++ API
由于项目需求,需要将Python环境下训练的TensorFlow模型转移至C++环境进行部署,花了一天时间成功编译了TensorFlow C++ API,期间也踩了一些坑,在此记录编译的过程。笔者主要参考了TensorFlow的官方文档https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/cmake/RE...原创 2019-04-26 20:41:34 · 3307 阅读 · 15 评论 -
【tiny-dnn】构建卷积神经网络训练自己的数据
上一篇博文讲到用tiny-dnn实现MNIST手写数字识别,https://blog.csdn.net/flyconley/article/details/82864507,运行了tiny-dnn的官方demo。实际工程部署中,需要针对自己的数据进行训练完成分类任务,本篇博文主要是阅读分析该代码,在其基础上修改以训练自己的数据。这里我们以识别印刷体汉字为例,首先我们收集相关印刷体汉字图片,共计...原创 2018-09-28 15:33:08 · 2753 阅读 · 12 评论 -
【tiny-dnn】完成mnist手写数字识别
tiny-dnn是一个轻量级神经网络框架,相对于caffe、tensorflow等框架它最大的特点是依赖少,易于部署,缺点是不支持GPU,无法训练大型的神经网络。源码可在github下载https://github.com/tiny-dnn/tiny-dnn下载解压后在其vc文件夹中可以看到tiny-dnn的示例工程打开工程后可以看到6个官方demovoid sample...原创 2018-09-28 10:32:21 · 1320 阅读 · 0 评论 -
【pytorch】实现条件生成对抗网络 CGAN
生成器网络为Unet判别器为patchGAN代码示例:class DoubleConv(nn.Module): def __init__(self, in_channels, out_channels): super(DoubleConv, self).__init__() self.conv = nn.Sequential( nn.Conv2d(in_channels, out_channels, 3, 1, 1, b.原创 2021-10-27 11:21:33 · 1681 阅读 · 0 评论 -
【pytorch】实现U-Net网络结构
网络介绍可以参考:UNet网络结构_lianghe77的博客-CSDN博客_unet网络网络结构图代码挺简单的,就不过多解释了,参照网络图即可class DoubleConv(nn.Module): def __init__(self, in_channels, out_channels): super(DoubleConv, self).__init__() self.conv = nn.Sequential( nn.Co.原创 2021-10-27 10:18:03 · 898 阅读 · 0 评论 -
【pytorch】保存模型
参考资料:https://zhuanlan.zhihu.com/p/38056115这两种方法区别在于:一个保存整个网络,一个只保存网络参数只保存网络参数时,要重新加载网络之前,需要重新定义model# 保存整个网络torch.save(net, PATH) # 保存网络中的参数, 速度快,占空间少torch.save(net.state_dict(),PATH)#--------------------------------------------------#针对上面一般的原创 2021-08-23 22:41:20 · 263 阅读 · 0 评论 -
【pytorch】如何使用指定GPU
pytorch 中使用指定GPU的方法有很多,这里只列出两种最常用的方法,一般就足够使用了方法一python代码中指定import osos.environ["CUDA_VISIBLE_DEVICES"] = "2"方法二在终端中设定该程序可见的GPUCUDA_VISIBLE_DEVICES=1,2,3 python my_script.py参考资料:https://www.jianshu.com/p/a014016723d8https://www.cnblogs.原创 2021-07-27 09:42:03 · 1796 阅读 · 0 评论 -
【pytorch】DataLoader 和 Dataset 的使用
加载顺序pytorch中加载数据的顺序是:①创建一个dataset对象②创建一个dataloader对象③循环调用dataloader对象,获取data,label数据拿到模型中去训练Dataset你需要自己定义一个class继承父类Dataset,其中至少需要重写以下3个函数:①__init__:传入数据,或者加载数据②__len__:返回这个数据集一共有多少个item③__getitem__: 返回一条训练数据,并将其转换成tensor示例代码:class blur(D原创 2021-07-26 22:20:18 · 1047 阅读 · 0 评论