前言
本文将探讨ChatGPT和Supermemo进行高效学习的潜力。
在此之前,我对ChatGPT的能力进行了多角度的测试。我可以坚定的作出以下预测:
Ai将深刻地改变教育行业Ai自学将成为教育的主流,老师将居于答疑助手的次要地位Ai将大大放大个体的能力,个人将拥有世界的力量,创客会如春潮涌现小作坊或者生产线的智能化成本将极大降低对ChatGPT的初次测试
二零二二年的十二月六日晚,我注册了OpenAi账号之后对ChatGPT进行了以下测试
模拟一个linux命令行,要有文件系统的语境要求user文件夹下有三个文件 a b c在这个语境下接受我输入的命令对文件系统进行操作,我测试了mv ls cat(包括文件读写)等操作生成一份helloworld的c++源码并且将其输入之前声明的a文件让它把a文件编译执行让它生成一个python脚本,并尝试使用sympy库计算e^{3x}的积分让它根据今天我让他的所作所为,写一首诗注意到这是一系列连贯的操作,如果它不能完全理解其中的一步,它可能会提出改进意见。
需要特别注意的是,以上这些操作都是在它的“想象”之中进行的,也就是说并没有相关的运行时环境进行在线运行。表明它已经具有了相当的推理能力。
在以上这其次测试中,ChatGPT能完全讲述执行所有流程所需要的命令,甚至有模有样的编译并成功运行了那一份c++代码。不过它编译出来的二进制文件叫做a.cpp(雾)
对于那一份Python脚本,它成功地使用sympy库写出了求积分的代码,不过在要求在模拟的linux系统中它运行后给出的结果并不正确,毕竟积分属于一个更加庞大的抽象的数学体系。
ChatGPT附加条件测试
事实上我做的测试不仅于此
同样是对e^{3x}求积分,根据附加条件不同,我的到了以下四个答案
numpy版本,很遗憾它写的函数只是返回了3x的值,不过函数的命名可读性倒是保留完好。scipy版本,正确sympy版本,正确手算版本,它完整详尽地给出了每个手算的细节和原理。非常值得称赞。
至此,我完全确认了它可以作为我的老师(至少是在CS领域)
此外,向它提问时,还可以指定简洁程度。我分别要求1.(无要求)2. 尽可能短 3.用几个单词描述

此外我们还可以要求其他回答格式,例如用列表分点,但是可视化的内容是不行的

稍后我将给出一个完整的学习流程以提高碎片化学习效率与笔记整理效率,但在这之前必须先引入几个概念。
助记符
参考研究详见
的翻译文章通过类比以及更多的想象结合的语言,可以达到高质量的记忆。通过多种类型的媒体,例如声音图片视频等,可以使人对知识点印象深刻。在不同学习环境之中来回切换比喻

拟人

不过即便如此,在声音图片和视频等多类型的媒体寻找方面,仍然需要搜索引擎的帮助
如有不当之处,还请加以指正。
学习卡片
学习卡片的方法以及配套软件
流行的方式是,将系统化的知识聚合物切分成知识单元,卡片则是这些知识单元的载体,然后进行连接和复习。
常用的用来管理并提供算法学习记忆卡片的软件有 Supermemo 和 Anki,当然也有多邻国等网站app。
笔者使用的是Supermemo,可以看到更加详尽的学习数据。
笔者每天编写卡片的速率平均是15张每天,通常只是偶尔高强度编写卡片。
此外就是每天的细水长流的记忆。注意,在这个复习过程中一旦有好奇的地方或者是有疑问的地方一定不要放过,而要去搜集相关的资料并将其整理为卡片,这是高质量学习的必要方式。
有段时间我非常热衷于分类。目前看来这是纯纯的时间浪费,即便要分类也不要分到3个类以上(用Collection分类),当然,这一是一家之言,大家可以自己尝试一下再评判。
编写学习卡片
我们可以用这样的方式由浅至深提问ai
什么是计算机图形学 (一般会给出一些名词)什么是GLSL (一种图形学的编程语言)GLSL渲染的流程是什么这样的方式称为 DFS(Depth-First Search),即每次把最新回答中自己不了解的名词输入,提升纵向深度。
类似的,我们也可以这样
什么是计算机图形学 (提到OpenGL和Directx)OpenGL和DirectX的区别是什么OpenGL和DirectX的共同点是什么DirectX 是什么 OpenGL是什么这样的方式称为 BFS(Breadth-First Search) ,即每次都尽可能先把这个回答的每一个名词都搞清楚再往下深入
一般而言我们要结合这两种方式,既要避免自己错漏了某些名词,也要避免知识深度不达实践水平。
理论上要先学习顶层的抽象概念的大致意义再去细细的挖掘,但实际上取决于你自己。
自动化流程减少学习时的摩擦感
这个过程其实可以高度自动化,例如使用Chatgpt 提供的api和Quicker 的自动化脚本,我们甚至可以让Chatgpt自动给出一个系统化的知识体系。
但需要注意的是,我认为提出问题本身就是一个非常好的记忆过程,将这个过程省去就只剩下纯粹的卡片复习,会使过程变得枯燥。
自学应当是一个自己提问,自己提炼的过程。因此不要过度依赖自动化工具。
不过这种直接快速生成知识体系的方案在其他方面仍然可以大放光彩,比如数学建模比赛时我们在极短时间内快速了解一个知识体系,不失为一种快速俯瞰的方案。
渐进式学习
接受Ai的推荐新鲜的阅读材料
考虑到ai的答案也是搜索引擎的综合,直接用Google或Bing搜索和ai搜索实际差别不大
更多的,我们也可以让Ai推荐相关的的网站和pdf资料。
注意,不要尝试使用类似于 Recommend 的单词尝试提问Ai,而要用List,否则它会说自己没有看过实际的内容,所以没有资格推荐

学英语
在提问之中,考虑到英文世界的资料远比中文世界多,我推荐大家用英语向ai提问。
中文同样富有潜力,但中文数据的正确性和完善程度以及可能不及英语数据。
当然,对于不熟悉英语的同学,仍然可以有其他方案。
ChatGPT的翻译功能非常优秀

这项功能对于学医学和生物,以及其他专有名词繁杂的学科来说。是不得尝的美味。
例如可以先让Ai把你的话翻译一遍,再用英文提问让它用英文回答,再翻译成中文(总有感觉翻译官要失业.)
事实上,笔者在今年寒假的时候就尝试用纯英文编写卡片了,这是由于计算机行业最好的资料几乎都源自于英语世界。目前看来成效相当不错,英文编写卡片的效率其实很高。
由于我的所学驳杂,涉及Linux、算法竞赛、计算机图形学、webapp、AI、嵌入式和硬件,确实学得不算精通,后续学习无论如何也离不开碎片化的复习工具。
今后会陆续端上其他文章,例如这套流程在针对一些比较具体的目标的学习的使用过程。
所以,点个关注吧