[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Kyubyong--dc_tts":3,"tool-Kyubyong--dc_tts":64},[4,23,32,40,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":22},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85092,2,"2026-04-10T11:13:16",[13,14,15,16,17,18,19,20,21],"图像","数据工具","视频","插件","Agent","其他","语言模型","开发框架","音频","ready",{"id":24,"name":25,"github_repo":26,"description_zh":27,"stars":28,"difficulty_score":29,"last_commit_at":30,"category_tags":31,"status":22},4128,"GPT-SoVITS","RVC-Boss\u002FGPT-SoVITS","GPT-SoVITS 是一款强大的开源语音合成与声音克隆工具，旨在让用户仅需极少量的音频数据即可训练出高质量的个性化语音模型。它核心解决了传统语音合成技术依赖海量录音数据、门槛高且成本大的痛点，实现了“零样本”和“少样本”的快速建模：用户只需提供 5 秒参考音频即可即时生成语音，或使用 1 分钟数据进行微调，从而获得高度逼真且相似度极佳的声音效果。\n\n该工具特别适合内容创作者、独立开发者、研究人员以及希望为角色配音的普通用户使用。其内置的友好 WebUI 界面集成了人声伴奏分离、自动数据集切片、中文语音识别及文本标注等辅助功能，极大地降低了数据准备和模型训练的技术门槛，让非专业人士也能轻松上手。\n\n在技术亮点方面，GPT-SoVITS 不仅支持中、英、日、韩、粤语等多语言跨语种合成，还具备卓越的推理速度，在主流显卡上可实现实时甚至超实时的生成效率。无论是需要快速制作视频配音，还是进行多语言语音交互研究，GPT-SoVITS 都能以极低的数据成本提供专业级的语音合成体验。",56375,3,"2026-04-05T22:15:46",[21],{"id":33,"name":34,"github_repo":35,"description_zh":36,"stars":37,"difficulty_score":29,"last_commit_at":38,"category_tags":39,"status":22},2863,"TTS","coqui-ai\u002FTTS","🐸TTS 是一款功能强大的深度学习文本转语音（Text-to-Speech）开源库，旨在将文字自然流畅地转化为逼真的人声。它解决了传统语音合成技术中声音机械生硬、多语言支持不足以及定制门槛高等痛点，让高质量的语音生成变得触手可及。\n\n无论是希望快速集成语音功能的开发者，还是致力于探索前沿算法的研究人员，亦或是需要定制专属声音的数据科学家，🐸TTS 都能提供得力支持。它不仅预置了覆盖全球 1100 多种语言的训练模型，让用户能够即刻上手，还提供了完善的工具链，支持用户利用自有数据训练新模型或对现有模型进行微调，轻松实现特定风格的声音克隆。\n\n在技术亮点方面，🐸TTS 表现卓越。其最新的 ⓍTTSv2 模型支持 16 种语言，并在整体性能上大幅提升，实现了低于 200 毫秒的超低延迟流式输出，极大提升了实时交互体验。此外，它还无缝集成了 🐶Bark、🐢Tortoise 等社区热门模型，并支持调用上千个 Fairseq 模型，展现了极强的兼容性与扩展性。配合丰富的数据集分析与整理工具，🐸TTS 已成为科研与生产环境中备受信赖的语音合成解决方案。",44971,"2026-04-03T14:47:02",[21,20,13],{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":29,"last_commit_at":46,"category_tags":47,"status":22},2375,"LocalAI","mudler\u002FLocalAI","LocalAI 是一款开源的本地人工智能引擎，旨在让用户在任意硬件上轻松运行各类 AI 模型，包括大语言模型、图像生成、语音识别及视频处理等。它的核心优势在于彻底打破了高性能计算的门槛，无需昂贵的专用 GPU，仅凭普通 CPU 或常见的消费级显卡（如 NVIDIA、AMD、Intel 及 Apple Silicon）即可部署和运行复杂的 AI 任务。\n\n对于担心数据隐私的用户而言，LocalAI 提供了“隐私优先”的解决方案，确保所有数据处理均在本地基础设施内完成，无需上传至云端。同时，它完美兼容 OpenAI、Anthropic 等主流 API 接口，这意味着开发者可以无缝迁移现有应用，直接利用本地资源替代云服务，既降低了成本又提升了可控性。\n\nLocalAI 内置了超过 35 种后端支持（如 llama.cpp、vLLM、Whisper 等），并集成了自主 AI 代理、工具调用及检索增强生成（RAG）等高级功能，且具备多用户管理与权限控制能力。无论是希望保护敏感数据的企业开发者、进行算法实验的研究人员，还是想要在个人电脑上体验最新 AI 技术的极客玩家，都能通过 LocalAI 获",44782,"2026-04-02T22:14:26",[13,21,19,17,20,14,16],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":29,"last_commit_at":54,"category_tags":55,"status":22},3108,"bark","suno-ai\u002Fbark","Bark 是由 Suno 推出的开源生成式音频模型，能够根据文本提示创造出高度逼真的多语言语音、音乐、背景噪音及简单音效。与传统仅能朗读文字的语音合成工具不同，Bark 基于 Transformer 架构，不仅能模拟说话，还能生成笑声、叹息、哭泣等非语言声音，甚至能处理带有情感色彩和语气停顿的复杂文本，极大地丰富了音频表达的可能性。\n\n它主要解决了传统语音合成声音机械、缺乏情感以及无法生成非语音类音效的痛点，让创作者能通过简单的文字描述获得生动自然的音频素材。无论是需要为视频配音的内容创作者、探索多模态生成的研究人员，还是希望快速原型设计的开发者，都能从中受益。普通用户也可通过集成的演示页面轻松体验其神奇效果。\n\n技术亮点方面，Bark 支持商业使用（MIT 许可），并在近期更新中实现了显著的推理速度提升，同时提供了适配低显存 GPU 的版本，降低了使用门槛。此外，社区还建立了丰富的提示词库，帮助用户更好地驾驭模型生成特定风格的声音。只需几行 Python 代码，即可将创意文本转化为高质量音频，是连接文字与声音世界的强大桥梁。",39067,"2026-04-04T03:33:35",[21],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":29,"last_commit_at":62,"category_tags":63,"status":22},5908,"ChatTTS","2noise\u002FChatTTS","ChatTTS 是一款专为日常对话场景打造的生成式语音模型，特别适用于大语言模型助手等交互式应用。它主要解决了传统文本转语音（TTS）技术在对话中缺乏自然感、情感表达单一以及难以处理停顿、笑声等细微语气的问题，让机器生成的语音听起来更像真人在聊天。\n\n这款工具非常适合开发者、研究人员以及希望为应用增添自然语音交互功能的设计师使用。普通用户也可以通过社区开发的衍生产品体验其能力。ChatTTS 的核心亮点在于其对对话任务的深度优化：它不仅支持中英文双语，还能精准控制韵律细节，自动生成自然的 laughter（笑声）、pauses（停顿）和 interjections（插入语），从而实现多说话人的互动对话效果。在韵律表现上，ChatTTS 超越了大多数开源 TTS 模型。目前开源版本基于 4 万小时数据预训练而成，虽主要用于学术研究与教育目的，但已展现出强大的潜力，并支持流式音频生成与零样本推理，为后续的多情绪控制等进阶功能奠定了基础。",39042,"2026-04-09T11:54:03",[19,17,20,21],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":76,"owner_avatar_url":77,"owner_bio":78,"owner_company":79,"owner_location":80,"owner_email":81,"owner_twitter":82,"owner_website":83,"owner_url":84,"languages":85,"stars":90,"forks":91,"last_commit_at":92,"license":93,"difficulty_score":94,"env_os":95,"env_gpu":96,"env_ram":95,"env_deps":97,"category_tags":106,"github_topics":107,"view_count":10,"oss_zip_url":82,"oss_zip_packed_at":82,"status":22,"created_at":111,"updated_at":112,"faqs":113,"releases":144},7502,"Kyubyong\u002Fdc_tts","dc_tts","A TensorFlow Implementation of DC-TTS: yet another text-to-speech model","dc_tts 是一个基于 TensorFlow 实现的开源文本转语音（TTS）项目，复现了论文中提出的高效深度卷积网络模型。它致力于将输入的文字序列转化为自然流畅的语音音频，解决了传统语音合成系统在训练效率与生成质量之间难以平衡的问题。\n\n该工具的核心亮点在于引入了“引导注意力机制”（Guided Attention），显著提升了模型对齐文本与音频的准确性，同时利用深度卷积网络架构实现了比递归神经网络更快的训练速度和推理效率。项目不仅提供了完整的训练流程，还展示了在多种数据集（如英语 LJ Speech、名人有声书及韩语 KSS 数据集）上的良好泛化能力，即使在小样本数据下也能学习到稳定的语音特征。\n\ndc_tts 非常适合人工智能研究人员、语音技术开发者以及对深度学习语音合成感兴趣的学生使用。通过阅读其代码和实验结果，用户可以深入理解现代 TTS 系统的构建逻辑，或在此基础上定制专属的语音合成模型。虽然普通用户也可尝试运行预训练模型生成语音，但其主要价值在于为技术探索者提供了一个透明、可复现且易于扩展的研究基准。","# A TensorFlow Implementation of DC-TTS: yet another text-to-speech model\r\n\r\nI implement yet another text-to-speech model, dc-tts, introduced in [Efficiently Trainable Text-to-Speech System Based on Deep Convolutional Networks with Guided Attention](https:\u002F\u002Farxiv.org\u002Fabs\u002F1710.08969). My goal, however, is not just replicating the paper. Rather, I'd like to gain insights about various sound projects.\r\n\r\n## Requirements\r\n  * NumPy >= 1.11.1\r\n  * TensorFlow >= 1.3 (Note that the API of `tf.contrib.layers.layer_norm` has changed since 1.3)\r\n  * librosa\r\n  * tqdm\r\n  * matplotlib\r\n  * scipy\r\n\r\n## Data\r\n\r\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_7669fbd47da9.jpg\" height=\"200\" align=\"right\">\r\n\u003Cimg src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002F9\u002F9c\u002FKate_Winslet_March_18%2C_2014_%28headshot%29.jpg\u002F890px-Kate_Winslet_March_18%2C_2014_%28headshot%29.jpg\" height=\"200\" align=\"right\">\r\n\u003Cimg src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002Ff\u002Ff6\u002FNick_Offerman_at_UMBC_%28cropped%29.jpg\u002F440px-Nick_Offerman_at_UMBC_%28cropped%29.jpg\" height=\"200\" align=\"right\">\r\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_d100f4d649fd.jpg\" height=\"200\" align=\"right\">\r\n\r\nI train English models and an Korean model on four different speech datasets. \u003Cp> 1. [LJ Speech Dataset](https:\u002F\u002Fkeithito.com\u002FLJ-Speech-Dataset\u002F) \u003Cbr\u002F> 2. [Nick Offerman's Audiobooks](https:\u002F\u002Fwww.audible.com.au\u002Fsearch?searchNarrator=Nick+Offerman) \u003Cbr\u002F> 3. [Kate Winslet's Audiobook](https:\u002F\u002Fwww.audible.com.au\u002Fpd\u002FClassics\u002FTherese-Raquin-Audiobook\u002FB00FF0SLW4\u002Fref=a_search_c4_1_3_srTtl?qid=1516854754&sr=1-3) \u003Cbr\u002F> 4. [KSS Dataset](https:\u002F\u002Fkaggle.com\u002Fbryanpark\u002Fkorean-single-speaker-speech-dataset)\r\n\r\nLJ Speech Dataset is recently widely used as a benchmark dataset in the TTS task because it is publicly available, and it has 24 hours of reasonable quality samples.\r\nNick's and Kate's audiobooks are additionally used to see if the model can learn even with less data, variable speech samples. They are 18 hours and 5 hours long, respectively. Finally, KSS Dataset is a Korean single speaker speech dataset that lasts more than 12 hours.\r\n\r\n\r\n## Training\r\n  * STEP 0. Download [LJ Speech Dataset](https:\u002F\u002Fkeithito.com\u002FLJ-Speech-Dataset\u002F) or prepare your own data.\r\n  * STEP 1. Adjust hyper parameters in `hyperparams.py`. (If you want to do preprocessing, set prepro True`.\r\n  * STEP 2. Run `python train.py 1` for training Text2Mel. (If you set prepro True, run python prepro.py first)\r\n  * STEP 3. Run `python train.py 2` for training SSRN.\r\n\r\nYou can do STEP 2 and 3 at the same time, if you have more than one gpu card.\r\n\r\n## Training Curves\r\n\r\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_acaa28b1fb54.png\">\r\n\r\n## Attention Plot\r\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_c32afa97d4cd.gif\">\r\n\r\n## Sample Synthesis\r\nI generate speech samples based on [Harvard Sentences](http:\u002F\u002Fwww.cs.columbia.edu\u002F~hgs\u002Faudio\u002Fharvard.html) as the original paper does. It is already included in the repo.\r\n\r\n  * Run `synthesize.py` and check the files in `samples`.\r\n\r\n## Generated Samples\r\n\r\n| Dataset       | Samples |\r\n| :----- |:-------------|\r\n| LJ      | [50k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts) [200k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_lj_200k) [310k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_lj_310k) [800k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_lj_800k)|\r\n| Nick      | [40k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_40k) [170k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_170k) [300k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_300k) [800k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_800k)|\r\n| Kate| [40k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_40k) [160k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_160k) [300k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_300k) [800k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_800k) |\r\n| KSS| [400k](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_ko_400k) |\r\n\r\n## Pretrained Model for LJ\r\n\r\nDownload [this](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F1oyipstjxh2n5wo\u002FLJ_logdir.tar?dl=0).\r\n\r\n## Notes\r\n\r\n  * The paper didn't mention normalization, but without normalization I couldn't get it to work. So I added layer normalization.\r\n  * The paper fixed the learning rate to 0.001, but it didn't work for me. So I decayed it.\r\n  * I tried to train Text2Mel and SSRN simultaneously, but it didn't work. I guess separating those two networks mitigates the burden of training.\r\n  * The authors claimed that the model can be trained within a day, but unfortunately the luck was not mine. However obviously this is much fater than Tacotron as it uses only convolution layers.\r\n  * Thanks to the guided attention, the attention plot looks monotonic almost from the beginning. I guess this seems to hold the aligment tight so it won't lose track.\r\n  * The paper didn't mention dropouts. I applied them as I believe it helps for regularization.\r\n  * Check also other TTS models such as [Tacotron](https:\u002F\u002Fgithub.com\u002Fkyubyong\u002Ftacotron) and [Deep Voice 3](https:\u002F\u002Fgithub.com\u002Fkyubyong\u002Fdeepvoice3).\r\n  \r\n","# DC-TTS 的 TensorFlow 实现：又一个文本转语音模型\n\n我实现了另一个文本转语音模型——dc-tts，该模型在论文《基于深度卷积网络与引导注意力的高效可训练文本转语音系统》（https:\u002F\u002Farxiv.org\u002Fabs\u002F1710.08969）中提出。然而，我的目标不仅仅是复现这篇论文，更希望从中获得对各类语音项目的深入理解。\n\n## 需求\n  * NumPy >= 1.11.1\n  * TensorFlow >= 1.3（请注意，自 1.3 版本以来，`tf.contrib.layers.layer_norm` 的 API 已发生变化）\n  * librosa\n  * tqdm\n  * matplotlib\n  * scipy\n\n## 数据\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_7669fbd47da9.jpg\" height=\"200\" align=\"right\">\n\u003Cimg src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002F9\u002F9c\u002FKate_Winslet_March_18%2C_2014_%28headshot%29.jpg\u002F890px-Kate_Winslet_March_18%2C_2014_%28headshot%29.jpg\" height=\"200\" align=\"right\">\n\u003Cimg src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002Ff\u002Ff6\u002FNick_Offerman_at_UMBC_%28cropped%29.jpg\u002F440px-Nick_Offerman_at_UMBC_%28cropped%29.jpg\" height=\"200\" align=\"right\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_d100f4d649fd.jpg\" height=\"200\" align=\"right\">\n\n我在四个不同的语音数据集上训练了英语模型和一个韩语模型。\u003Cp> 1. [LJ Speech Dataset](https:\u002F\u002Fkeithito.com\u002FLJ-Speech-Dataset\u002F) \u003Cbr\u002F> 2. [尼克·奥弗曼的有声书](https:\u002F\u002Fwww.audible.com.au\u002Fsearch?searchNarrator=Nick+Offerman) \u003Cbr\u002F> 3. [凯特·温斯莱特的有声书](https:\u002F\u002Fwww.audible.com.au\u002Fpd\u002FClassics\u002FTherese-Raquin-Audiobook\u002FB00FF0SLW4\u002Fref=a_search_c4_1_3_srTtl?qid=1516854754&sr=1-3) \u003Cbr\u002F> 4. [KSS 数据集](https:\u002F\u002Fkaggle.com\u002Fbryanpark\u002Fkorean-single-speaker-speech-dataset)\n\nLJ Speech Dataset 近年来作为 TTS 任务中的基准数据集被广泛使用，因为它公开可用，并且包含 24 小时质量尚可的音频样本。尼克和凯特的有声书则用于测试模型在数据量较少、语音样本变化较大的情况下是否仍能有效学习。它们分别长达 18 小时和 5 小时。最后，KSS 数据集是一个超过 12 小时的韩语单说话人语音数据集。\n\n\n## 训练\n  * 步骤 0. 下载 [LJ Speech Dataset](https:\u002F\u002Fkeithito.com\u002FLJ-Speech-Dataset\u002F) 或准备您自己的数据。\n  * 步骤 1. 在 `hyperparams.py` 中调整超参数。（如果您想进行预处理，请将 `prepro` 设置为 `True`。）\n  * 步骤 2. 运行 `python train.py 1` 来训练 Text2Mel。（如果设置了 `prepro True`，请先运行 `python prepro.py`。）\n  * 步骤 3. 运行 `python train.py 2` 来训练 SSRN。\n\n如果您有多块 GPU 卡，可以同时执行步骤 2 和 3。\n\n## 训练曲线\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_acaa28b1fb54.png\">\n\n## 注意力图\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_readme_c32afa97d4cd.gif\">\n\n## 样本合成\n我根据原始论文的做法，以 [哈佛句子](http:\u002F\u002Fwww.cs.columbia.edu\u002F~hgs\u002Faudio\u002Fharvard.html) 为基础生成语音样本。这些句子已包含在代码库中。\n\n  * 运行 `synthesize.py` 并检查 `samples` 文件夹中的文件。\n\n## 生成的样本\n\n| 数据集       | 样本 |\n| :----- |:-------------|\n| LJ      | [5万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts) [20万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_lj_200k) [31万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_lj_310k) [80万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_lj_800k)|\n| Nick      | [4万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_40k) [17万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_170k) [30万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_300k) [80万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_nick_800k)|\n| Kate| [4万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_40k) [16万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_160k) [30万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_300k) [80万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_kate_800k) |\n| KSS| [40万](https:\u002F\u002Fsoundcloud.com\u002Fkyubyong-park\u002Fsets\u002Fdc_tts_ko_400k) |\n\n## LJ 的预训练模型\n\n请下载[这里](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F1oyipstjxh2n5wo\u002FLJ_logdir.tar?dl=0)。\n\n## 备注\n\n  * 论文中未提及归一化，但如果没有归一化，我无法使模型正常工作。因此，我添加了层归一化。\n  * 论文将学习率固定为 0.001，但这对我并不奏效。所以我对其进行了衰减。\n  * 我曾尝试同时训练 Text2Mel 和 SSRN，但未能成功。我认为将这两个网络分开可以减轻训练负担。\n  * 作者声称该模型可以在一天内完成训练，但遗憾的是我并未实现这一点。不过，由于只使用卷积层，它的速度显然比 Tacotron 快得多。\n  * 得益于引导注意力机制，注意力图几乎从一开始就呈现单调性。我想这有助于保持对齐的稳定性，从而不会丢失跟踪。\n  * 论文中未提及丢弃层。但我认为它们有助于正则化，因此还是应用了它们。\n  * 您也可以查看其他 TTS 模型，例如 [Tacotron](https:\u002F\u002Fgithub.com\u002Fkyubyong\u002Ftacotron) 和 [Deep Voice 3](https:\u002F\u002Fgithub.com\u002Fkyubyong\u002Fdeepvoice3)。","# dc_tts 快速上手指南\n\ndc_tts 是一个基于 TensorFlow 实现的文本转语音（TTS）模型，源自论文《Efficiently Trainable Text-to-Speech System Based on Deep Convolutional Networks with Guided Attention》。该模型仅使用卷积层，训练速度快于 Tacotron，并支持英语和韩语数据集。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**: Linux 或 macOS (Windows 需配置相应 TensorFlow 环境)\n*   **Python**: 建议 Python 3.6+\n*   **核心依赖**:\n    *   NumPy >= 1.11.1\n    *   TensorFlow >= 1.3 (注意：`tf.contrib.layers.layer_norm` API 在 1.3 版本后有所变更)\n    *   librosa\n    *   tqdm\n    *   matplotlib\n    *   scipy\n\n> **提示**：国内用户建议使用清华源或阿里源加速 Python 包安装。\n\n## 安装步骤\n\n1.  **克隆项目代码**\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fkyubyong\u002Fdc_tts.git\n    cd dc_tts\n    ```\n\n2.  **安装依赖库**\n    推荐使用国内镜像源安装依赖：\n    ```bash\n    pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n    ```\n    如果没有 `requirements.txt` 文件，请手动安装核心依赖：\n    ```bash\n    pip install numpy librosa tqdm matplotlib scipy tensorflow==1.15 -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n    ```\n    *(注：由于原项目基于 TensorFlow 1.x，建议安装 `tensorflow==1.15` 以获得最佳兼容性)*\n\n3.  **准备数据**\n    下载 [LJ Speech Dataset](https:\u002F\u002Fkeithito.com\u002FLJ-Speech-Dataset\u002F) 并将其解压到项目目录，或准备您自己的音频数据。\n    *   默认情况下，数据应放置在 `data` 文件夹或根据 `hyperparams.py` 中指定的路径存放。\n\n## 基本使用\n\n### 1. 配置参数\n打开 `hyperparams.py` 文件，根据您的需求调整超参数。\n*   如果您希望先进行数据预处理，请将 `prepro` 设置为 `True`。\n\n### 2. 训练模型\ndc_tts 包含两个主要阶段的训练：Text2Mel（文本到梅尔频谱）和 SSRN（频谱到波形）。\n\n*   **阶段一：训练 Text2Mel**\n    如果开启了预处理 (`prepro=True`)，请先运行：\n    ```bash\n    python prepro.py\n    ```\n    然后开始训练：\n    ```bash\n    python train.py 1\n    ```\n\n*   **阶段二：训练 SSRN**\n    Text2Mel 训练完成后，运行以下命令训练声码器部分：\n    ```bash\n    python train.py 2\n    ```\n\n> **提示**：如果您拥有多张 GPU 卡，可以同时运行上述两个训练步骤以节省时间。\n\n### 3. 语音合成\n训练完成后（或使用预训练模型），运行合成脚本生成语音样本。默认会使用内置的 Harvard Sentences 进行测试。\n\n```bash\npython synthesize.py\n```\n\n生成的音频文件将保存在 `samples` 目录中。\n\n### 4. 使用预训练模型 (可选)\n如果您不想从头训练，可以下载针对 LJ Speech 数据集的预训练模型：\n1.  下载模型文件：[LJ_logdir.tar](https:\u002F\u002Fwww.dropbox.com\u002Fs\u002F1oyipstjxh2n5wo\u002FLJ_logdir.tar?dl=0)\n2.  解压并将日志目录放置到项目根目录。\n3.  直接运行 `python synthesize.py` 即可测试效果。","一家小型有声书制作团队希望将经典文学作品快速转化为多角色配音的音频内容，但受限于高昂的专业录音成本和漫长的制作周期。\n\n### 没有 dc_tts 时\n- **人力成本高昂**：必须聘请专业配音演员并租赁录音棚，仅录制一本中篇作品就需要数万元预算。\n- **制作周期漫长**：从试音、正式录制到后期剪辑，通常需要数周甚至数月才能交付成品。\n- **多语种支持困难**：若想同时推出韩语版或有特定音色需求的版本，需重新寻找对应语种的配音资源，协调难度极大。\n- **数据利用低效**：团队手中已有的少量名人演讲或旧录音素材无法直接用于训练新模型，只能闲置浪费。\n\n### 使用 dc_tts 后\n- **大幅降低门槛**：利用 dc_tts 基于深度卷积网络的特性，仅需少量公开数据集（如 LJ Speech 或 KSS）即可训练出高质量语音模型，无需真人进棚。\n- **实现快速迭代**：输入文本后几分钟内即可生成语音样本，通过调整超参数可迅速优化效果，将制作周期从数周缩短至数小时。\n- **灵活定制音色**：成功复现了论文中的引导注意力机制，能够利用 Nick Offerman 或 Kate Winslet 等特定人物的有限音频数据，训练出风格独特的专属语音模型。\n- **跨语言轻松扩展**：凭借其对英语和韩语数据集的良好兼容性，团队可复用同一套架构快速部署多语言版本，无缝拓展国际市场。\n\ndc_tts 通过高效的深度学习架构，让中小团队也能以极低成本实现定制化、多语种的高质量语音合成，彻底改变了传统有声内容的生产模式。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FKyubyong_dc_tts_e0e11a74.png","Kyubyong","Kyubyong Park","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FKyubyong_1c5ad752.jpg","Lives in Seoul, Korea. \r\nStudied Linguistics at SNU and Univ. of Hawaii.","TUNiB","Seoul, Korea","kbpark.linguist@gmail.com",null,"https:\u002F\u002Fwww.facebook.com\u002Fkyubyong","https:\u002F\u002Fgithub.com\u002FKyubyong",[86],{"name":87,"color":88,"percentage":89},"Python","#3572A5",100,1158,362,"2026-04-13T13:19:47","Apache-2.0",4,"未说明","非必需，但多 GPU 可并行训练不同阶段；具体型号、显存及 CUDA 版本未说明（基于 TensorFlow 1.3+）",{"notes":98,"python":95,"dependencies":99},"该工具基于较旧的 TensorFlow 1.3 版本开发，需注意 tf.contrib.layers.layer_norm 的 API 变更。训练分为 Text2Mel 和 SSRN 两个阶段，建议分开训练而非同时进行。作者添加了层归一化（Layer Normalization）和学习率衰减策略以优化原文未提及的部分。数据集需自行下载（如 LJ Speech 或 KSS），支持英语和韩语模型训练。",[100,101,102,103,104,105],"NumPy>=1.11.1","TensorFlow>=1.3","librosa","tqdm","matplotlib","scipy",[21],[108,109,110],"speech","speech-to-text","tts","2026-03-27T02:49:30.150509","2026-04-15T04:33:37.988215",[114,119,124,129,134,139],{"id":115,"question_zh":116,"answer_zh":117,"source_url":118},33623,"如何使用预训练模型进行迁移学习以训练自己的声音（尤其是数据量较少时）？","有用户尝试使用预训练模型作为基础，但输出仍像原始数据集（如 LJ）。成功的经验包括：将学习率调整为 0.01，并运行训练 100 个 epoch。对于少量数据（如 32 个音频样本），在 Google Colab 上将 batch size 改为 16 也能获得不错的结果和对齐效果。注意：有时只运行 train.py 1 阶段即可得到结果，运行 train.py 2 可能会产生噪声。如果结果仍有伪影，可能需要进一步调整超参数。","https:\u002F\u002Fgithub.com\u002FKyubyong\u002Fdc_tts\u002Fissues\u002F29",{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},33624,"运行 synthesize.py 时出现 'ValueError: Can't load save_path when it is None' 错误怎么办？","该错误通常是因为找不到检查点文件。解决方法是确保日志目录（logdir）下存在正确的子目录结构（例如 'LJ01-1' 和 'LJ01-2'），并且其中包含训练生成的模型文件。此外，务必检查并更新 hyperparameters.py 文件，确保其中的路径变量正确指向你的样本目录或日志目录。","https:\u002F\u002Fgithub.com\u002FKyubyong\u002Fdc_tts\u002Fissues\u002F45",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},33625,"训练时遇到 'ValueError: bucket_boundaries must not be empty' 错误如何解决？","此错误通常由数据集问题引起。原因可能是数据集中音频长度的最大值加 1 与最小值减 1 相等，导致桶边界列表为空。解决方法包括：检查并确保下载了正确的 LJ Speech 数据集，在 hyperparams.py 中将目录变量指向该文件夹，并将元数据文件重命名为 'transcript'（因为训练需要此文件名）。如果音频文件过短（如小于 5 秒或 10 秒），也可能触发此错误，需检查数据长度分布。","https:\u002F\u002Fgithub.com\u002FKyubyong\u002Fdc_tts\u002Fissues\u002F80",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},33626,"如何在资源有限或小数据集上使用 Google Colab 进行训练？","推荐切换到 Google Colab 利用其提供的 GPU 资源。针对小数据集（例如仅 32 个音频样本），建议将 batch size 修改为 16。有用户反馈在此配置下模型能正常工作，对齐效果良好，且能生成不错的结果。","https:\u002F\u002Fgithub.com\u002FKyubyong\u002Fdc_tts\u002Fissues\u002F70",{"id":135,"question_zh":136,"answer_zh":137,"source_url":138},33627,"如何配置 TensorFlow 以使用 GPU 进行训练？","有用户确认在 Python 3.6.0 环境下配合 TensorFlow 1.15.0 版本可以成功启用 GPU 支持。如果遇到 CUDA 库加载失败（如 cudnn64_7.dll not found 等警告），请确保安装了与 TensorFlow 版本匹配的 CUDA Toolkit 和 cuDNN 库。","https:\u002F\u002Fgithub.com\u002FKyubyong\u002Fdc_tts\u002Fissues\u002F58",{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},33628,"有没有其他适合少样本语音合成的替代方案或框架推荐？","如果在本项目中难以用少量数据获得理想效果，可以尝试基于 PyTorch 框架的替代方案。有用户推荐了 'deepvoice3_pytorch' 仓库（https:\u002F\u002Fgithub.com\u002Fr9y9\u002Fdeepvoice3_pytorch），该方案文档更完善，且在少量数据下也能生成语音模型（虽然效果可能不是完美，但是一个可行的起点）。","https:\u002F\u002Fgithub.com\u002FKyubyong\u002Fdc_tts\u002Fissues\u002F50",[]]