个人学习笔记

时间复杂度

少于 1 分钟阅读

概述 概述 时间复杂度通常用大O符号表示,不考虑低阶项和系数,主要考察算法中元素个数N趋于无穷时的情况。 另外时间复杂度也有最好情况表示Ω,和平均情况表示Θ。大O是最坏情况表示。

SSD网络

4 分钟阅读

概述 概述 目标检测目前主要有种方法: two-stage: R-CNN和Faster R-CNN系列为代表,先生成region proposal(预选框),再经过CNN网络进行分类 one-stage: ssd和yolo为代表,边提取特征边分类 论文地址[2016]:SSD: Single Shot MultiBox Detector

quantization int8

6 分钟阅读

算法 8-bit 与float转换 threshold per-axis 与 per-tensor 算法 8-bit 与float转换 [real_value = (int8_value - zero_point)\times scale] 简写为:r=S(qZ) int8_value的weight范围是[-127, 127],zero_point为0;activations/inputs范围是[-128, 127],zero_point范围是[-128, 127] threshold threshold理解为某个tensor的元素最大值,则: [Y = F(X) \text{(float运算)} => y = f(x) \text{(int8运算)}] 其中 x=X×128thresholdx,Y=y×thresholdy128 per-axis 与 per-tensor per-axis,表示某个维度每一片都有一个scale和zero_point,比如per-channel表示每个channel都有一个scale和zero_point per-tensor,表示整个tensor用一个scale和zero_point

常见算子操作

15 分钟阅读

激活函数 Relu LeakyRelu 激活函数 Relu [f(x) = {x,ifx00,ifx<0

] LeakyRelu [f(x) = {x,ifx0x×negativeslope,ifx<0
]

Numpy

6 分钟阅读

概述 ndarray 概述 Numpy, Numerical Python, 读作Num Pie 导入import numpy as np ndarray N维数据对象,成员: data,内存地址 shape,各个维度大小的元组 dtype,元素类型 size,元素个数 ndim,维度的数量 strides,各个维度步进字节大小的元组 T,ndarray,对象的转置 flags, 各种属性标志 其他

python

9 分钟阅读

执行方式 注释 执行方式 直接执行,python test.py 交互执行,ipython 注释 #!/usr/bin/python3 # 单行注释 print("hello,world") ''' 多行注释 用\实现多行语句,[]{}()中不需要\ ''' a = 1 + 2 + \ 3 + 4 b = ['a','b', 'c','d']

python调试

1 分钟阅读

python调试 方式一:import pdb python调试 方式一:import pdb import pdb pdb.set_trace() #运行到这里会自动暂停

Markdown

6 分钟阅读

特殊符号 Latex公式 希腊字母 关系运算符 集合运算符 对数运算符 三角运算符 微积分运算符 逻辑运算符 戴帽符号 Mermaid绘图 Jekyll-spaceship 特殊符号 上标:2<sup>n</sup>,效果2n 小标:log<sub>n</sub>,效果logn HTML中的特殊符号 Latex公式 来源:Cmd Markdown公式指导手册 希腊字母 对于大写希腊字母与现有字母相同的,直接输入大写字母即可。 输入 显示 输入 显示 输入 显示 输入 显示 \alpha α A A \beta β B B \gamma γ \Gamma Γ \delta δ \Delta Δ \epsilon ϵ E E \zeta ζ Z Z \eta η H H \theta θ \Theta Θ \iota ι I I \kappa κ K K \lambda λ \Lambda Λ \mu μ M M \nu ν N N \xi ξ \Xi Ξ o o O O \pi π \Pi Π \rho ρ P P \sigma σ \Sigma Σ \tau τ T T \upsilon υ \Upsilon Υ \phi ϕ \Phi Φ \chi χ X X \psi ψ \Psi Ψ \omega ω \Omega Ω 关系运算符 输入 显示 输入 显示 输入 显示 输入 显示 \pm ± \times × \div ÷ \mid \nmid \cdot \circ \ast \bigodot \bigotimes \bigoplus \leq \geq \neq \approx \equiv \sum \prod \coprod \backslash 集合运算符 输入 显示 输入 显示 输入 显示 \emptyset \in \notin \subset \supset \subseteq \supseteq \cap \cup \vee \wedge \uplus \top \bot \complement 对数运算符 输入 显示 输入 显示 输入 显示 \log log \lg lg \ln ln 三角运算符 输入 显示 输入 显示 输入 显示 \backsim \cong \angle A A \sin sin \cos cos \tan tan \csc csc \sec sec \cot cot 微积分运算符 输入 显示 输入 显示 输入 显示 \int \iint \iiint \partial \oint \prime \lim lim \infty \nabla 逻辑运算符 输入 显示 输入 显示 输入 显示 \because \therefore \neg ¬ \forall \exists \not\subset \not< \not> \not= 戴帽符号 输入 显示 输入 显示 输入 显示 \hat{xy} ^xy \widehat{xyz} ^xyz \bar{y} ˉy \tilde{xy} ~xy \widetilde{xyz} ~xyz \acute{y} ˊy \breve{y} ˘y \check{y} ˇy \grave{y} ˊy \dot{x} ˙x \ddot{x} ¨x \dddot{x} x Mermaid绘图 Markdown中使用mermaid画流程图 Mermaid Jekyll-spaceship Jekyll-spaceship

CMAKE与Ninja

少于 1 分钟阅读

简介 简介 Ninja原意是忍者,Google在编译chrome项目时本来用make方式,但是非常费时间;于是实现Ninja,取代make,加快编译构建。 Ninja官网:Ninja

Linux Event Tracing

3 分钟阅读

Tracepoints添加 1. 添加头文件 Tracepoints添加 参考 Tracepoints 1. 添加头文件 include/trace/events/sample.h #undef TRACE_SYSTEM #define TRACE_SYSTEM sample #if !defined(_TRACE_SUBSYS_H) || defined(TRACE_HEADER_MULTI_READ) #define _TRACE_SUBSYS_H #include <linux/tracepoint.h> DECLARE_TRACE(sample_event, TP_PROTO(int firstarg, struct task_struct *p), TP_ARGS(firstarg, p)); #endif /* _TRACE_SUBSYS_H */ /* This part must be outside protection */ #include <trace/define_trace.h>

卷积运算

7 分钟阅读

基本概念 基本概念 基本卷积形式如下(NHWC格式): 输入为[1,32,32,3],filter为[10, 5, 5, 3],输出为[1, 28, 28, 10]

tensorflow:添加新OP和新设备

13 分钟阅读

REGISTER_OP,注册一个OP,其实也是声明一个OP REGISTER_KERNEL_BUILDER,注册一个Kernel,其实就是对OP的实现 REGISTER_LOCAL_DEVICE_FACTORY,添加设备工厂