想来这是我博客发的第二篇非技术文章了,6年前开博的时候就给自己立下一条规矩,只谈技术,不谈风月。

一来觉得写那些心情随想、人生感悟什么的,未免有些老气横秋的感觉,二来是觉得写这种文章的人未免总有一些居高临下,假借教诲的感觉,因为文字这种东西,读者在读的时候只能看到文字,无法和作者当庭battle,就算实在看不下去,在留言区battle,作者也可以大可以置之不理,一副我tm经历的比你多,你凭什么质疑我的感觉。

那为什么又要自己打脸,写这篇文章呢。一来是因为最近确实很多读者朋友通过博客园的渠道私信我一些问题,还有直接发到我公司邮箱讨论问题。其中比较多的问题是在问网络安全和机器学习应该看什么书之类的话题。我自己觉得自己也不算什么专业人士,为什么会有朋友问我这个问题呢?洗澡跑步的时候想了一下,大抵是因为大家看我经常在微博里装逼,发一些什么书单推荐什么的,就形成了一种“观察者偏差”。

我这里想对学习、看书、研究这件事发表一些我的一家之言,所谓一家之言,就是不代表客观立场,不带理论证明,仅仅是我自己的观点,如果有不同意见的读者朋友欢迎在留言区battle我,反正我也不会回复。

一、入门时候该怎么读书

每个学科都是一个森林,一头扎进去,肯定一开始是茫然失措的,这时候自然的想法是想要有一个map地图,看看下一步该往哪里走。

笔者自己觉得刚开始接触一个学科的时候,动手的时间最好要大于看书的时间(8:2),这里的动手就是写代码,调试,做demo,这个阶段比较适合阅读一些“xxx从入门到放弃”这类的书籍,能快速给出一个大的road map,建立一些感性认识,没错,就是感性认识,这个阶段不要求理性的推导和理解,感性和图像式的认识能快速建立信心,信心超级重要,能催生出继续往下走的欲望。

几个月后,“xxx天精通xxx”这类书已经不能满足你了,基本上看一眼标题就知道内容要写啥了,这类书可以拿去垫桌子。那接下来怎么办呢?马上拿起“xxx原理深入分析”吗?笔者觉得不是。

当已经对一些套路有了基本的熟悉之后,就要开始养成”提问“的思维模式,所谓的”提问“就是,你看到一篇paper、看到一段代码、遇到一个问题、看到书上某一行话。突然间脑子里蹦出几句话:

  • 这段话对吗?为什么对呢?
  • 作者太tm叼了吧,他怎么就能想出这个想法呢?我也是人,为啥我就想不出呢?
  • 这段话我好像在哪看过啊,和xxx那本书上xx的定理好像说的差不多意思啊,它们之间是啥关系呢?
  • ...

这种想法一旦萌生,就像你在酒吧看到一个美女一个人孤单地坐在吧台边上一样,你会非常地好奇,想深入了解。

接下来的事情就是,你会对这个问题进行分解,例如:

  • 这块理论涉及到哪些书呢?taobao买起来,pdf也买起来
  • 这块理论的历史上有没有前置理论呢?按照时间轴把整个理论脉络都梳理出来,逐个推演

这个过程会非常痛苦,没错,是痛苦,但也快乐着。因为一旦按照理论的前置推导的方式来组织知识,你就发生会发现没有一个知识是独立存在的,朴素贝叶斯那种独立同分布就是扯淡,生活中欧泰少见了,大部分时候,一个知识点会牵扯出另一个知识点,另一个知识点又继续牵扯出另一个知识点,写代码的程序员都知道递归,而知识的这种递归,十几层都是很正常的。

大部分时候,你从一开始提出某个问题,到开始研究,过程中偶尔都会忘记为啥会买到这本书。例如笔者研究NLP的一个具体问题,竟然过程中发现,必须要读香浓的信息论,那是一本厚到可以砸晕你工位旁边同事的大部头书,其中酸甜苦辣和幸福感,只有经历者自己才能体会了。

总结一句话就是:问题驱动的读书,围绕具体的理论和应用问题,展开递归式的研究。

二、怎么平衡最新论文和经典估计的关系

[arvix]每天都会产生出大量的优秀论文,昨天还在大放异彩的BERT,今天就有被Xnet替代的可能,紧跟科技最前沿似乎是一个非常苦难的问题。那怎么办呢?

笔者自己的观点是,不要读最新论文!最多读一读序言或者主要思想!

因为如果将每个人的知识体系看作是一棵树的话,那些发表出的论文都是这棵树长出的果实,果实虽然非常可口,但是其底层的核心还是其树干和树根。是跟和树干是果实背后的支撑和基础。

如果想成为lecun,hinton,不应该去看他们在今天发表的论文,而应该学习其本科、硕士、博士早年的学习和研究过程。

再进一步,我们应该逐渐养成学科体系的思维,从最基础的地方出发,逐步的推导和演进。

那最基础的东西是什么呢?难道是启蒙运动?亚里士多德?伽利略?笔者觉得那倒也不至于,具体什么东西是基础,我觉得这取决于每个人自己的情况。

一个很简单的判断标准就是:如果一篇论文,你可以从最简单的原子公式,一步步推导得到论文里的结论和答案,那这篇论文你可以读,你的基础目前就是够的。反之,如果发现有一些东西看不懂,不知道怎么来的,就要想想到底是缺了什么东西,可能是概率论,可能是泛函分析,可能是集合论,也可能是优化理论。

更进一步地说,笔者认为:”世界不需要第二个hinton,世界需要一个安猪瀚“,学偶像的成果最多只能成为第二个偶像,你自己形成自己的知识体系,通过自己独特的研究习惯和方式,才能开创出属于你自己独特的学派和学术应用成果。

总结一句话就是:多读经典,少百度,少沉迷论文和最新成果。

今天就说这么说了,突然发现,不写技术文章,写吹牛博的文章,还挺舒服的,至少都是真情流露,不用遣词造句。

我和同事一起维护的知乎专栏,https://zhuanlan.zhihu.com/cyber-security-data-science

如果有读者朋友有关于网络安全和数据分析方面的问题想要探讨的话,可以私信我们,我们之后会在知乎发文章进行讨论和回答。

转载于:https://www.cnblogs.com/LittleHann/p/11145523.html

安猪瀚的一家之言:多读书,多看报,少吃零食,多睡觉相关推荐

  1. 多读书多看报...... http://www.it-ebooks.info/

    http://www.it-ebooks.info/ 转载于:https://www.cnblogs.com/guoqiaojin/p/3229534.html

  2. 【Web】多读书多看报

    页面渲染 你不知道的浏览器页面渲染机制 [JS] JavaScript自增.自减运算符 节流和防抖 JS原型和原型链 深入理解Javascript中构造函数和原型对象的区别(转存) [CSS] MDN ...

  3. OSChina 周三乱弹 ——技校重金属跟小清新画风的妹子

    2019独角兽企业重金招聘Python工程师标准>>> @子匠_Zijor:卷珠帘,有古时味道的歌.不是一般的幽怨. 卷珠帘 - 霍尊 手机党少年们想听歌,请使劲儿戳(这里) 夜月明 ...

  4. Django的个人笔记

    django 1.开发环境的搭建 1.安装 pyenv https://github.com/pyenv/pyenv-installercurl -L https://github.com/pyenv ...

  5. 强哥说Java--Java接口,java高级软件工程师试卷

    Java 接口 ====================================================================== 前言 这节也比较抽象,现在先慢慢理解一下即 ...

  6. 强哥说Java--Java接口

    Java接口 Java 接口 前言 目标 1. 概念 2. 为什么需要接口 2.1 接口与类的区别 2.2 接口特性 2.3 抽象类和接口的区别 3. 接口的定义和实现 3.1 定义接口 3.1.1 ...

  7. django -- url映射

    * url映射 * 传递参数   * 应用命令空间   * 默认参数 ## 昨天遇到的问题 * windows 中 用户名 不要写成中文    * 如果说 遇到 mkvirtualenv  worko ...

  8. 我在51CTO微职位学软考——我是mata宇我为自己代言

    雷迪森and砖头们大家好,鄙人是来自系统架构1期的mata宇同学.想必架构群里的同学百分之60的人都跟我聊过天,当然哈,上组数据是据不完全统计的,如果咋俩没聊过,您就看一乐呵就完事了. 可能还有些同学 ...

  9. Alpha课堂展示(麻瓜制造者)

    目录 成员简介 演示动态图 预期用户量 演示动态图 目标用户视频 分工协作 项目管理 质量控制 团队角色与具体贡献 用户反馈 成员简介 刘双玉 http://www.cnblogs.com/liu42 ...

最新文章

  1. 蓝绿部署、金丝雀发布(灰度发布)、AB测试……
  2. 【CVPR 2020】神经网络架构搜索(NAS)论文和代码汇总
  3. 计算机视觉与模式识别(1)—— A4纸边缘提取
  4. mysql和hive的sql语句,hive中使用sql语句需要注意的事项
  5. 【题解】弃疗Nim (2019,5.23)
  6. android webview 抖动,【报bug】关于webview中上下滑动出现抖动的问题
  7. SSH之Hibernate总结篇
  8. android 访问服务器sql_一次服务器被传webshell事件溯源
  9. 【廖雪峰官方网站/Java教程】多线程(1)
  10. html怎么设置整体右对齐,如何在html中右对齐按钮
  11. c语言 组合问题,排列组合问题 C语言
  12. 单模光电转换器怎么接_光纤收发器及其连接方式图解!
  13. C语言实现一个区块链,区块链学习(1) sha256算法 c语言实现-Go语言中文社区
  14. element组件官网
  15. 子串子序列常见算法面试题
  16. 计算机考研就业率,21考研同学需谨慎,三个专业就业率持续走低,包括热门计算机专业...
  17. 自定义一个虚拟机+将自定义的虚拟机创建成模板机+快速创建虚拟机
  18. 【机器学习】线性回归,多元线性回归、自回归及衡量指标
  19. 【fread/fwrite】C语言API之fread/fwrite函数详解
  20. 金字塔(算法竞赛进阶指南)

热门文章

  1. mysql故障应急_Mysql错误:紧急救助!!!
  2. python源码大全-最全Python算法实现资源汇总!
  3. 拜师————python基础入门——守破离学习法,海龟绘图,画出奥运五环图,day3
  4. 如何驯服事件驱动的微服务
  5. Python爬虫分析——B站UP主视频数据分析
  6. 微信小程序轮子 - 调起摄像头拍照并在页面预览(身份证拍照 / 人像拍照等等)
  7. grafana配置仪表盘
  8. python朋友圈教程_Python 生成你的朋友圈九宫格图片
  9. Ubuntu系统安装在移动固态硬盘,实现在不同电脑即插即用
  10. 轻量级 Kubernetes 集群发行版 K3s 完全进阶指南