0%

写过 Python 的朋友对如下代码一定不陌生:

1
2
with open('somefile', 'w') as f:
f.write('foobar')

打开文件 somefile 作为 f,并向 f 写入字符串 "foobar",并且在结束时帮我们自动关闭了文件 f。这几乎等同于

1
2
3
4
5
f = open('somefile', 'w')
try:
f.write('foobar')
finally:
f.close()

是什么魔法帮我们调用了 f.close 呢?是 with 语句使用了上下文管理器,即 Context Managerf 不仅是一个文件描述符,更是一个上下文管理器,而作为一个上下文管理器,f 定义了进入和退出上下文时的行为。

阅读全文 »

可能很久之前,就模糊地想象到写下这些文字的情景;但是真实地到了现在这个时候,却思绪万千、摘不清要从哪里写起了……

从红色警戒 2 到冒险岛

和现在的小孩从小就接触和使用各类电子设备比不来的是,小时候的我只有看的份。七八岁时似乎常在舅爷家看伯伯们玩红色警戒 2,现在记忆中也只是留下了这个经典的游戏名字而已,对当时的事也没有再多的印象了。直到后来搬了家,爸爸买了第一台真正意义上我能用到的电脑,关于其配置只是记得有一条 256 MB 的内存(现在看来是连一个 Chrome 浏览器都跑不起来的样子),当时更是不知道什么是 CPU、显卡、硬盘云云。

阅读全文 »

这个月也是顽张的一个月呢,共完成了 66 道题目。

阅读全文 »

准备

  1. 一个 shell
  2. 还有 git
  3. GitHub Account;
  4. Git Book
  5. 最重要的是随时能够动的手。

盘古会在 shell 中使用 git --version 命令来检视 git 的版本号。遇到不理解或者感兴趣的问题还会主动去查阅文档和书籍。

阅读全文 »

本文针对 📎 arXiv 的早期版本,与最新版本会有所出入。

知识背景

Attention (Retrieval)

文中所有的公式都是从下式派生,

\[ \mathrm{Attention}\left(Q,K,V\right)=\mathrm{softmax}\left(QK^T\right)V, \]

其中 \(Q\in\mathbb{R}^{N_Q\times d_K}\)\(K\in\mathbb{R}^{N_V\times d_K}\)\(V\in\mathbb{R}^{N_V\times d_V}\)\(R\in\mathbb{R}^{N_Q\times d_V}\)

阅读全文 »

梦开始的地方,并不完整的月报完成了 19 道题目。

阅读全文 »

本文介绍了 Python 中常见的一些陷阱。

阅读全文 »