多模态AI入门
从文本到多感官智能
🎯学习目标
- 1理解多模态AI的核心概念
- 2了解多模态模型的架构原理
- 3掌握多模态应用的设计思路
开篇:超越文本的AI
传统AI主要处理文本,但真实世界是多感官的:图像、音频、视频、触觉……
多模态AI让机器像人类一样,同时理解和使用多种模态的信息。
什么是多模态AI?
**多模态(Multimodal)**指能够处理和理解多种类型数据(模态)的AI系统。
**常见模态**: - 文本:自然语言 - 图像:视觉信息 - 音频:声音和语音 - 视频:时序视觉 - 3D:空间信息 - 触觉:压力、温度等
**多模态能力**:
**输入理解**: - 看图说话(图像→文本) - 听音识别(音频→文本) - 跨模态检索(文搜图)
**输出生成**: - 文生图(Text-to-Image) - 文生视频(Text-to-Video) - 文生音频(Text-to-Audio)
**跨模态交互**: - 图像问答(Image Q&A) - 视觉对话 - 多模态推理
**为什么重要?** - 更丰富的交互体验 - 更准确的信息理解 - 更广的应用场景
💡 多模态AI能理解、生成和交互多种类型的数据,突破单一模态的限制。
多模态模型架构
**架构一:早期融合** ``` 图像 → Encoder → ┐ ├→ 融合层 → Decoder → 输出 文本 → Encoder → ┘ ``` 特点:在特征层面早期融合,优点是模态交互充分,缺点是模态表示对齐困难。
**架构二:晚期融合** ``` 图像 → Encoder → 特征A → ┐ ├→ 融合层 → 输出 文本 → Encoder → 特征B → ┘ ``` 特点:在各模态独立编码后融合,优点是设计简单,缺点是跨模态交互受限。
**架构三:交叉注意力(主流)** ``` 文本编码 → ┐ ├→ Cross-Attention → 输出 图像编码 → ┘ ``` 特点:通过注意力机制让模态间信息流动,如CLIP、GPT-4V、Gemini。
经典多模态模型
**CLIP(Contrastive Language-Image Pre-training)** - 模型:OpenAI - 能力:文本-图像对齐,实现文搜图、图搜文 - 原理:对比学习,让文本和图像在共享空间对齐
**GPT-4V(GPT-4 with Vision)** - 模型:OpenAI - 能力:理解图像,支持图像+文本输入 - 原理:视觉编码器+语言模型,交叉注意力融合
**Gemini(Google)** - 模型:Google DeepMind - 能力:文本、图像、音频、视频、代码多模态 - 原理:原生多模态架构,统一表示空间
**DALL-E 3 / Midjourney** - 模型:OpenAI / Midjourney - 能力:文本生成高质量图像 - 原理:扩散模型,从噪声逐步生成图像
**Whisper** - 模型:OpenAI - 能力:语音转文字 - 原理:Transformer编码器,端到端训练
代码示例:使用CLIP进行文搜图
用CLIP实现文本搜索图片:
import torch
from PIL import Image
import clip
from tqdm import tqdm
# 加载CLIP模型
device = "cuda" if torch.cuda.is_available() else "cpu"
model, preprocess = clip.load("ViT-B/32", device=device)
# 1. 编码查询文本
text_query = "a beautiful sunset over the ocean"
text_tokens = clip.tokenize([text_query]).to(device)
with torch.no_grad():
text_features = model.encode_text(text_tokens)
text_features = text_features / text_features.norm(dim=1, keepdim=True)
# 2. 编码图片库(假设已提前编码)
# image_features = ...
# 3. 计算相似度
similarity = (text_features @ image_features.T).squeeze(0)
# 4. 排序返回最相似的图片
sorted_indices = similarity.argsort(descending=True)
top_k = sorted_indices[:5] # 返回Top-5
print(f"最匹配的图片索引: {top_k.tolist()}")实战:多模态应用场景
**场景一:智能客服** - 用户上传截图描述问题 - 系统同时理解图片和文字 - 给出精准解决方案
**场景二:教育辅助** - 拍照识别题目 - 分析题目类型 - 提供解题思路
**场景三:医疗影像** - 上传X光片/CT - AI结合图像和病历文本 - 辅助诊断建议
**场景四:内容审核** - 同时分析文本、图像、视频 - 多维度识别违规内容 - 降低误判率
多模态挑战
多模态AI仍面临挑战:模态对齐困难、计算资源需求大、数据标注成本高、模型偏见更复杂。需要谨慎选择应用场景。
📝课后小结
多模态AI能处理文本、图像、音频等多种数据,核心架构包括早期融合、晚期融合和交叉注意力。经典模型如CLIP、GPT-4V、Gemini已广泛应用于文搜图、图像问答等场景。
✓课后练习
多模态AI指的是?
答案:能处理多种类型数据的AI
多模态AI能够同时理解和处理多种类型(模态)的数据,如文本、图像、音频等。
CLIP的主要能力是?
答案:文本-图像对齐,实现文搜图
CLIP通过对比学习实现文本和图像在共享空间的对齐,支持文搜图、图搜文等跨模态任务。