Rethink AI【3】:循环神经网络 2025-08-08| RethinkAI 前言
虽说我是搞NLP的,但是老实说,这些基础的Seq2Seq模型我也没有仔细思考过。
序列到序列模型引入
自然语言是以序列表示的。和普通的点到点任务(比如加法器)不同,自然语言的序列,每个元素之间是有关系的。什么意思?
比如这句话:“我是一个学生”,其中“我”和“学生”显然是相关的,“是”表达了一个关系,表达的是“我”和“学生”之间的关系。为了处理这种元素彼此之间有依赖性的格式,相比于使用单纯的 ...
阅读更多 Rethink AI【2】:神经元与反向传播 2025-08-08| RethinkAI 前言
本篇主要记录激活函数、基本的神经元模型以及反向传播。
激活函数的引入与神经元模型
在神经网络中,一个神经元象征着这样的运算:
$$
\text{BaseNeuron}(\mathbf{I})=\mathbf{WI}+\mathbf{B}
$$
其中,$\mathbf{I}$代表输入的矩阵(本文只讨论二维情况),$\mathbf{W}$和$\mathbf{B}$是神经网络的两个参数——权重和偏 ...
阅读更多 科研论文的写作方法 2025-08-05| 杂谈 前言
本文内容总结自【斯坦福大学】科学论文写作(Writing in the Sciences)(全)课程,也结合了一些自己的思考。
写作阶段
对于科研论文写作来说,最重要的原则是:清晰高效地传递想要表达的思想。这要求,文字要尽量质朴、易于理解、易于阅读,不必追求修辞、用词的花哨。
在写作之前,需要把所有的数据和结果都跑出来——数据来自于其它论文,结果来自于实验。其实,在写论文的时候,不一定要把全 ...
阅读更多 Rethink AI【1】:优化法 2025-08-03| RethinkAI 前言
这个系列的文章旨在记录我对AI算法的梳理、理解、思考与灵感。
AI的任务,实际上是一个在连续可导的曲线上,寻找最小值点的过程。实际上,对于AI模型来说,只有两个东西——损失函数和参数。AI的目标实际上就是寻找到$f(x)$函数的最小值点,其中,$f(x)$代表,当参数取值为$x$的时候,整体的损失函数值。
小处落墨:泰勒公式与牛顿法
对于一个连续可导的函数$f(x)$来说,在某一点上,可以用 ...
阅读更多 艰难求生:网站更新记 2025-07-31| 互联网开发 前言
早上起来,发现硅云的专线服务专员给我发来消息:“你的网站使用了第三方的JS,第三方的cdn不稳定会影响网站的速度”。
我一想,觉得说的很有道理,于是进行了这次网站的更新——虽然还是很慢。
我使用的服务器带宽是1Mbps的服务器,不过有20G的存储,也不用备案,这是我当时选择它的原因。
JS全部移动到本地
我通过博客主题的代码,发现了若干存储在cdn上的JS脚本,于是先把它们全部下载下来,在本 ...
阅读更多 初试全栈开发之聊天机器人(1)-前后端配置 2025-07-30| 互联网开发 前言
本次项目会同步更新在Github,请移步查看。这个项目比较粗糙,完全是为了学习使用。
最近一直考虑把JavaScript、HTML和CSS捡一捡,上次系统性地写软件,还是在初中的时候——用Dreamweaver开发网站。时过境迁,现在有各种各样的框架可供使用,页面也越来越好看了。
本次就来开发一个聊天机器人的界面——如ChatGPT、DeepSeek、豆包之类的网站页面。选用的技术栈是Vue ...
阅读更多 浅谈Side Project与编程语言 2025-07-27| 杂谈 TL;DR
Side Project分为两类:
以学习为主要目的的项目
以设计为主要目的的项目
Side Project所使用的编程语言也分为两类:
以性能/细节为核心的编程语言
以开发效率为核心的编程语言
Side Project
Side Project,可以理解为工作之余或闲暇生活中编写的项目。这类项目通常不受公司/学校/团体的制约,通常是个人项目。举例来说,一个程序员在公司,在公司 ...
阅读更多 本站正式加入十年之约 2025-07-27| 杂谈 本站从今天开始,正式加入十年之约啦!
虽说满打满算,从最开始架设博客已经过了六七年时间了,不过,我还是愿意以今天为博客的诞生日。
希望十年以后,我依旧能坚持写作,坚持输出吧。
阅读更多 C语言手写简单的Shell 2025-07-20| C
前言
所谓Shell,其实只干了两件事:监听和执行命令。
详细的代码参见我的Github库。
监听
Shell是这样一个软件,持续监听用户的输入,然后处理用户输入的指令,执行相应的功能。
基本上,所有的软件都是由一个死循环构成的,在这个死循环中,不断地监听、执行,重复这样一个过程。
我们Shell的基本框架是:
123456789101112131415161718192021int main( ...
阅读更多 C语言从零开始编写机器学习库 2025-07-20| C 前言
具体的代码参见我的Github库。
第一步:数据抽象
用惯PyTorch等库的小伙伴应该清楚,机器学习的基本单位通常是“张量”(tensor)。所谓张量,感性来理解,张量就是一个多维的数据结构。举例来说,下面的几种数据结构都算作张量:
标量,比如1、2、0等。
矩阵。
高维矩阵,2*3*4形状的数据。
那么,我们要如何用基本的数据结构来表示张量呢?有这样几种组织方式。
首先就是参考Pyt ...
阅读更多