第900章 大模型编程和普通编程的区别(2/2)
“y不一定准确,无限接近正确,就像一个苹果,它是苹果的相似度有多少,差不多就行了,大概就是个苹果。”
这正是大模型的“模糊匹配”原理。尤其在图像识别中,模型不是100%判断“这是苹果”,而是给出一个“概率”:
?\t苹果:87%
?\t番茄:10%
?\t柿子:3%
这时候,它选“苹果”作为预测结果。但如果这个苹果有点变形、颜色有点偏,就会导致识别不准。为什么?因为模型只知道“相似度”,不知道“逻辑规则”。
?
五、从“编程范式的演化”看待这个变化
1.早期计算机时代:硬件编程
?\t二进制,汇编语言
?\t对人极不友好
2.高级语言时代:规则编程
?\tc、python、Java等
?\t程序员用明确逻辑告诉机器该做什么
3.现在:数据驱动编程(大模型)
?\t人类不再写规则
?\t而是提供大量数据
?\t机器自动学会规则(权重)
这就是所谓的“从编程到训练”。
?
六、例子:传统写代码vs大模型生成代码
传统写代码
defis_apple(iage):
#提取颜色
#提取形状
#判断是否红色圆形果实
#...
returntrueorFalse
大模型写代码:
模型输入:图像
模型输出:分类概率{苹果:87%,橙子:8%,柿子:5%}
你写的不是代码,而是设计数据和目标,再让模型自己学会判断。
?
七、优点与缺点总结
优点
缺点
不需要人工写逻辑规则
推理不可解释
可处理复杂、模糊的任务
容易出现“幻觉”或“偏差”
泛化能力强,适应变化
训练代价高,资源消耗大
可以应用于语音、图像、自然语言等非结构化数据
无法100%控制输出,难以保证结果一致性
?
八、未来趋势:人类+模型的协同编程
你提到“很多小模型组成一个大模型”也很有前瞻性。确实如此,目前的大模型已经不再是一个“统一体”,而是一个个“专家子模型”协作完成的。例如:
?\t语言理解模块
?\t数学计算模块
?\t图像识别模块
?\t编码解码模块
将来编程也可能是这样:
?\t人类提供目标、约束、价值判断
?\t模型自己选用子模块、自动调参、微调行为
?
九、总结金句
传统编程是告诉机器“怎么做”,大模型编程是告诉机器“学会怎么做”。
大模型不会像人那样“理解”,但它会像人那样“模仿”。
传统代码追求精确输出,大模型追求最大概率正确。
大模型编程的本质,是在不确定性中寻找最可能的确定性。
?