Views
No views yet
pronunciation_v3/)openai/whisper-base) for binary pronunciation quality classification.| Label | ID |
|---|---|
| Bad | 0 |
| Good | 1 |
1from transformers import pipeline
2
3classifier = pipeline(
4 task="audio-classification",
5 model="jecallora/readai",
6 subfolder="pronunciation_v3"
7)
8
9result = classifier("audio_sample.wav")
10print(result)
11# [{'label': 'Good', 'score': 0.95}, {'label': 'Bad', 'score': 0.05}]audio_quality/)| Quality | Score |
|---|---|
| Very Good | 100 |
| Good | 75 |
| Bad | 50 |
| Very Bad | 25 |
audio_classifier.joblib — Trained classifierscaler.joblib — StandardScaler for feature normalizationlabel_encoder.joblib — Label encoder1import joblib
2import librosa
3import numpy as np
4
5# Load models
6classifier = joblib.load("audio_quality/audio_classifier.joblib")
7scaler = joblib.load("audio_quality/scaler.joblib")
8label_encoder = joblib.load("audio_quality/label_encoder.joblib")
9
10# Extract features from audio (16kHz mono)
11y, sr = librosa.load("audio_sample.wav", sr=16000, mono=True)
12
13# Your feature extraction pipeline here...
14# features = extract_features(y)
15# scaled = scaler.transform([features])
16# prediction = classifier.predict(scaled)
17# label = label_encoder.inverse_transform(prediction)transformers>=4.41.2
torch>=2.3.1
torchaudio>=2.3.1
scikit-learn>=1.5.0
librosa>=0.10.2.post1
soundfile>=0.12.1
numpy>=1.26.4