YA

In me the tiger sniffes the rose.

  • 主页
  • 世界之内
  • 世界之外
  • 叶隙随笔
所有文章 友链 关于我

YA

In me the tiger sniffes the rose.

  • 主页
  • 世界之内
  • 世界之外
  • 叶隙随笔

贰 《SICP》笔记:模块化、对象和状态

阅读数:21971次 2018-08-06
字数统计: 3.6k字   |   阅读时长≈ 12分

第三章 模块化、对象和状态

Mεταβάλλον ὰναπαύεταιw
(Even while it changes, it stands still.) —Heraclitus
Plus ça change, plus c’est la même chose. —Alphonse Karr

上一章实际上叙述了基于被模拟结构去设计程序的结构,而这一章将阐释两种不同策略:一种重点在于对象,另一重在于信息流。两种策略将使我们抛弃老的代换模型,转向新的环境模型。同时,因为时间成了最大的问题,所以还会引入并行概念。

赋值和局部状态

局部状态变量

我们以银行账户系统为例,为了实现一个可以实现取钱和存钱的银行账户,我们可以这样设计:
SICP3-0
其中使用了特殊形式set!,其语法是:
(set! )
意即将赋值给这个变量。
以上的程序设计有问题,因为balance是全局变量,任何过程都能访问到balance,所以我们就需要局部变量:
SICP3-0.5
我们可以运用第二章学到的信息传递风格,完善我们的程序:
SICP3-1
这样的设计方法非常精妙,值得再三品味。

赋值的优缺点

到此,我产生了以下疑问:什么叫赋值?
简单地说,赋值就是 set! 操作,动态地改变某一变量索引的值。

接下来我们会看到赋值具有缺陷,但其优点也是显而易见的,在很多问题上,善用赋值会帮助我们加强程序的模块化。下面以rand过程的设计为例:
我们计划通过rand生成一系列符合均匀分布的随机数,
SICP3-2
我们当然可以不用赋值,直接rand-update操作即可,但这会带来很大复杂度,我们以蒙特卡洛仿真为例:
我们知道,6/π^2是随机选取两个整数之间没有公因数子的概率,我们利用这个事实进行大量实验,最后就能得出π的近似值。
具体代码不在这写出,我只讨论需要用到生成随机数的部分。在对大量随机数的选取步骤中,采用赋值方式的rand,我只需要使用两次rand即可,而如果使用rand-uodate,我就需要显式地操作let ((x1 (rand-update x)))和let ((x2 (rand-update x1)))),这将会十分麻烦。

目前我们可能这样总结:运用赋值的方式,将会把哪些原本需要显式操作的过程封装起来,使程序更加模块化。但事实并非如此。

只要不用赋值,以同样参数对同样过程的两次求值,结果一定是相同的,所以可以认为我们在计算函数。就像我们在前两章所做的那样,不用任何赋值的程序设计称为函数式程序设计。

我又产生了这个疑问:let与set!有什么区别?
let是lambda表达式的语法糖,即:(let ((var val) …) exp1 exp2 …),为 ((lambda (var …) exp1 exp2) val …)。一句话,let就是lambda。而set!是赋值操作。

注:在scheme中,类似于set!,结尾加“!”是scheme的一种命名约定,表示改变变量的值。

在赋值下,无法使用代换模型。而代换模型的本质就是,一个符号其实只是一个值的的名字或者说是代号。但赋值则将一个变量变成了储存着可变数值的位置,可以说,变量与数值分离了。

函数式编程的内部是静态的,而命令式编程(即广泛运用赋值的程序设计)则是动态的,一旦将变化引入程序设计,就会混淆很多函数式编程中简洁明了的概念。

在函数式编程中,任何被定义的对象都是一个过程。举个例子,我定义w1、w2为运用函数式程序设计思维设计的银行账户,因为这个银行账户过程内部是静态的,故相当于将这个处理余额的过程传递给w1、w2,所以在本质上,w1和w2是一回事,它们都代表着一个函数,一个过程。

而在命令式编程中,任何被定义的对象都是完全不同的东西。仍然拿银行账户为例,这个银行账户用命令式程序设计思维设计,同样定义w1和w2为两个银行账户,则两者就是截然不同的东西了,w1的操作与w2的无关,两者不能互相替代。

在运用赋值之后,通过等价替换去简化表达式的问题就变得异常复杂,对其推理也变得十分困难。

广泛采用赋值的命令式程序设计不仅会存在解释性困难的问题,还会出现额外的逻辑问题。以求阶乘为例:
这是函数式的风格:
SICP3-3
这是命令式的风格:
SICP3-4

如果我们对两个赋值操作改变顺序,就会出现错误,这个错误显而易见,不多解释。而这种错误绝对不会出现在函数式程序设计中。所以,在命令式程序设计中,需要我们额外思考赋值顺序带来的问题。

在生活中,从物理的角度看,每个独立对象都由数种独立状态组成,我和你有相同的独立状态名称:身高、体重、血压、心率……那么。我们该如何确定两个对象之间的独立性呢?举个例子,假设我们有两只粉笔,而这两只粉笔的所有独立状态参数都是一样的,比如说长度、表面粗糙度、重量等等,那么我们如何去区分这两只粉笔就是两个独立个体,而不是一支粉笔和其在镜子前的投影呢?答案就是改变,我把一支粉笔折了,如果另一只粉笔没有变化,那么就可以确定两支粉笔是独立的。但是,问题又来了,我现在拿出指甲钳剪下自己的一小片指甲,现在的我改变了,而一秒前的我没改变,那按理说我不该是我,或者换句话说,我无法判断我就是我,而赋值和对象的使用,则为程序设计引入了这样的哲学问题。

求值的环境模型

术语:
约束
约束变量(bound variables)
自由变量(free variables)
作用域(scope)
lambda表达式是约束变量的唯一方式,它是唯一能创建名字的东西。Define可以被避免。

两个规则
SICP3-5

环境模型,本质上来说,是由一串由指针连接至父环境的序列。define操作将定义的对象固定在父环境中,这个对象指向形参和一串描述操作过程的代码。举个例子,假设我有以下操作:
SICP3-6
那么他们在环境模型中的表示就为:
SICP3-7
在调用这些过程进行具体的数值运算时,我们需要创建一个新的子环境来储存参数的值,这个子环境指向父环境,获取过程的具体实现代码,创建一个将参数代入的具体过程,并将这个过程结果返回至上一级环境。

再举一个更通俗的例子,我设计了一个计数器:

1
2
3
4
5
(define make-counter
(lambda(n)
lambda()
(set! n (+ 1 n))
n))

想法是创建一个计数器,每次调用都会返回一个+1的值。我现在做了这样的操作:
1
2
(define c1 (make-counter 0))
(define c2 (make-counter 10))

我创建了两个计数器,一个起始值为0,另一个为10,这样的过程在环境模型中是这样描述的:
SICP3-8
随着两个对象的调用,处于子环境的N的值一直在变化,我在命令行中输入
1
2
(c1)
(c2)

c1环境中的N就变成了1,返回值即为1,c2环境中的N变成了11,返回值即为11。就像是一股水流,从父环境经流c1、c2,在流动过程中进行具体操作,最后操作所造成的影响被水流裹挟,流回原处。

用变动数据做模拟

静态的数据抽象:构造函数、选择函数<——>动态的数据抽象:2 + 改变函数

表结构

数据与对象<——>同一和共享

考虑

1
2
(define x (list 'a 'b))
(define z1 (cons x x))

与

1
(define z2 (cons (list 'a 'b) (list 'a 'b)))

的区别,z1是共享,而z2是同一,前者是对象,后者是数据。两者的结果是一样的,但进行数值变化后,会有不一样的结果。

所以

1
(eq! (car z2) (cdr z2))

的结果是FALSE,而

1
(eq! (car z1) (cdr z1))

的结果是TRUE,这是因为(eq! x y)其实在检查x和y是否是同一个对象,而不是检查其内容是否相等。

改变即是赋值

我们对序对可以这样构造

SICP3-9

我们可以将赋值内嵌在序对的构造函数中

SICP3-10

精妙的cons

下面看一个由丘奇(Alonzo Church)定义的cons、car、cdr,

SICP3-10.5

用lambda表达式定义的,不依赖于任何操作的完美的序对,太精妙了。

1
2
3
4
5
6
(define (cons x y)
(lambda(m)(m x y)))
(define (car x)
(x (lambda(a d) a)))
(define (cdr x)
(x (lambda(a d) d)))

太美了。

队列

根据数据抽象,我们可以将构造一个队列分离成三个部分:

*构造函数

1
(make-queue)//创造一个空的队列

*选择函数

1
2
(empty-queue? <queue>)
(front-queue <queue>)//返回对列头对象

*改变函数

1
2
(insert-queue! <queue> <item>)
(delete-queue! <queue>)

高效插入和删除数据的结构:

SICP3-11

如此一来我们只需要索引表的两个头,就能索引整个队列。

过程的具体实现:

**

表格

之前我们运用表格的方法实现了数据导向式的程序设计,通过两个关键词索引指向的过程,这次我们要设计一个基于表的可变动的表格。

一维表格

首先考虑一维表格,每个记录包括一个关键词和对应的值,所以我们可以用一个序对表示,那么很自然的,可以想到下面的结构:

SICP3-12

其中,为了能够增加记录,我们需要将表序列的表头标记为“表头”,图中为*table*。

为了查找是否存在参数,我们需要定义一个查找函数lookup。

SICP3-13

为了插入一个记录,我们同样需要定义一个插入函数insert!

SICP3-14

二维表格

二维表格的构造是基于一维表格的,直观上说,就是一维表格的延伸,在一维表格的第一个索引处建立另一个一维表格,结构如图:

SICP3-15

其查看函数、插入函数就是基于一维表格两个函数的嵌套。

SICP3-16

约束系统

就拿 F=ma 这个公式来说,力、质量和加速度之间的关系不是单向的,而是循环的,我只要知道了其中的两个,就能求解出第三个。但依照之前的计算机程序设计思维,我们必须要显式地设计求特定值的程序,即必须确定输入输出。求F的程序只能求F,求m的程序只能求m。而这一节就要介绍一种使程序不再是单一的input——>output,简单来说能够描述变量间关系的方法,即约束系统。老样子,我们先看结论再分析。

下面是一个用约束网络表示的9C=5(F−32),华氏度与摄氏度转换的公式:

SICP3-17

我们的想法是,当其中某个模块被赋值激活,它就会去唤醒与之相连的约束,进而去唤醒与之相连的其他模块,如果前一个模块包含的信息能够确认与之相关的模块的值,那么该模块就被前一个模块激活,以此类推。有点像神经元之间的信号传递,也有种追溯的感觉。

约束系统还要仔细看看P201~

并发

赋值将 时间 带进程序设计

并发将程序对现实世界的模拟更进一步、更加模块化、速度更加快

并发的问题与约束

尚未规范的并发会导致的问题:

对并发程序的限制:1.严格禁止;2.结果对照;3.也可以不限制,具体情况具体分析

控制并发的机制

串行化组:将不相关的进程都放在一起,形成一个个串行化组,组内的进程不能同时运行,不同组可以同时运行。

流

我们对赋值的引入,目的在于将程序更加模块化。由于程序实际上是对现实事物的模拟,我们试图将程序分成和组成现实事物一样的小部分、子系统,来实现更加优秀的模拟。但赋值的引入也会带来很多问题,我们不能更加数学化的编写和分析程序,而会去在意更多思想外的东西。但如果我们对这个世界的认识就是错误的呢?或者说,我们对事物的组成就是错误的呢?我们的看法错误,根据这个看法对程序进行模块化的改变,自然就是错误的。那么我们能否从另一个角度分析一个问题呢?

流处理避免赋值的同时实现状态的模拟,这样做避开了由赋值带来的弊端。流处理的好处是,建立了一个约定的接口,将每个过程可以作为一个公用的模块去任意构建程序。

表与流的区别

delay、force

流基本操作的表示

记忆化(对delay的改造)

无穷流

表示正整数

厄拉多塞筛法

SICP3-

隐式定义流:整数和斐波那契数

流计算模式的使用

序列加速器

image-20180820174901695

赏

谢谢你请我吃糖果

支付宝
微信
  • 本文作者: YA
  • 本文链接: http://www.yuuuuang.com/2018/08/06/贰-《SICP》笔记:模块化、对象和状态/
  • 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!
  • 世界之内

扫一扫,分享到微信

周记|Rational
周记|困倦
  1. 1. 第三章 模块化、对象和状态
    1. 1.1. 赋值和局部状态
      1. 1.1.1. 局部状态变量
      2. 1.1.2. 赋值的优缺点
    2. 1.2. 求值的环境模型
    3. 1.3. 用变动数据做模拟
      1. 1.3.1. 表结构
      2. 1.3.2. 精妙的cons
      3. 1.3.3. 队列
      4. 1.3.4. 表格
        1. 1.3.4.1. 一维表格
        2. 1.3.4.2. 二维表格
      5. 1.3.5. 约束系统
  2. 2. 约束系统还要仔细看看P201~
  3. 3. 并发
    1. 3.0.1. 并发的问题与约束
    2. 3.0.2. 控制并发的机制
  4. 3.1. 流
    1. 3.1.1. 无穷流
    2. 3.1.2. 流计算模式的使用
© 2018-2025 YA
GitHub:hexo-theme-yilia-plus by Litten
本站总访问量25553次 | 本站访客数20700人
  • 所有文章
  • 友链
  • 关于我

tag:

  • 随笔
  • 年终总结
  • 世界之内
  • 世界之外
  • 叶隙集
  • 机器学习
  • 叶隙随笔
  • 图像处理
  • 数据挖掘

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 2024年终总结

    2025-04-08

    #随笔#年终总结

  • 【叶隙集】41 盘旋的白文鸟

    2025-01-12

    #随笔#叶隙集

  • 大语言模型正在伤害人机交互领域的研究

    2025-01-05

    #随笔#世界之内

  • 【叶隙集】40 台湾旅行

    2024-12-22

    #随笔#叶隙集

  • 【叶隙集】39 搬家了

    2024-09-05

    #随笔#叶隙集

  • 2023年终总结

    2024-06-27

    #随笔#年终总结

  • 【叶隙集】38 参加学术会议

    2024-05-22

    #随笔#叶隙集

  • Notes of 3D Gaussian Splatting

    2024-03-19

    #世界之内

  • 【叶隙集】37 音乐会和朋友

    2023-12-04

    #随笔#叶隙集

  • 【叶隙集】36 QE和音乐会

    2023-11-02

    #随笔#叶隙集

  • 【叶隙集】35 新室友和更积极的生活

    2023-09-11

    #随笔#叶隙随笔

  • 读书笔记|《规训与惩罚》

    2023-08-27

    #随笔#世界之外

  • 【叶隙集】34 无法参加学术会议

    2023-06-28

    #随笔#叶隙集

  • 【叶隙集】33 回国后与朋友和家人们的聚会

    2023-06-11

    #随笔#叶隙集

  • 视频压缩技术概述

    2023-04-28

    #世界之内

  • 2022年终总结

    2023-03-31

    #随笔#年终总结

  • 【叶隙集】32 平和的心态

    2022-12-27

    #随笔#叶隙集

  • 【叶隙集】31 双相情绪障碍症

    2022-12-17

    #随笔#叶隙集

  • 【学习笔记】CS5229 Advanced Computer Network

    2022-12-17

    #世界之内

  • 【叶隙集】30 下半学期太忙了!

    2022-11-25

    #随笔#叶隙集

  • 【叶隙集】29 当助教的半个学期

    2022-10-07

    #随笔#叶隙集

  • 【叶隙集】28 忙碌的第一个月

    2022-08-31

    #随笔#叶隙集

  • 【叶隙集】27 老师的职责

    2022-07-31

    #随笔#叶隙集

  • 【叶隙集】26 新加坡太难找工作了

    2022-07-23

    #随笔#叶隙集

  • 【叶隙集】25 生产工具、学习生活和阅读笔记

    2022-07-15

    #随笔#叶隙集

  • 【叶隙集】24 学习、科研、旅行和爱与关怀

    2022-06-24

    #随笔

  • 【叶隙集】23 学习与研究

    2022-04-26

    #随笔#叶隙集

  • 【学习笔记】人工智能规划与决策

    2022-04-26

    #世界之内

  • 博士申请的总结

    2022-03-31

    #随笔

  • 【叶隙集】22 新的体验和宗教

    2022-03-07

    #随笔#叶隙集

  • 2021年终总结

    2022-01-08

    #随笔#年终总结

  • 【叶隙集】21 新朋友和学术报告

    2021-10-31

    #随笔#叶隙集

  • 【叶隙集】20 音乐会与教训

    2021-10-19

    #随笔#叶隙集

  • 【叶隙集】19 六周年纪念日

    2021-10-03

    #随笔#叶隙集

  • 【叶隙集】18 疫情与疫苗

    2021-09-24

    #随笔#叶隙集

  • 摘录|联合国2021年气候问题总结报告的摘要

    2021-09-19

    #世界之外

  • 【叶隙集】17 音乐会和读书

    2021-09-08

    #随笔#叶隙集

  • 【叶隙集】16 喜欢上了游泳

    2021-09-01

    #随笔#叶隙集

  • 【叶隙集】15 课前的夜曲

    2021-08-24

    #随笔#叶隙集

  • 【叶隙集】14 平稳的学习生活

    2021-08-16

    #随笔#叶隙集

  • 【叶隙集】13 生活与朋友

    2021-07-15

    #随笔#叶隙集

  • 【叶隙集】12 毕业

    2021-06-30

    #随笔#叶隙集

  • 【叶隙集】11 毕业前的生活

    2021-06-23

    #随笔#叶隙集

  • 读书笔记|《国境以南,太阳以西》读后感

    2021-06-17

    #随笔

  • 【叶隙集】10 青甘环线旅行

    2021-06-13

    #随笔#叶隙集

  • 半监督学习|论文粗读

    2021-06-07

    #机器学习

  • 【叶隙集】9 纯粹地生活

    2021-06-06

    #随笔#叶隙集

  • 【叶隙集】8 生活的界限

    2021-05-30

    #随笔#叶隙集

  • 【叶隙集】7 隔离结束

    2021-05-21

    #随笔#叶隙集

  • 【叶隙集】6 隔离生活

    2021-05-14

    #随笔#叶隙集

  • 【叶隙集】5 新的阶段

    2021-05-08

    #随笔#叶隙集

  • 【叶隙集】4 团队管理

    2021-04-30

    #随笔#叶隙集

  • 【叶隙集】3 过低的自我评价

    2021-04-23

    #随笔#叶隙集

  • 【叶隙集】2 方向与交往

    2021-04-16

    #随笔#叶隙集

  • 【叶隙集】1 原爆点-续

    2021-04-08

    #随笔#叶隙集

  • 随笔|目的与纯粹

    2021-03-28

    #随笔

  • 随笔|白文鸟

    2021-01-20

    #随笔

  • 写在一百以后——2020年终总结

    2021-01-01

    #随笔#年终总结

  • 随笔|选择

    2020-12-25

    #随笔

  • 读书笔记|《人生的意义》总结、摘录

    2020-11-25

    #世界之外

  • 书评|Normal People, Normal Love

    2020-10-07

    #随笔

  • Decision Making|人工智能、机器学习与强化学习的概述与比较

    2020-10-03

    #世界之内

  • 随笔|疫情后的总结

    2020-09-10

    #随笔

  • 学习笔记@PRML|1 Introduction

    2020-07-31

    #世界之内

  • 随笔|面试后的回顾与思考

    2020-07-26

    #随笔

  • 数据挖掘|数据挖掘概论笔记

    2020-06-24

    #世界之内#数据挖掘

  • 续写|美女或野兽

    2020-06-18

    #随笔

  • 随笔|无常

    2020-05-31

    #随笔

  • 现象学|胡塞尔《小观念》笔记

    2020-05-13

    #世界之外

  • 随笔|我的局限性

    2020-05-13

    #随笔

  • 随笔|胡乱的记录

    2020-04-09

    #随笔

  • 随笔|疫情

    2020-02-16

    #随笔

  • 随笔|怅惘地忖度

    2020-01-29

    #随笔

  • 2019年终总结

    2019-12-08

    #随笔#年终总结

  • 机器学习|Flow-based Model学习笔记

    2019-11-06

    #世界之内#机器学习

  • 【Introduction to TensorFlow】03 卷积神经网络与复杂数据集

    2019-10-31

    #世界之内#机器学习

  • 【Introduction to TensorFlow】02 初识机器学习与计算机视觉

    2019-10-29

    #世界之内#机器学习

  • 【Introduction to TensorFlow】01 TF 快速入门

    2019-10-29

    #世界之内#机器学习

  • 【Introduction to TensorFlow】00 课程概览

    2019-10-29

    #世界之内#机器学习

  • 随笔|呓语

    2019-10-27

    #随笔

  • 周记|面纱 久别重逢

    2019-09-21

    #随笔

  • 学习笔记|拟合优化

    2019-09-15

    #世界之内

  • 周记|爱人 体验 芝诺

    2019-09-07

    #随笔

  • 摘录|造成不幸福的原因之六:嫉妒

    2019-09-06

    #世界之外

  • 随笔|虚无 纵欲

    2019-08-22

    #随笔

  • 周记|尘埃落定

    2019-06-29

    #随笔

  • 周记|本能 愉悦 基因

    2019-06-12

    #随笔

  • 周记|空荡荡

    2019-06-02

    #随笔

  • 四月裂帛——读《女儿红》

    2019-05-30

    #随笔#世界之外

  • 机器学习|主成分分析

    2019-05-10

    #世界之内#机器学习

  • 《好运设计》史铁生

    2019-05-09

    #世界之外

  • 机器学习|感知机与支持向量机

    2019-04-27

    #世界之内#机器学习

  • 周记|记忆 概念 庸俗

    2019-04-27

    #随笔

  • 机器学习|模型评估与选择

    2019-04-17

    #世界之内#机器学习

  • 机器推理|SLD Resolution

    2019-04-06

    #世界之内

  • 第五代计算机

    2019-03-31

    #世界之内

  • 学习笔记|Volume Rendering

    2019-03-31

    #世界之内#图像处理

  • 周记|三月驼云

    2019-03-28

    #随笔

  • 生成对抗网络与强化学习:文本生成的方法

    2019-03-11

    #世界之内

  • 《桨声灯影里的秦淮河》俞平伯

    2019-03-09

    #世界之外

  • 周记|雨

    2019-03-09

    #随笔

  • 《春之积雪》简媜

    2019-03-01

    #世界之外

  • 周记|逃离

    2019-02-15

    #随笔

  • 存在主义是一种人道主义

    2019-02-11

    #世界之外

  • 学习笔记|比较文学

    2019-02-09

    #世界之外

  • 尼采的美学

    2019-02-01

    #世界之外

  • 哲学涉猎

    2019-02-01

    #世界之外

  • 读书笔记|光的诗人——《如何看懂印象派》

    2019-01-28

    #随笔#世界之外

  • 叔本华的生命意志哲学

    2019-01-25

    #世界之外

  • 再也不要把他们弄丢了

    2019-01-21

    #随笔

  • 2018年终总结

    2018-12-31

    #随笔#年终总结

  • 人类的心理行为模式

    2018-12-25

    #世界之外

  • 周记|神经症人格

    2018-12-22

    #随笔

  • 【周记】旋转

    2018-11-30

    #随笔

  • 七牛云Bucket失效

    2018-11-21

    #世界之内

  • 周记|从前的日色慢

    2018-11-21

    #随笔

  • 【数理逻辑】Incompleteness Theorem

    2018-11-10

    #世界之外

  • 专业随想

    2018-11-05

    #随笔

  • 生活

    2018-11-04

    #世界之外

  • 计算机组成与体系结构

    2018-11-04

    #世界之内

  • 【强化学习】Policy Gradient

    2018-11-03

    #世界之内

  • 怀疑是否有价值——怀疑论

    2018-10-30

    #世界之外

  • 周记|Every hero and coward

    2018-10-20

    #随笔

  • Web in Java

    2018-10-11

    #世界之内

  • 周记|十月女泽

    2018-10-02

    #随笔

  • 托福备考

    2018-09-28

    #世界之内

  • 周记|裸体之舞

    2018-09-24

    #随笔

  • 周记|中秋幸福

    2018-09-18

    #随笔

  • History of artificial intelligence

    2018-09-09

    #世界之外

  • 周记|我那无趣的灵魂

    2018-09-09

    #随笔

  • Softmax Regression

    2018-09-08

    #世界之内

  • 周记|Rational

    2018-09-02

    #随笔

  • 贰 《SICP》笔记:模块化、对象和状态

    2018-08-05

    #世界之内

  • 周记|困倦

    2018-08-04

    #随笔

  • 壹 《SICP》笔记:构造数据抽象

    2018-07-31

    #世界之内

  • 周记|原爆点

    2018-07-31

    #随笔

  • 零 《SICP》笔记:构造过程抽象

    2018-07-23

    #世界之内

  • Norms or maybe more

    2018-07-09

    #世界之内

  • 事已至此

    2018-06-24

    #随笔

  • 【增强学习】AirSim搭建

    2018-06-02

    #世界之内

  • 【机器学习】BP算法

    2018-05-26

    #世界之内

  • 【康德】宏大的哲学语境

    2018-05-26

    #世界之外

  • 【康德】康德的研究领域是什么

    2018-05-11

    #世界之外

  • 【高等数学】什么是梯度(期中考试复习思考)

    2018-04-29

    #世界之内

  • 《自控力》读书笔记

    2018-04-21

    #随笔

  • 【线性代数】The Essence of Linear Algebra

    2018-04-21

    #世界之内

  • 【数据结构与算法】临时抱佛脚

    2018-03-10

    #世界之内

  • 科技革命与人类社会——《论工业社会及其未来》读后感

    2018-03-08

    #随笔

  • 《论工业社会及其未来》原文摘录

    2018-02-23

    #世界之外

  • 《如何高效学习》读后总结

    2018-02-19

    #随笔

  • 《精进》chapter-2读后总结

    2018-02-13

    #随笔

  • A Review of Brian - Inspired Computer Vision

    2018-02-11

    #世界之内

  • 最近有个女生,说对我很失望

    2017-12-07

    #随笔

  • 病入膏肓

    2017-01-29

    #随笔

  • 白文鸟

    2016-10-29

    #随笔

  • 《不能承受的生命之轻》读后感

    2016-07-13

    #随笔

  • 都五月份了

    2016-04-29

    #随笔

  • 《四月裂帛》简媜

    2014-09-29

    #世界之外

  • Wuuuudle
  • Nemo
  • Elmo (yyh)
  • highestpeak
  • Kazoo Blog
努力做一名谦逊、独立、乐于思考的学生