SoundStorm: การสร้างเสียงแบบขนานอย่างมีประสิทธิภาพ
(google-research.github.io)- SoundStorm เป็นโมเดลที่รับโทเค็นเชิงความหมายของ AudioLM แล้วสร้างโทเค็นนิวรัลออดิโอโค้เดกแบบขนาน เพื่อลดภาระการคำนวณของการสร้างเสียงความยาวมาก
- มุ่งเป้าคุณภาพในระดับเดียวกัน พร้อมเพิ่มความสอดคล้องของเงื่อนไขด้านเสียงพูดและอะคูสติกมากกว่าวิธีแบบออโตรีเกรสซีฟ ด้วย bidirectional attention และการถอดรหัสแบบขนานตามค่าความเชื่อมั่น
- บน TPU-v4 สามารถสร้าง เสียง 30 วินาทีได้ใน 0.5 วินาที แสดงความเร็วที่เร็วกว่าตัวสร้างอะคูสติกของ AudioLM หลายสิบเท่า
- เมื่อนำมารวมกับ SPEAR-TTS จะสามารถควบคุมบทพูด, พรอมป์ตเสียงสั้น, และหมายเหตุการสลับผู้พูด เพื่อสังเคราะห์ บทสนทนาธรรมชาติ 30 วินาที ได้ใน 2 วินาทีบน TPU-v4 เดี่ยว
- ความสามารถในการเลียนแบบเสียงอาจถูกนำไปใช้ในทางที่ผิด เช่น การสวมรอยและการหลบเลี่ยงการยืนยันตัวตนด้วยชีวมิติ จึงจำเป็นต้องมีมาตรการป้องกัน และหลังการสลับแล้ว เสียงที่สร้างขึ้นสามารถ ตรวจจับได้ 98.5% ด้วยตัวจำแนกเฉพาะทาง
วิธีการสร้างและประสิทธิภาพของ SoundStorm
- SoundStorm เป็นโมเดล การสร้างเสียงแบบไม่ใช่ออโตรีเกรสซีฟ ที่มีประสิทธิภาพ
- อินพุตคือ โทเค็นเชิงความหมาย ของ AudioLM และเอาต์พุตคือโทเค็นนิวรัลออดิโอโค้เดก
- ประสิทธิภาพในการสร้างตั้งอยู่บนการออกแบบสองประการ
- ใช้ bidirectional attention เพื่อใช้บริบททั้งก่อนหน้าและถัดไปพร้อมกัน
- ใช้ การถอดรหัสแบบขนานตามค่าความเชื่อมั่น เพื่อสร้างหลายโทเค็นพร้อมกัน
- เมื่อเทียบกับวิธีสร้างแบบออโตรีเกรสซีฟของ AudioLM สามารถสร้างเสียงที่มีคุณภาพเท่ากันได้ พร้อมมีความสอดคล้องของเงื่อนไขด้านเสียงพูดและอะคูสติกสูงกว่า
- บน TPU-v4 สามารถสร้าง เสียง 30 วินาทีได้ใน 0.5 วินาที
การสังเคราะห์บทสนทนา
- SoundStorm สามารถนำไปรวมกับขั้นตอน text-to-semantic modeling ของ SPEAR-TTS เพื่อสังเคราะห์บทสนทนาธรรมชาติคุณภาพสูงได้
- องค์ประกอบที่ควบคุมได้มี 3 อย่าง
- เนื้อหาคำพูด ผ่านบทพูด
- เสียงของผู้พูด ผ่านพรอมป์ตเสียงสั้น
- การสลับผู้พูด ผ่านคำอธิบายประกอบในบทพูด
- เวลารันไทม์ในการสังเคราะห์ช่วงบทสนทนายาว 30 วินาที วัดได้ที่ 2 วินาที บน TPU-v4 เดี่ยว
- ข้อความและผู้พูดที่ใช้ในตัวอย่างเป็นข้อมูลที่โมเดลไม่เคยเห็นระหว่างการฝึก
การสร้างเมื่อมีและไม่มีพรอมป์ต
- SoundStorm สร้างเสียงโดยมีโทเค็นเชิงความหมายของ AudioLM เป็นเงื่อนไข และสาธิตทั้งกรณีมีและไม่มี พรอมป์ตเสียง 3 วินาที
- หากไม่มีพรอมป์ต จะสุ่มผู้พูดที่แตกต่างกัน
- หากมีพรอมป์ต จะคงเสียงของผู้พูดไว้ได้อย่างสม่ำเสมอในระดับสูง
- ตัวอย่างต้นฉบับนำมาจาก LibriSpeech test-clean
- ความเร็วในการสร้างเร็วกว่าตัวสร้างอะคูสติกของ AudioLM หลายสิบเท่า
การเปรียบเทียบกับโมเดลอ้างอิง
- ในการสร้างแบบอิงพรอมป์ต SoundStorm มี ความสอดคล้องด้านอะคูสติก สูงกว่า AudioLM และรักษาเสียงผู้พูดจากพรอมป์ตได้ดีกว่า
- เมื่อเทียบกับ RVQ level-wise greedy decoding ในโมเดลเดียวกัน SoundStorm สร้างเสียงที่มีคุณภาพสูงกว่า
- ตัวอย่างเปรียบเทียบแสดงเอาต์พุต Original, AudioLM, Greedy และ SoundStorm แบบวางเคียงกัน
ผลกระทบและข้อพิจารณาด้านความปลอดภัย
- SoundStorm เป็นโมเดลสำหรับสร้างการแทนเสียงบนฐานนิวรัลออดิโอโค้เดกอย่างมีประสิทธิภาพและคุณภาพสูง
- ในงานนี้ถูกใช้เป็นองค์ประกอบที่เข้ามาแทน ไปป์ไลน์การสร้างอะคูสติก ของ AudioLM และ SPEAR-TTS
- ตัวอย่างที่สร้างขึ้นอาจได้รับอิทธิพลจากอคติในข้อมูลฝึก และตัวอย่างอาจมีข้อจำกัด เช่น น้ำเสียงและคุณลักษณะเสียงที่เป็นตัวแทนไม่ครบถ้วน
- แม้จะสามารถควบคุมลักษณะของผู้พูดผ่านพรอมป์ตได้อย่างเสถียร แต่การวิเคราะห์ข้อมูลฝึกและข้อจำกัดของมันอย่างละเอียดกว่านี้ยังเป็นงานในอนาคต
- ความสามารถในการเลียนแบบเสียงมีโอกาสถูกนำไปใช้ในทางที่ผิด
- อาจถูกใช้เพื่อ หลบเลี่ยงการยืนยันตัวตนด้วยชีวมิติ และ สวมรอย จึงทำให้มาตรการป้องกันมีความสำคัญ
- หลังการสลับแล้ว เสียงที่สร้างขึ้นสามารถ ตรวจจับได้ 98.5% ด้วยตัวจำแนกเฉพาะทาง เช่น ใน Borsos et al. (2022)
- ในฐานะองค์ประกอบของระบบที่ใหญ่กว่า มองว่า SoundStorm มีโอกาสต่ำที่จะเพิ่มความเสี่ยงเพิ่มเติมจากที่อภิปรายไว้ใน Borsos et al. (2022) และ Kharitonov et al. (2023)
- การลดความต้องการด้านหน่วยความจำและการคำนวณของ AudioLM อาจทำให้งานวิจัยด้านการสร้างเสียงเข้าถึงชุมชนที่กว้างขึ้นได้
- ในอนาคตมีแผนจะสำรวจ audio watermarking เป็นอีกแนวทางสำหรับการตรวจจับเสียงสังเคราะห์
1 ความคิดเห็น
ความเห็นจาก Hacker News
ในวงการ CGI มี หมุดหมาย ที่ค่อย ๆ เข้าใกล้มาตลอด ต้นไม้ที่มีใบเริ่มดูสมจริงขึ้นเสียที หญ้าที่ไหวตามลมก็ดูเกือบเนียนขึ้นเรื่อย ๆ รวมถึงสิ่งอย่างเส้นผมหรือวัตถุคล้ายเจลลี่ที่ดีขึ้นด้วย และโดยมากเรามักจะเห็นว่าหนังสั้นของ Pixar โฟกัสกับอะไร ก่อนที่สิ่งนั้นจะถูกนำไปใช้ในภาพยนตร์
หลังจากนั้นก็มี motion capture และเทคโนโลยีเอาใบหน้าดิจิทัลไปครอบบนใบหน้านักแสดงจริง ตอนเห็นครั้งแรกใน Pirates of the Caribbean ก็ตกใจมาก แล้วพวกลิงใน Planet of the Apes ก็เช่นกัน ตอนนี้หลายส่วนของอุตสาหกรรม CGI ดูเหมือนจะมาถึงจุดที่ปัญหาที่ยากที่สุดถูกแก้ไปแล้ว
ตอนนี้พอลองเปิดบทสนทนาสังเคราะห์อันแรกใน Dialogue Synthesis ที่ว่า “Where did you go last summer? | I went to Greece, it was amazing.” ก็รู้สึกทึ่งอีกครั้ง เหมือนเรามาถึงอีก หมุดหมาย ที่เครื่องจักร พูดได้เหมือนมนุษย์จริง ๆ จนแยกไม่ออกแล้ว
แค่เมื่อ 10~5 ปีก่อน ถ้าจะใช้ TTS วิธีที่ดีที่สุดคือเรนเดอร์ไฟล์เสียงด้วยมือถือ Android ส่วนอย่างอื่นนั้นแย่มาก โดยเฉพาะฝั่งโอเพนซอร์สที่หนักมาก
งั้นจะต้องอีกนานแค่ไหน กว่าคนรุ่นอนาคตจะดาวน์โหลดโมเดลคุณภาพระดับนี้ลง Raspberry Pi แล้วแค่เรียกผ่าน HTTP โดยไม่ต้องพึ่งคลาวด์ ก็ให้เสียงพูดที่สมบูรณ์แบบออกมาได้? 5 ปี?
ตอนนี้เอง ถ้าพยายามมากพอ และใช้โมเดลเล็กที่ fine-tune กับเสียงเดียว แทนการใช้โมเดลใหญ่แบบอเนกประสงค์ที่สร้างเสียงไหนก็ได้ ก็อาจจะเกือบทำได้แล้วไม่ใช่หรือ? whisper-tiny รันแบบเรียลไทม์บน Pi ได้ไม่ใช่เหรอ? แถมยังไม่ได้ใช้ GPU ของ Pi ด้วยซ้ำ (https://github.com/ggerganov/whisper.cpp/discussions/166)
แก้ไข: ดูเหมือนว่า medium จะช้ากว่า tiny บน Pi ถึง 30 เท่า งั้นผมน่าจะมองโลกสวยเกินไป ไม่รู้มาก่อนว่า Whisper tiny จะเร็วกว่า medium ขนาดนั้น
วิธีนี้ใช้กับ Tortoise ได้ผลดีพอสมควร ทำให้ใช้ค่าคุณภาพ Tortoise แบบเร็วมาก แต่ได้คุณภาพใกล้กับโมเดลที่ใหญ่กว่า แน่นอนว่าถ้า fine-tune ทั้งระบบให้เหลือเสียงเดียว ฟีเจอร์เจ๋ง ๆ หลายอย่างก็จะหายไป ถึงอย่างนั้น Tortoise ก็น่าจะยังช้าเกินไปสำหรับ Pi แต่กลยุทธ์เดียวกันนี้อาจใช้ได้กับโมเดลที่เร็วกว่าอย่าง SoundStorm
ในแง่คุณภาพ เรื่อง ความสม่ำเสมอระยะยาว ของเสียงช่วงยาว ๆ ยังต้องพัฒนาอีกมาก เวลาให้คนจริงอ่านออดิโอบุ๊ก คำที่อยู่ต้นหน้ามีผลมากกับวิธีอ่านคำที่อยู่ด้านล่าง และอาจมีผลได้แม้จะห่างกันไกลอย่างหน้าที่ 10 กับหน้าที่ 300 ถ้าสร้างออดิโอบุ๊กด้วยโมเดล TTS ระดับดีที่สุดแล้วฟังดี ๆ จะได้ยินความไม่ต่อเนื่องชัดมาก เหมือนผู้อ่านอัดแต่ละย่อหน้าแบบไม่เรียงลำดับ หรือเหมือนบทพูดในวิดีโอเกมที่นักแสดงอัดทุกประโยคแยกกันโดยไม่ได้ตอบสนองต่อการแสดงของกันและกัน
ถ้าขยาย context window เป็น 1 นาที 2 นาที ก็จะเข้าใกล้ขึ้น และอาจเพียงพอสำหรับหนังสือบางเล่ม ในระยะสั้น คนยังสามารถปรับและเกลาตัวอย่างเสียงทั้งหมดด้วยมือเพื่อให้ฟังเป็นธรรมชาติได้ ดังนั้นงานแบบออดิโอบุ๊กที่แฟน ๆ ทำและยอมใช้เวลาจูนให้เข้าที่ก็น่าจะเป็นไปได้ แต่สำหรับหนังสือที่ทำแบบอัตโนมัติทั้งหมด ความไม่ต่อเนื่องแบบนี้น่ารำคาญจนแทบบ้า เพราะการแสดงในบางช่วงมันใกล้เคียงของจริงมาก พอมีจังหวะที่โทนหลุดจึงยิ่งรู้สึกสะดุด
แต่ทุกวันนี้ทุกครั้งที่มีเทคนิคใหม่ออกมาสำหรับเลียนแบบและทำซ้ำความคิดสร้างสรรค์กับพฤติกรรมของมนุษย์ ผมกลับยิ่งสะสมความกังวลมากขึ้น
เราควรมี สิทธิที่จะรู้ ไหมว่าสิ่งที่เราดูหรืออ่านนั้นถูกสร้างขึ้นมาหรือเปล่า?
เป็นเรื่องดีที่ Bing กับ Bard ใช้ผลิตภัณฑ์ล่าสุดของ Microsoft และ Google Cloud แต่คงดีถ้าความก้าวหน้าด้านเสียงแบบนี้ รวมถึงสิ่งอย่าง audio palm(https://google-research.github.io/seanet/audiopalm/examples/) ถูกปล่อยออกมาเป็น public API หรืออินเทอร์เฟซให้ผู้ใช้ใช้งานได้
TTS ของ Bard ใช้ได้ แต่ชัดเจนว่ายังตามหลัง
แยกอีกเรื่องหนึ่ง TTS ภาษาอังกฤษ/เกาหลีของ Bing นั้นดีมากจริง ๆ ไม่เคยรู้ว่า Microsoft เอาผลิตภัณฑ์ระดับท็อปมาใช้กับ TTS ฟรีใน Edge เลย ซึ่งนั่นทำให้มันดีกว่าเสียง TTS พื้นฐานของ Google มาก
ในบรรดาเสียงของ Azure ก็มีบางตัวที่ดีกว่าตัวอื่น และเว็บแอป TTS ก็มีบั๊กเล็ก ๆ น้อย ๆ อยู่บ้าง แต่โดยรวมแล้วประสบการณ์นั้นน่าพอใจมาก
https://cloud.google.com/text-to-speech/docs/wavenet#studio_voices_preview
“ผลิตภัณฑ์ระดับท็อปของ TTS ฟรี” หมายถึงไลบรารีซอฟต์แวร์เสรี หรือหมายถึง SaaS ฟรี? แล้ว “on Edge” หมายถึงเบราว์เซอร์ Edge หรือการรันแบบ edge บนเครื่องไคลเอนต์? หรือหมายความว่า TTS ที่รันบนเครื่องไคลเอนต์ทั้งหมดดีกว่า Google TTS พื้นฐาน?
เวลาคนพูดอย่างคล่องแคล่วว่าให้เหล่าช่างฝีมือไปหางานอย่างอื่นทำ สิ่งที่มักตกหล่นคือ งานใหม่นั้นบ่อยครั้งเป็นงานที่ เรียบง่ายและค่าแรงต่ำ เมื่อ Amazon เข้ามาเบียดร้านค้าแถวบ้านออกไป คนเหล่านั้นไม่ได้ไปเริ่มธุรกิจใหม่ แต่กลับต้องไปหางานที่ Wal-Mart แทน
น่าสนใจที่ SoundStorm ถูกฝึกให้สร้างบทสนทนาระหว่างคนสองคนโดยใช้สคริปต์ที่ทำเครื่องหมายการสลับผู้พูดด้วย
|แต่ดูเหมือนว่าโมเดล Bark ก็ทำงานกับอักขระ|แบบเดียวกันนี้ได้แทบจะเป็นค่าเริ่มต้นและสร้างบทสนทนาออกมาได้เช่นกันประมาณหนึ่งในสามของผลลัพธ์จาก Bark หรืออาจมากกว่านั้นอีกเล็กน้อย ออกมาเหมือนบทพูดคนเดียวที่ฟังคล้ายบทสนทนา และก็มักพลาดจังหวะสลับเสียงพูดอยู่บ่อย ๆ ถึงอย่างนั้น อักขระ pipe ก็ยังสร้างเสียงที่ฟังเหมือนบทสนทนาในเชิงการแสดงได้ค่อนข้างสม่ำเสมอ
https://twitter.com/jonathanfly/status/1675987073893904386
หรือว่าในข้อมูลฝึกมี ข้อมูล text-to-audio ที่ใช้
|สำหรับการสลับผู้พูดอยู่ที่ไหนสักแห่ง?ที่น่าสนุกคือ Bark มักเรนเดอร์พรอมป์ต์ของ SoundStorm ด้วยน้ำเสียงประชดประชัน ไม่แน่ใจว่าเป็นเพราะสไตล์ของโมเดลต่างกัน หรือ Google แค่เลือกตัวอย่างเด่นที่เป็นการอ่านออกเสียงแบบตรงไปตรงมามากกว่าเท่านั้น
[laughs]ถึงใช้ได้ด้วยสงสัยว่าตลาดรับจ้างงานอย่าง UpWork หรือ Fiverr จะปรับตัวได้เร็วพอหรือไม่ กับสถานการณ์ใหม่ที่บริการหลายอย่างซึ่งเมื่อก่อนต้องใช้คนทำ ตอนนี้ซอฟต์แวร์ทำได้แล้ว
อินเทอร์เฟซของตลาดแบบปัจจุบันดูไม่ค่อยเหมาะกับเรื่องนี้ ผู้ซื้อคงอยากได้ผลลัพธ์ทันที แทนที่จะต้องติดต่อมนุษย์แล้วรอให้งานเสร็จ
เพราะงั้นแพลตฟอร์มน่าจะต้องเปลี่ยนให้เป็นเหมือน app store ผู้ขายเชื่อมบริการของตัวเองเข้าไป แล้วผู้ซื้อก็ใช้งานบริการนั้นได้ทันที
ถ้ามีเครื่องมือที่ให้คุณป้อนบทพูดก่อนหน้าของนักแสดงไม่กี่บรรทัด แล้วสร้างอะไรบางอย่างมาอุดช่องว่างตามพารามิเตอร์ที่ตั้งไว้ เพื่อให้โปรเจกต์เดินหน้าต่อได้โดยไม่ต้องเจอปัญหาด้านโลจิสติกส์ทั้งหมดนั้น มันคงเหมือนสวรรค์
แต่มันก็อาจฆ่าวิชาชีพเฉพาะทางทั้งสายได้เหมือนกัน และจะทำให้มูลค่าของนักแสดงลดลงด้วย อันที่จริงมันก็เริ่มเกิดขึ้นแล้ว ในตลาดมีโปรแกรมที่มาแทนที่นักพากย์ได้ทั้งหมดอยู่แล้ว และกำลังถูกใช้ในวงการวิดีโอเกม
มันช่วยงานที่ผมทำได้อย่างชัดเจน แต่ในขณะเดียวกันผมก็รู้ดีว่ามันมีโอกาสถูกนำไปใช้ผิดทางอย่างมาก
ส่วนที่น่าประทับใจที่สุดคือ มันดูเหมือนจะสร้าง TTS ยาว 30 วินาทีได้จาก ต้นฉบับยาว 3 วินาที เท่านั้น เจ๋งมาก และพูดตามตรงคือล้ำไปกว่าที่คาดไว้เยอะ
จากพัฒนาการช่วงหลัง ๆ นี้ มี เสียง TTS สำหรับ Linux ที่ดีพอและคนทั่วไปใช้งานได้โดยไม่ต้องตั้งค่ายุ่งยากบ้างไหม?
ผมไม่อยากเล่นเกมที่สร้างด้วยวิธีแบบนี้ เหตุผลหลักที่ผมอยากฟังบทสนทนา NPC ก็เพราะมันเป็น บทสนทนาที่มนุษย์เขียน
น่าประทับใจ แต่ตัวอย่างแรกพลาดชัดเจนในช่วงท้ายตอนที่เสียงผู้ชายเสมือนพูดคำว่า “what?” แล้วไหลสูงขึ้น พร้อมเอฟเฟกต์แก้เพี้ยนคล้าย auto-tune ที่ได้ยินชัดมาก
ตัวอย่างอื่น ๆ น่าทึ่งจริง ๆ ถ้าฝึกจากเสียงแค่ไม่กี่วินาทีแล้วสามารถสร้างเสียงที่ฟังน่าเชื่อถือยาวหลาย分钟ได้ ขั้นต่อไปก็น่าจะเป็นการทำให้มันร้องเพลงได้ ผมคิดว่าจะเกิด พายุทางกฎหมาย หากมีใครใช้เทคโนโลยีคล้ายกันเอาเสียงของ Elvis ไปใช้ในโฆษณาโดยไม่ระบุชื่อ แฟน ๆ ฟังออก แต่เสียงนั้นไม่ตรงกับเนื้อร้องหรือเพลงเดิมของเขา
ไม่ใช่ความเห็นที่ลึกซึ้งอะไร แต่ถ้าเปิดทุกตัวอย่างพร้อมกันมันสนุกมาก ให้ความรู้สึกเหมือน Ableton Live เวอร์ชัน HTML