11 分钟阅读

Read in English

这篇文章整理自我的 2026 江西籍新生交流会讲稿,主题是计算机通修类课程与 AI 使用,面向不同专业的同学。希望大家带走的,是编程思维、根据反馈迭代的习惯,以及使用 AI 时保留自己的理解和判断。

查看 / 下载宣讲幻灯片(PDF,16 页)

自我介绍

各位老师,同学们,大家早上好!下面将由我给大家带来关于计算机通修类课程,以及 AI 使用的相关介绍。

先做一个自我介绍吧。我是来自24级管理学院统计系的李亦凡。是本学期《人工智能数学原理与算法 A》的助教。在“知之道”极客中心参与一些人工智能领域的研究。目前手上也有一个大创项目,研究内容是智能体在量化因子挖掘的应用。

我的其他履历可以参考我的个人主页,这里就不再赘述。

计算机程序设计学什么?

我们从大一就上的《计算机程序设计 A》谈起。我认为,大家应该在这门课学习到两种思维:编程思维和工程思维。

编程思维

肯定会有同学问,为什么学习编程是一门全校通修的课?

我们还是从 C 语言这么基础的语言开始学,不少同学都会觉得繁琐。个人认为,编程培养的是一种思考方式。很多同学学习这门课的时候可能都局限于 C 语言本身了,而没有抓住编程本身。其实我们说「编程语言」,其实到底还是学着说话,只不过我们是用一种机械语言,来和我们的计算机对话。下面这个是经典例子,大家在开学第一周应该就学过,那就是打印 Hello World。但,就像茴香豆的茴字有四种写法,我这里能有五种写法(甚至更多)。

// java
public class Main{
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}
// c / c++
#include <stdio.h>
int main() {
    printf("Hello, World!");
    return 0;
}
# python
print("Hello World")
# r
cat("Hello, World!")
// javascript
console.log("Hello, World!");

别看这些代码段各自不同,但其实现的功能都是一样的。所以说,不管是学 C、Python、C++ 还是其他语言,我们想做的东西自始至终都是我们想要实现的程序逻辑,而非这个语言本身。

上面的内容好像有点抽象了,我们从一个具体点的例子入手。

比如,班里想组织一次活动,要从大家的课表里找出一个共同空闲的时间。“找个大家都有空的时候”,人听起来很简单,但计算机要怎么做呢? 我们可以先把问题缩小:只考虑周末,每个小时作为一个时间段。先列出所有候选时间,再逐个检查:这个时间有没有人上课?有,就排除;没有,就保留。检查完所有时间段,就得到了共同空闲的时间。 如果一个都没有呢?那就需要重新确认要求:是否可以换一周,或者改成寻找最多人能参加的时间。这个选择需要我们来决定。

所以总结来说,编程思维,就是把一句模糊的人话,拆分成一组明确、可执行、可检查的步骤。

工程思维

如果说编程思维是把一个模糊的问题,拆成计算机能够执行的步骤,那么工程思维就是:接受第一版并不完美,再根据反馈不断把它改对。

写程序时,我们几乎不可能一次就得到正确结果。大家上机的时候一定碰到过:代码无法编译,结果与预期不同等问题。这些报错和异常并不意味着失败,相关的错误信息其实是在告诉我们:哪里还需要进行修正。

因此,编程通常是一个不断循环的过程:先做出一个最小可运行的版本,观察实际结果,找出它和预期的差距,修改一个问题,再次运行验证。

现在我们当然可以把报错和代码交给 AI ,但人的审查仍然不能省略。在向 AI 提问之前,我们至少要考虑、并说清楚下面这些问题:

  • 我原本希望得到什么结果
  • 实际出现了什么结果
  • 报错信息是什么

AI 可以帮助我们定位并修改问题,但最后仍然要由我们运行、检查和验证。真正重要的不是一次把代码写对,而是知道代码不对时,下一步应该做什么。

多练习

当然,上述两种思维都不是一蹴而就的,一门语言也不是一下就能学会的。同学们平时还是应该有一定量的练习,才能培养好这方面的能力。

  1. 硬刷题:比如去做洛谷和力扣上面的题目。虽说刷题比较枯燥,但刷题的确能提升我们对某一门语言的熟练度,也能提升我们处理局部代码的能力。
  2. 小型项目:更好玩一点的是大家构思一个自己的小玩具,在 AI 的帮助下逐步迭代升级。我们没必要上来就做高大上的东西,哪怕自己实现一个数据处理的工具包,都是非常有价值的工作。

人工智能数学原理与算法 A/B 概况

以上讲的是关于《程设》这门课的内容。下面我再来讲讲有关《人工智能数学原理与算法》这门课。对大一的同学来说可能有点遥远,大二的同学可以参考我的建议和我的讲义。

课程概况

上面说的《程设》主要强调的是实践出真知,那《AI-A/B》这门课整体画风就像是一门东拼西凑的文科课。将统计学习、神经网络、图神经网络、Transformer、监督学习、强化学习等原本可以大书特书的独立领域放进一门课里面。这就导致这门课很严重的一个问题:知识点的堆砌。如果我们也跟着东拼西凑地学,那效果肯定不好。我的建议是,每学一个模型,试着回答它解决什么问题、输入输出是什么、关键步骤为什么这样设计。

这是当时写的评课:「结合上面的叙述,给后来者一个警醒:速通这门课的想法是不切实际的。每个章节的概念尽量还是平时背一背,考前只花一两天背诵整本书压力太大。计算题还是有迹可循的,课程涉及的算法并不困难。」

学习的体会

如果说学这门课最有意思的地方,我想,是这门课在告诉你:通过这些比较简单的微积分、线性代数、概率论,我们进行适当的建模,放进我们的程序里面,竟然能构建出「智能」的模型。包括我这学期当助教设计实验课题目的时候,更多地是希望同学们能在编写的过程中能够思考,每个模块我们为什么要这么设计,为什么要经过这样的处理,它们都解决了什么问题?

我当时上完这门课有两个感受:

  1. 哇,原来之前学的数学分析、线性代数、概率论是真实有用的,不是纯理论。
  2. 哇,原来人工智能这么庞大的东西原理也没这么复杂。

助教的一点吐槽

在这个学期当助教的时候,哪怕是高年级的同学,对电脑的使用常识也还是比较匮乏的。甚至会出现「ctrl + c/v」都不会的情况。个人认为掌握一些电脑的基本常识,并且有基本的使用规范都是有必要的,不然会成为某种意义上的「现代文盲」。这里列出一些我个人的建议。大家不需要一次性学会,可以在日常使用过程中逐步掌握。

类别 建议掌握的内容
文件管理 文件夹、路径与扩展名;查找、重命名、移动文件;压缩与解压
常用操作 复制、粘贴、撤销、保存、查找等快捷键;截图、分屏与窗口切换
文档与 PDF 标题、段落与分页排版;导出 PDF 并检查格式
电子表格 简单公式、求和、排序与筛选
软件与存储 区分文件、软件与操作系统;理解内存与磁盘、本地与云端存储的区别
备份与恢复 重要文件备份、版本保留;回收站与版本历史的使用
排查问题与求助 保留报错和截图;说清操作步骤、预期与实际结果、已有尝试
Markdown(按需) 标题、列表、链接、引用与代码块
Git(按需) 查看修改、提交记录、对比版本;协作时学习分支与合并

AI 使用

好啦,下面我们聊聊,怎么把 AI 用到自己的日常生活里。AI 到底有多厉害,我想这不需要我来描述,但回到自己身上,可能还是会觉得:我好像也没有那么复杂的事情需要它做。很多同学会吐槽:我买了月订,却从来没用完额度。

这里我想说的是,大家千万不要因为自己不会用或者用不完 AI 这个工具而感到羞耻自卑。AI 作为工具,就一定在具体的场景来使用。

我想分享的一个想法是:小麻烦,也值得解决。 AI 让很多整理材料、修改格式、尝试方案的事情更容易上手。这里我非常希望大家能够意识到:AI 作为一个工具,能大幅降低我们日常工作的成本。这里的成本主要指时间和精力,我们可以将其投入更有价值的工作中。

从日常的小麻烦里发现需求

大家可以思考一下,最近有没有哪件事,自己反复花时间处理,却总觉得麻烦?比如群通知看过了,还是会漏掉要交的材料;笔记记了不少,复习时却找不到要看的文件;每次处理一份表格,都要重新改一遍相同的格式。

借助 AI,把需求变成可以行动的结果

拿整理文件这件小事来说,先说清楚自己的需求:哪些内容找起来最麻烦?希望按什么方式整理?哪些内容需要保留原样?

再看结果是否符合预期:整理后,能找到想要的文件吗?原有内容和链接还正常吗?哪里不合适,需要继续修改?

我们决定要求,AI 帮忙执行,再由我们检查和改进。

借助 AI 学习

放以前,如果我们遇到学习上的问题,只能联系老师联系助教,或者上网查答案。但有了 AI 的存在,我们对信息检索的成本变得很低。而且 AI 的另一大优势是极强的个性化。我们完全不用担心对面拍桌子走人,我们完全可以根据自己的需求,让 AI 帮我们查漏补缺。

比如学 C 语言,直接问「这道题怎么做」,可能得到一份完整答案,却依然不知道自己的代码错在哪里。我们可以这样问:

我是刚开始学 C 语言的大一学生,目前学过循环和数组。下面是题目、我的代码、测试输入,以及预期和实际输出。请只使用我学过的知识,先提示我检查哪一步,暂时不要给出完整代码。等我修改后,再帮我检查。

对于学习,我比较推荐四步:先自己尝试,找到卡点;让 AI 提示和解释;验证回答;关掉答案再做一次。 代码自己运行,概念对照教材,最后用独立完成一道类似题来检查理解。数学推导、阅读材料,也可以沿用这个思路。

AI 使用边界

我记得 AI 刚爆火那段时间,我很喜欢到处用。写作业用、写代码用、写邮件用、写计划用,总之,只要我想偷懒的地方,我都想用 AI 来试一下,好用的话我就省事了嘛。还有一种情况就是,我用 AI 完成了这道作业,或者说帮我写完了代码中的某一个模块,我发现我过两天又看不懂这些东西了,要不就完全不会。

这里想表达的一个意思是说,不要因为 AI 太能干活而产生幻觉,就觉得自己什么都能做了。就像我之前说的,善用 AI 引导 AI,而不是把 AI 当许愿机;AI 的表现能力和使用者能力成正比。简单说来,如果你没有足够的能力,你都无法写出一个有效的提示词,引导它去完成某个特定的任务,又或者无法判断 AI 输出的内容正确与否。当你都无法主动去判断 AI 生成的东西是否正确、是否有价值的时候,AI 生成的东西已经超出了你的认知,也就和你无关了。

另一方面,尽管视频广告总是说 AI 又做出来了什么了不得的事情,但 AI 仍然会犯错,尤其是在深度研究的内容中。在平时完成任务的时候,自己可以不做具体内容,但一定要评审 AI 做的东西。否则时间一长很容易把人带进沟里。

总结

我在前面反复强调,AI 是工具,AI 是工具,AI 是工具,AI 也是我们身处当前时代无法回避的一个话题。没错,AI 是很厉害,在很多领域展现了其霸道的一面,但同时,AI 在诸多领域的翻车也表明,AI 并不能彻底取代人类。对我们来说,AI 技术的井喷也是机遇。同学们应该在日常学习生活中,学会怎么进行人机协作,把自己从一些琐碎的工作中解脱出来,去完成一些更具有价值的东西,进而展现自己的才华。

欢迎交流

大家可以通过以下方式来联系我:

个人主页:https://lunarkn1ght.github.io

QQ联系方式

USTC-Agent交流小队

谢谢大家!


相关资料