01 2021 档案

摘要:title: libtorch教程(四) date: 2021 01 18 19:50:16 tags: libtorch 本章将详细介绍如何使用libtorch自带的数据加载模块,使用该模块是实现模型训练的重要条件。除非这个数据加载模块功能不够,不然继承libtorch的数据加载类还是很有必要的, 阅读全文
posted @ 2021-01-27 23:26 AllentBKY 阅读(2658) 评论(0) 推荐(1)
摘要:基本模块搭建 模块化编程的思想非常重要,通过模块化编程可以大幅减少重复的敲代码过程,同时代码可读性也会增加。本章将讲述如何使用libtorch搭建一些MLP和CNN的基本模块。 MLP基本单元 首先是线性层的声明和定义,包括初始化和前向传播函数。代码如下: 在MLP的构造线性层模块类时,我们继承了t 阅读全文
posted @ 2021-01-27 23:23 AllentBKY 阅读(3154) 评论(0) 推荐(0)
摘要:本章讲述张量的常见操作,可以先初步了解,具体在设计损失函数等任务中可以用到。随时翻阅 张量初始化 libtorch(pytorch c++)的大多数api和pytorch保持一致,因此,libtorch中张量的初始化也和pytorch中的类似。本文介绍四种深度图像编程需要的初始化方法。 第一种,固定 阅读全文
posted @ 2021-01-22 20:08 AllentBKY 阅读(5337) 评论(0) 推荐(1)
摘要:前言 本教程旨在教读者如何用c++写模型,训练模型,根据模型预测对象。为便于教学和使用,本文的c++模型均使用libtorch(或者pytorch c++ api)完成搭建和训练等。目前,国内各大平台似乎没有pytorch在c++上api的完整教学,也没有基于c++开发的完整的深度学习开源模型。可能 阅读全文
posted @ 2021-01-22 20:05 AllentBKY 阅读(7424) 评论(0) 推荐(3)
摘要:前言 纯c++用户而言如果要自研产品,会一个图形界面编程工具还是有必要的。大多数c++用户,如果在Windows平台开发则多使用微软全家桶,如果是Linux平台则可能是其他工具再cmake。这篇博客将记录Windows平台,QT Creator中Opencv和Libtorch的配置。网上有较多关于使 阅读全文
posted @ 2021-01-22 20:04 AllentBKY 阅读(7325) 评论(0) 推荐(2)
摘要:前言 在阐述c++中函数传参之前,先说明一下为何写这篇博客。事实上,c++的传参方式的讨论已经很多,但是在解剑指 Offer 27. 二叉树的镜像(Leetcode 226翻转二叉树)时发现三种传参方式自己并没有完全弄清,在以树指针为对象时,就出现错误。 交换两个变量 网上有三种常见的交换变量的方式 阅读全文
posted @ 2021-01-22 20:04 AllentBKY 阅读(520) 评论(0) 推荐(0)
摘要:本人的全部博客中的图片均挂在Github中,如若无法显示,则需要改一些配置,具体操作如下: Windows 打开系统目录C:\Windows\System32\drivers\etc中的hosts文件,文件末尾添加: 或者简便的做法为:打开cmd 输入ipconfig /flushdns即可 Mac 阅读全文
posted @ 2021-01-16 17:33 AllentBKY 阅读(340) 评论(0) 推荐(0)
摘要:L1和L2是指范数,分别为1范数和2范数。 损失 L1损失 MAE(Mean absolute error)损失就是L1损失,目标值$\boldsymbol{y}$,目标函数$f(\cdot)$,输入值$\boldsymbol{x}$,则: $$ \begin{aligned} L_1 &= \|f 阅读全文
posted @ 2021-01-13 21:54 AllentBKY 阅读(1504) 评论(0) 推荐(0)
摘要:NMS的numpy写法 简单易懂的NMS的numpy写法 目标检测中的NMS,输入:boxes形如N 5,N个(x1,y1,x2,y2,score), thresh阈值为float型。 计算时,首先获取基于分数的降序排序order,计算全部box的面积area,对每个得分最高的boxes[i],计算 阅读全文
posted @ 2021-01-13 21:50 AllentBKY 阅读(865) 评论(0) 推荐(1)