Skip to content

Speech Synthesis & Recognition

Hướng dẫn: Chương này đi sâu nguyên lý AI audio. Không chỉ thuật ngữ acoustic (STFT, flow matching, voice embedding), mà còn ẩn dụ + demo interactive cho bạn hiểu AI "nghe người" + "mở miệng nói" thế nào.

🎙️ AI 音频初体验:让机器开口说话
从语音合成到声音克隆,探索 AI 如何让机器拥有"声音"
🎵

选择一个场景开始体验 AI 音频

💡TTS: 文本转语音,让 AI 朗读任意文字
🎯ASR: 语音识别,将语音转为文字
🎭声音克隆: 只需几秒音频,复制任何人的声音

0. Mở đầu: "dịch số hoá" sóng âm vật lý

Tiếng người + âm thanh thế giới bản chất = sóng vật lý liên tục từ dao động không khí. Nhưng máy chỉ có 0 + 1, không nghe được. Bước đầu cho AI xử âm thanh: vượt rãnh "vật lý" ↔ "digital".

Quá trình = A/D conversion, output core = PCM (Pulse-Code Modulation) waveform — data âm thanh ta hay thấy. 2 metric core:

  1. Sample rate: chụp ảnh sóng mấy lần/giây. Vd 16kHz = 16000 số amplitude/giây.
  2. Bit depth: "thước đo" mỗi lần chụp chi tiết. 16-bit = 65536 level amplitude.

Nhưng vấn đề: 16000 số/giây, 1 câu hàng trăm nghìn số. Quá nhiều + thừa. Quăng waveform 1D dài cho NN xử trực tiếp như bảo người judge len áo qua từng sợi len — cực khó.


1. Feature engineering: lắp "tai người" cho AI

Trực tiếp xem "1D waveform (time-domain)" không work, khoa học gia: biến 1D âm → 2D frequency spectrum (frequency-domain).

1.1 Từ đường → ảnh: STFT

Khi nghe nhạc giao hưởng, ít quan tâm dao động không khí instant, mà lúc đó có nhạc cụ nào (tần số khác), to nhỏ ra sao (năng lượng).

Qua phép thuật toán STFT (Short-Time Fourier Transform), sóng âm 1D → matrix 2D "time, frequency, energy (độ đậm màu)" = Spectrogram. Vấn đề âm thanh → vấn đề "xem ảnh" AI giỏi hơn.

1.2 Theo thói quen tai: Mel Scale

Frequency vật lý là linear (0-100Hz tương đương 10000-10100Hz). Nhưng tai người rất "bias": nhạy với low-freq (sâu), tù với high-freq (cao).

Để AI "tập trung chỗ quan trọng" như người, nhà nghiên cứu introduce Mel Filterbanks non-linear. Low-freq chia rất mịn, high-freq gộp lại thô.

Sau log transform → Mel-Spectrogram = nền tảng linh hồn AI audio hiện đại.

👇 Demo: xem waveform 1D biến thành 2D màu sắc theo cảm nhận người.

📊 梅尔频谱:AI 如何"看懂"声音
声音是波,但 AI 看到的是频谱图。探索波形如何变成 AI 能理解的"图像"
1024
80
🔊 波形 (时域)原始音频振幅随时间变化
STFT 变换
📈 线性频谱高频分辨率低
VS
🎯 梅尔频谱符合人耳感知
🎧 为什么用梅尔刻度?
人耳感知
100Hz→200Hz 与 10000Hz→10100Hz 感知差异相同
线性刻度
等距频率间隔,不符合人耳感知
💡

梅尔频谱原理: 梅尔刻度模拟了人耳对频率的非线性感知。人耳对低频变化更敏感,对高频变化较迟钝。 梅尔频谱将频率映射到梅尔刻度,使 AI 更关注人耳敏感的部分。


2. Cho LLM học "ngoại ngữ": 2 paradigm gen

Sau extract feature, dạy AI gen âm thế nào? Có 2 "magic array".

2.1 Paradigm 1: âm thanh như chữ (Audio Tokenization)

Với ChatGPT hot, khoa học gia nghĩ: nếu biến âm thành 1 chuỗi "chữ (Token)" được, LLM có thể hát/nói trực tiếp?

  • Compress + quantize: dùng Neural Codec (vd EnCodec) + VQ-VAE, vài MB audio nén cực đoan → mã rời rạc trong "từ điển" (vd: [82, 105, 33...])
  • Generation as completion: AI predict next token âm như text completion. Thống nhất multimodal architecture!
🎵 音频 Tokenization:神经编解码器
🔽 编码器 (Encoder)
原始波形
24kHz, 16-bit
Conv 1
Conv 2
Conv 3
Conv 4
CNN 下采样
降维 320x
VQ 量化
离散 Token
压缩后: ~1.5 kbps
🔼 解码器 (Decoder)
4212872553391
离散 Token
Codebook 索引
ConvT 4
ConvT 3
ConvT 2
ConvT 1
转置卷积
上采样
重建波形
24kHz
📊 不同码率对比
1.5 kbps
EnCodec-24k
采样率:24 kHz
帧率:75 Hz
码本大小:1024
4
3.0 kbps
EnCodec-48k
采样率:48 kHz
帧率:75 Hz
码本大小:1024
5
6.0 kbps
SoundStream
采样率:16 kHz
帧率:50 Hz
码本大小:1024
4.5
0.98 kbps
SNAC
采样率:24 kHz
帧率:43 Hz
码本大小:4096
4
🔢 Token 序列可视化
0.1s0.2s0.30000000000000004s0.4s0.5s0.6000000000000001s0.7000000000000001s0.8s0.9s1s1.1s1.2000000000000002s1.3s1.4000000000000001s1.5s1.6s1.7000000000000002s1.8s1.9000000000000001s2s
低频成分 中频成分 高频成分
🎯 为什么需要音频 Tokenization?
🚀
高效传输
将音频压缩到 ~1.5 kbps,比原始音频小 256 倍,适合网络传输
🧠
语言模型友好
离散 Token 可以被 LLM 直接处理,实现文本到音频的统一建模
🎵
音乐生成
MusicGen、AudioLDM 等模型使用音频 Token 生成音乐和音效
🗣️
语音合成
VALL-E、SoundStorm 等 TTS 模型直接生成音频 Token

💡神经音频编解码器: EnCodec (Meta)、SoundStream (Google)、SNAC 等模型使用 VQ-VAE 架构将音频压缩成离散 Token。这些 Token 可以被语言模型处理,实现高质量的音频生成和压缩。

2.2 Paradigm 2: âm thanh như tranh (Spectrogram Generation)

Đây là solution mainstream cho đa số software speech hiện đại, control tốt.

  • Spectrogram generation: model không output waveform, mà học mapping "text" → "Mel-spectrogram 2D", như hoạ sĩ vẽ acoustic feature
  • Vocoder (waveform reconstruction): spectrogram mất phase info nên không play trực tiếp. Cần Vocoder (vd HiFi-GAN) — translator biến ảnh thành waveform 1D driving loa

3. 2 đầu nghịch: ASR + TTS

Cho máy có "tai" + "miệng" = 2 cuộc dịch ngược nhau:

  • ASR (Automatic Speech Recognition): âm → text. Bài multi-to-one converging select. Model (Whisper) phải lọc text duy nhất đúng trong audio đầy noise môi trường, accent variation, đồng âm.
  • TTS (Text-to-Speech): text → âm. Bài one-to-many diverging creative. 1 câu "xin chào" có thể có 10000 speed, emotion, pause, voice khác nhau. Model phải tự tưởng param thiếu.
🔄 ASR ↔ TTS:语音的双向转换
探索语音识别和语音合成的互逆过程
🎙️
ASR 语音识别
音频 → 文本
🔊
TTS 语音合成
文本 → 音频
📊 ASR vs TTS 对比
🎙️
ASR
输入:音频波形
输出:文本序列
难点:噪声、口音、同音词
🔊
TTS
输入:文本序列
输出:音频波形
难点:韵律、情感、自然度
🔀 架构对比
ASR Pipeline
音频
特征
Encoder
Decoder
文本
TTS Pipeline
文本
Encoder
Decoder
声码器
音频
💡

互逆关系: ASR 和 TTS 是语音技术的两个核心方向,互为逆过程。 ASR 将连续的音频信号转换为离散的文本,TTS 则将离散的文本转换为连续的音频信号。 两者都依赖于声学模型和语言模型。


4. Từ "vắt kem đánh răng" → "cao tốc": TTS architecture đổi đời

Hiểu flow basic, xem TTS engine theo đuổi speed + coherence cực đoan thế nào.

  • Autoregressive (AR): model cũ phải gen theo time, xong ms trước mới predict ms sau. Stable nhưng dễ kẹt + chậm.
  • Non-autoregressive (NAR): introduce Duration Predictor, không gen tuần tự, mà 1 lần "tiên đoán" duration mỗi phoneme, rồi parallel output cả câu.
  • Flow Matching (ODE highway): solution frontier (F5-TTS). Dùng continuous normalizing flow + ODE bỏ approach gò. Model học quỹ đạo motion thẳng nhất từ "white noise" → "perfect spectrogram". Hiệu quả tăng exponential, natural sound đỉnh.
🔄 TTS 架构演进:从慢到快
探索文本如何变成语音,以及不同架构的优劣对比
1
📝
文本处理
分词 & 音素
2
🔢
文本嵌入
特征提取
3
🌊
流匹配
最优传输
4
🔊
声码器
频谱转波形
📝
文本处理
将输入文本转换为音素序列
输入:原始文本
输出:音素序列
技术:G2P
📊 架构对比
特性
自回归
非自回归
流匹配
生成速度
很快
音质
中高
稳定性
可控性
🏆 代表模型
Tacotron 2
AR
经典 AR 模型,音质优秀
FastSpeech 2
NAR
并行生成,速度快
F5-TTS
Flow
最新 SOTA,10 步生成
CosyVoice
Flow
阿里开源,支持多语言
💡

TTS 演进趋势: 从早期的自回归模型(如 Tacotron)到非自回归(如 FastSpeech),再到最新的流匹配模型(如 F5-TTS), TTS 技术正在向更快、更稳定、更高质量的方向发展。


5. Zero-Shot Voice Cloning

Vài năm trước, AI imitate giọng ai đó cần họ ngồi recording studio im lặng vài chục nghìn câu + train mấy ngày. Hôm nay chỉ 3 giây voice là AI giả y thật.

Tech core: Speaker Encoder + metric learning.

  • Không chỉ monitor, là "gene extractor". Bỏ noise + nội dung nói (text), capture feature sinh lý cố định: dây thanh bao rộng? Cộng hưởng cỡ nào? Habit nhả chữ?
  • Feature này nén thành Speaker Embedding (vd x-vector) vài trăm dim. Như barcode, biểu trưng identity giọng. TTS model "đeo" vector này → mọi câu output đều có giọng bạn.
🎭 声音克隆:让 AI 模仿任何人
只需几秒钟的参考音频,AI 就能学会任何人的声音
1 提供参考音频
ref
ref
ref
ref
2 AI 学习声音特征
📂
加载音频
🔢
编码特征
🎨
提取音色
💎
构建嵌入
3 输入文本生成语音
💡 声音克隆小贴士
⏱️
参考音频时长

3-10 秒即可,质量比时长更重要

🔇
环境要求

安静环境,避免背景噪音

🗣️
内容选择

包含多种音调和语速效果更好

🔬

技术原理: 声音克隆通过提取参考音频的音色、语调和说话风格特征,构建说话人嵌入向量。 生成时,TTS 模型结合文本内容和说话人嵌入,合成与参考声音相似的语音。


6. Cấp linh hồn: control emotion + rhythm + style

1 câu "thật ư", có thể là vui mừng, có thể là phẫn nộ chất vấn. Commercial-grade AI không chỉ "đọc đúng chữ", mà "có cảm xúc".

Học thuật đề xuất Global Style Token (GST) + feature bottleneck. LLM cluster từ recording người diễn lượng lớn, extract soft vector trừu tượng "buồn", "phấn khích", "lười".

Engineering, introduce F0 (pitch up-down), Energy (volume + plosive) adapter param trực quan, cho creator "nặn voice emotion" như chỉnh face game character.

🎭 情感与风格控制
选择情感风格
😐
中性
平稳自然
😊
开心
轻快愉悦
😢
悲伤
低沉缓慢
😠
愤怒
激昂有力
🤩
兴奋
热情高涨
😌
平静
舒缓放松
情感向量空间 (Emotion Embedding)
中性 开心 悲伤 愤怒 兴奋 平静
🎚️ 细粒度控制
语速1x
正常
音调0
正常
音量动态100%
柔和适中激昂
停顿控制150ms
紧凑自然舒缓
🎙️ 预览合成

💡情感控制: 现代 TTS 系统不仅能合成自然的语音,还能精确控制情感、语速、语调等风格特征。这使得 AI 配音可以适应不同的应用场景,从平静的客服对话到激昂的演讲。


7. Kết

Từ digital signal cơ bản (PCM), tới giảm chiều purify (Mel-Spectrogram), tới base multimodal hot hiện tại (Flow Matching + Neural Codec), AI audio đang upgrade từ mechanical simulation → native understanding.

AI Agent tương lai sẽ thông toàn link cao chiều "xem-nghe-nói" của người, intuition như thật mỗi lần communicate!


8. Glossary

TermFullGiải thích
PCMPulse-Code ModulationCách record waveform 1D nguyên thuỷ + lớn nhất
STFTShort-Time Fourier TransformBiến âm từ amplitude theo time → frequency + energy
Mel-SpectrogramFeature base AI: spectrogram 2D đã qua log + non-linear theo cảm nhận người
Neural CodecAI component dùng variational autoencoder residual, compress waveform lớn thành discrete token
Vocoder"Reverse translator": biến Mel-spectrogram 2D → waveform 1D physical
Speaker EmbeddingMath ID high-dim immutable lock voice timbre người cụ thể (vd x-vector)
Flow MatchingBiến normal distribution thành empirical data distribution qua ODE path thẳng, accelerate inference AI

2026 cho VN dev

  • TTS tiếng Việt: FPT AI, VinBigData, Viettel AI, OpenAI TTS (support multilingual)
  • ASR tiếng Việt: Whisper-large-v3 (tốt nhất), VoskAI, FPT.AI ASR
  • Voice cloning: ElevenLabs (commercial), OpenVoice (open-source)
  • Realtime conversation: OpenAI Realtime API, Gemini Live - WebRTC streaming
  • VN use case:
    • Call center AI (Vinpearl, Tiki)
    • Voice memo → text (note app)
    • Audiobook gen từ ebook
    • Accessibility (screen reader cho người khiếm thị)
  • Bài tập: build podcast generator — text → multi-voice script → TTS → audio file