算法是人脑总结、设计、推导、试错打磨出来的数学干活流程,不是机器自己长出来的,是顶尖数学家、工程师一条条编出来的操作章法。
拆开四层,一步步看清来路:
一、源头:从现实规律里提炼数学规矩
人先观察世界:语言怎么组词、图片怎么认物体、事物有什么因果关联。
把这些看得见的规律,转成纯数学式子,只有加减乘除、大小比较。
机器只认得数字,不认道理,先把世事翻译成数学,这是造算法第一步。
二、成型:数学家搭框架,定死计算先后顺序
算法本质就是一套严格先后次序的计算流水线:
先算谁、后算谁、算出的数往哪存、错了怎么改、多份任务怎么分头并行。
靠高等数学、线性代数、概率统计做支撑,一步步推理证明,把这套流程定死、写严。
这就是白纸黑字、标准统一的原始算法框架。
三、落地:工程师改成机器能直接照抄的指令
纯数学算法人能看懂,显卡看不懂。
程序员把这套数学流程,转成机器逐条执行的代码指令,
规定好几万个计算核心怎么分工、数据怎么搬运、怎么同步不乱套。
到这一步,算法才变成硬件可以无脑重复执行的干活手册。
四、优化:反复实测暴力打磨,越跑越好用
写好不算完,上服务器、跑海量数据,一遍遍实测:
哪里算得慢、哪里发热大、哪里结果不准,
再回头微调公式、改流程、改分工方式,
删多余步骤、合并重复运算,最后练成高效能用的成熟商用算法。
补一句最关键的对照,贯通你前面所有疑问:
1. 算法 = 人定的规矩流程(智慧源头在人脑)
2. 显卡 = 照规矩死干活的苦力(只会无脑重复)
3. 模型 = 用海量运算按规矩练出的成品能力
不是机器生出聪明算法,
是人用高级智慧造出算法规矩,再使唤海量低级重复运算,堆出智能效果。