人工智能的基础知识参考:
注意:传统机器学习和深度学习并不是一回事,最明显的,sklearn只能用于传统机器学习,而深度学习就需要用tenserflow或者pytorch等深度学习框架。
具体有哪些相关的内容需要进行区分,接下来进行持续总结记录。
大模型是指什么?
“大模型”通常指大规模深度学习模型,但严格来说,大模型 ≠ 深度学习的全部范畴。以下是关键区别与联系:
1. 大模型的本质
定义:参数量极大(通常数十亿到万亿级)、依赖海量数据和算力的模型,例如:
语言模型:GPT-4、PaLM、LLaMA(基于Transformer)。
多模态模型:CLIP、DALL·E(结合视觉与语言)。
核心特点:
规模驱动:性能随参数/数据量增长而提升(Scaling Law)。
通用性强:通过预训练适应多种任务(如文本生成、问答)。
2. 大模型与深度学习的关系
大模型属于深度学习:均使用神经网络(如Transformer、CNN)自动学习特征。
但深度学习不一定是大模型:
小规模深度学习:如MNIST手写识别(小型CNN)、情感分析(LSTM)。
传统深度学习:ResNet-50(图像分类)、BERT-base(参数量仅1.1亿)。
类型 参数量级 数据需求 典型例子 大模型 十亿~万亿 海量 GPT-4、Gemini 普通深度学习模型 百万~十亿 中等 ResNet、BERT-base 3. 大模型的特殊之处
架构统一性:多数基于Transformer(如GPT的Decoder-only结构)。
预训练+微调范式:先在无监督数据上预训练,再针对任务微调。
涌现能力(Emergent Abilities):仅在模型规模达到阈值时出现的能力(如复杂推理)。
4. 非深度学习的“大模型”存在吗?
传统机器学习模型(如随机森林、SVM)无法扩展到“大模型”级别:
参数量与特征工程强相关,无法自动学习。
计算效率低,无法处理高维数据(如文本、图像)。
例外:某些早期统计模型(如Google的N-gram语言模型)可能数据量大,但不属于“大模型”范畴。
5. 为什么大模型多为深度学习?
神经网络的特性:
可扩展性:GPU/TPU并行计算支持大规模训练。
端到端学习:无需人工特征工程,直接从原始数据学习。
通用近似性(Universal Approximation):理论上可拟合任意复杂函数。
总结
大模型特指超大规模的深度学习模型,尤其是基于Transformer的预训练模型。
深度学习包含大模型,但小规模深度学习(如MobileNet)不算大模型。
传统机器学习模型无论数据量多大,均不称为“大模型”。
类比:
深度学习像“汽车”,大模型则是“超级跑车”——后者是前者的子集,但性能、规模和复杂度远超普通车型。
关于特征设计
大模型训练时输入的数据是否需要提前设计好特征
在大模型(如GPT、BERT等)训练时,输入数据通常不需要人工提前设计特征,这与传统机器学习(如逻辑回归、随机森林)有本质区别。大模型的核心优势是能够通过深度神经网络自动从原始数据中学习特征表示。以下是详细分析:
1. 大模型如何处理输入数据?
原始数据直接输入:大模型通常直接处理原始文本、图像或音频(如BERT处理文本、ViT处理图像)。
特征提取自动化:通过模型的深层神经网络(如Transformer的Self-Attention机制)自动提取高层次特征。
示例:
文本:输入句子
"深度学习很强大"
,模型会将文本拆分为词向量(Token Embedding),无需人工定义“情感词”或“语法结构”等特征。图像:输入一张图片,Vision Transformer(ViT)直接将图像分块为像素序列,无需人工设计边缘、纹理等特征。
2. 为什么大模型不需要人工设计特征?
端到端学习:大模型是端到端(End-to-End)的,从输入到输出的全过程由神经网络自动优化。
隐式特征学习:模型通过海量数据和庞大参数量,隐式学习数据中的复杂模式(如语言语法、图像语义)。
对比传统机器学习:
步骤 传统机器学习(如SVM) 大模型(如GPT) 特征工程 必须人工设计(如TF-IDF) 无需设计,模型自动学习 数据输入 结构化特征向量 原始文本/图像/音频 3. 大模型的数据预处理 ≠ 特征工程
虽然不需要人工设计特征,但仍需基础预处理:
文本数据:
分词(Tokenization)、填充/截断(Padding/Truncation)。
添加特殊标记(如
[CLS]
、[SEP]
)。图像数据:
归一化(Normalization)、调整尺寸(Resize)。
注意:这些步骤是数据规范化,而非特征设计。
4. 什么情况下仍需人工干预?
任务适配:针对特定任务调整输入格式(如对话任务需添加
[USER]
和[BOT]
标记)。领域适配:在专业领域(如医疗、法律),可能需要添加领域相关的特殊标记或预训练数据。
数据质量:清洗噪声数据(如去除乱码文本、模糊图像)仍很重要。
5. 大模型 vs 传统模型的本质区别
传统模型:依赖特征工程,模型能力受限于人工设计的特征(如SVM的核函数选择)。
大模型:依赖数据量和算力,特征提取能力由模型架构和参数量决定。
总结
不需要人工设计特征:大模型通过自注意力机制等结构自动学习特征。
需要基础预处理:如分词、归一化,但不同于传统特征工程。
优势:减少人工干预,适应更复杂的任务;代价:需要巨量数据和算力。
如果数据是“原材料”,大模型就像一个智能厨房,能自己决定如何切菜、调味(自动特征提取),而传统机器学习则需要厨师(工程师)提前切好菜(设计特征)才能下锅。
传统机器学习的输入数据需要提前设计好特征吗,比如线性回归?
是的,传统机器学习模型(如线性回归、SVM、随机森林等)通常需要人工提前设计特征(即特征工程),这与深度学习/大模型的端到端学习形成鲜明对比。以下是具体分析:
1. 为什么传统机器学习需要特征工程?
模型能力有限:传统模型(如线性回归)本质是浅层网络或简单数学函数,无法自动从原始数据(如图像像素、文本字符)中提取高层次特征。
依赖特征输入:模型的性能直接受特征质量的制约,特征决定了模型的上限。
示例:线性回归预测房价
原始数据:房屋的“面积”、“楼层”、“房龄”。
必须设计特征:
直接输入数值:
[面积=120, 楼层=3, 房龄=10]
。或构造新特征:
[面积/房间数, 是否学区房]
(需人工定义规则)。模型输入:设计好的特征向量(如
[120, 3, 10, 12, 1]
)。2. 特征工程的具体内容
传统机器学习中,特征工程可能包括:
步骤 说明 示例 特征提取 从原始数据中提取结构化特征 文本→TF-IDF向量;图像→SIFT特征 特征选择 筛选对目标变量预测最有用的特征 用卡方检验选择关键文本词 特征构造 人工组合或变换特征(非线性关系) 将“长度”和“宽度”组合为“面积” 特征缩放 标准化/归一化(如Z-score) 将房价从[0, 1e6]缩放到[0, 1] 3. 对比:传统机器学习 vs 深度学习
方面 传统机器学习(如线性回归) 深度学习(如CNN、Transformer) 特征来源 人工设计 模型自动从原始数据学习 输入数据 结构化特征向量 原始数据(文本、图像、音频) 适用场景 小数据、低维特征 大数据、高维复杂数据 计算成本 低 高(需GPU/TPU)
4. 传统机器学习的例外情况
少数传统模型可以部分自动化特征处理,但仍有限:
决策树/Random Forest:能处理原始数据(如分类变量),但性能仍受特征质量影响。
PCA(降维):自动提取主成分,但需先提供结构化输入。
5. 关键结论
必须设计特征:线性回归、SVM等模型需要人工将原始数据转换为模型可理解的数值特征。
深度学习优势:省去特征工程,但需要更多数据和算力补偿。
实际应用:
若数据量小、特征明确(如表格数据),传统机器学习+特征工程更高效。
若数据复杂(如图像、文本),深度学习是更优解。
示例代码(线性回归的特征工程):
# 假设原始数据是房屋信息(原始格式:字典列表) raw_data = [ {"area": 120, "floors": 3, "age": 10}, {"area": 90, "floors": 2, "age": 5} ] # 人工特征工程:提取数值特征 X = [[item["area"], item["floors"], item["age"]] for item in raw_data] # 特征矩阵 y = [850000, 600000] # 房价标签 # 训练线性回归模型 from sklearn.linear_model import LinearRegression model = LinearRegression() model.fit(X, y)
总结:特征工程是传统机器学习的核心环节,而深度学习通过神经网络将其自动化。
关于数据标签
首先,什么是带标签的数据,什么是标签?
带标签的数据是指每条数据(如图片、文本、音频等)都附带一个“标签”(Label),用于告诉模型这条数据的正确答案或类别。标签是监督学习中模型学习的“目标”,模型通过不断比较自己的预测和真实标签之间的差异来调整参数。
1. 标签是什么?
标签可以理解为数据的“注释”或“答案”,形式多样:
分类任务:离散的类别(如“猫”、“狗”)。
回归任务:连续的数值(如房价、温度)。
其他任务:边界框(目标检测)、文本描述(图像生成)等。
2. 带标签数据的例子
(1)图像分类
数据:一张图片。
标签:图片的类别。
示例:
图片:🐱
→ 标签:"猫"
图片:🌻
→ 标签:"向日葵"
(2)目标检测
数据:一张图片。
标签:图中物体的位置和类别(用边界框标注)。
示例:
图片:一辆汽车和一只狗
→ 标签:[ {"类别": "汽车", "边界框": [x1, y1, x2, y2]}, {"类别": "狗", "边界框": [x3, y3, x4, y4]} ]
(3)文本情感分析
数据:一段文本。
标签:情感倾向。
示例:
文本:
"这部电影太精彩了!"
→ 标签:"积极"
文本:
"服务很差,再也不会来了。"
→ 标签:"消极"
(4)语音识别
数据:一段音频。
标签:对应的文字转录。
示例:
音频:用户说“打开灯光”
→ 标签:"打开灯光"
(5)回归问题(预测数值)
数据:房屋特征(面积、楼层、位置等)。
标签:房价。
示例:
数据:
{"面积": 120, "楼层": 3, "位置": "市中心"}
→ 标签:850000
(单位:元)3. 标签的常见格式
分类任务:整数(如
0
、1
)或字符串(如"猫"
、"狗"
)。目标检测:JSON/XML文件,包含边界框坐标和类别。
文本任务:情感标签(
正面/负面
)或翻译对照("Hello" → "你好"
)。时间序列:未来某一时刻的数值(如股票价格)。
4. 标签从哪来?
人工标注:通过标注员手动打标签(成本高,但质量好)。
自动生成:
利用规则(如“用户评分≥4星 → 正面评价”)。
通过其他模型生成(弱监督学习)。
用户行为:
例如,电商平台的“点击/购买”数据可作为推荐系统的隐式标签。
5. 无标签数据 vs 带标签数据
数据 示例 用途 带标签数据 (🐱, "猫") 监督学习(训练分类模型) 无标签数据 🐱(无类别信息) 无监督学习(如聚类、生成模型) 关键总结
标签是数据的“答案”,告诉模型应该学习什么。
形式多样:类别、数值、文本、边界框等。
获取成本可能很高,尤其是需要人工标注时(如医学图像标注)。
如果需要训练一个监督学习模型(如图像分类),标签是必不可少的!
传统机器学习和深度学习是否需要带标签的数据?
传统机器学习和深度学习是否需要带标签的数据,取决于具体的学习范式(监督学习、无监督学习、半监督学习等),而不是取决于是传统机器学习还是深度学习,要看学习方式。
以下是详细对比:
1. 监督学习(需要带标签数据)
适用场景:
传统机器学习:线性回归、逻辑回归、SVM、随机森林等。
深度学习:CNN(图像分类)、RNN(机器翻译)、Transformer(文本生成)等。
特点:
必须有明确的输入-标签对(如
图片 → "猫"
,文本 → "积极情感"
)。标签用于计算损失函数(如均方误差、交叉熵),指导模型优化。
示例:
传统ML:用房价数据(面积、楼层为特征,房价为标签)训练线性回归。
深度学习:用ImageNet(图片+类别标签)训练ResNet。
2. 无监督学习(不需要带标签数据)
适用场景:
传统机器学习:K-Means聚类、PCA降维、关联规则(Apriori)。
深度学习:自编码器(Autoencoder)、GAN(生成对抗网络)、对比学习(SimCLR)。
特点:
仅使用原始数据(如未标注的图片、文本),模型自动发现模式或结构。
标签不存在或隐式存在(如GAN的生成器通过判别器的反馈学习)。
示例:
传统ML:对用户行为数据聚类(无标签),发现潜在用户分组。
深度学习:用无标签图像训练GAN生成新图片。
3. 半监督/弱监督学习(部分带标签数据)
适用场景:
传统ML:标签传播算法(Label Propagation)。
深度学习:FixMatch(半监督图像分类)、弱监督目标检测。
特点:
少量带标签数据 + 大量无标签数据。
通过无标签数据提升模型泛化能力。
示例:
用1000张标注的医学图像和10万张未标注图像训练分类模型。
4. 强化学习(通过环境反馈学习)
适用场景:
传统ML:Q-Learning(表格型强化学习)。
深度学习:Deep Q-Network(DQN)、PPO(策略梯度)。
特点:
无显式标签,模型通过环境奖励/惩罚信号学习。
数据形式为
状态-动作-奖励
序列。示例:
AlphaGo通过自我对弈(无人工棋谱标签)学习围棋策略。
关键对比总结
学习类型 是否需要标签 传统机器学习例子 深度学习例子 监督学习 是 SVM分类 BERT文本分类 无监督学习 否 K-Means聚类 GAN图像生成 半监督学习 部分需要 标签传播算法 FixMatch 强化学习 无标签,需环境反馈 Q-Learning DQN 5. 如何选择?
有高质量标签 → 监督学习(效果通常最优)。
无标签但数据量大 → 无监督/自监督学习。
少量标签+大量无标签数据 → 半监督学习。
交互式任务(如游戏、机器人) → 强化学习。
注:深度学习的优势在于,即使是无监督/强化学习,也能通过神经网络自动提取复杂特征(如SimCLR的对比学习),而传统机器学习在无监督任务中更依赖人工设计的特征(如PCA的线性变换)。