Muhammed_Kotb1 commited on
Commit
1e9ff93
โ€ข
1 Parent(s): c9134e6

add WER using jiwer library + test WER for Ziyad model against utube transcript for reba zahab feda video

Browse files
Files changed (2) hide show
  1. app.py +18 -6
  2. requirements.txt +1 -0
app.py CHANGED
@@ -1,6 +1,6 @@
1
  import torch
2
  import torchaudio
3
- import gradio as gr
4
  from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC, Wav2Vec2CTCTokenizer
5
 
6
  # Load the Arabic-specific processor and model
@@ -46,11 +46,23 @@ def transcribe(audio_file):
46
  print(f"An error occurred: {e}")
47
  return None
48
 
 
 
 
49
  # Transcribe the audio file
50
  transcription = transcribe("sidiali.wav")
 
51
  if transcription:
52
- print(transcription.encode('utf-8').decode('utf-8'))
53
- # Save the transcription to a file
54
- # with open("transcription.txt", "w", encoding="utf-8") as f:
55
- # f.write(transcription)
56
- # print("Transcription saved to transcription.txt")
 
 
 
 
 
 
 
 
 
1
  import torch
2
  import torchaudio
3
+ import jiwer
4
  from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC, Wav2Vec2CTCTokenizer
5
 
6
  # Load the Arabic-specific processor and model
 
46
  print(f"An error occurred: {e}")
47
  return None
48
 
49
+ # Define reference transcription for WER calculation
50
+ reference_transcription = " ู‚ุงู„ ุงู„ู…ุตู†ู ุฑุญู…ู‡ ุงู„ู„ู‡ ุชุนุงู„ู‰ ูˆู†ูุนู†ุง ุงู„ู„ู‡ ุจุนู„ูˆู…ู‡ ููŠ ุงู„ุฏุงุฑูŠู† ุงู…ูŠู† ูุตู„ ูˆุงู„ุฑุจุง ููŠ ุงู„ุฐู‡ุจ ูˆุงู„ูุถู‡ ูˆุงู„ู…ุทุนูˆู…ุงุช ุงู„ุฑุจุง ุดูƒู„ ู…ู† ุงุดูƒุงู„ ุงู„ุจูŠูˆุน ููŠู‡ ุชุจุงุฏู„ ู…ุซู„ ุงู„ุซู…ู† ูˆุงู„ู…ุซู…ู† ูู‡ู†ุง ููŠู‡ ู…ุงู„ ุจุงุฒุงุก ู…ุงู„ ูˆู„ุฐู„ูƒ ุงุฎุชู„ุท ุงู„ุงู…ุฑ ุนู„ู‰ ุงู„ู…ุดุฑูƒูŠู† ููŠ ู…ูƒู‡ ูู‚ุงู„ูˆุง ุงู†ู…ุง ุงู„ุจูŠุน ู…ุซู„ ุงู„ุฑุจุง ูŠุนู†ูŠ ู‡ุฐุง ููŠู‡ ู…ุจุงุฏู„ู‡ ูˆู‡ุฐุง ููŠู‡ ู…ุจุงุฏู„ู‡ ูˆููŠ ุงู„ู…ุจุงุฏู„ู‡ ุฒูŠุงุฏู‡ ุจูŠู† ุงู„ุซู…ู† ูˆ ุงู„ู…ุซู…ู† ูˆู‡ู†ุง ุฒูŠุงุฏู‡ ุจูŠู† ุงู„ุซู…ู† ูˆุงู„ู…ุซู…ู† ูู…ุง ุงู„ูุฑู‚ ู†ุญู† ู†ุจูŠุน ูˆู†ุดุชุฑูŠ ูˆุงู„ูุฑู‚ ู‡ูˆ ุงู† ุงู„ู„ู‡ ุณุจุญุงู†ู‡ ูˆุชุนุงู„ู‰ ุงู…ุฑ ุจุญุฑู…ุฉ ุงู„ุฑุจุง ู…ู† ุงุฌู„ ุงู„ุญูุงุธ ุนู„ู‰ ู†ุธุงู… ุงู„ุงู‚ุชุตุงุฏ ุงู„ู†ู‚ุฏูŠ ู…ู† ุฏุงุฎู„ู‡ ูู„ูˆ ุงุจุงุญ ุงู„ู„ู‡ ุงู„ุฑุจุง ู„ูƒุงู† ู‡ู†ุงูƒ ุฒูŠุงุฏู‡ ููŠ ูˆุณูŠุท ุงู„ุชุจุงุฏู„ ุฏูˆู† ุฒูŠุงุฏุฉ ุงู„ุงู†ุชุงุฌ ูˆูŠุญุฏุซ ุจุฐู„ูƒ ุงู„ุชุถุฎู… ู…ู† ุฏุงุฎู„ ุงู„ู†ุธุงู… ูุงุฐุง ุญุฏุซ ุงู„ุชุถุฎู… ู…ู† ุฐุงุช ุงู„ู†ุธุงู… ู ุงู„ุฐูŠ ูŠุถุงุฑ ุจุฐู„ูƒ ู…ุญุฏูˆุฏ ุงู„ุฏุฎู„ ุงู„ุฐูŠ ูŠุถุงุฑ ุจุฐู„ูƒ ุงู„ูู‚ูŠุฑ ูุญุฑู… ุงู„ู„ู‡ ุงู„ุฑุจุง ู…ู† ุงุฌู„ ุงู„ุง ูŠู‚ุน ุธู„ู… ุนู„ู‰ ุงู„ูู‚ูŠุฑ ูˆุงูˆุฌุจ ุงู„ุฒูƒุงู‡ ุญุชู‰ ูŠุชุนุงุฏู„ ุฏุฎู„ ุงู„ูู‚ูŠุฑ ู„ุงุฏุงุก ู…ู‚ุชุถูŠุงุช ุงู„ุญูŠุงู‡ ูุชุญุฑูŠู… ุงู„ุฑุจุง ู…ุฑุชุจุท ููŠ ุงู„ู†ุธุฑ ุงู„ุงู„ู‡ูŠ ู…ุน ุงูŠุฌุงุจ ุงู„ุฒูƒุงู‡ ุญุฑู… ุงู„ู„ู‡ ุงู„ุฑุจุง ูˆุงูˆุฌุจ ุญุฑู… ูˆุงูˆุฌุจ ุงู„ุฒูƒุงู‡ ู…ู† ุงุฌู„ ุญู…ุงูŠุฉ ุงู†ุณุงู†ูŠุฉ ุงู„ูู‚ูŠุฑ ู…ุญุฏูˆุฏ ุงู„ุฏุฎู„ ูู„ุง ูŠุฌุฏ ุงู„ุงุณุนุงุฑ ููˆู‚ ุงู„ุทุงู‚ู‡ ูˆูŠุณุชุทูŠุน ุงู† ูŠุญุตู„ ุจุงุณุชู‡ู„ุงูƒู‡ ู„ู…ุง ุงุฎุฐู‡ ู…ู† ุงู„ุฒูƒุงู‡ ู…ุง ูŠุฑูŠุฏ ู…ู† ู…ู‚ุชุถูŠุงุช ุงู„ุญูŠุงู‡ ูุงุฐุง ูƒุงู† ุงู„ุงู…ุฑ ูƒุฐู„ูƒ ูˆู‡ุฐุง ู†ุธุงู… ุฑุจุงู†ูŠ ุงู„ู‡ูŠ ูƒุงู† ุญุฑุง ู„ุง ูŠุณุชุทูŠุน ุงุญุฏ ุงู† ูŠุชุญูƒู… ููŠู‡ ู„ุง ููŠ ุงุฌุชู…ุงุน ูˆู„ุง ููŠ ุณูŠุงุณู‡ ูˆู„ุง ููŠ ุงู‚ุชุตุงุฏ ูŠูƒู…ู„ ุงู„ู…ู†ุธูˆู…ู‡ ุงู„ุตู„ุงู‡ ูุงุฐุง ุฐู‡ุจู‡ุง ุงู„ู†ุงุณ ูˆู‚ููˆุง ู…ุชุฌุงูˆุฑูŠู† ุงู„ุบู†ูŠ ุจุฌูˆุงุฑู‡ ุงู„ูู‚ูŠุฑ ูˆุงู„ูู‚ูŠุฑ ุจุฌูˆุงุฑู‡ ุงู„ู…ุณูƒูŠู† ูˆุงู„ู…ุณูƒูŠู† ุจุฌูˆุงุฑู‡ ุงู„ุบู†ูŠ ู„ุง ูุฑู‚ ุจูŠู†ู‡ู…ุง ูˆุงู„ุตู ุงู„ุงูˆู„ ู…ู†ุงุฎ ู…ู† ุณุจู‚ ุณุจู‚ ุงู„ู‰ ุงู„ุตู ุงู„ุงูˆู„ ุงู„ุบู†ูŠ ุงูˆ ุณุจู‚ ุงู„ู‰ ุงู„ุตู ุงู„ุซุงู†ูŠ ุงูˆ ุณุจู‚ ุงู„ู‰ ุงู„ุตู ุงู„ุงูˆู„ ุงู„ูู‚ูŠุฑ ู„ุง ูŠุณุชุทูŠุน ุงุญุฏ ุงู† ูŠุฌุฐุจู‡ ู…ู† ุงูˆู„ูŠุชู‡ ุญุชู‰ ูŠุชุงุฎุฑ ุจุณุจุจ ุบู†ุงู‡ ุงูˆ ุฌุงู‡ู‡ ุงูˆ ุณู„ุทุงู†ู‡ ู„ุงู† ู…ู† ุฌุงุก ููˆุฌุฏ ุงู„ุตู„ุงู‡ ูู„ูŠู„ุญู‚ ุจู‡ุง ุญูŠุซ ู…ุง ุงู†ุชู‡ู‰ ุจู‡ ุงู„ุตู ูˆูƒุฐู„ูƒ ููŠ ุทู„ุจ ุงู„ุนู„ู… ุญูŠุซ ู…ุง ุงู†ุชู‡ู‰ ุจู‡ ุงู„ู…ุฌู„ุณ ู…ู† ุงูŠู† ุชุชุงุชู‰ ู‡ุฐู‡ ุงู„ู†ูุณูŠู‡ ุงู„ุงุจูŠู‡ ู…ู† ุฏูˆู† ูƒุจุฑ ุงู†ู…ุง ุจุนุฒู‡ ูˆุฑู‚ูŠ ูˆุงู†ุณุงู†ูŠู‡ ุจูˆุฌูˆุจ ุงู„ุฒูƒุงู‡ ูุงู„ุฒูƒุงุฉ ู„ูŠุณุช ู…ู†ู‡ ูˆู„ุง ุนุทูŠู‡ ูˆู„ุง ู‡ูŠ ูŠุฏ ุนู„ูŠุง ูˆ ุจุญุฑู…ุฉ ุงู„ุฑุจุง ุญุชูŠ ูŠุญุงูุธ ุนู„ู‰ ุงู„ู†ุธุงู… ุงู„ุงู‚ุชุตุงุฏูŠ ู…ู† ุฏุงุฎู„ู‡ ู…ู† ุงู„ุชุถุฎู… ุฐู‡ุจุช ุงู„ุงูŠุงู… ูˆุฌุงุกุช ุงู„ุงูŠุงู… ูˆุชุณู„ุท ุนู„ูŠู†ุง ุงุจุงู„ุณู‡ ุงู„ุฌู† ูˆุงู„ุงู†ุณ ูˆุงุฎุฑุฌูˆุง ุงู„ุฐู‡ุจ ูˆุงู„ูุถู‡ ู…ู† ุงู„ุชุนุงู…ู„ ูˆุงุณุชุจุฏู„ูˆุง ุจู‡ุง ุญูŠู„ู‡ ุณุฎูŠูู‡ ูˆู‡ูŠ ุญูŠู„ู‡ ุงู„ูˆุฑู‚ ุงู„ู†ู‚ุฏูŠ ุฌุนู„ูˆุง ู„ู‡ ุงูˆู„ุง ุบุทุงุก ุซู… ุจุนุฏ ุฐู„ูƒ ุชู†ุงุณูˆุง ุงู„ุบุทุงุก ูุงุตุจุญ ูˆุฑู‚ุง ู„ุง ู‚ูŠู…ู‡ ู„ู‡ ููŠ ุงู†ุชุงุฌู‡ ู…ุน ู‚ูŠู…ุชู‡ ุฏูŠู†ุงุฑ ุงู„ุฐู‡ุจ 4 ุฌุฑุงู… ูˆุฑุจุน ู„ูˆ ุณูŠุญู†ุงู‡ ูŠุทู„ุน 4 ุฌุฑุงู… ูˆุฑุจุน ุฐู‡ุจ ู„ูˆ ุตูƒูŠู†ุงู‡ ูŠุทู„ุน 4 ุฌุฑุงู… ูˆุฑุจุน ุฐู‡ุจ ู„ูˆ ุจุนู†ุงู‡ ูŠุทู„ุน 4 ุฌุฑุงู… ูˆุฑุจุน ุงู„ุฐู‡ุจ ู‚ูŠู…ุชู‡ ููŠู‡ ุงู„ูˆุฑู‚ู‡ ุงู„ 200 ุฌู†ูŠู‡ ุงู„ู„ูŠ ููŠ ุฌูŠุจูƒ ู…ุชูƒู„ูู‡ 16 ู‚ุฑุด ุญุชุฉ ุงู„ูˆุฑู‚ู‡ ุฏูŠ ูˆุดูˆูŠุฉ ุงู„ุงุญุจุงุฑ ุงู„ู„ูŠ ุนู„ูŠู‡ุง 16 ู‚ุฑุด ุทุจ ุงู„ูุฑู‚ ุจูŠู† 16 ู‚ุฑุด ูˆ200 ุฌู†ูŠู‡ ููŠู† ุณู„ุทุฉ ุงู„ุฏูˆู„ู‡ ุณู„ุทุฉ ุงู„ุงุตุฏุงุฑ ูˆุณู„ุทุฉ ุงู„ุฏูˆู„ู‡ ุฏูŠ ุจุชุชุญุณุจ ุงุฒุงูŠ ููŠ ู†ูุณู‡ุง ุจู‡ุง ูŠุนู†ูŠ ุฌูˆู‡ ู…ุตุฑ ูƒุฏู‡ ูŠุจู‚ู‰ ุจู‡ุง ูŠุนู†ูŠ ุงู„ 200 ุฌู†ูŠู‡ 200 ุฌู†ูŠู‡ ุทุจ ูˆููŠ ุฎุงุฑุฌู‡ุง ูŠุจู‚ู‰ ุจู‚ูˆุฉ ุงู†ุชุงุฌู‡ุง ูุงู„ุฏูˆู„ุงุฑ ูŠุจู‚ู‰ ุจ 50 ุฌู†ูŠู‡ ุงู„ู„ูŠ ู‡ูˆ ูƒุงู† ุจ 39 ู‚ุฑุด ูˆู†ุต ูŠุนู†ูŠ ูƒุงู† ุงู„ุฌู†ูŠู‡ ุจ 5 ุฏูˆู„ุงุฑ ูˆุจุนุฏูŠู† ู„ู…ุง ุงู†ู‡ุงุฑ ุจู‚ู‰ 2 ูˆู†ุต ููŠ ุงู„ุงูˆู„ ููŠ ุงู„ุงุฑุจุนูŠู†ุงุช ูƒุงู† ุงู„ุฌู†ูŠู‡ ุงู„ู…ุตุฑูŠ ุจ 5 ุฏูˆู„ุงุฑ 5 ุฏูˆู„ุงุฑ ููŠ 50 ุฌู†ูŠู‡ ูŠุจู‚ู‰ ุจูƒุงู… ูŠุจู‚ู‰ ุจ 250 ู…ุฑู‡ ูŠุจู‚ู‰ ุงู„ุฌู†ูŠู‡ ุงุจูˆ 40 ุณู†ุฉ 40 ุจูŠุณุงูˆูŠ 250 ุฌู†ูŠู‡ ู…ู† ุงู„ุฌู†ูŠู‡ุงุช ุงู„ู„ูŠ ู…ุนุงู†ุง ุฏูŠ ุชุฎูŠู„ ุงุถุฑุจ ุฏุฎู„ูƒ ููŠ 250 ูู„ูˆ ุณุงู„ู†ุง ุงู„ุดูŠุฎ ูู„ุงู† ูˆู„ุง ุนู„ุงู† ุจุชุงุฎุฏ ูƒุงู… ๏ฟฝ๏ฟฝู‚ูˆู„ู„ูƒ ุนุจุงุฑู‡ ุนู† 6000 ุฌู†ูŠู‡ ููŠ ุงู„ุดู‡ุฑ ุทุจ 6000 ุฌู†ูŠู‡ ููŠ ุงู„ุดู‡ุฑ ุงุถุฑุจู‡ุง ููŠ 250 ูŠุจู‚ู‰ 150 ู‚ุตุงุฏู‡ุง ุตูุฑ ูŠุจู‚ู‰ ู…ู„ูŠูˆู† ูˆู†ุต ู‡ุง ุชุฎูŠู„ ู†ูุณูƒ ุจู‚ู‰ ุงู† ุงู†ุช ู…ุนุงูƒ ู…ู„ูŠูˆู† ูˆู†ุต ูƒู„ ุดู‡ุฑ ู‡ุชุนุฑู ุชุณูƒู† ู‡ุชุนุฑู ุชุดุชุฑูŠ ู„ูƒ ุนุฑุจูŠู‡ ู…ู† ุงู… 2 ู…ู„ูŠูˆู† ุฏูŠ ุงู‚ู„ ุญุงุฌู‡ ุญุชู‰ ุงู„ุนุฑุจูŠู‡ ุงู… 14 ู…ู„ูŠูˆู† ู…ู…ูƒู† ุชุฌูŠุจู‡ุง ุจุณ ุจุงู„ุชู‚ุณูŠุท ุงู„ู„ู‡ ู‡ูˆ ุงูŠู‡ ุงู„ู„ูŠ ุญุตู„ ุชุถุฎู… ูˆุงู„ุชุถุฎู… ุฏู‡ ู…ุนู†ุงุชู‡ ุงูŠู‡ ู…ุนู†ุงุชู‡ ุงู† ู‡ุฐุง ุงู„ูˆุณูŠุท ู„ู„ุชุจุงุฏู„ ู„ู… ูŠุนุฏ ุณุจุจุง ู„ุงุบู†ุงุก ุงู„ูู‚ูŠุฑ ุงู„ูƒู„ุงู… ุฏู‡ ูƒู„ู‡ ูŠุง ุงุฎูŠ ู„ู‚ูŠู†ุง ุงู„ุดุงูุนูŠ ูู‡ู…ู‡ ุงู„ูƒู„ุงู… ุงู„ู„ูŠ ุงุญู†ุง ู‚ู„ู†ุงู‡ ุฏู‡ ูˆุงู„ุงู…ุงู… ุงู„ุบุฒุงู„ูŠ ุฑูƒู† ุงู„ุดุงูุนูŠู‡ ูุงู‡ู…ูŠู†ู‡ ุจูŠูƒุชุจูˆู‡ ุนุงุฏูŠ ูƒุฏู‡ ููŠู‚ูˆู„ ุฑุถูŠ ุงู„ู„ู‡ ุชุนุงู„ู‰ ุนู†ู‡ ููŠ ุงู„ุงู… ูˆุนู„ุฉ ุงู„ุฑุจุง ุชุนุจุฏูŠู‡ ูุงู„ุฐู‡ุจ ูˆุงู„ูุถู‡ ุฌุฒุก ุนู„ู‡ ูŠุนู†ูŠ ุฌุฒุก ุงู„ุนู„ู‡ ูŠุนู†ูŠ ุงุฐุง ุฎุฑุฌ ุนู† ุงู„ุฐู‡ุจูŠู‡ ูˆุงู„ูุถูŠู‡ ูู„ุง ุฑุจุง ูˆูŠู‚ูˆู„ ุงุจู† ุงู„ุญุงุฌุจ ูˆู‡ู„ ุญุฑู… ุงู„ุฑุจุง ู„ุฌูˆู‡ุฑู‡ู…ุง ุงูˆ ู„ุฌูˆู‡ุฑูŠุชู‡ู…ุง ุงู„ุฐู‡ุจ ูˆุงู„ูุถู‡ ู„ุฌูˆู‡ุฑู‡ู…ุง ุนุดุงู† ู‡ู… ุฐู‡ุจ ูˆูุถู‡ ูˆู„ุง ู„ุงู†ู‡ู… ูˆุณูŠุท ู„ู„ุชุจุงุฏู„ ู‚ุงู„ ุจู„ ู„ุฌูˆู‡ุฑู‡ู…ุง ู„ุฌูˆู‡ุฑู‡ู…ุง ูŠุนู†ูŠ ู„ุงู†ู‡ู… ุฐู‡ุจ ูˆูุถู‡ ู…ุด ู„ุฌูˆู‡ุฑ ุชู‡ู…ุง ูŠุนู†ูŠ ูƒูˆู†ู‡ู… ูˆุณูŠุท ู„ู„ุชุจุงุฏู„ ุจูŠู† ุงู„ู†ุงุณ ู„ูˆ ูƒุงู† ูˆุณูŠุท "
51
+
52
  # Transcribe the audio file
53
  transcription = transcribe("sidiali.wav")
54
+
55
  if transcription:
56
+ print(transcription)
57
+
58
+ # Calculate Word Error Rate (WER)
59
+ wer = jiwer.wer(reference_transcription, transcription)
60
+ print(f"Word Error Rate (WER): {wer}")
61
+
62
+ # Save the transcription and WER to a file
63
+ with open("evaluation_results.txt", "w", encoding="utf-8") as f:
64
+ f.write(f"Transcription: {transcription}\n")
65
+ f.write(f"Reference: {reference_transcription}\n")
66
+ f.write(f"Word Error Rate (WER): {wer}\n")
67
+
68
+ print("Evaluation results saved to evaluation_results.txt")
requirements.txt CHANGED
@@ -1,6 +1,7 @@
1
  transformers==4.44.0
2
  torch
3
  torchaudio
 
4
  numpy
5
  gradio
6
  librosa
 
1
  transformers==4.44.0
2
  torch
3
  torchaudio
4
+ jiwer
5
  numpy
6
  gradio
7
  librosa