Kabooks เป็นตัวย่อแบบเรียกซ้ำสำหรับ "Kabooks AudioBooks DataSet Creator" ซึ่งเป็นเครื่องมือในการสร้างกระบวนการสร้างชุดข้อมูลสำหรับการฝึกอบรมแบบจำลองข้อความเป็นคำพูด (TTS) และข้อความพูดเป็นข้อความ (STT) มันขึ้นอยู่กับผลงานของ Pansori [https://arxiv.org/abs/1812.09798]
การรับไฟล์เสียงและข้อความที่เกี่ยวข้องเป็นอินพุต Kabooks จะทำความสะอาดข้อความแบ่งออกเป็นประโยคถอดความแต่ละเซ็กเมนต์และค้นหาข้อความความจริงภาคพื้นดินในหนังสือเรียนที่สมบูรณ์
ใช้ความเสี่ยงของคุณเอง
ตรวจสอบให้แน่ใจว่าได้ติดตั้ง FFMPEG:
$ apt-get update
$ apt install ffmpeg$ conda create -n kabooks python=3.9 pip
$ conda activate kabooksติดตั้ง pytorch:
pip3 install torch torchvision torchaudioติดตั้งข้อกำหนดของ Kabooks:
$ pip install -r requirements.txtขั้นตอนนี้ได้รับไฟล์ JSON จากขั้นตอนก่อนหน้าและดำเนินการแบ่งส่วนของไฟล์เสียง สคริปต์นี้ขึ้นอยู่กับสคริปต์ที่จัดทำโดย Keith Ito ซึ่งให้บริการทางอีเมล ในขั้นตอนนี้รายการตรรกะของเซ็กเมนต์จะถูกสร้างขึ้นครั้งแรกจัดเก็บชื่อไฟล์เวลาเริ่มต้นและสิ้นสุด จากนั้นผ่านรายการตรรกะนี้หารเสียงต้นฉบับบันทึกแต่ละเซ็กเมนต์ลงในดิสก์
ฟังก์ชั่นนี้จัดทำโดยสคริปต์ชื่อ "Audio_segmentation.py" และสามารถใช้แยกกันได้ เรียกใช้สคริปต์โดยใช้อาร์กิวเมนต์อินพุตพา ธ ของไฟล์เสียง (MP3) ที่จะแบ่งส่วน
$ python segment_tools.py อินพุตจะต้องเป็นไฟล์ MP3 ซึ่งจะต้องอยู่ในโฟลเดอร์อินพุต หลังจากดำเนินการสคริปต์เซ็กเมนต์เสียงจะถูกสร้างขึ้นในโฟลเดอร์ WAVS และเซ็กเมนต์จะมีชื่อเดียวกับไฟล์ต้นฉบับ
ที่นี่มีสคริปต์ที่จะใช้ WAV2VEC2 ฟังก์ชั่นนี้จัดทำโดยสคริปต์ชื่อ "transcribe_audios.py" และสามารถใช้แยกต่างหาก เรียกใช้สคริปต์โดยใช้อาร์กิวเมนต์อินพุตของไดเรกทอรีอินพุตของไฟล์ WAVS ไฟล์เอาต์พุตการถอดความ ตัวอย่างเช่น:
$ python transcription_tools.pyอินพุตเริ่มต้นของสคริปต์คือเนื้อหาของโฟลเดอร์ WAVS ผลลัพธ์จะเป็นไฟล์. csv (transcription.csv) ที่มีการถอดเสียงของแต่ละไฟล์เสียงที่มีอยู่ในโฟลเดอร์ WAVS
ในขั้นตอนนี้การถอดเสียงแต่ละครั้งจากขั้นตอนก่อนหน้าจะถูกนำมาเปรียบเทียบกับข้อความเต็มรูปแบบที่อ้างถึงหนังสือเสียงอินพุต สำหรับการถอดเสียงแต่ละครั้งสคริปต์จะส่งคืนประโยคที่มีความคล้ายคลึงกันมากที่สุดซึ่งพบได้ในข้อความเต็ม
ผลลัพธ์จะเป็น. csv (result.csv) ที่มีการถอดเสียงประโยคดั้งเดิมและค่าความคล้ายคลึงกันสำหรับแต่ละกลุ่มเสียงที่มีอยู่ในโฟลเดอร์ WAVS
$ python search_substring.pyนอกจากนี้คุณยังสามารถใช้สคริปต์เวอร์ชันเดียวกันได้ แต่ใช้เธรด:
$ python search_substring_with_threads.py --number_threads=16