SunnyZhou-1024
码龄11年
关注
提问 私信
  • 博客:159,971
    问答:5,065
    165,036
    总访问量
  • 64
    原创
  • 528,961
    排名
  • 94
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2014-06-27
博客简介:

SunnyZhou-1024的博客

博客描述:
欲知其所以然
查看详细资料
个人成就
  • 获得168次点赞
  • 内容获得42次评论
  • 获得541次收藏
  • 代码片获得186次分享
创作历程
  • 2篇
    2021年
  • 39篇
    2020年
  • 8篇
    2019年
  • 1篇
    2018年
  • 8篇
    2017年
  • 6篇
    2016年
成就勋章
TA的专栏
  • DL/ML
    10篇
  • 源码
    1篇
  • 工具
    12篇
  • C/C++
    21篇
  • 解决方案
    3篇
  • Chrome插件
    2篇
  • 原理
    6篇
  • CS
  • 文件格式
    1篇
  • Android
    6篇
  • Java
    4篇
  • JavaScript
    6篇
  • python-爬虫
    3篇
  • Linux
    13篇
  • Python
    13篇
创作活动更多

开源数据库 KWDB 社区征文大赛,赢取千元创作基金!

提交参赛作品,有机会冲刺至高2000元的创作基金,快来参与吧!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

看PyTorch源代码的心路历程

1. 起因曾经碰到过别人的模型prelu在内部的推理引擎算出的结果与其在原始框架PyTorch中不一致的情况,虽然理论上大家实现的都是一个算法,但是从参数上看,因为经过了模型转换,中间做了一些调整。为了确定究竟是初始参数传递就出了问题还是在后续传递过程中继续做了更改、亦或者是最终算法实现方面有着细微差别导致最终输出不同,就想着去看一看PyTorch一路下来是怎么做的。但是代码跟着跟着就跟丢了,才会发现,PyTorch真的是一个很复杂的项目,但就像舌尖里面说的,环境越是恶劣,回报越是丰厚。为了以后再想跟踪
原创
发布博客 2021.01.22 ·
1680 阅读 ·
6 点赞 ·
0 评论 ·
6 收藏

CMake笔记:add_custom_command不执行

0x00. 前言在网上看别人做一些手工教程视频,经常能看到这样的评论:脑子:我感觉我会了。手:你行你来。之前一直通过编译脚本去寻找代码入口,感觉我已经懂得CMake的语法了,直到今天寄己要写一个脚本去编译一个工程才发现,事情并不简单:脚本并没有按照我期望的去执行。此工程需要用到Protocol Buffer,因此当代码构建的时候需要使用使用Protocol Buffer编译器去编译.proto文件获得对应的生成文件。理论上,想要达到这个目的,我们只需要在CMakeLists.txt中使用add
原创
发布博客 2021.01.22 ·
3993 阅读 ·
2 点赞 ·
1 评论 ·
4 收藏

Chrom插件开发:入门教程

插件由不相同但是内聚的组件组成,这些组件可以包括多个 后台脚本、多个内容脚本、一个设置页面、多个图形用户界面元素以及其他多种逻辑文件组成。插件组件通过HTML、CSS以及JavaScript这些Web开发技术构建,组件依赖于这些Web开发技术所提供的功能,但却又不必包含其全部功能。本教程会教你创建一个可以任意改变developer.chrome.com网站页面背景颜色的插件,在此插件中会用到许多关键组件,用于讲解每个组件以及展示各个组件之间的关系。就让我们从创建一个保存此插件文件的目录开始此教程。你也可
原创
发布博客 2020.12.14 ·
703 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

TensorFlow Lite源码解析之三(委托)

1. 前言所谓劳心者治人,劳力者治于人(所以“劳力士”又叫“打工人”?)。小农经济下自己什么都干,虽然饿不死,但是生产效率也肯定非常低下;只有让专业的人做专业的事,才能最大限度发挥每个人的价值。同理,对于一个推理引擎而言,完成一次计算,可以有多种选择,从头到尾都让CPU做运算理论上也不是什么问题。但是除了结果正确之外,还有另外一项关键指标:时间!密集计算确实非CPU所长,因此他该做的是协调资源,脏活累活让GPU、DSP这些替他干。一个精诚合作的团队力量是非常强大的。那么,TensorFlow Lite是怎
原创
发布博客 2020.12.12 ·
2241 阅读 ·
3 点赞 ·
4 评论 ·
13 收藏

Chrom插件开发:什么是插件?

插件是一个可以自定义浏览体验的小应用程序。它们可以让用户根据自身需求或者喜好修改Chrome浏览器的功能以及行为。插件以HTML、JavaScript以及CSS等网络技术为基础。插件需满足目的单一的要求,也就是一个插件只解决一个问题,并且应该易于理解。一个插件可以包含多个组件以及多个功能,但这些组件和功能应该服务于同一个目的。用户界面应该尽可能小并且意图明显。它们可以小到仅仅是一个图标,例如下图所示的查收Google Mail的插件;也可以大到重写了整个页面。用户下载安装的插件所包含的文件都被打包在
原创
发布博客 2020.12.11 ·
675 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

TensorFlow Lite源码解析之二(内存管理)

相关阅读TensorFlow Lite源码解析之一1. 前言爱迪生说过,人工智能就是是百分之九十九的数据加上百分之一的算法。毕竟目前人工智能还没有达到T800这种以毁灭人类为己任的终结者级别,归根到底还是一个程序。这么一想,是不是觉得市面上说的AI要统治人类了根本就是危言耸听,对于弱人工智能,我治不住你,难道我的360强力卸载还治不住你?言归正传。很显然,想要了解一个程序,理解它是怎么管理用于存储数据的内存是一个绕不开的话题。想要了解TensorFlow Lite是如何工作的,我们首先要弄清楚它.
原创
发布博客 2020.12.03 ·
1668 阅读 ·
5 点赞 ·
3 评论 ·
9 收藏

TensorFlow Lite源码解析之一

每一个成功的人工智能背后,都有一个摸摸推理的引擎。想知道TFLite是怎么工作的么,戳我了解更多!
原创
发布博客 2020.11.30 ·
1805 阅读 ·
6 点赞 ·
0 评论 ·
12 收藏

为Chrome插件Google Dictionary进行的一次小手术

一步一步教你如何修改Chrome插件
原创
发布博客 2020.11.10 ·
822 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

如何使用Python开发自己的编译器

1. 前言总所周知,编译器是一个将一种语言(源语言)翻译成另一种语言(目标语言)的程序,如果我们只想使用它,我们只需要将它看作一个黑盒子即可不必关心它的实现,如图1所示。但是如果你想发明一种新的语言,你就需要了解它的内部构造了,因为要发明一门新语言,其实你需要做的就是编写一个新的编译器。实际上,编译器将源程序翻译成目标程序的过程可以分为词法分析、语法分析、语义分析以及目标代码生成等多个阶段,如图2所示。通常,我们称词法分析、语法分析、语义分析以及中间代码生成这几个阶段为前端,而代码优化以及目标代码生成
原创
发布博客 2020.10.15 ·
5065 阅读 ·
6 点赞 ·
2 评论 ·
52 收藏

Linux虚拟内存技术初窥

1. 为什么要用虚拟内存总所周知,从做系统的主要作用是对计算机资源的管理以及程序调度,者其中就包括对内存的管理。现在很多的系统都是用虚拟内存技术来对内存的管理,所谓虚拟内存,就是一种让应用程序觉得它拥有一个很大的内存可以使用,例如对于一个64位的操作系统,操作系统会给应用程序制造一种它可以有2^64Bytes那么大的内存可以使用的假象,虽然实际情况可能是这个电脑上只有4G的内存。对于一个多任务操作系统,如果不适用虚拟内存,计算机所拥有的那点内存显然不够分,虽然我们可以选择增加物理内存的方式让程序拥有更多
原创
发布博客 2020.09.24 ·
334 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

FlatBuffers:flatc源码简析

在简单的编译器他也是编译器
原创
发布博客 2020.09.04 ·
1944 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

使用Node.js+React+EUI快速搭建网页应用

别再犹豫了,看一篇文章学三个框架它不香么?
原创
发布博客 2020.08.24 ·
1629 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

RPMsg:协议简介

两台计算机可以通过TCP/IP进行通信,那么同一颗芯片上的两个核心怎么通信呢?
原创
发布博客 2020.07.19 ·
11015 阅读 ·
20 点赞 ·
1 评论 ·
98 收藏

布隆过滤器简介

其实就像老师上课点名,没回答的肯定逃课了;回答的有可能也逃课了。。。。。。
原创
发布博客 2020.07.16 ·
328 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

从《七里香》到GCC as汇编语言

行走江湖,不会点汇编怎么行?
原创
发布博客 2020.05.31 ·
833 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kibana插件开发之环境搭建

教你怎么一步步搭建Kibana插件开发环境
原创
发布博客 2020.05.09 ·
1135 阅读 ·
0 点赞 ·
2 评论 ·
5 收藏

RPC原理与FastRPC实现

你到一家餐厅吃饭,店里有一个服务员为你服务。你点完菜之后,服务员就走进了后厨。但是,服务员并不是直接将你点的菜告诉他们店里的厨师,相反的,他打电话到别的店点了外卖,外卖到了之后他将饭菜重新装盘,然后给你端了上来。但是你是不知道这个细节的,在你看来,这次吃饭和以往的任何一次没有区别,服务员端上的饭菜在哪里做的你是不知道的,你和平常一样点了菜然后菜就上了,你并不需要自己去关心怎么找到外卖电话,怎么将饭菜装盘。你只管点菜和吃,除了可能等的时间比以往略久,没有任何区别。这个栗子中,服务员就扮演着RPC 中代理的角色
原创
发布博客 2020.05.01 ·
5760 阅读 ·
7 点赞 ·
1 评论 ·
24 收藏

一只Python小爬虫的Linux定时任务之旅

戳进来,告诉你怎么在Linux上设置定时任务。
原创
发布博客 2020.04.26 ·
709 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Docker,系统影分身之术

容器化其实就是一种虚拟化技术,与传统虚拟机相比,它有着轻量、独立、可伸缩、可移植以及灵活等特点。容器直接运行于内核之上,多个容器共用系统的内核,直接通过内核获取系统资源,用多少取多少;而虚拟机则通过一个管理程序来获取宿主系统的资源,运行在其上的程序有着自己的内核,就算你跑的是个`Hello World`,它也占用这很大一块资源。拿吃饭打个比方,容器是按点的菜收钱:你点多少菜付多少钱;虚拟机是按人头收钱,只要你人在那,就算你只喝了一口水也照样收你这么多钱。
原创
发布博客 2020.04.24 ·
510 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

使用Github+Markdown搭键自己的笔记本

Github优点显而易见,因为本身已经熟悉了Git的常规操作,上传下载轻而易举。并且由于它核心是Git,可以轻松实现备份,最多写个脚本就好了,毕竟是自己的专业。Github一份、Gitee一份、本地还可以有一份,万一哪天Github真把中国区锁了(毕竟这个魔幻的年份),Gitee还有。如果三份一起丢失,那就是命吧。另外由于它基于Git,文档一路的变迁都有迹可寻,只要修改提交了,就不用担心后续手贱删除了什么东西。是要`.git`这个地基还在,我们就能重建家园。
原创
发布博客 2020.04.19 ·
16301 阅读 ·
25 点赞 ·
9 评论 ·
82 收藏
加载更多