<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Deep-Learning on 111qqz's blog</title><link>https://111qqz.com/en/categories/deep-learning/</link><description>Recent content in Deep-Learning on 111qqz's blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2015-2026 111qqz</copyright><lastBuildDate>Sun, 17 Dec 2023 18:22:24 +0800</lastBuildDate><atom:link href="https://111qqz.com/en/categories/deep-learning/index.xml" rel="self" type="application/rss+xml"/><item><title>caffe 源码阅读笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-06-30-caffe-source-code-analysis/</link><pubDate>Tue, 30 Jun 2020 19:47:02 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-06-30-caffe-source-code-analysis/</guid><description>&lt;p&gt;caffe做部署是YYDS!&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/01/caffe-source-code-analysis-part1/" target="_blank" rel="noreferrer"&gt;blob&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/01/caffe-source-code-analysis-part2/" target="_blank" rel="noreferrer"&gt;layer&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/01/caffe-source-code-analysis-part3/" target="_blank" rel="noreferrer"&gt;net&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/04/caffe-source-code-analysis-part4/" target="_blank" rel="noreferrer"&gt;激活函数&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/04/caffe-source-code-analysis-part5/" target="_blank" rel="noreferrer"&gt;卷积&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/04/caffe-source-code-analysis-part6/" target="_blank" rel="noreferrer"&gt;reshape&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/04/caffe-source-code-analysis-part7/" target="_blank" rel="noreferrer"&gt;slice&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/04/caffe-source-code-analysis-part8/" target="_blank" rel="noreferrer"&gt;loss function&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/05/caffe-source-code-analysis-part9/" target="_blank" rel="noreferrer"&gt;reduce&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/05/caffe-source-code-analysis-part10/" target="_blank" rel="noreferrer"&gt;eltwise&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://111qqz.github.io/2020/05/caffe-source-code-analysis-part11/" target="_blank" rel="noreferrer"&gt;argmax&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>[施工中] cupy与torch的导入顺序不同对计算结果的影响</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2023-12-17-cupy-torch-import-order-impact/</link><pubDate>Sun, 17 Dec 2023 18:22:24 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2023-12-17-cupy-torch-import-order-impact/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;公司内部的基于torch的toolbox发现某个版本之后,结果发生了偏移. 通过一系列排查,发现当导入cupy和torch的顺序不同时，计算结果会有所差异。
也就是说,如下两段代码会导致模型训练等环节的计算得到不同的结果.&lt;/p&gt;</description></item><item><title>Build Onnxruntime With Bazel</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2023-01-16-build-onnxruntime-with-bazel/</link><pubDate>Mon, 16 Jan 2023 16:28:22 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2023-01-16-build-onnxruntime-with-bazel/</guid><description>&lt;h1 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h1&gt;
&lt;p&gt;需要使用bazel build &lt;a href="https://github.com/microsoft/onnxruntime" target="_blank" rel="noreferrer"&gt;onnxruntime&lt;/a&gt;&lt;/p&gt;</description></item><item><title>[施工中]caffe 源码学习笔记(11) softmax</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2022-08-06-caffe-source-code-analysis_part12/</link><pubDate>Sat, 06 Aug 2022 12:26:03 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2022-08-06-caffe-source-code-analysis_part12/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;2022年惊讶的发现，当时竟然没有写关于softmax的笔记，因此来补充一下。&lt;/p&gt;</description></item><item><title>(CSE 599W)Reverse Mode Autodiff</title><link>https://111qqz.com/en/post/%E5%85%AC%E5%BC%80%E8%AF%BE/2021-04-05-reverse-mode-autodiff/</link><pubDate>Mon, 05 Apr 2021 14:44:25 +0800</pubDate><guid>https://111qqz.com/en/post/%E5%85%AC%E5%BC%80%E8%AF%BE/2021-04-05-reverse-mode-autodiff/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;怎么算微分。。通常有三种方法。&lt;/p&gt;</description></item><item><title>【推荐系统】Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F/2021-01-23-toward-the-next-generation-of-recommendersystems/</link><pubDate>Sat, 23 Jan 2021 17:42:15 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F/2021-01-23-toward-the-next-generation-of-recommendersystems/</guid><description>&lt;p&gt;迫于生计，从今天开始学习推荐系统相关的内容，今天先来读一篇推荐系统领域的综述 &lt;a href="https://ieeexplore.ieee.org/document/1423975" target="_blank" rel="noreferrer"&gt;Toward the next generation of recommender systems: a survey of the state-of-the-art and possible extensions&lt;/a&gt;&lt;/p&gt;</description></item><item><title>【施工中】torch2trt　学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2020-09-18-torch2trt-notes/</link><pubDate>Fri, 18 Sep 2020 11:02:50 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2020-09-18-torch2trt-notes/</guid><description>&lt;h2 class="relative group"&gt;前言
 &lt;div id="前言" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e5%89%8d%e8%a8%80" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;偶然发现了 &lt;a href="https://github.com/NVIDIA-AI-IOT/torch2trt" target="_blank" rel="noreferrer"&gt;torch2trt&lt;/a&gt; 的模型转换方案，思路是直接将pytorch op映射到TensorRT的python api. 在pytorch进行每个op　forward的时候，tensorrt也相应往network上添加op.
这里会先涉及torch2trt的使用，后面会补充这个转换工具的代码学习&lt;/p&gt;</description></item><item><title>Jetson Nano踩坑记录</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2020-09-08-play-with-jetson-nano/</link><pubDate>Tue, 08 Sep 2020 14:41:34 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2020-09-08-play-with-jetson-nano/</guid><description>&lt;h2 class="relative group"&gt;写在前面
 &lt;div id="写在前面" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e5%86%99%e5%9c%a8%e5%89%8d%e9%9d%a2" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;主要是需要在jetson nano做模型转换，来记录下踩的坑
目前有两条路径，一条是我们现有的转换路径，也就是pytorch-&amp;gt;onnx(-&amp;gt;caffe)-&amp;gt;trt的路径
在这条路径上踩了比较多的坑，最终暂时放弃，最直接的原因是&lt;strong&gt;cudnn8.0升级接口发生改动，编译caffe遇到较多问题&lt;/strong&gt;
这里其实仍然采用了两条平行的路径，一条是直接在nano上构建环境，另外一种是基于docker(包括构建交叉编译环境用于加快编译速度)&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(11) argmax layer</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-05-06-caffe-source-code-analysis_part11/</link><pubDate>Wed, 06 May 2020 21:26:03 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-05-06-caffe-source-code-analysis_part11/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;似乎没什么背景,继续看caffe代码&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(10) eltwise layer</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-05-03-caffe-source-code-analysis_part10/</link><pubDate>Sun, 03 May 2020 17:53:22 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-05-03-caffe-source-code-analysis_part10/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;这个layer和reduce layer有一些相似,就干脆一起看了.
作用是输入至少两个blob,然后对每个blob中的元素所一些运算,最后得到一个blob.&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(9) reduce layer</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-05-03-caffe-source-code-analysis_part9/</link><pubDate>Sun, 03 May 2020 15:16:53 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-05-03-caffe-source-code-analysis_part9/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;其实没什么背景,继续啃caffe代码而已2333&lt;/p&gt;</description></item><item><title>Focal Loss for Dense Object Detection(RetinaNet) 学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2020-05-02-retinanet-notes/</link><pubDate>Sat, 02 May 2020 18:50:06 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2020-05-02-retinanet-notes/</guid><description>&lt;p&gt;先写个简略版的笔记..看之后的情况要不要读得更精细一点..&lt;/p&gt;

&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;two stage的检测比one stage的检测效果好,原因是啥?&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(8) loss function</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-18-caffe-source-code-analysis_part8/</link><pubDate>Sat, 18 Apr 2020 18:33:29 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-18-caffe-source-code-analysis_part8/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;虽然不太care 训练的过程，&lt;del&gt;但是由于容易看懂的layer都看得差不多了&lt;/del&gt; 所以打算看一下这些loss function.&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(7) slice layer</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-13-caffe-source-code-analysis_part7/</link><pubDate>Mon, 13 Apr 2020 21:22:54 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-13-caffe-source-code-analysis_part7/</guid><description>&lt;h2 class="relative group"&gt;背景　
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;ocr组那边有个shuffle net 的网络,里面有个pytorch op叫chunk,转成的onnx对应的op是 &lt;a href="https://github.com/onnx/onnx/blob/master/docs/Operators.md#Split" target="_blank" rel="noreferrer"&gt;split&lt;/a&gt;&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(6) reshape layer</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-09-caffe-source-code-analysis_part6/</link><pubDate>Thu, 09 Apr 2020 21:03:06 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-09-caffe-source-code-analysis_part6/</guid><description>&lt;h2 class="relative group"&gt;背景　
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;最近在魔改 tensorRT 的caffe parser
之前caffe模型转到trt模型时，有一个修改是需要将reshape　layer的param末尾补1,比较繁琐，于是看了下caffe的reshape layer的实现．&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(5) 卷积</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-08-caffe-source-code-analysis_part5/</link><pubDate>Wed, 08 Apr 2020 20:29:37 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-08-caffe-source-code-analysis_part5/</guid><description>&lt;h2 class="relative group"&gt;caffe中卷积运算的实现
 &lt;div id="caffe中卷积运算的实现" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#caffe%e4%b8%ad%e5%8d%b7%e7%a7%af%e8%bf%90%e7%ae%97%e7%9a%84%e5%ae%9e%e7%8e%b0" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;暴力实现的卷积大概是这样子的&lt;/p&gt;</description></item><item><title>tensorrt INT8 量化debug记录（cuda error 700）</title><link>https://111qqz.com/en/post/%E5%B7%A5%E7%A8%8B/cuda/2020-04-08-cuda-error-700-when-using-tensorrt-calibration/</link><pubDate>Wed, 08 Apr 2020 14:58:16 +0800</pubDate><guid>https://111qqz.com/en/post/%E5%B7%A5%E7%A8%8B/cuda/2020-04-08-cuda-error-700-when-using-tensorrt-calibration/</guid><description>&lt;p&gt;背景是要把某个caffe model,转换成tensorrt的INT8 模型。 然后遇到如下报错:&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(4) 激活函数</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-07-caffe-source-code-analysis_part4/</link><pubDate>Tue, 07 Apr 2020 23:21:40 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-04-07-caffe-source-code-analysis_part4/</guid><description>&lt;p&gt;在看过caffe代码的三个核心部分,blob,layer,net之后，陷入了不知道以什么顺序继续看的困境。&lt;/p&gt;</description></item><item><title>Faster Rcnn 目标检测算法</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2020-04-05-faster-rcnn/</link><pubDate>Sun, 05 Apr 2020 20:38:28 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2020-04-05-faster-rcnn/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;2019年对了好几次faster rcnn，第一次是赛事之窗项目和北京的同事，对齐sdk和训练的实现。
第二次是被tensorRT4和tensorRT5之间默认参数不一致的问题坑了一下。
第三次是被caffe proto中roi align 的默认参数坑了。&lt;/p&gt;</description></item><item><title>resnet 学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2020-04-05-resnet-notes/</link><pubDate>Sun, 05 Apr 2020 16:49:44 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2020-04-05-resnet-notes/</guid><description>&lt;h2 class="relative group"&gt;背景
 &lt;div id="背景" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e8%83%8c%e6%99%af" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;基于Conv的方法在某年的ImageNet比赛上又重新被人想起之后，大家发现网络堆叠得越深，似乎在cv的各个任务上表现的越好。&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(3) Net</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-01-12-caffe-source-code-analysis_part3/</link><pubDate>Sun, 12 Jan 2020 19:18:15 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-01-12-caffe-source-code-analysis_part3/</guid><description>&lt;h2 class="relative group"&gt;Net 基本介绍
 &lt;div id="net-基本介绍" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#net-%e5%9f%ba%e6%9c%ac%e4%bb%8b%e7%bb%8d" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;网络通过组成和自微分共同定义一个函数及其梯度。&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(2) Layer</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-01-11-caffe-source-code-analysis_part2/</link><pubDate>Sat, 11 Jan 2020 17:47:05 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-01-11-caffe-source-code-analysis_part2/</guid><description>&lt;h2 class="relative group"&gt;layer 整体介绍
 &lt;div id="layer-整体介绍" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#layer-%e6%95%b4%e4%bd%93%e4%bb%8b%e7%bb%8d" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;layer是模型计算的基本单元
类似于pytorch或者其他深度学习框架的op
layer中的数据流向为,输入若干个blob，称之为&amp;quot;bottom blob&amp;quot;,然后经过layer的计算，输出若干个blob,称之为&amp;quot;top blob&amp;quot;&lt;/p&gt;</description></item><item><title>caffe 源码学习笔记(1) Blob</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-01-10-caffe-source-code-analysis-part1/</link><pubDate>Fri, 10 Jan 2020 11:24:23 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/caffe-notes/2020-01-10-caffe-source-code-analysis-part1/</guid><description>&lt;p&gt;迫于生计，开始看caffe代码。
会侧重于分析inference部分。&lt;/p&gt;</description></item><item><title>记一次faster-rcnn debug记录</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-12-13-debug-faster-rcnn-once-again/</link><pubDate>Fri, 13 Dec 2019 16:32:14 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-12-13-debug-faster-rcnn-once-again/</guid><description>&lt;h2 class="relative group"&gt;问题描述
 &lt;div id="问题描述" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e9%97%ae%e9%a2%98%e6%8f%8f%e8%bf%b0" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;一年debug 三次faster rcnn,每次都有新感觉（不&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>FPN:Feature Pyramid Networks 学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-12-08-feature-pyramid-networks/</link><pubDate>Sun, 08 Dec 2019 17:30:50 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-12-08-feature-pyramid-networks/</guid><description>&lt;p&gt;检测不同尺度的物体一直是计算机视觉领域中比较有挑战性的事情．我们先从之前的工作出发，并对比FPN比起之前的工作有哪些改进．&lt;/p&gt;</description></item><item><title>SSD: Single Shot MultiBox Detector 学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-12-08-single-shot-detector/</link><pubDate>Sun, 08 Dec 2019 15:00:15 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-12-08-single-shot-detector/</guid><description>&lt;h2 class="relative group"&gt;概述
 &lt;div id="概述" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e6%a6%82%e8%bf%b0" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;SSD是一种单阶段目标检测算法．所谓单阶段，是指只使用了一个deep neural network,而不是像faster-rcnn这种两阶段网络．
为什么有了faster-rcnn还要使用SSD? 最主要是慢&amp;hellip;
两阶段网络虽然准确率高，但是在嵌入式等算力不足的设备上做inference速度非常感人，很难达到real time的要求．
（实际业务上也是这样，公有云上的检测模型几乎都是faster-rcnn,而到了一些盒子之类的硬件设备，检测模型就全是SSD等single stage 模型了)&lt;/p&gt;</description></item><item><title>rankboost 算法学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E5%85%B6%E4%BB%96/2019-11-26-boosting-algorithm/</link><pubDate>Tue, 26 Nov 2019 20:59:04 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E5%85%B6%E4%BB%96/2019-11-26-boosting-algorithm/</guid><description>&lt;h2 class="relative group"&gt;boosting 算法是什么．
 &lt;div id="boosting-算法是什么" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#boosting-%e7%ae%97%e6%b3%95%e6%98%af%e4%bb%80%e4%b9%88" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;机缘使然，接触到了 Boosting 算法．Boosting是一种通过组合弱学习器来产生强学习器的通用且有效的方法.&lt;/p&gt;</description></item><item><title>Kubernetes(k8s)在深度学习模型转换方面的探索</title><link>https://111qqz.com/en/post/%E5%B7%A5%E7%A8%8B/%E5%AE%B9%E5%99%A8/2019-11-22-use-k8s-for-model-conversion/</link><pubDate>Fri, 22 Nov 2019 11:14:19 +0800</pubDate><guid>https://111qqz.com/en/post/%E5%B7%A5%E7%A8%8B/%E5%AE%B9%E5%99%A8/2019-11-22-use-k8s-for-model-conversion/</guid><description>&lt;p&gt;年中的时候接了离职的同事模型转换的锅，在不断地更新迭代的过程中，发现了一些痛点。
发现k8s能够解决一部分痛点，因此来分享一下在这方面的探索。&lt;/p&gt;</description></item><item><title>faster rcnn 模型 tensorrt4与tensorrt5 结果不一致 踩坑记录</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-11-07-debug-frcnn-model-when-upgrading-from-tensorrt4-to-tensorrt5/</link><pubDate>Thu, 07 Nov 2019 23:40:39 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-11-07-debug-frcnn-model-when-upgrading-from-tensorrt4-to-tensorrt5/</guid><description>&lt;p&gt;最近有同事report给我们,用同一个模型转换工具,转同一个faster rcnn 模型, 同样的sdk代码,在有些显卡上结果正常,但是再比较新的显卡上(比如Titan V)上 结果完全不正确.&lt;/p&gt;</description></item><item><title>Anchor Box Algorithm</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-07-01-anchor-box-algorithm/</link><pubDate>Mon, 01 Jul 2019 19:53:24 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-07-01-anchor-box-algorithm/</guid><description>&lt;h2 class="relative group"&gt;动机
 &lt;div id="动机" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e5%8a%a8%e6%9c%ba" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;将一张图分成多个grid cell进行检测之后,每个cell只能检测到一个object.
如果这个grid cell中不止有一个物体要怎么办呢? 因此提出了anchor box algorithm来解决这个问题.&lt;/p&gt;</description></item><item><title>目标检测领域的滑动窗口算法</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-06-30-sliding-windows/</link><pubDate>Sun, 30 Jun 2019 16:55:40 +0800</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2019-06-30-sliding-windows/</guid><description>&lt;p&gt;对象检测（Object Detection）的目的是”识别对象并给出其在图中的确切位置”，其内容可解构为三部分：&lt;/p&gt;</description></item><item><title>caffe2 添加自定义operater</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-04-13-add-custom-operation-in-caffe2/</link><pubDate>Fri, 13 Apr 2018 03:08:19 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-04-13-add-custom-operation-in-caffe2/</guid><description>&lt;p&gt;记录一些一个没有之前没有接触过caffe/caffe2的人为了添加自定义的op 到caffe2需要做的工作.&lt;/p&gt;</description></item><item><title>非极大值抑制（Non-Maximum Suppression，NMS）</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-03-16-non-maximum-suppression/</link><pubDate>Fri, 16 Mar 2018 02:56:14 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-03-16-non-maximum-suppression/</guid><description>&lt;p&gt;NMS是为了在诸多CV任务如边缘检测，目标检测等，找到&lt;strong&gt;局部最大值&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>reid 相关任务记录</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-24-reid-task-notes/</link><pubDate>Sat, 24 Feb 2018 04:34:02 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-24-reid-task-notes/</guid><description>&lt;p&gt;被师兄（同事？）普及了一番实验规范orz&amp;hellip;&lt;/p&gt;
&lt;p&gt;我还是太年轻了&lt;/p&gt;</description></item><item><title>分类评价指标之Cumulative Match Characteristi (CMC)曲线</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-23-cumulative-match-characteristi/</link><pubDate>Fri, 23 Feb 2018 08:20:55 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-23-cumulative-match-characteristi/</guid><description>&lt;p&gt;CMC曲线全称是Cumulative Match Characteristic (CMC) curve，也就是累积匹配曲线，同ROC曲线Receiver Operating Characteristic (ROC) curve一样，是模式识别系统，如人脸，指纹，虹膜等的重要评价指标，尤其是在生物特征识别系统中，一般同ROC曲线（ &lt;a href="https://111qqz.com/en/post/%E5%B7%A5%E7%A8%8B/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/2021-08-21-ska-flat-hash-map-notes/" &gt;多标签图像分类任务的评价方法-mean average precision(mAP) 以及top x的评价方法&lt;/a&gt;）一起给出，能够综合评价出算法的好坏。&lt;/p&gt;</description></item><item><title>pytorch 函数笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2018-02-23-pytorch-function-notes/</link><pubDate>Fri, 23 Feb 2018 02:55:25 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2018-02-23-pytorch-function-notes/</guid><description>&lt;p&gt;记录一些常用的&amp;hellip;总去查文档也是有点麻烦&lt;/p&gt;
&lt;pre&gt;&lt;code&gt; * 
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 class="relative group"&gt;tensor.view 的作用是reshape 比如 a = torch.range(1, 16) 得到一个tensor  that has 16 elements from 1 to 16. 在a=a.view(4,4)就得到了一个4&lt;em&gt;4的tensor。 需要注意reshape之后元素的个数不能改变(16==4&lt;/em&gt;4)  参数-1的作用是，我懒得算这一维度应该是多少,（由于元素个数不能改变）所以希望自动被计算。**需要注意的是，只有一个维度可以写-1。 **不过view和reshape有些区别：&lt;em&gt;reshape always copies memory. view never copies memory&lt;/em&gt;
 &lt;div id="tensorview-的作用是reshape-比如a--torchrange1-16-得到一个tensor-that-has-16-elements-from-1-to-16-在aaview44就得到了一个44的tensor-需要注意reshape之后元素的个数不能改变1644-参数-1的作用是我懒得算这一维度应该是多少由于元素个数不能改变所以希望自动被计算需要注意的是只有一个维度可以写-1不过view和reshape有些区别reshape-always-copies-memory-view-never-copies-memory" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#tensorview-%e7%9a%84%e4%bd%9c%e7%94%a8%e6%98%afreshape-%e6%af%94%e5%a6%82a--torchrange1-16-%e5%be%97%e5%88%b0%e4%b8%80%e4%b8%aatensor-that-has-16-elements-from-1-to-16-%e5%9c%a8aaview44%e5%b0%b1%e5%be%97%e5%88%b0%e4%ba%86%e4%b8%80%e4%b8%aa44%e7%9a%84tensor-%e9%9c%80%e8%a6%81%e6%b3%a8%e6%84%8freshape%e4%b9%8b%e5%90%8e%e5%85%83%e7%b4%a0%e7%9a%84%e4%b8%aa%e6%95%b0%e4%b8%8d%e8%83%bd%e6%94%b9%e5%8f%981644-%e5%8f%82%e6%95%b0-1%e7%9a%84%e4%bd%9c%e7%94%a8%e6%98%af%e6%88%91%e6%87%92%e5%be%97%e7%ae%97%e8%bf%99%e4%b8%80%e7%bb%b4%e5%ba%a6%e5%ba%94%e8%af%a5%e6%98%af%e5%a4%9a%e5%b0%91%e7%94%b1%e4%ba%8e%e5%85%83%e7%b4%a0%e4%b8%aa%e6%95%b0%e4%b8%8d%e8%83%bd%e6%94%b9%e5%8f%98%e6%89%80%e4%bb%a5%e5%b8%8c%e6%9c%9b%e8%87%aa%e5%8a%a8%e8%a2%ab%e8%ae%a1%e7%ae%97%e9%9c%80%e8%a6%81%e6%b3%a8%e6%84%8f%e7%9a%84%e6%98%af%e5%8f%aa%e6%9c%89%e4%b8%80%e4%b8%aa%e7%bb%b4%e5%ba%a6%e5%8f%af%e4%bb%a5%e5%86%99-1%e4%b8%8d%e8%bf%87view%e5%92%8creshape%e6%9c%89%e4%ba%9b%e5%8c%ba%e5%88%abreshape-always-copies-memory-view-never-copies-memory" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt; * 
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 class="relative group"&gt;torch.squeeze  将输入张量形状中的&lt;code&gt;1&lt;/code&gt; 去除并返回。 如果输入是形如(A×1×B×1×C×1×D)，那么输出形状就为： (A×B×C×D)当给定&lt;code&gt;dim&lt;/code&gt;时，那么挤压操作只在给定维度上。例如，输入形状为: (A×1×B), &lt;code&gt;squeeze(input, 0)&lt;/code&gt; 将会保持张量不变，只有用 &lt;code&gt;squeeze(input, 1)&lt;/code&gt;，形状会变成 (A×B)。注意： 返回张量与输入张量共享内存，所以改变其中一个的内容会改变另一个。
 &lt;div id="torchsqueeze将输入张量形状中的1去除并返回-如果输入是形如a1b1c1d那么输出形状就为abcd当给定dim时那么挤压操作只在给定维度上例如输入形状为a1bsqueezeinput-0将会保持张量不变只有用squeezeinput-1形状会变成ab注意-返回张量与输入张量共享内存所以改变其中一个的内容会改变另一个" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#torchsqueeze%e5%b0%86%e8%be%93%e5%85%a5%e5%bc%a0%e9%87%8f%e5%bd%a2%e7%8a%b6%e4%b8%ad%e7%9a%841%e5%8e%bb%e9%99%a4%e5%b9%b6%e8%bf%94%e5%9b%9e-%e5%a6%82%e6%9e%9c%e8%be%93%e5%85%a5%e6%98%af%e5%bd%a2%e5%a6%82a1b1c1d%e9%82%a3%e4%b9%88%e8%be%93%e5%87%ba%e5%bd%a2%e7%8a%b6%e5%b0%b1%e4%b8%baabcd%e5%bd%93%e7%bb%99%e5%ae%9adim%e6%97%b6%e9%82%a3%e4%b9%88%e6%8c%a4%e5%8e%8b%e6%93%8d%e4%bd%9c%e5%8f%aa%e5%9c%a8%e7%bb%99%e5%ae%9a%e7%bb%b4%e5%ba%a6%e4%b8%8a%e4%be%8b%e5%a6%82%e8%be%93%e5%85%a5%e5%bd%a2%e7%8a%b6%e4%b8%baa1bsqueezeinput-0%e5%b0%86%e4%bc%9a%e4%bf%9d%e6%8c%81%e5%bc%a0%e9%87%8f%e4%b8%8d%e5%8f%98%e5%8f%aa%e6%9c%89%e7%94%a8squeezeinput-1%e5%bd%a2%e7%8a%b6%e4%bc%9a%e5%8f%98%e6%88%90ab%e6%b3%a8%e6%84%8f-%e8%bf%94%e5%9b%9e%e5%bc%a0%e9%87%8f%e4%b8%8e%e8%be%93%e5%85%a5%e5%bc%a0%e9%87%8f%e5%85%b1%e4%ba%ab%e5%86%85%e5%ad%98%e6%89%80%e4%bb%a5%e6%94%b9%e5%8f%98%e5%85%b6%e4%b8%ad%e4%b8%80%e4%b8%aa%e7%9a%84%e5%86%85%e5%ae%b9%e4%bc%9a%e6%94%b9%e5%8f%98%e5%8f%a6%e4%b8%80%e4%b8%aa" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt; * 
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 class="relative group"&gt;torch.unsqueeze  返回一个新的张量，对输入的制定位置插入维度 1 注意： 返回张量与输入张量共享内存，所以改变其中一个的内容会改变另一个。如果&lt;code&gt;dim&lt;/code&gt;为负，则将会被转化dim+input.dim()+1
 &lt;div id="torchunsqueeze返回一个新的张量对输入的制定位置插入维度-1-注意-返回张量与输入张量共享内存所以改变其中一个的内容会改变另一个如果dim为负则将会被转化diminputdim1" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#torchunsqueeze%e8%bf%94%e5%9b%9e%e4%b8%80%e4%b8%aa%e6%96%b0%e7%9a%84%e5%bc%a0%e9%87%8f%e5%af%b9%e8%be%93%e5%85%a5%e7%9a%84%e5%88%b6%e5%ae%9a%e4%bd%8d%e7%bd%ae%e6%8f%92%e5%85%a5%e7%bb%b4%e5%ba%a6-1-%e6%b3%a8%e6%84%8f-%e8%bf%94%e5%9b%9e%e5%bc%a0%e9%87%8f%e4%b8%8e%e8%be%93%e5%85%a5%e5%bc%a0%e9%87%8f%e5%85%b1%e4%ba%ab%e5%86%85%e5%ad%98%e6%89%80%e4%bb%a5%e6%94%b9%e5%8f%98%e5%85%b6%e4%b8%ad%e4%b8%80%e4%b8%aa%e7%9a%84%e5%86%85%e5%ae%b9%e4%bc%9a%e6%94%b9%e5%8f%98%e5%8f%a6%e4%b8%80%e4%b8%aa%e5%a6%82%e6%9e%9cdim%e4%b8%ba%e8%b4%9f%e5%88%99%e5%b0%86%e4%bc%9a%e8%a2%ab%e8%bd%ac%e5%8c%96diminputdim1" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;torch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Tensor&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;torch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;unsqueeze&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;torch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;FloatTensor&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;size&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="n"&gt;x4&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;torch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;unsqueeze&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;x&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="mi"&gt;2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="mi"&gt;3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="mi"&gt;4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;torch&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;FloatTensor&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;size&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="n"&gt;x1&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 class="relative group"&gt;tensor.expand(&lt;em&gt;size)   扩展tensor.可以保持维度数目不变，每一维度的size增加(比如A&lt;/em&gt;B变到C*D,其中C&amp;gt;=A,D&amp;gt;=B).-1参数表示某一个维度的size不发生改变  . 有可以扩展tensor到更多的维度，新增加的维度会默认放在最前面，并且不能以-1作为参数。
 &lt;div id="tensorexpandsize-扩展tensor可以保持维度数目不变每一维度的size增加比如ab变到cd其中cadb-1参数表示某一个维度的size不发生改变--有可以扩展tensor到更多的维度新增加的维度会默认放在最前面并且不能以-1作为参数" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#tensorexpandsize-%e6%89%a9%e5%b1%95tensor%e5%8f%af%e4%bb%a5%e4%bf%9d%e6%8c%81%e7%bb%b4%e5%ba%a6%e6%95%b0%e7%9b%ae%e4%b8%8d%e5%8f%98%e6%af%8f%e4%b8%80%e7%bb%b4%e5%ba%a6%e7%9a%84size%e5%a2%9e%e5%8a%a0%e6%af%94%e5%a6%82ab%e5%8f%98%e5%88%b0cd%e5%85%b6%e4%b8%adcadb-1%e5%8f%82%e6%95%b0%e8%a1%a8%e7%a4%ba%e6%9f%90%e4%b8%80%e4%b8%aa%e7%bb%b4%e5%ba%a6%e7%9a%84size%e4%b8%8d%e5%8f%91%e7%94%9f%e6%94%b9%e5%8f%98--%e6%9c%89%e5%8f%af%e4%bb%a5%e6%89%a9%e5%b1%95tensor%e5%88%b0%e6%9b%b4%e5%a4%9a%e7%9a%84%e7%bb%b4%e5%ba%a6%e6%96%b0%e5%a2%9e%e5%8a%a0%e7%9a%84%e7%bb%b4%e5%ba%a6%e4%bc%9a%e9%bb%98%e8%ae%a4%e6%94%be%e5%9c%a8%e6%9c%80%e5%89%8d%e9%9d%a2%e5%b9%b6%e4%b8%94%e4%b8%8d%e8%83%bd%e4%bb%a5-1%e4%bd%9c%e4%b8%ba%e5%8f%82%e6%95%b0" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt; * 
&lt;/code&gt;&lt;/pre&gt;

&lt;h3 class="relative group"&gt;&lt;strong&gt;tensor.contiguous  将一个tensor变成连续的。（一些ops如expand/expand_as会让tensor 不连续）&lt;/strong&gt;
 &lt;div id="tensorcontiguous-将一个tensor变成连续的一些ops如expandexpand_" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#tensorcontiguous-%e5%b0%86%e4%b8%80%e4%b8%aatensor%e5%8f%98%e6%88%90%e8%bf%9e%e7%bb%ad%e7%9a%84%e4%b8%80%e4%ba%9bops%e5%a6%82expandexpand_" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;</description></item><item><title>光流法初探</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-22-optical-flow-notes/</link><pubDate>Thu, 22 Feb 2018 09:03:48 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-22-optical-flow-notes/</guid><description>&lt;p&gt;算是CV领域的传统算法了&lt;/p&gt;
&lt;p&gt;只写两句话就够了。&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;它是空间运动物体在观察成像平面上的像素运动的瞬时速度，是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系，从而计算出相邻帧之间物体的运动信息的一种方法。&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>end-to-end 神经网络</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-22-end-to-end-neural-network/</link><pubDate>Thu, 22 Feb 2018 02:53:01 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-22-end-to-end-neural-network/</guid><description>&lt;p&gt;所谓end-to-end 神经网络，更多是一种思想。&lt;/p&gt;
&lt;p&gt;这种思想的核心是，比如对于图像处理，输入原始图像数据，输出的是直接有用的结果（有用取决于具体的任务，比如自动驾驶)&lt;/p&gt;</description></item><item><title>Pose-driven Deep Convolutional Model for Person Re-identification 阅读笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-22-pose-driven-deep-convolutional-model-for-person-re-identification/</link><pubDate>Thu, 22 Feb 2018 02:25:00 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-22-pose-driven-deep-convolutional-model-for-person-re-identification/</guid><description>&lt;p&gt;&lt;a href="https://arxiv.org/abs/1709.08325" target="_blank" rel="noreferrer"&gt;1709.08325&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Reid问题指的是判断一个probe person 是否在被不同的camera捕获的gallery person 中出现。&lt;/p&gt;</description></item><item><title>Deep Mutual Learning（相互学习） 阅读笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-18-deep-mutual-learning-notes/</link><pubDate>Sun, 18 Feb 2018 10:46:35 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-18-deep-mutual-learning-notes/</guid><description>&lt;p&gt;&lt;a href="https://arxiv.org/abs/1706.00384" target="_blank" rel="noreferrer"&gt;原始论文&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;DNN在很多问题上效果很不错，但是由于深度和宽度过大，导致需要的执行时间和内存过大。我们需要讨论一些能快速执行并且对内存的需要不大的模型。&lt;/p&gt;</description></item><item><title>Similarity learning 和Metric learning</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-18-similarity-learning-metric-learning/</link><pubDate>Sun, 18 Feb 2018 08:14:10 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-18-similarity-learning-metric-learning/</guid><description>&lt;h2 class="relative group"&gt;&lt;a href="https://en.wikipedia.org/wiki/Similarity_learning" target="_blank" rel="noreferrer"&gt;Similarity_learning&lt;/a&gt;
 &lt;div id="similarity_" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#similarity_" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;p&gt;相似性学习（Similarity learning ）有监督机器学习，它与回归和分类密切相关，但目标是从实例中学习一个相似函数，&lt;strong&gt;以衡量两个对象的相似程度或相关程度。&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>persion reid 论文列表</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-17-persion-reid-paper-list/</link><pubDate>Sat, 17 Feb 2018 07:17:49 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-17-persion-reid-paper-list/</guid><description>&lt;p&gt;Key:&lt;/p&gt;
&lt;p&gt;(1). Pose-driven, body part alignment, combine whole feature and body part feature, focus on alignment of part model,&lt;/p&gt;
&lt;p&gt;(2). Combine image label and human attributes classes, do classification with attributes and identity learning&lt;/p&gt;</description></item><item><title>推荐系统之 LFM (Latent Factor Model) 隐因子模型 学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F/2018-02-09-latent-factor-model-notes/</link><pubDate>Fri, 09 Feb 2018 13:02:06 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F/2018-02-09-latent-factor-model-notes/</guid><description>&lt;p&gt;起因是被assgin了一个新的任务&amp;hellip;..要死.&lt;/p&gt;
&lt;p&gt;参考资料:&lt;/p&gt;</description></item><item><title>多标签图像分类任务的评价方法-mean average precision(mAP) 以及top x的评价方法</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-09-mean-average-precision-for-multi-label-classification-task/</link><pubDate>Fri, 09 Feb 2018 03:53:09 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-09-mean-average-precision-for-multi-label-classification-task/</guid><description>&lt;p&gt;参考资料:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blog.sina.com.cn/s/blog_9db078090102whzw.html" target="_blank" rel="noreferrer"&gt;多标签图像分类任务的评价方法-mAP&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Sensitivity_and_specificity" target="_blank" rel="noreferrer"&gt;wiki_Sensitivity and specificity&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blog.sciencenet.cn/blog-605185-617068.html" target="_blank" rel="noreferrer"&gt;False Positives和False Negative等含义&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Non-local Neural Networks 阅读笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-05-non-local-neural-networks-notes/</link><pubDate>Mon, 05 Feb 2018 02:24:34 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-02-05-non-local-neural-networks-notes/</guid><description>&lt;p&gt;先粗略读了2遍orz.可能不够严谨，先写一些high-level的理解。&lt;/p&gt;</description></item><item><title>non-local means algorithm 学习笔记</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-01-25-non-local-means-algorithm-notes/</link><pubDate>Thu, 25 Jan 2018 02:53:52 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/2018-01-25-non-local-means-algorithm-notes/</guid><description>&lt;p&gt;终于忙完学校的事情可以干正事了orz&lt;/p&gt;
&lt;p&gt;这里会记录一些第一遍看paper的过程中遇到的一些影响理解的概念，不过大多不会深究，只算做粗浅的理解。&lt;/p&gt;</description></item><item><title>PCA + kmeans</title><link>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2017-11-26-pca-kmeans/</link><pubDate>Sun, 26 Nov 2017 11:05:50 +0000</pubDate><guid>https://111qqz.com/en/post/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/2017-11-26-pca-kmeans/</guid><description>&lt;h3 class="relative group"&gt;先记录一下PCA实战需要用到的安装包(arch下,python2环境)
 &lt;div id="先记录一下pca实战需要用到的安装包arch下python2环境" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#%e5%85%88%e8%ae%b0%e5%bd%95%e4%b8%80%e4%b8%8bpca%e5%ae%9e%e6%88%98%e9%9c%80%e8%a6%81%e7%94%a8%e5%88%b0%e7%9a%84%e5%ae%89%e8%a3%85%e5%8c%85arch%e4%b8%8bpython2%e7%8e%af%e5%a2%83" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;

&lt;h3 class="relative group"&gt;&lt;a href="https://www.archlinux.org/packages/community/x86_64/python-scikit-learn/" target="_blank" rel="noreferrer"&gt;python2-scikit-learn&lt;/a&gt;
 &lt;div id="python2-scikit-learn" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#python2-scikit-learn" aria-label="Anchor"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h3&gt;
&lt;p&gt;python2-numpy&lt;/p&gt;</description></item><item><title>反向传播学习笔记</title><link>https://111qqz.com/en/post/acm-icpc/2017/2017-09-05-back-propagation-notes/</link><pubDate>Tue, 05 Sep 2017 12:30:17 +0000</pubDate><guid>https://111qqz.com/en/post/acm-icpc/2017/2017-09-05-back-propagation-notes/</guid><description>&lt;p&gt;先说下自己目前很笼统的理解：&lt;/p&gt;
&lt;p&gt;反向传播是用来快速计算梯度的一种方法；&lt;/p&gt;</description></item><item><title>tensorflow input pipline 学习笔记</title><link>https://111qqz.com/en/post/acm-icpc/2017/2017-08-24-tensorflow-input-pipline-notes/</link><pubDate>Thu, 24 Aug 2017 09:12:58 +0000</pubDate><guid>https://111qqz.com/en/post/acm-icpc/2017/2017-08-24-tensorflow-input-pipline-notes/</guid><description>&lt;p&gt;参考资料：&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.tensorflow.org/api_guides/python/reading_data" target="_blank" rel="noreferrer"&gt;tf_doc_Reading data&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://ischlag.github.io/2016/06/19/tensorflow-input-pipeline-example/" target="_blank" rel="noreferrer"&gt;TENSORFLOW INPUT PIPELINE EXAMPLE&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://shartoo.github.io/tensorflow-inputpipeline/" target="_blank" rel="noreferrer"&gt;tensorflow：理解tensorflow中的输入管道&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;第二个参考资料是第一个的翻译版本，翻译的水平一般，建议看原文，不是很长。&lt;/p&gt;</description></item><item><title>tensorflow 合并模型</title><link>https://111qqz.com/en/post/acm-icpc/2017/2017-08-21-tensorflow-model-merging/</link><pubDate>Mon, 21 Aug 2017 06:56:22 +0000</pubDate><guid>https://111qqz.com/en/post/acm-icpc/2017/2017-08-21-tensorflow-model-merging/</guid><description>&lt;p&gt;在这里存个备份，还有些问题没有解决。&lt;/p&gt;
&lt;p&gt;raise ValueError(&amp;ldquo;GraphDef cannot be larger than 2GB.&amp;rdquo;)&lt;/p&gt;
&lt;p&gt;记录一些思路好了。现在是没有生成.meta文件，爆掉应该是因为所有的变量都加载到了默认图里。&lt;/p&gt;</description></item></channel></rss>