悬铃木

wechat: echo "aGJzdW43MTA0NjcyNzIK" | base64 -d


  • 主页

  • 分类

  • 归档

  • 标签

  • 排行榜

  • 搜索

MAC_APP_share

发表于 2020-04-29 | | 阅读次数:
  1. 胡萝卜周
  2. Adobe相关

MS_Word Kkill

发表于 2020-04-28 | | 阅读次数:
  1. 页眉

  2. 表格

learn learngitbranching

发表于 2020-04-14 | | 阅读次数:

学习learngitbranching的一些记录。都是关于git分支的操作。我整理的目录和原网站不同,主要是因为这个笔记是作为备忘录。

阅读全文 »

read Code Complete

发表于 2020-03-06 | | 阅读次数:
  1. 一定要检查函数返回的错误码
  2. 使用宏定义断言,给出详细报错信息

    1
    2
    3
    4
    5
    6
    #define HBASSERT(condition, message){                        \
    if(!(condition)){ \
    std::cerr <<__FILE__ <<" | at line "<<__LINE__<< " | Assertion failed | " << #condition << " | " <<message <<std::endl;\
    exit(EXIT_FAILURE); \
    } \
    }
  3. 断言分为前断言和后断言

  4. 在编写程序之前先构建测试用例,感觉更为保险、节约时间。
  5. 大对象用引用,小对象用值。P574
  6. 进行性能测试的时候,应该使用CPU时间,而不是代码运行时间。P604
  7. 循环嵌套时,循环次数多的放在内层。 P623

重新学一遍Makefile

发表于 2020-03-02 | | 阅读次数:
  1. 链接

  2. % 的意思是匹配零或若干字符

  3. -$(subst output,,$@) 中的 $ 表示执行一个Makefile的函数,函数名为subst, 后面的为参数。这里的这个函数是替换字符串的意思。
  4. $@ 表示目标的 集合,就像一个数组, $@ 依次取出目标,并执于命令。
  5. $< 表示第一个依赖文件,或表示了所有依赖目标的挨个值
  6. $(filter %.o,$(files)) 表示调用Makefile的filter函数,过滤“$files”集,只要其中模式 为“%.o”的内容。
  7. 大多数的C/C++编译器都支持一个“-M”的选项,即自动找寻源文件中 包含的头文件,并生成一个依赖关系。这样一来,你就不必再手动书写若干文件的依赖关系,而由编译器自动生成了。需要提醒一句的是,如果你使用GNU的C/C++编译器,你得用 -MM 参数,不然, -M 参数会把一些标准库的头文件也包含进来。
  8. GNU组织建议把编译器为每一个源文件的自动生成的依赖关系放到一个文件中,为每一 个 name.c 的文件都生成一个 name.d 的Makefile文件, .d 文件中就存放对应 .c 文件的依赖关系。
  9. $$$$ 意为一个随机编号
  10. $(sources:.c=.d) 中的 .c=.d 的意思是做一个替换,把变量 $(sources) 所有 .c 的字串都替换成 .d
  11. @ 字符在命令行前,那么, 这个命令将不被make显示出来
  12. 如果make执行时,带入make参数 -n 或 –just-print ,那么其只是显示命令,但不会执行 命令,这个功能很有利于我们调试我们的Makefile,看看我们书写的命令是执行起来是什么样子的或是什么 顺序的。而make参数 -s 或 –silent 或 –quiet 则是全面禁止命令的显示。
  13. 如果你要让上一条命令的结果应用在下一条命令时,你应该使用分号分隔这两条命令。
  14. 忽略命令的出错,我们可以在Makefile的命令行前加一个减号 -
  15. 变量在声明时需要给予初值,而在使用时,需要给在变量名前加上 $符号,但最好用小括号 () 或是大括号 {} 把变量给包括起来。如果你要使用真实的 $ 字符,那么你需要用 $$ 来表示。
  16. 还是不要在命令后面直接注释了,注释另起一行比较保险。
  17. ?= 和 :=
  18. 我们可以替换变量中的共有的部分,其格式是 $(var:a=b) 或是 ${var:a=b} ,其意思是, 把变量“var”中所有以“a”字串“结尾”的“a”替换成“b”字串。这里的“结尾”意思是“空格”或是“结束符”。
  19. 因此,如果我们在环境变量中设置了 CFLAGS 环境变量,那么我们就可以在所有的Makefile中使用 这个变量了。这对于我们使用统一的编译参数有比较大的好处。如果Makefile中定义了CFLAGS,那么则会 使用Makefile中的这个变量,如果没有定义则使用系统环境变量的值,一个共性和个性的统一,很像“全局 变量”和“局部变量”的特性。

  20. 检查tab: cat -e -t -v makefile_name

  21. make是在读取Makefile时就计算条件表达式的值,并根据条件表达式的值来选择语句, 所以,你最好不要把自动化变量(如 $@ 等)放入条件表达式中,因为自动化变量是在运行时才有的。
  22. 函数
  23. call 函数在处理参数时,如果第2个及其之后的参数中的空格会被保留,可能造成一些奇怪的效果。因而在向call函数提供参数时,最安全的做法是 去除所有多余的空格。
  24. 自动化变量

kindle资源

发表于 2019-12-30 | | 阅读次数:
  1. EBOOK
  2. epubee

SGC summary

发表于 2019-07-11 | | 阅读次数:

abstract

  1. 分布式框架中两大主要的瓶颈:计算或者通信。
  2. 梯度压缩可以缓解网络瓶颈,并且业内已经有了比较好的针对深度模型训练时的梯度压缩瓶颈(DGC)。
  3. 我们主要关注稀疏场景下的梯度压缩问题:高内存消耗、收敛速度变慢、严重的参数陈旧问题。
  4. 我们分别提出了三个方法来应对以上挑战:1.利用动量近似减少内存消耗;2.利用长期梯度补偿加快收敛;3.利用本地累积量更新缓和参数陈旧问题。
  5. 实验效果:达到了99.9%的压缩率,并且每轮的收敛速度没有变慢。

DGC

  1. momentum correction:避免丢失动量的加速效果。
  2. local gradient clipping(避免梯度爆炸,传统方法是先汇聚后clip,DGC要先clip后汇聚)
  3. momentum factor masking:避免陈旧值,staleness
  4. warm-up training:训练初期梯度变化剧烈,不使用梯度压缩
  5. momentum correction and local gradient clipping用来保证收敛效果;momentum factor masking和warm-up training用来避免陈旧值的影响

SGC

  1. momentum approximation: 使用梯度累积量对动量进行近似,在梯度压缩场景下对动量进行近似,保证了收敛效果。
  2. long-term gradient compensation: 分析了全局动量和局部动量的关系,并提出了两者结合的方案,来加速收敛效果。
  3. local update: 稀疏场景下的梯度压缩,staleness问题更加严重。缓解全局模型和延迟更新不一致的问题。借助Nesterov的方法,先对模型进行更新,后计算梯度,相当于先向前看一步,这样缓解了两者不一致的问题。

LC rank

发表于 2019-06-14 | | 阅读次数:

这个排行榜是我自己使用Java爬虫统计的信息,用来确定刷题的优先级。

第一列是赞同数(vote),第二列是评论数(comment),第三列是查看数(view),最后一列是对应的链接。

本排行榜是按照leetcode中所有discuss的vote进行排序的。

我认为vote越多,题目越经典。

阅读全文 »

Test

发表于 2018-09-28 | | 阅读次数:

Hello World

发表于 2018-09-28 | | 阅读次数:

Welcome to Hexo! This is your first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

hbsun

  1. 使用github备份

  2. hexo-admin 博客后端管理工具

  3. 个性化

More info: Deployment

12…4

Alfred

something

38 日志
1 分类
6 标签
© 2020 Alfred