Software 2.0 • Andrej Karpathy 2017

本文中 Andrej Karpathy 提出了一个革命性的观点:神经网络不仅仅是机器学习工具箱中的另一个工具,而是软件开发方式的根本性转变,即从传统的“Software 1.0”过渡到“Software 2.0”。Software 1.0 依赖于人类编写的明确指令,而 Software 2.0 则基于数据集和神经网络架构,通过训练来生成程序。Karpathy 认为这种转变不仅提高了软件性能,还改变了编程范式,使得数据集的管理和优化成为软件开发的核心。 ➡️ Software 1.0 vs. Software 2.0 Software 1.0: 由人类程序员使用编程语言(如 Python、C++)编写明确的指令,逐行代码确定程序行为。 Software 2.0: 使用神经网络的权重表示程序,由数据集和神经网络架构定义,训练过程将数据集“编译”成最终的神经网络。 ➡️ 转变实例 视觉识别: 从工程化特征和机器学习模型(如 SVM)转变为使用大规模数据集和卷积神经网络(CNN)。 语音识别和合成: 从预处理和传统模型(如高斯混合模型和隐马尔可夫模型)转变为完全依赖神经网络(如 WaveNet)。 机器翻译: 从基于短语的统计技术转变为神经网络模型,特别是在多语言和弱监督环境中。 游戏: 从手工编码的程序(如围棋程序)转变为神经网络模型(如 AlphaGo Zero)。 数据库: 使用神经网络替代传统数据管理系统组件,提高速度和节省内存。 ➡️ Software 2.0 的优势 计算同质性: 神经网络主要由矩阵乘法和 ReLU 组成,简化了实现和优化。 易于硬件实现: 简单的指令集使得神经网络更容易在定制 ASIC 和神经形态芯片上实现。 恒定运行时间和内存使用: 每次前向传递所需的 FLOPS 和内存使用量是恒定的。 高度可移植: 矩阵乘法序列比传统二进制文件或脚本更容易在不同计算配置上运行。 灵活性: 可以通过调整网络结构和重新训练来快速适应新的性能需求。 模块融合: 可以通过反向传播优化相互交互的模块,提升整体性能。 ➡️ Software 2.0 的局限性 可解释性差: 大型神经网络的工作原理难以理解。 潜在的失败模式: 可能出现非直观和尴尬的错误,或“静默失败”,如训练数据中的偏见。 对抗样本和攻击: 反映了这种技术堆栈的非直观特性。 ➡️ 编程范式的变化...

July 13, 2024 · 2 min · fisherdaddy

Andrej Karpathy 在 AI Ascent 2024 上演讲的核心内容

本文来自Andrej Karpathy 在红杉组织的 AI Ascent 2024 上的演讲视频,我用 Claude3 opus 提取了 Karpathy 提到的核心观点。 核心观点 目前各家公司都在努力构建一个 “LLM OS”,包括获取外围设备(文本、图像、音频等)作为输入,用LLM作为CPU,并连接到现有的软件基础设施上。未来可能会出现一些默认应用(如 Windows 系统自带的 Edge 浏览器),但也会有一个生机勃勃的生态系统。 目前 LLM 生态系统包括完全开源的模型(如Pythia、LLaMA等)、只开放权重的模型和专有模型。未来可能会类似于操作系统生态(如 Windows系统、Mac系统、Linux操作系统,而Linux 有无数的分发版本)。 规模化训练这些模型非常困难,是一个非常复杂的分布式优化问题。实际上,目前这方面的人才相当稀缺。 模型规模是最重要的,但还需要很多其他细节,如数据集准备、算法优化等。单纯给钱和算力还训练不出 SOTA(“State of the Art"的缩写,意为"最先进"或"最高水平)模型,还需要很多专业知识。 扩散模型和自回归语言模型是概率建模的两种形式,可能存在将二者统一的空间。目前模型能效还比人脑低几个数量级,未来可能的改进方向包括针对性的计算架构、低精度训练、稀疏性等。 马斯克管理公司的特点包括保持团队小而精干、办公室氛围紧张忙碌、鼓励无用会议早退、与基层工程师直接沟通、果断消除瓶颈等。 Karpathy 更关心 AI 生态系统的健康发展,而非某家公司。他希望生态像珊瑚礁一样丰富多彩,对巨头垄断持谨慎态度。 字幕详情 1 00:00:03,190 --> 00:00:06,535 我很高兴介绍我们的下一个也是最后一个演讲者, Andrej Karpathy. 2 00:00:06,894 --> 00:00:08,737 Karpathy可能不需要介绍. 3 00:00:08,797 --> 00:00:11,941 我们大多数人可能在YouTube上长时间观看过他的视频. 4 00:00:12,901 --> 00:00:17,588 他以深度学习研究闻名. 5 00:00:17,667 --> 00:00:22,452 他设计了斯坦福大学的第一个深度学习课程, 是OpenAI创始团队的一员. 6 00:00:23,454 --> 00:00:28,795 领导了特斯拉的计算机视觉团队, 现在又成为一个神秘人物, 因为他刚刚离开了OpenAI....

April 9, 2024 · 11 min · fisherdaddy