3 คะแนน โดย GN⁺ 2023-11-20 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

โมเดล text-to-speech ระดับมนุษย์, StyleTTS 2

  • StyleTTS 2 บรรลุการสังเคราะห์ text-to-speech (TTS) ระดับมนุษย์ผ่านการเรียนรู้แบบ adversarial โดยใช้ style diffusion และโมเดลภาษาด้านเสียงขนาดใหญ่
  • โมเดลนี้ทำ latent diffusion ได้อย่างมีประสิทธิภาพ โดยสร้างแบบจำลองสไตล์เป็นตัวแปรสุ่มแฝงผ่าน diffusion model เพื่อสร้างสไตล์ที่เหมาะกับข้อความมากที่สุดโดยไม่ต้องมีเสียงอ้างอิง
  • ใช้โมเดลภาษาด้านเสียงที่ผ่านการพรีเทรนขนาดใหญ่เป็นตัวแยกแยะ และดำเนินการฝึกแบบ end-to-end ด้วยการสร้างแบบจำลองระยะเวลาแบบใหม่ที่แยกความต่างได้ เพื่อเพิ่มความเป็นธรรมชาติของเสียง

สิ่งที่ต้องเตรียม

  • ต้องใช้ Python เวอร์ชัน 3.7 ขึ้นไป
  • โคลนที่เก็บ StyleTTS 2 และติดตั้ง Python requirements ที่จำเป็น
  • ดาวน์โหลดชุดข้อมูล LJSpeech, ทำ upsample เป็น 24 kHz แล้วแตกไฟล์ลงในโฟลเดอร์ข้อมูล
  • หากใช้ชุดข้อมูล LibriTTS ต้องรวม train-clean-360 และ train-clean-100 แล้วเปลี่ยนชื่อโฟลเดอร์เป็น train-clean-460

การฝึก

  • สามารถรันการฝึกขั้นแรกและขั้นที่สองตามลำดับได้ และโมเดลจะถูกบันทึกในรูปแบบที่กำหนด
  • รูปแบบรายการข้อมูลต้องเป็น filename.wav|transcription|speaker และสำหรับโมเดลหลายผู้พูด จำเป็นต้องสุ่มตัวอย่างเสียงอ้างอิงเพื่อฝึก style diffusion model

การตั้งค่าที่สำคัญ

  • ไฟล์ config.yml มีการตั้งค่าที่สำคัญ เช่น พาธข้อความ OOD (out-of-distribution) สำหรับการเรียนรู้แบบ SLM adversarial, ความยาวต่ำสุดและสูงสุดสำหรับการฝึก, การเปิดใช้การฝึกโมเดลหลายผู้พูด, และเปอร์เซ็นต์แบตช์เพื่อหลีกเลี่ยงปัญหา OOM (out-of-memory)

โมดูลที่พรีเทรนไว้ล่วงหน้า

  • โฟลเดอร์ ASR มีตัวจัดแนวข้อความที่พรีเทรนไว้ล่วงหน้า, โฟลเดอร์ JDC มีตัวดึง pitch ที่พรีเทรนไว้ล่วงหน้า, และโฟลเดอร์ PLBERT มีโมเดล PL-BERT ที่พรีเทรนไว้ล่วงหน้า

ปัญหาที่พบบ่อย

  • มีการเสนอวิธีแก้สำหรับปัญหา loss กลายเป็น NaN และปัญหาหน่วยความจำไม่พอ เช่น การปรับ batch size หรือการลดค่า max_len

การฟाइनจูน

  • มีสคริปต์ฟाइनจูนที่ใช้ DP โดยแก้ไขสคริปต์ train_second.py และปัจจุบัน DDP ยังไม่ทำงาน

การอนุมาน

  • อ้างอิงไฟล์โน้ตบุ๊กสำหรับการอนุมานกับชุดข้อมูล LJSpeech และ LibriTTS โดยสำหรับ LibriTTS จำเป็นต้องมีไฟล์เสียงอ้างอิง
  • สามารถดาวน์โหลดโมเดล StyleTTS 2 ที่พรีเทรนไว้ล่วงหน้าได้ และก่อนใช้งานควรแจ้งผู้ฟังว่าเสียงสังเคราะห์ถูกสร้างโดยโมเดล StyleTTS 2 หรือใช้เสียงที่ได้รับอนุญาตให้ใช้งานแล้ว

ความเห็นของ GN⁺

ประเด็นสำคัญที่สุดของบทความนี้คือ StyleTTS 2 บรรลุการสังเคราะห์ TTS ระดับมนุษย์ ซึ่งแสดงให้เห็นถึงศักยภาพของการเรียนรู้แบบ adversarial ที่ใช้ style diffusion และโมเดลภาษาด้านเสียงขนาดใหญ่ เทคโนโลยีนี้สามารถยกระดับความเป็นธรรมชาติของการสังเคราะห์เสียงได้อย่างมาก และยังมอบความสามารถในการสร้างสไตล์ที่หลากหลายได้โดยไม่ต้องใช้เสียงอ้างอิง ซึ่งอาจส่งผลอย่างมากต่อการพัฒนาอินเทอร์เฟซที่ใช้เสียงและผู้ช่วยดิจิทัล

1 ความคิดเห็น

 
GN⁺ 2023-11-20
ความคิดเห็นจาก Hacker News
  • ประสบการณ์พัฒนาแชตบอตเสียงแบบโลคัล 100% ด้วย StyleTTS2

    • แชตบอตที่สร้างด้วยโอเพนซอร์สอย่าง StyleTTS2, Whisper และ OpenHermes2-Mistral-7B มีความเร็วในการตอบสนองเหนือกว่า ChatGPT มาก
    • ต่างจากผู้ช่วยเสียงแบบเดิมที่มักคุยไม่เป็นธรรมชาติ ระบบนี้สามารถสนทนาได้อย่างเป็นธรรมชาติ และโดยเฉพาะบนพีซีเกมมิง Windows ที่ติดตั้ง Nvidia GPU 12GB ก็สามารถติดตั้งและเริ่มคุยได้ด้วยการคลิกครั้งเดียว
    • เดโมยังค่อนข้างไม่เสถียรอยู่บ้าง (ต้องใช้หูฟัง, รันเป็นแอปคอนโซล ฯลฯ) แต่ก็ทำให้เห็นความเป็นไปได้ของอนาคตที่ชุดโอเพนซอร์สสามารถรันบนพีซีเกมมิงได้
  • ความเห็นส่วนตัวต่อคุณภาพเสียงของ StyleTTS2

    • เสียงดีมาก แต่ก่อนใช้งานอยากโคลนเป็นเสียงที่ฟังสบายและตรงกับความชอบของตัวเองก่อน
  • แชร์ประสบการณ์ติดตั้งและใช้งาน StyleTTS2

    • แชร์ประสบการณ์การทดสอบ StyleTTS2 และโน้ตแบบทีละขั้นตอนที่อาจมีประโยชน์สำหรับการตั้งค่าในเครื่อง
    • เมื่อเทียบความเร็ว/คุณภาพกับโมเดล LJSpeech แล้ว StyleTTS2 เร็วมากและคุณภาพก็ดี
  • ประสบการณ์การติดตั้งและการทำงานของ StyleTTS2

    • เอกสารยังไม่สมบูรณ์นักจึงติดตั้งค่อนข้างยากเล็กน้อย แต่หลังจากประมาณ 20 นาทีก็ใช้งานได้ดีบน WSL Ubuntu 22.04
    • คุณภาพเสียงดีมาก และเร็วมากโดยเฉพาะเมื่อใช้ GPU 4090
    • แม้ยังไม่ถึงคุณภาพของ Eleven Labs แต่จุดแข็งของ Eleven คือคลังเสียงคุณภาพสูงที่มีความหลากหลาย และฟีเจอร์โคลนเสียงแบบทันทีที่ทำงานได้ดีน่าทึ่งจากตัวอย่างเสียงเพียง 5 นาที
    • หวังว่าจะได้เห็นความสามารถเหล่านี้ใช้งานได้ในโปรเจกต์โอเพนซอร์สแบบสมบูรณ์
  • การเปรียบเทียบตัวอย่างเสียงของ StyleTTS2 กับเสียงจริง

    • ตัวอย่างเสียงของ TTS2 ฟังดูเป็นธรรมชาติกว่าเสียงจริงเสียอีก
    • ตื่นเต้นที่จะใช้เทคโนโลยีนี้กับไฟล์ ePub ที่ไม่มีออดิโอบุ๊ก โดยเฉพาะไลต์โนเวลญี่ปุ่น
  • การประเมินคุณภาพเสียงของ StyleTTS2

    • คุณภาพเสียงยอดเยี่ยมมาก เป็นระดับที่เมื่อต้นยุค 2000 แทบจินตนาการไม่ถึง
    • มีแนวโน้มที่น่าสนใจสำหรับเกมที่ให้ LLM รับบทเป็นตัวละคร และให้ TTS เป็นเสียงของ NPC
  • ความเห็นต่อชื่อและเนื้อหาของ StyleTTS2

    • ตอนนี้ชื่อบน Hacker News คือ "StyleTTS2 – เทคโนโลยีแปลงข้อความเป็นเสียงคุณภาพระดับ Eleven Labs แบบโอเพนซอร์ส" แต่ในชื่อจริงหรือบทความ arXiv ไม่มีการกล่าวถึง Eleven Labs
    • แสดงความกังวลต่อการตั้งชื่อเชิงบรรณาธิการแบบนี้
  • คำถามเกี่ยวกับเวลา inference ของ StyleTTS2

    • สอบถามค่าประมาณคร่าว ๆ ของเวลา inference บน CPU รุ่นใหม่
  • คำถามเกี่ยวกับไลเซนส์ของ StyleTTS2

    • ถามว่าเนื่องจากไลเซนส์ไม่ใช่ MIT จึงอาจไม่สามารถใช้ในเชิงพาณิชย์ได้หรือไม่
  • มุมมองต่อตลาดของโมเดล text-to-speech

    • สงสัยว่าจะมีตลาด LoRA สำหรับโมเดล text-to-speech ในสไตล์ Civitai เกิดขึ้นด้วยหรือไม่