下周日NOAI国赛,分析总结了历年真题考点,希望能帮孩子临阵磨枪,多拿几分

四季读书网 2 0
下周日NOAI国赛,分析总结了历年真题考点,希望能帮孩子临阵磨枪,多拿几分

NOAI复赛考前冲刺

写给下周进考场的你。原题不会重考,连同类题也会换考点。所以这篇不带你背旧题,带你认题型、记内核、避开会直接判0分的坑。

下周就是国赛。这个时候再去学新模型已经来不及,真正能提分的是另一件事:把复赛到底考几类题、每类题的内核是什么、哪些低级错误会让你辛苦训的模型直接0分,在脑子里过一遍清楚。

前两届八道真题我们逐题拆过。把它们摆在一起看,规律比单道题清楚得多。

复赛长什么样

四道题,在Bohrium平台上做。每道题一个方向,基本覆盖:机器学习、计算机视觉、自然语言处理、AI for Science。

方向
2024考的
2025考的
机器学习(表格)
投篮命中率预测(MLP)
计算机视觉
真假图像识别(CNN)
合成语音检测、宫格图分类
自然语言处理
新闻文本分类
德语组合词分割
AI for Science
单摆运动(物理)
化学反应动力学(化学)

光这张表就能看出一件事:两年的题型分布不一样。2025没有纯机器学习题,多了一道无监督学习(宫格图);AI for Science从物理换成了化学。所以别指望背某一道,要抓的是每一类题不变的内核。

复赛反复出现的几个共性,先记住:

限时。有的限CPU时间,有的限GPU时间,常见是10分钟。跑不完,0分。

约束架构。题目会限制你的网络:最多几个线性层、每层最多几个神经元、必须含几个卷积层。违反,0分。

A榜不是最终成绩。比赛中能看到的是A榜(测试集的一半),最终算的是B榜(另一半,赛后公布)。在A榜上过拟合,B榜会翻车。

交的是方法,不是答案。多数题训练集、测试集参数不同,你要交一个对所有数据都work的模型或方法。

每一类题,记三样东西就够:内核(换考法也不变的那部分)、下次可能怎么变、会让你白丢分的坑。

第一类:机器学习与分类(基本功)

两年怎么考的:2024投篮命中率预测就是这一类。给一份球星投篮数据,用PyTorch搭神经网络预测命中与否。约束极紧:最多3个线性层,每层最多8个神经元,只能用指定的几个激活函数。

考点本质:这类题考的不是模型有多大,是你能不能在死约束里把基本功做扎实。8个神经元能用的容量极有限,训得好不好全压在基本功上。考的是:PyTorch标准流程跑不跑得通(数据加载、搭模型、训练、预测),激活函数选得对不对,损失函数配得对不对。

内核(可迁移的)

 二分类的决策边界直觉。投篮命中率本质是"在二维平面上画一条线,把命中和不命中分开"。想清楚自己在画什么,才知道几个神经元够不够。

 激活函数的取舍。隐藏层优先用ReLU系(无界)。Sigmoid/Tanh在输入偏大时会饱和、梯度变小,小网络本来容量就紧,别再添堵。

 损失函数别配错。这是复赛最高频的bug,单独拎出来说。

下次可能怎么变:换数据集(别的表格数据)、换约束(神经元数和层数变一变)、换任务(二分类变多分类、变回归)。不管怎么变,内核都是"在限制下做对基本流程"。

最容易丢分的坑

① BCEWithLogitsLoss和sigmoid套两次。如果你forward最后加了sigmoid,又用了nn.BCEWithLogitsLoss,相当于sigmoid套了两次,输出全被压到0.5附近,模型什么都学不到。正确做法:用BCEWithLogitsLoss,forward里不加sigmoid,预测时再手动套torch.sigmoid

② nn.Sequential写了就是0分。评分系统检测不到nn.Sequential内部的网络结构,会判定你不满足层数要求。必须在__init__里逐层定义,在forward里手动连接。这条对所有约束架构的题都成立。

第二类:计算机视觉(工程细节决定上限)

两年怎么考的:2024真假图像识别(区分真照片和扩散模型生成的假图)。2025一口气两道:合成语音检测、宫格图分类。

考点本质:CNN的搭建和调优。但真正拉开差距的,是那些"免费"的提升项:通道数、BatchNorm、数据增强,这些不违反约束又能涨分。同样两层卷积,一个人用16通道裸CNN,另一个人用128通道加BatchNorm加数据增强,准确率能差出好几个百分点。

内核(可迁移的)

先看清楚"数据到底是什么",再决定怎么处理。这是CV题最重要的一步,这两年三道CV题都卡在这里。

 评分对齐。2024真假图像那道,评分公式里塞了网络复杂度惩罚:层数越多复杂度分越低。不是模型越大越好,是在"最少结构换最高准确率"之间找平衡。先看清评分是Accuracy还是F1、有没有复杂度惩罚,再决定怎么搭。

 数据增强要看数据本质。这是2025合成语音那道的题眼。

这两年最能体现"换考法"的,就是CV这一类

 2024真假图像:常规CV分类,但加了复杂度惩罚。

 2025合成语音:给的不是音频,是梅尔频谱图,把声音转成一张128×94的图片。题目明说"可以纯当CV题做"。跨了模态,但落点还是CNN二分类。

 2025宫格图:表面是CV分类,实际是无监督学习。给的标签标的是"女装/美妆",跟"宫格图/非宫格图"完全无关,等于没给有效标签。你得先发现标签不能用,再想办法。

下次可能怎么变:换图像来源、再跨一种模态(比如别的信号转成图)、继续考无监督、或者评分里换一种惩罚项。内核始终是"先搞清数据是什么,再上CNN"。

最容易丢分的坑

① 频谱图不能随便做数据增强。普通图片水平翻转是合理的(猫翻转还是猫)。但频谱图水平翻转等于时间倒转,垂直翻转等于频率颠倒,物理上都不成立。能不能用某种增强,取决于你理解不理解这张"图"的物理含义。

② 拿到假标签直接训。宫格图那道,直接用csv里的"女装/美妆"标签训练,方向从一开始就全错。验证集还没标签,你连本地评估都做不了,得自己想办法(先聚类、或手动标一小批验证)。

③ 模型类名和忘了model.eval()。类名必须按题目要求(比如MyModel),改了名可能提交失败。预测前忘了切model.eval(),BatchNorm和Dropout会用错状态,分数虚低。

第三类:自然语言处理(限时是关键约束)

两年怎么考的:2024新闻文本分类(输入新闻,输出类别)。2025德语组合词分割(把"Fussballspieler"拆成"Fuss"、"ball"、"spieler")。

考点本质:把文本变成数字(Embedding),再用序列模型处理(LSTM或一维卷积),同时在限时里把模型训完。NLP题的数据量通常比CV大,时间预算是硬约束。

内核(可迁移的)

 文本数字化 + 序列建模这套流程。Embedding把字符或词变成向量,LSTM/CNN处理序列,最后接线性层输出。

 双向比单向好。一个字符是不是词尾,既看它前面、也看它后面。双向LSTM同时从两个方向读,但慢1.5到2倍,要算清时间够不够。

 限时下的取舍。BiLSTM慢、纯CNN快。如果BiLSTM只能跑5个epoch,纯CNN可能能跑20个。epoch不够模型就没训好。选模型时要把时间成本算进去。

这两年的"换考法"就体现在这里:2024是整句分类(一句话归一个类),2025变成序列标注(一个字符序列,逐个位置预测0还是1)。同样是NLP,一个是分类,一个是逐位置打标签,模型的输出结构完全不同。

下次可能怎么变:分类、序列标注之后,可能是别的形式;换种语言;换文本长度。但"Embedding加序列模型,在限时里训完"这个内核不变。

最容易丢分的坑

① 评分是F1不是Accuracy。NLP题常用F1。类别不均衡时,Accuracy会骗人(全猜多数类也能高Accuracy),F1才反映真实水平。组合词分割里"词尾"这个类是少数,要用pos_weight给它加权,不然模型会偷懒全猜0。

② 没在真实硬件上计时。限时10分钟包含训练加测试。LSTM在CPU上比GPU慢得多。一定要在和评测一样的硬件上实际跑一遍计时,别等提交了才发现超时。超时,0分。

③ 词表只在训练集建,还要处理未知词。测试集里会出现训练集没见过的字符或词,要预留一个"未知"位置,不然程序直接报错。

第四类:AI for Science(最该重点准备的一类)

这一类单独展开,因为它是大多数学生最虚、也最年年换花样的地方。

先说清楚它难在哪。AI for Science不是"AI题",是用AI的工具去解一个科学问题。门槛不在写代码,在学科知识。2024单摆那道,不懂微分方程、不理解阻尼振荡,连题目都读不完。2025化学那道,不理解反应机制,模型就是在瞎猜。

两年考点完全不同,正好说明背旧题没用:

 2024单摆(物理):给一个带阻力的单摆微分方程,参数未知,让你从残缺的摆角数据里回归出物理参数(绳长、阻力、外力等)。

 2025化学(化学):给一个金属有机反应的5个基元反应和8个差分方程,让你根据初始浓度预测半衰期

一个是物理一个是化学,一个回归参数一个预测结果,表面毫无关系。但它们背后是同一套范式。抓住这套范式,换成生物、电路、天体,你都能上手。

AI for Science通用范式(四步)

第一步:读懂科学背景和方程。题目一定会给你支配方程(微分方程、反应方程、某种规律)。这一步过不去,后面全白搭。所以这类题的真正门槛在动笔之前。

第二步:判断走哪条路。看你拿到的是什么、要求什么:

 给了方程、要你求方程里的未知参数 → 参数回归(单摆型)。

 给了机制、要你预测某个结果量 → 从机制提炼特征,再上简单模型(化学型)。

 数据有缺失、要你补全或外推 → 先回归参数,再用方程数值模拟

第三步:用PyTorch的自动求导拟合参数。这是最关键、也最被忽略的一点:PyTorch的nn.Parameter加梯度下降,不只能训神经网络,能拟合任何可微的参数。把物理/化学方程里的未知量定义成可学习参数,让方程的预测去逼近观测数据,反向传播就能把参数解出来。这是AI for Science最通用的武器。模板长这样:

import torch import torch.nn as nn  class PhysicsModel(nn.Module):     def __init__(self):         super().__init__()         # 把方程里的未知参数定义成可学习参数         self.alpha = nn.Parameter(torch.tensor([1.0]))         self.beta = nn.Parameter(torch.tensor([10.0]))  # 用学科常识给初值      def forward(self, omega, theta):         # 这里直接写物理方程,不是神经网络         return -self.alpha * omega - self.beta * torch.sin(theta)  model = PhysicsModel() optimizer = torch.optim.Adam(model.parameters(), lr=1e-3)  for epoch in range(20000):     a_pred = model(omega, theta)  # 方程算出的加速度     loss = nn.functional.mse_loss(a_pred, a_real)  # 和差分出的真实加速度比     optimizer.zero_grad()     loss.backward()     optimizer.step()  # 训完,model.alpha、model.beta就是解出来的物理参数

代码里的omega、theta、a_real,都是先对观测到的角度数据做差分、再算出角速度和角加速度得到的。

第四步:用解出的参数做数值模拟。参数拿到手,方程就完整了。要补全缺失数据、要预测未来某个时刻,用scipy.integrate.odeint(或手写欧拉法)正向积分方程就行。单摆那道求"下一次摆角过零的时刻",就是这么做的。

两种范式对照

参数回归型(单摆)
特征工程型(化学)
题目给你
方程,参数未知
反应机制 + 数据
核心动作
把参数设成可学习,梯度下降拟合
从机制构造有意义的特征
模型
方程本身就是模型
简单MLP或XGBoost就够
关键能力
把方程翻译成可微代码
看懂机制,知道该造什么特征

化学那道的题眼,是题目自己点破的:"Feature数比较少,不建议使用太复杂的模型。"意思很直白:这不是堆模型的题,是特征工程的题。3个初始浓度直接丢进网络,中间隔着5个基元反应的复杂关系,模型学不出来。你得从反应方程出发,构造像c(L₂M)×c(D)(正反应速率相关)这种有化学意义的特征,简单模型立刻就能拟合好。

下次可能换成什么

学科可能换成生物(种群增长、传染病SIR模型)、电学(RC/RLC电路)、流体、天体(轨道运动)。形式可能是回归参数、预测结果、补全缺失、外推未来。但内核永远是这四步:读懂方程 → 判断路线 → 可微参数拟合 → 数值模拟。准备AI for Science,就准备这套范式,别准备具体某道题。

AI for Science专属的坑

① 评分往往是断崖式的,要稳。化学那道的评分公式带5次方,误差越大分数掉得越狠:误差到10分数还有0.84,过约17就直接归0。几个实验预测崩了,平均分就被严重拖低。宁可整体偏保守,也不要个别样本出大错。

② 用学科常识给参数初值。梯度下降可能收敛到局部最优。别用纯随机初始化:单摆绳长一般0.5到5米,那β₁≈g/l大概在2到20之间,给个10当初值,比随机靠谱得多。这是物理建模做多了的人不会卡住的地方。

③ 差分求导要对齐数组长度。用差分近似导数时,每求一次导数组长度减1。θ有n个点,ω有n-1个,a有n-2个。三个数组要截断到一样长。长度不齐时PyTorch广播机制不报错,但算出来的loss是错的,最坑。

④ 半衰期这类量要插值提取,别取最近点。浓度每10秒记一次,直接找"第一个降到一半的点"有±10秒误差,断崖评分下足以致命。在跨过临界值的两个点之间做线性插值,精度能到1秒内。

⑤ 交通用方法,不是给训练集调出来的参数。题目明说各数据集参数不同。硬编码epoch数、针对某组数据调的学习率,测试集上大概率不work。用early stopping或足够大的epoch加收敛判断。

进考场前,再过一遍这张保命清单

前面分题型说的技巧,最后压成一张表。这几条和题目内容无关,纯粹是别让自己白白丢分:

会直接判0分的红线

nn.Sequential嵌套:评分系统看不到里面的结构,约束架构的题一律0分,逐层手写。

 模型类名、提交文件名、输出格式不按要求:可能直接提交失败或0分。

 超时:CPU/GPU限时包含训练加测试,先在同款硬件上计时。

 评分指标算错:F1要算所有类别的平均,漏了记0分。

不丢冤枉分的习惯

 先确认评分是Accuracy还是F1,有没有复杂度惩罚,是不是断崖式。评分标准决定你的策略。

 免费的提升项别浪费:BatchNorm、数据增强、通道数、归一化,不违反约束又涨分。

 A榜是给你调试的,B榜才是成绩。别为A榜过拟合。

 先跑通拿基础分,再优化。一个能提交的完整流程,比一个跑不通的复杂模型值钱得多。

 动手前先想清楚两件事:数据到底是什么,任务到底要什么。想明白了,模型选择自然就对了。

这周时间不多了,最该花在AI for Science那套范式上。其余的,进了考场稳住,别犯低级错误,把会的分拿全,就是好成绩。

IOI2026国家队选拔第一名的他,IOAI国际人工智能奥赛也拿到了银牌

IOAI人工智能奥赛获奖选手,被哪些世界顶尖大学抢走了?

NOAI人工智能奥赛与5大奥赛齐名,却不在白名单,还值得孩子花时间吗?
我们从2018年开始关注青少年AI竞赛
见证了NOAI从无到有
这里为你拆解这个赛事的每一个关键问题
欢迎关注公众号~
下周日NOAI国赛,分析总结了历年真题考点,希望能帮孩子临阵磨枪,多拿几分-第1张图片-四季读书网

2026暑期

  • NOAI基础:Python、数据处理与可视化

  • NOAI集训:信竞选手NOAI直通车

  • NOAI专题:AI算法提升+NOAI复赛高分

  • Kaggle竞赛:长期参加国际顶级AI竞赛

  • AI科研项目:专题科研、产出论文

👇加入NOAI交流群
👇暑期NOAI直通车
可以在公众号主页联系我们

抱歉,评论功能暂时关闭!