自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 收藏
  • 关注

原创 [c++]-C++中的四种cast强制类型转换

1.简介为什么需要四类cast强制类型转换?因为C的强制转换表面上看起来功能强大,但是C的本身类型没有那么的安全,在强制转换时不会进行类型安全检查,所以可能会出错。2.四类转换C++中四种类型转换是:static_cast, dynamic_cast, const_cast, reinterpret_cast2.1. const_cast主要有三种使用的情况。指针,引用和this指针,以及const转换为非const类型。int n = 5;int *k1 = const_cast<

2021-09-03 16:22:07 1050 1

原创 [c++]-STL中map迭代auto与迭代器iterato的区别以及为什么map迭代输出顺序与存储顺序相反

1.问题引出今天在做 剑指 Offer 50. 第一个只出现一次的字符 时发现一个奇怪的现象,想要找到第一个只出现一次的字符时,一直输出的为d,好像map的遍历与存储顺序相反,由此实验了auto,iterator,发现为同样的问题。2.结论先给出结论无序图中的存储与插入顺序相反,类似于栈,先进后出。假设我们有一个无需图std::unordered_map<char,int> map我们对其进行插入操作std::unordered_map<char,int> map;ma

2021-07-19 10:20:23 3165

原创 [c++]-cmake简易教程及常用配置及常用命令整理

阅读导引1.cmake简介2.cmake语法3.构建方式4.CMAKE_EXPORT_COMPILE_COMMANDS选项5.CMake命令5.1 cmake_minimum_required 命令5.2 project 命令5.3 set命令5.4 message命令5.5 find_package命令5.6 include_directories命令5.7 add_executable命令5.8 add_library命令5.9 target_link_libraries 命令6.补充1.cmake

2021-07-05 19:27:41 1389 4

原创 [c++]-c++中的左值和右值、左值引用和右值引用、万能引用和引用折叠及完美转发

1.左值和右值1.1左值和右值定义在c++中,左值是一个指向内存的东西,换句话来讲,左值有地址,保存在内存中,右值则为不指向任何地方东西,即不在内存中占有确定位置。一般来说,右值是暂时和短暂的,而左值则存活的很久。如下例子int var = 4;4 = var; //error(var + 10) = 4; //error其中,赋值运算符要求一个lvalue作为它的左操作数,当然var是一个左值,因为它是一个占确定内存空间的对象。常量4和表达式var+1都不是lvalue(它们是rval

2021-07-05 14:36:32 832 4

原创 [linux]-挂载硬盘后umoun卸载失败,提示umount: /mnt/usb: target is busy.

问题描述linux系统下卸载硬盘或者u盘时,进行umount指令,提示umount: /mnt/usb: target is busy问题原因通常是该挂在硬盘/u盘正在被其他进程/用户占用(甚至可能是终端),需要将所占用的进程释放。解决使用fuser命令# 1.安装yum install psmisc # 2.查看正在占用的进程fuser -mv /mnt/usb得到输出 USER PID ACCESS COMMAND/mn

2021-07-02 16:51:07 2570

原创 [环境管理]-anaconda环境的导出与导入,保存为列表

需求服务器被攻击了,维护集群升级并重装。需要保存当前特殊用户下的conda环境,以便后续更加方便的移植。导出环境步骤1.查看环境conda info -e如下2.进入想要导出的环境source activate primal2# 创建一个保存环境的文件夹mkdir primal2# 进入文件夹cd primal2由于我们的环境中含有conda包以及pip 安装的包,所以需要分两步导出3.开始导出conda包# 注意是当前环境,所以一定要进入该环境conda env ex

2021-07-01 18:07:20 2955

原创 [debug]-在centos7中挂载文件系统格式为ntfs,提示unknown filesystem type ‘ntfs’解决方案

问题描述将硬盘插在centos7服务器上,执行指令 mount /dev/sdd1 /mnt/usb 即挂载时发生错误。错误提示为 mount: unknown filesystem type ‘ntfs’ 错误原因这是由于CentOS7 上无 法识别NTFS格式的分区。解决缺啥补啥,装个支持ntfs的依赖即可,依次执行链接失效的话,补充个地址 提取 c823wget http://tuxera.com/opensource/ntfs-3g_ntfsprogs-2013.1.13.tg

2021-07-01 17:06:34 2414

原创 [debug]-vim编写g++编译出现报错/usr/bin/ld: cannot open output file test: Is a directory,collect2: error: ld

错误背景采用vim编写了一段代码保存文件为test.cc利用g++执行简单编译,编译指令如下g++ test.cc -o test错误类型提示cheng@zs:~$ g++ test.cc -o test/usr/bin/ld: cannot open output file test: Is a directorycollect2: error: ld returned 1 exit status错误原因想要输出的可执行文件与当前目录下存在重名文件。即test.cc输出为test所在

2021-07-01 10:37:07 985

原创 [数据分析]-python利用matplotlib库实现坐标以10的幂次方均匀分布、坐标以指定值均匀分布并在指定位置添加图例

需求介绍在很多时候我们进行数据分析时,我们想要1.让x轴刻度以指定值真实显示,同时又不改变坐标之间的距离。2.让y轴刻度以10的幂次放真实显示,同时又不改变坐标轴之间的距离。3.可以添加图例子,并且可以修改图例大小。如下图所示。可以看到的是,对于y坐标轴刻度显示为10的*次方,且对应的值为真是值;对于x坐标轴刻度以[4,16,64,128]均匀显示,且不影图中点的真实值;对于图例其显示在绘制图像的左上方,且自定义设置了显示;功能实现1.显示为10的*次方# 设置y轴刻度,使其

2021-06-24 19:49:50 7687 3

原创 [图像处理]-Opencv中的medianBlur(中值滤波)、boxFilter(方框滤波)、GaussianBlur(高斯滤波)函数详解附C++版本代码

阅读指引1.medianBlur(中值滤波)2.boxFilter(方框滤波)3.GaussianBlur(高斯滤波)1.medianBlur(中值滤波)基本思想是用像素点邻域灰度值的中值来代替该像素点的灰度值,主要是利用中值不受分布序列极大值和极小值影响的特点,让周围的像素值接近真实的值从而消除孤立的噪声点。中值(又称中位数)是指将统计总体当中的各个变量值按大小顺序排列起来,形成一个数列,处于变量数列中间位置的变量值就称为中位数。对于图像处理来说,非常适用去除于在不要求图像细节下的椒盐噪声以及脉

2021-06-24 14:29:01 4384 2

原创 [图像处理]-Opencv中数据类型CV_8U, CV_16U, CV_16S, CV_32F 以及 CV_64F是什么?

1.宏定义首先来说CV_8U, CV_16U, CV_16S, CV_32F 以及 CV_64F,都是opencv定义的数据类型。具体定义如下#define CV_8S 1#define CV_16U 2#define CV_16S 3#define CV_32S 4#define CV_32F 5#define CV_64F 6#define CV_16F 7#define CV_8UC1 CV_MAKETYPE(CV_8U,1)#define CV_8UC2 CV_

2021-06-24 12:08:35 39665 4

原创 [c++]-constexpr与const区别

1.const部分const 是constant的缩写,本意是不变的,不易改变的意思。const 在C++中是用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。1.1const修饰普通类型的变量const int a = 7; int b = a; //it's righta = 8; // it's wrong,a被定义为一个常量,并且可以将a赋值给b,但是不能给a再次赋值。对一个常量赋值是违法的事情,因为a被编译器认为是一个常量,其值不允许修改。如下例子#

2021-06-23 15:35:56 695

原创 [c++]-uint8_t,uint16_t,uint32_t,uint64_t代表含义及其标准定义

c++基础数据类型首先来看一张c++基础数据类型的列表下表显示了各种变量类型在内存中存储值时需要占用的内存,以及该类型的变量所能存储的最大值和最小值。注意:不同系统会有所差异,一字节为 8 位。注意:long int 8 个字节,int 都是 4 个字节,早期的 C 编译器定义了 long int 占用 4 个字节,int 占用 2 个字节,新版的 C/C++ 标准兼容了早期的这一设定。详解:菜鸟教程-c++数据类型总的来说c++的基础数据类型分为三类:布尔型整型(char型从本质上说,

2021-06-23 10:49:17 28805 1

原创 [c++]-unordered_map用法及成员方法

创建C++ unordered_map容器的方法1)通过调用 unordered_map 模板类的默认构造函数,可以创建空的 unordered_map 容器。比如:std::unordered_map<std::string, std::string> umap;由此,就创建好了一个可存储 <string,string> 类型键值对的 unordered_map 容器。2) 当然,在创建 unordered_map 容器的同时,可以完成初始化操作。比如:std::uno

2021-06-08 20:29:05 4999

原创 [工具]-git创建本地分支并修改后push到远程仓库,删除本地、远程分支、修改远程默认分支

背景介绍想要从本地新建一个分支,并提交到远程仓库,同时想要对远程仓库中的一些老旧分支进行删除。1.创建本地分支并提交到远程仓库1.1初始化并链接到远程仓库如果进行过不必重复git init //初始化,如果进行过不必重复git remote add origin url //链接到远程仓库,此处url填写自己的仓库url地址,如果进行过不必重复1.2创建新的分支git branch newBranch_A // 本地创建新的分支 newBranch_Agit branch -a //

2021-06-02 14:06:35 542 1

转载 [C++]-leetcode231-2的幂-bitset用法详解

简介C++的 bitset 在 bitset 头文件中,它是一种类似数组的结构,它的每一个元素只能是0或1,每个元素仅用1bit空间。头文件#include<bitset>构造函数bitset<4> bitset1;  //无参构造,长度为4,默认每一位为0bitset<8> bitset2(12);  //长度为8,二进制保存整数12,前面用0补充string s = "100101";bitset<10> bitset3(s);  

2021-06-01 10:21:08 173

原创 [目标检测]-NMS系列-cvpr2019-Adaptive NMS 原理详解

1.资源Adaptive NMS: Refining Pedestrian Detection in a Crowd2.简介Adaptive NMS的研究者认为这在物体之间有严重遮挡时可能带来不好的结果。我们期望当物体分布稀疏时,NMS大可选用小阈值以剔除更多冗余框;而在物体分布密集时,NMS选用大阈值,以获得更高的召回。既然如此,该文提出了密度预测模块,来学习一个框的密度。就是想要去自适应的调整NMS时的阈值,使得待检测目标不密集时,用较小的NMS阈值杀掉其他的bbox,待检测目标密集呢(出

2021-05-31 19:59:54 2328 5

原创 [计算机视觉]-MSE、MEA、L1、L2、smooth L1解释及优缺点

MAE损失函数MAE=∑i=1n∣yi−yip1∣nM A E=\frac{\sum_{i=1}^{n} \mid y_{i}-y_{i}^{p_{1}} \mid}{n}MAE=n∑i=1n​∣yi​−yip1​​∣​以分类问题举例。对于上式中,yiy_{i}yi​代表真实值,yipy_{i}^{p}yip​代表预测值。下面是一个MAE函数的图,其中真实目标值为100,预测值在-10,000至10,000之间。预测值(X轴)= 100时,MSE损失(Y轴)达到其最小值。损失范围为0至∞。优点

2021-05-31 14:26:15 6102 1

原创 [debug]-ubuntu下opencv无法读取视频且capture.isOpened()测试一直为false

简介问题描述:c++版本采用tar包编译安装的opencv无法正常利用VideoCapture capture()打开视频,利用capture.isOpened()测试一直为false20200526解决的bug非复制粘贴。请先检查视频路径是否正确,请尽量使用绝对路径注意,代码为c++版的opencv,系统为unbuntu20.04,opencv安装方式为采取tar包然后编译安装代码例子如下#include <opencv2/opencv.hpp>using namespace

2021-05-26 18:45:27 2933 1

原创 [debug]-cv::Exception报错-c++版本opencv

简介cmake .. && make成功后,执行可执行文件报错bug内容terminate called after throwing an instance of 'cv::Exception' what(): OpenCV(3.4.10) /home/cheng/somelib/opencv-3.4.10/modules/highgui/src/window.cpp:658: error: (-2:Unspecified error) The function i

2021-05-25 20:15:25 579

原创 [c++]-完全卸载tar包编译安装的c++版本opencv

简介近期更新,卸载的opencv版本为3.4.10,非无脑复制粘贴帖,方法未失效。注意我这个方法是卸载采用官网下载tar包,然后一步步编译的安装的这样的方式安装的opencv1.查看opencv版本pkg-config --modversion opencvoutput3.4.102.卸载找到当初安装opencv建立的build目录,进入目录执行卸载操作cd cd /home/cheng/somelib/opencv-3.4.10/build/sudo make uninstall

2021-05-25 19:57:33 805 1

原创 [c++]-利用chrono标准库实现c++毫秒级精准计时,完成图像推理时间计算,并输出FPS

资源Date and time utilities - C++ Reference简介在计算机视觉中我们可能经常需要计算一次推理的耗时,来得到确定的FPS,查了很多其他方法,尤其是clock()这个方法对于ms级计时来说也太不准了。这些方法都太古老了,有的还要区分电脑是不是win。终于被我找到了c++11中的标准库--chrono,又准又快!不想看罗嗦的介绍的同学可以直接看 1.2中 标黄的例子1.chrono介绍主要包含如下的几部分Clockssystem_clocksteady

2021-05-25 13:27:38 2452 1

原创 [计算机视觉]-从ShuffleNet V2来看,为什么有些FLOPs小的模型在实际推理过程中所花费的时间更长/速度更慢?

惯例资源论文地址1.简介相对于传统卷积方式,目前如分组卷积,空洞卷积,深度可分离卷积等,这些新型的卷积方式可以有效的降低模型的FLOPs,然而在实际设备上,由于各种各样的优化计算操作,导致计算量并不能准确地衡量模型的速度,换言之,相同的FLOPs会有不同的推理速度。具体来说,如在GPU运算的一些操作,底层都是调用cuda算子,而这些算子的操作方式,都是由开发人员优化后的,可能并没有针对具体的如深度可分离卷积进行优化;或在arm架构的cpu上,本质也是调用cpu的算子,可能并无相关优化。2. 四

2021-05-24 15:22:46 3505

原创 [c++]-ubuntu20.04安装c++版本opencv

简介opencv分为两种版本,一种是供python使用的,一种是供c++使用的。1.python常见的使用场景就是我们在各种py文件中常见的 import cv2,我们通常直接使用pip install opencv-python直接安装。2.c++常见的使用场景是包含在头文件中#include <opencv2/xx.xx>,通过cmake编译。资源opencv官方各版本下载地址安装1.下载进入官方下载地址后选择自己合适的版本,选择sources版本下载下载后一般在

2021-05-19 11:35:30 3149 4

原创 [模型压缩/加速]-tensorrt使用简介,tensorrt为什么这么快?为什么可以实现对模型的加速?

资源惯例先放资源1.官方的tensorrt文档2.tensorrt官方主页3.tensorrt支持的操作1.为什么需要模型加速模型加速越来越成为深度学习工程中的刚需了,最近的CVPR和ICLR会议中,模型的压缩和剪枝是受到的关注越来越多。毕竟所有的算法想要产生经济效益一定要考虑落地的情况,可能我们看很多论文提出的方法或者说github公布的代码大多关注精度及python环境下的FPS,但在实际的工程用在考虑精度的同时,速度也是十分重要的,且更多的公司越来越青睐python 训练,C++重写推

2021-05-14 20:57:22 2839

原创 [笔记]--tensorrt及神经网络常用的.wts权重格式解析

介绍.wts是一种可解释性文本对于一个例子 lenet5.wts 来说,这里我们展示他的一部分。10conv1.weight 150 be40ee1b bd20bab8 bdc4bc53 .......conv1.bias 6 bd327058 .......conv2.weight 2400 3c6f2220 3c693090 ......conv2.bias 16 bd183967 bcb1ac8a .......fc1.weight 48000 3c162c20 bd25196a ..

2021-05-11 19:15:30 1725

原创 [模型加速]-从一个简单的例子letnet demo来看我们如何使用tensorRT来实现DL网络加速(附demo代码)

参考大神github地址本项目演示demo地址letnet_trt1.在pytorch中运行letnet5开始之前请确保正确的安装了pytorch依赖1.1 克隆本博客演示代码,并进入letnetPy文件git clone https://github.com/python-faker/csdn_examplecd csdn_example/tensorrtExample/lenetPy1.2 运行lenet5.py文件通过pytorch生成lenet5.pth权重文件,具体的lene

2021-05-11 16:01:46 528 2

原创 [ubuntu]-ubuntu20.04简单两步安装cuda11.0 + tensorrt7.2.1,自动配置cudnn

1.介绍及配置说明只需两步简单配置tensorrt,采用cuda(deb) + trt(deb) 安装方式,无需配置cudnn,会在trt安装过程中自动配置。ubuntu20.04gtx16502.注意trt官网只更新到了支持ubuntu18.04,但是经博主尝试发现ubuntu18.04的版本是可以在ubuntu20.04上应用的。默认大家已经安装了cuda驱动哦。各位可以输入指令nvidia-smi,如果可以得到输出,说明本机有驱动,否则请自行下载驱动。注意cudadriver版本

2021-05-11 11:04:41 2912 1

原创 [计算机视觉]-经典网络inception v1、v2、v3、v4核心工作详解及总结

资源inception v1Going deeper with convolutions:https://arxiv.org/abs/1409.4842BN算法Batch Normalization:https://arxiv.org/pdf/1502.03167.pdfinception v2/v3Rethinking the Inception Architecture for Computer Vision:https://arxiv.org/pdf/1512.00567.pdfince

2021-04-21 13:28:43 4586

原创 [工具]-python利用opencv将视频中多个感兴趣区域分别截取下来,实现一段视频中分别提取不同感兴趣ROI的子视频

简介算是之前一个版本的升级版本,具体原理参考https://blog.csdn.net/ai_faker/article/details/115495422?spm=1001.2014.3001.5501功能介绍输入:一段视频输出:该段视频中我们感兴趣的几个区域例子演示输出保存为使用说明代码运行后会弹出一个窗口界面,我们在这个窗口界面进行子视频输出区域选取1.点击屏幕,第一个点代表着想要输出子区域1的左上角,第二个点代表想要输出子区域1的右下角,两个点确定一个输出子区域2.

2021-04-10 15:58:11 1531 3

原创 [计算机视觉]-EfficientNet论文思路理解及核心工作分析

1.资源论文链接:https://arxiv.org/abs/1905.11946代码链接:https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet第三方实现的PyTorch代码:https://github.com/lukemelas/EfficientNet-PyTorch最近V2也公布了,做完这一期做V22.简介卷积神经网络的性能公认会受到网络规模、输入图像分辨率的影响即,我们固定一个网络的基本

2021-04-08 20:03:29 279

原创 [小工具]-ubuntu使用byzanz工具录制gif图

简介大神写博客的demo都带演示的,不得不说视觉真是太吊了,很多时候一大段文字讲不明白的事,动图辅助后,简单明了!工具主要用byzanz工具来进行gif图制作安装sudo apt-get install byzanzbyzanz-record --help# 查看帮助指令信息我们只关注这几个参数即可-d 动画录制的时间,默认录制10秒-e 动画开始延迟-x 录制区域的起始X坐标-y 录制区域的起始Y坐标-w 录制区域的宽度-y 录制区域的高度获取录制区域信息

2021-04-08 13:04:11 215

原创 [小工具]-python利用opencv将视频中感兴趣的区域提取保存并完成提取区域内变化波动显示

简介通常我们得到了一段视频,可能只需要其中部分区域的内容,其他的可以认为是我们不关注的内容。比如我们做分类识别,需要某种样本,利用了摄像头进行拍摄,但是我们的需要的内容只在视频中的某个固定区域内出现了,我们只想要保存该部分区域内的视频,然后利用脚本完成按帧截取,从而完成数据集的收集。工具应用场景需求:需要的样本目标只会出现在一个固定的视野内。设置:手动指定原视频中我们感兴趣的区域输出:将原视频中我们指定的感兴趣区域截取下来存储为avi视频格式用途:后续可以配合对视频截取图像的脚本来完成样本

2021-04-08 10:32:42 2473 3

原创 [深度学习]-从零开始手把手教你利用pytorch训练VGG16网络实现自定义数据集上的图像分类(含代码及详细注释)

前言本文主要分为两部分:第一部分大致的介绍了VGG原理第二部分详细的介绍了如何用pytorch实现VGG模型训练自己的数据集实现图像分类想只看代码部分的同学,可以直接看第二部分内容一:VGG原理简介1.VGG主要工作2014年的论文,主要工作是证明了增加网络的深度能够在一定程度上影响网络最终的性能。VGG有两种结构,VGG16和VGG19,两者并没有本质上的区别,只是网络深度不一样。论文地址:VGG论文2.VGG主要改进前一代的经典网络为AlexNet,VGG相对于AlexNet最

2021-04-01 15:27:21 9455 14

原创 [小工具]-unbuntu20.04/16.04/18.04安装vncviewer及解决Linux error while loading shared libraries: libX11.so.6

安装1.点击网址,进入VNC viewer下载页面,选择合适deb的包,这里我选择deb ×86下载完成后执行命令进行安装cd Downloadsdpkg -i VNC-Viewer-6.20.529-Linux-x86.deb 等待安装完成后,执行vncvncviewer 成够启动注意个别版本的ubuntu在启动时报错Linux error while loading shared libraries: libX11.so.6只需要执行sudo apt-get instal

2021-03-30 15:35:25 572

原创 [pytorch]-torchvision.transforms.Compose()介绍及相关代码实例理解数据变换

简介torchvision是pytorch的一个图形库,它服务于PyTorch深度学习框架的,主要用来构建计算机视觉模型。torchvision.transforms主要是用于常见的一些图形变换。以下是torchvision的构成:1.torchvision.datasets: 一些加载数据的函数及常用的数据集接口;2.torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet、VGG、ResNet等;3.torchvision.transforms: 常用的图

2021-03-30 15:25:04 4990 1

原创 [pytorch]-语句知识点整理-长期更新

目录1._, predicted = torch.max(outputs.data, 1)理解2.model.train()和model.eval()用法和区别3.with torch.no_grad() 详解4.model.zero_grad() vs optimizer.zero_grad()5. images.to(device)6.DataLoader函数7.parameters requires_grad=False和optimizer优化参数8. x = x.view(x.size(0), -1

2021-03-29 19:06:29 211

原创 [图像处理]-使用python及PIL库对图像分类数据图片进行数据增强扩充

1.简介在一些时候,我们进行分类任务的时候,样本数据太少,这就需要我们对数据集进行数据增强来扩充数据集。常用的方法包含以下几种空间几何变换类翻转裁剪旋转缩放变形平移变换颜色变换类噪声变换类2.脚本以下包含一个python脚本,主要调用了PIL库,来完成对数据集的批量扩充。主要包含三个部分:函数def1-def8:分别对于1中的不同图像增强手段概率执行函数:以某种概率来执行数据增强方法,即设置不同的概率来执行函数def1-函数def8主函数:可以对应更改,读取要增强的

2021-03-25 21:18:23 2452 6

原创 [计算机视觉]-CVPR2021全新Backbone-ReXNet论文解析与涨点思路理解及pytorch实现

1.资源论文:https://arxiv.org/pdf/2007.00992.pdf代码:https://github.com/clovaai/rexnet2.核心贡献个人认为就是做了一堆实验+数学推导,实质性的东西就是提出了三个设计原则2.1 探讨了Representational Bottleneck问题Representational Bottleneck即特征描述的瓶颈就是中间某层对特征在空间维度进行较大比例的压缩(比如使用pooling时或者是降维),导致很多特征丢失。2.2 基

2021-03-23 19:18:38 920 2

原创 [深度学习]-从实例来看神经网络BP算法的优化思路

复习一下BP主要整理了两篇博客,通过一个实际的例子来讲解优化思路,很方便理解BP算法的传播流程。两篇博客见文章末尾1.什么是神经网络神经网络又称为人工神经网络(Artificial Neural Network , ANN),是指一系列受生物学和神经科学启发,而构造的数学模型。下图便是一个简单的神经元模型神经元是形成神经网络的基本单元,如上图示,激活函数决定了该神经元是否有输出值,所以激活函数在此数学模型中至关重要。因其位置的特殊性,需要有以下特点:连续可导函数及其导数尽可能简单,可提高网络

2021-03-23 15:08:39 1779

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除