PyTorch 实战(二):构建第一个全连接网络
引言上篇文章我们学了张量操作和自动微分——相当于拿到了砖头和水泥。这篇我们来盖第一栋房子:用 PyTorch 的 nn.Module 构建全连接神经网络,完成手写数字识别。 写完这篇文章的代码,你就走通了深度学习的完整流程:数据加载 → 模型定义 → 训练 → 评估。 前置知识 PyTorch 实战(一):张量操作与自动微分 机器学习入门:概念与分类全解 尤其是 PyTorch(一)中的 requires_grad、backward()、梯度更新——这些是本文的基础。 一、项目结构总览12345678910111213┌──────────────┐ ┌──────────────┐ ┌──────────────┐│ DataLoader │────▶│ Model │────▶│ Trainer ││ 数据加载器 │ │ 模型定义 │ │ 训练循环 │├──────────────┤ ├──────────────┤ ├──────────────┤│ - MNIST 数...
PyTorch 实战(一):张量操作与自动微分
引言 上一篇文章用了 KNN 做分类,KNN 并不需要梯度。但从神经网络开始,自动求导(Autograd) 就成了最核心的基础设施。 PyTorch 之所以成为深度学习领域的第一框架(没有之一),两个原因: 动态计算图 — 边运行边构建,调试方便,灵活度高 自动求导 — 你只需要定义前向传播,反向传播自动算好 本文从零开始,带你掌握 PyTorch 的两大核心:张量操作 和 自动微分。 前置知识 Python 编程基础(二):变量、数据类型和基本运算 Python 编程基础(三):NumPy——AI工程师的第一件武器 AI数学基础(一):线性代数——让机器学会看向量 会用 NumPy 就够了,PyTorch 的 Tensor API 和 NumPy 几乎一模一样。 一、安装与配置1pip install torch torchvision torchaudio 验证安装: 12345import torchprint(f"PyTorch 版本: {torch.__version__}")print(f"CUDA 可用...
机器学习入门:概念与分类全解
引言你学了 Python,补了数学,知道神经网络长什么样——但机器学习到底是什么? 简单说:机器学习就是让计算机从数据中自动学习规律,然后用学到的规律做预测或决策。 传统编程是你告诉计算机每一步怎么做,机器学习是你给计算机大量例子,让它自己找出规则。 比如识别猫: 传统编程:写规则「有尖耳朵、有胡须、会喵喵叫 → 是猫」——太死板,换只品种就不认了 机器学习:给 10 万张猫和狗的图片,让模型自己发现「猫的特征分布」——新图片来了也能猜 看完这篇,你会掌握机器学习的三大分类、核心概念,并且能手写第一个分类模型。 前置知识 Python 编程基础(一):从零搭建你的AI开发环境 AI数学基础(二):概率论——教机器做不确定的决策 只要会 Python 基础语法就能跟上。不需要高等数学。 一、机器学习的三大分类所有的机器学习问题都可以归入三类: 1. 监督学习(Supervised Learning)有标签数据,模型学习「输入 → 输出」的映射关系。 123# 训练数据:既有特征(花的尺寸),又有标签(品种)# 特征: [花萼长度, 花萼宽度, 花瓣长度, 花瓣宽度]# 标...
AI数学基础(一):线性代数——让机器学会"看"向量
AI数学基础(一):线性代数——让机器学会”看”向量300年前那个改变世界的夜晚1691年的一个秋夜,法国小镇上,一个17岁的少年在昏暗的烛光下写日记。他的名字叫亚伯拉罕·棣莫弗(Abraham de Moivre)。 这个少年可能不会想到,他那天晚上在日记里随手画的一个坐标系——用两条垂直的直线来表示平面上的点的位置——会在300多年后,成为让人工智能”看见”这个世界的基础工具。 你想想看,当你用手机拍照时,照片在电脑眼里是什么? 就是一堆数字。 一张1920×1080的图片,在AI眼里就是一个1920×1080的数字矩阵。每个数字代表一个像素的亮度或颜色值。AI要”看懂”这张图,就得对这些数字进行运算——而这些运算,全都是线性代数。 所以今天,咱们就来聊聊:线性代数到底是什么?为什么AI离不开它? 一、标量、向量、矩阵:从地图坐标到Excel表格1. 标量:就是一个数字最简单的开始。标量(scalar)就是一个单独的数字。 15、3.14、-2、100 比如:”今天气温23度”——这个”23”就是标量。它只有一个数值,没有方向。 2. 向量:有方向的数组向量(vector...
AI数学基础(三):微积分——理解"变化"的语言
AI数学基础(三):微积分——理解”变化”的语言17世纪,伦敦瘟疫中的天才1665年,伦敦爆发了一场可怕的瘟疫(后来被称为”伦敦大瘟疫”)。 剑桥大学被迫关闭,一个23岁的年轻人收拾行李,回到了家乡林肯郡的伍尔索普庄园。 他的名字叫艾萨克·牛顿(Isaac Newton)。 接下来的两年里,在这个安静的乡村庄园中,牛顿做出了改变人类历史的发现:微积分(Calculus)。 他当时在思考一个看似简单的问题: “物体的瞬时速度到底是什么?” 你想想看,如果你开车,速度表显示”60 km/h”——这个”瞬时速度”是怎么来的?你总不能”瞬间”跑60公里吧? 牛顿的回答:用极限的思想,把”变化”放大到无穷小,就能捕捉到那一刻的变化率。 300多年后,这个”捕捉变化”的思想,成了人工智能最核心的工具。 因为深度学习的本质,就是”找最优”——而找最优,需要理解变化。 一、为什么学AI要懂微积分?深度学习的终极目标:找最优训练一个AI模型(比如识别猫狗的神经网络),本质上是在做一件事: 调整参数,让”错误”最小。 这个过程叫做优化(Optimization)。 而优化的核心工...
AI数学基础(二):概率论——教机器做"不确定的决策"
AI数学基础(二):概率论——教机器做”不确定的决策”1654年,赌桌上的争吵改变世界1654年的某一天,法国巴黎的一家咖啡馆里,两个贵族为一件事吵得面红耳赤。 他们叫帕斯卡(Blaise Pascal)和费马(Pierre de Fermat)——对,就是中学数学课本里那个”费马大定理”的费马。 他们在争论一个看似简单的问题: 两个赌徒玩掷硬币游戏,约定先赢4次的人拿走全部赌注。如果游戏进行到3:2时(A赢了3次,B赢了2次)被迫中止,赌注应该怎么分才公平? 这个问题看起来简单,却难住了当时所有数学家。帕斯卡和费马通过通信,发明了概率论的基础——用数字来描述”不确定性”。 300多年后,这个”赌桌上的争吵”成了人工智能的核心工具。 因为现实世界充满不确定性,而AI必须学会在不确定中做决策。 一、为什么AI离不开概率?现实世界不是非黑即白你想想看: 医疗诊断:AI看CT片子,说”这个结节有87%的概率是恶性的”——不是”是”或”不是”,而是概率。 语音识别:你说”帮我打开空调”,AI听到的是一堆声波,它要判断”最可能”是什么词。 自动驾驶:前面有个模糊的影子,是塑料袋还是...
Python编程基础(三):NumPy——AI工程师的第一件武器
假设你是一个小学老师……班上有50个学生,期末考试结束了,你手里有50张成绩单。 现在校长让你做几件事:算全班的平均分、找出最高分和最低分、看看有多少人及格、按成绩排个名次。 如果你一张一张地看,那得看50遍。而且下次月考你还得再这么干一遍。 你肯定不会这么傻。你会拿一张表,把50个分数写成一列,然后一眼扫过去就能找到最高分,拿个计算器一按就能算平均分。 你已经在不知不觉中使用了**”批量处理”**的思维方式——不是一次处理一个数据,而是一次处理一整批数据。 NumPy做的工作,就是这个。 为什么AI需要NumPy?先看一个问题:如果你的大脑处理一个数字要1秒钟,那处理一百万个数字要多久? 如果一次只处理一个——一百万秒,大约11.5天。 但如果你的大脑升级了,可以同时处理一百万个数字——只要一秒。 从11.5天到1秒,这就是NumPy带来的效率提升。 在Python原生世界里,你要处理一百万个数字,就得用一个包含一百万个元素的列表,然后一个一个地算。Python的列表是”慢的”,因为它设计上就不是一个做数学计算的工具。 而NumPy的数组(array)是”快的”,因为它底层用C...
Python编程基础(二):变量、数据类型和基本运算
你刚入职一家快递公司当仓库管理员……第一天上班,主管把你带到仓库面前,指着里面堆积如山的包裹说:”这就是你以后的工作范围了。每个包裹上都贴着标签——寄件人、收件人、重量、地址。你的任务就是管理好这些包裹,确保它们准确无误地发出去。” 你看了看,包裹有大有小,有轻有重,有些是文件,有些是水果,有些是电子产品。 主管接着说:”你需要做好三件事:分类、查找、处理。“ 在Python的世界里,你也是仓库管理员。只不过你管理的不是快递包裹,而是数据。 而管理数据的第一步,就是学会使用变量。 变量:贴了标签的盒子什么是变量? 想象你的仓库里有一排排的盒子,每个盒子上贴着一个标签。标签上写着”张三的包裹”或者”10号货架”,你通过标签找到对应的盒子,打开一看,里面装的是你存进去的任何东西。 Python里的变量就是这个”标签”。你在代码里写: 123name = "张三"weight = 2.5is_fragile = True 这三行代码做了什么? 拿了三个盒子 第一个盒子上贴了标签 name,里面放了字符串”张三” 第二个盒子上贴了标签 weight,里面放了数字 ...
Python编程基础(一):从零搭建你的AI开发环境
想象你是一家餐厅的厨师……你刚入职一家餐厅,老板对你说:”咱们店的特色菜谱我已经写好了,你需要照着做。” 你翻开菜谱,发现上面全是法文。 你懵了。 这时候老板又说:”不过别怕,我给你准备了两样东西——第一,一本中法对照词典;第二,一个已经帮你备好所有食材的厨房。你只需要照着菜谱,一步一步来就行。” 在AI开发的世界里: 菜谱 = AI算法(那些看起来吓人的数学公式和逻辑) 法语 = Python(这门编程语言) 中法对照词典 = 接下来要学的Python基础 备好食材的厨房 = 我们今天要搭建的开发环境 你看,事情没那么复杂对吧? 为什么偏偏是Python?你可能听说过很多编程语言:C++、Java、JavaScript、Rust……每个都有一群忠实粉丝在互联网上吵架。 但在AI这个领域,Python是毫无争议的王者。为什么? 三个原因,都很实在: 第一,好学。 Python的语法就像在写英文句子,没有乱七八糟的大括号和分号。你写 print("你好"),它就真的打印”你好”。别的语言可能让你先声明变量类型,再写个m...
拾光集AI导航——366个精选网站,帮你省下无数搜索时间
你是不是也这样?打开浏览器,收藏夹里有几百个书签,但你真正能找到的,不超过十个。 每次想找个工具——比如”那个免费的AI绘画网站叫什么来着?”——又要重新搜一遍Google,翻三页结果,点进去一看,要么要付费,要么已经挂了。 我们也是这样。所以做了一个决定:把真正好用的网站,整理到一个地方。 这就是 拾光集 AI 导航。 拾光集是什么?一句话:366 个精选网站,23 个分类,每一个都是人工筛选、亲自标注。 不是那种机器爬了几千个链接、连描述都没有的”大杂烩”导航站。我们的原则很简单: 亲自用过才收录。没试过的不往里塞。 链接失效及时清理。每日检查,挂了的就下架。 分类清晰,一秒找到。23 个分类,覆盖你日常 99% 的需求。 里面有什么?按照使用频率,给你列几个最实用的分类: 🤖 AI 工具这是收录最多、更新最快的分类。ChatGPT、Claude、Gemini、通义千问、文心一言、讯飞星火——主流的大模型对话工具都在。还有 Midjourney、Stable Diffusion、Adobe Firefly 等 AI 绘画工具。 不是简单列个链接,每个工具都附带了简短的使...
