目录一.🦁HashMap介绍1.1特点1.2底层实现二.🦁结构以及对应方法分析2.1结构组成2.1.1成员变量2.1.2存储元素的节点类型2.1.2.1链表Node类2.1.2.2树节点类2.1.2.3继承关系2.2方法实现2.2.1HashMap的数组初始化2.2.2计算hash值2.2.3添加元素put(Kkey,Vvalue)方法2.2.4数组扩容三.🦁总结一.🦁HashMap介绍1.1特点HashMap是Map接口的接口实现类,它采用哈希算法实现,是Map接口最常用的实现类。由于底层采用了哈希表存储数据,所以要求键不能重复,如果发生重复,新的值会替换旧的值。HashMap在查找、删除、
目录一.🦁HashMap介绍1.1特点1.2底层实现二.🦁结构以及对应方法分析2.1结构组成2.1.1成员变量2.1.2存储元素的节点类型2.1.2.1链表Node类2.1.2.2树节点类2.1.2.3继承关系2.2方法实现2.2.1HashMap的数组初始化2.2.2计算hash值2.2.3添加元素put(Kkey,Vvalue)方法2.2.4数组扩容三.🦁总结一.🦁HashMap介绍1.1特点HashMap是Map接口的接口实现类,它采用哈希算法实现,是Map接口最常用的实现类。由于底层采用了哈希表存储数据,所以要求键不能重复,如果发生重复,新的值会替换旧的值。HashMap在查找、删除、
一、前言由于之前工作中,训练数据集普遍较小以及开发板对模型的限制,所以对SE模块的使用较少,对它的插入位置不是很清楚,这样不利于日后对它的使用。故最近查了下使用案例,记录总结如下。二、正文(一)plain模型SE作者对SE模块在plain模型插入位置的建议是:在每个卷积的激活函数后面插入。这样一看会误以为在每个卷积层后面加个SE模块,一般是在每个block后面插入,下面结合实际的案例来做说明。1.SE-Inception模型2.PP-LCNet模型由上面两张图可见,SE模块在plain模型的插入位置,一般在上个block的结尾下一个block之前的位置插入。(二)skipconnection模
一、前言由于之前工作中,训练数据集普遍较小以及开发板对模型的限制,所以对SE模块的使用较少,对它的插入位置不是很清楚,这样不利于日后对它的使用。故最近查了下使用案例,记录总结如下。二、正文(一)plain模型SE作者对SE模块在plain模型插入位置的建议是:在每个卷积的激活函数后面插入。这样一看会误以为在每个卷积层后面加个SE模块,一般是在每个block后面插入,下面结合实际的案例来做说明。1.SE-Inception模型2.PP-LCNet模型由上面两张图可见,SE模块在plain模型的插入位置,一般在上个block的结尾下一个block之前的位置插入。(二)skipconnection模
Java 基础一【注释】------comment-------对代码进行解释说明1.Java规范的注释有3种单行注释://多行注释:/**/文档注释(java特有)2.单行注释和多行注释的作用:对所写的程序进行解释说明,增强可读性。方便自己,方便别人。可以调试所写的代码3.特点单行注释和多行注释,注释了的内容不参与编译。编译以后生成的字节码文件(.class)中不包含注释掉的信息。4.文档注释的使用:/***//**@author:@version:*/特点:注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的说明文档。5.【多行注释使用时的注意点】多行注释不可以
Java 基础一【注释】------comment-------对代码进行解释说明1.Java规范的注释有3种单行注释://多行注释:/**/文档注释(java特有)2.单行注释和多行注释的作用:对所写的程序进行解释说明,增强可读性。方便自己,方便别人。可以调试所写的代码3.特点单行注释和多行注释,注释了的内容不参与编译。编译以后生成的字节码文件(.class)中不包含注释掉的信息。4.文档注释的使用:/***//**@author:@version:*/特点:注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的说明文档。5.【多行注释使用时的注意点】多行注释不可以
§基础知识一、程序组织与运行原理1.1程序组织一个JAVA程序文件中主要由如下几部分构成:package声明public类:public类与类文件名相同,因为其是作为该类文件唯一对外接口,所以需要唯一代表该类文件。main方法一个带有包结构的.java文件以如下结构组织package....//具有包结构时才需要声明,且声明必须放在第一行import....//当使用了其他包的类时需要声明publicclassNameOfClass{publicstaticvoidmain(String[]args){//主方法体}}在JAVA中,万物皆对象,所以每个*.java文件都是由一个类构成,我喜欢将
§基础知识一、程序组织与运行原理1.1程序组织一个JAVA程序文件中主要由如下几部分构成:package声明public类:public类与类文件名相同,因为其是作为该类文件唯一对外接口,所以需要唯一代表该类文件。main方法一个带有包结构的.java文件以如下结构组织package....//具有包结构时才需要声明,且声明必须放在第一行import....//当使用了其他包的类时需要声明publicclassNameOfClass{publicstaticvoidmain(String[]args){//主方法体}}在JAVA中,万物皆对象,所以每个*.java文件都是由一个类构成,我喜欢将
SENet-通道注意力笔记简介意义目的:主要操作算法流程图过程第一步、第二步、第三步、第四步、SE模块的结构图实现代码最后简介SENet是2017年ImageNet比赛的冠军,2018年CVPR引用量第一。论文链接:SENet意义较早的将attention引入到CNN中,模块化化设计。目的:SE模块的目的是想通过一个权重矩阵,从通道域的角度赋予图像不同位置不同的权重,得到更重要的特征信息。主要操作SE模块的主要操作:挤压(Squeeze)、激励(Excitation)算法流程图通过一系列操作得到一个1∗1∗C1*1*C1∗1∗C的权重矩阵,对原特征进行重构(不同颜色表示不同的数值,用来衡量通道
SENet-通道注意力笔记简介意义目的:主要操作算法流程图过程第一步、第二步、第三步、第四步、SE模块的结构图实现代码最后简介SENet是2017年ImageNet比赛的冠军,2018年CVPR引用量第一。论文链接:SENet意义较早的将attention引入到CNN中,模块化化设计。目的:SE模块的目的是想通过一个权重矩阵,从通道域的角度赋予图像不同位置不同的权重,得到更重要的特征信息。主要操作SE模块的主要操作:挤压(Squeeze)、激励(Excitation)算法流程图通过一系列操作得到一个1∗1∗C1*1*C1∗1∗C的权重矩阵,对原特征进行重构(不同颜色表示不同的数值,用来衡量通道