audio computeFeatures

Standard-MFCC-Extraktion für Sentiment-Analyse im Callcenter

Scénario de test & Cas d'usage

Geschäftskontext

Ein Bank-Callcenter möchte Kundenanrufe automatisch transkribieren und eine Sentiment-Analyse durchführen. Dazu müssen die Roh-Audiodaten in MFCC-Merkmale (Mel-Frequency Cepstral Coefficients) umgewandelt werden, wobei Kontextinformationen (Frames davor und danach) einbezogen werden, um die Erkennungsgenauigkeit neuronaler Netze zu verbessern.
Datenaufbereitung

Erstellung einer Tabelle mit simulierten Audiodaten (Dummy-WAV-Header und Rauschen) für zwei Kundenanrufe.

Kopiert!
1 
2DATA casuser.call_center_audio;
3LENGTH call_id varchar(20) _audio_data_ varbinary;
4/* Simulierter WAV-Header + Stille/Rauschen */ _audio_data_ = '524946462408000057415645666D7420100000000100010044AC00008858010002001000646174610008000000000000'x;
5call_id = 'Kunde_A_101';
6OUTPUT;
7call_id = 'Kunde_B_102';
8OUTPUT;
9 
10RUN;
11 

Étapes de réalisation

1
Überprüfung, ob die Eingabetabelle korrekt geladen wurde.
Kopiert!
1 
2PROC CAS;
3TABLE.tableInfo / TABLE={name='call_center_audio', caslib='casuser'};
4 
5RUN;
6 
2
Berechnung der MFCC-Merkmale mit 2 Kontext-Frames, um zeitliche Abhängigkeiten zu erfassen, und Kopieren der Anruf-ID.
Kopiert!
1 
2PROC CAS;
3audio.computeFeatures / TABLE={name='call_center_audio', caslib='casuser'} audioColumn='_audio_data_' mfccOptions={nCeps=13, useEnergy=true} nContextFrames=2 copyVars={'call_id'} casOut={name='mfcc_features', caslib='casuser', replace=true};
4 
5RUN;
6 

Erwartetes Ergebnis


Die Ausgabetabelle 'mfcc_features' wird erfolgreich erstellt. Sie enthält die Variable 'call_id' und die berechneten Merkmalsvektoren. Jeder Vektor umfasst die MFCC-Werte des aktuellen Frames sowie die der 2 vorhergehenden und 2 nachfolgenden Frames (Kontext).