Ses Verisi İşlemenin Temelleri

Serkan Celik
Huawei Developers - Türkiye
5 min readDec 8, 2023
Görsel Referansı

Giriş

Merhaba! Bu yazımızda, MindAudio’nun temel bileşenlerini ve ses ön işleme aşamaları hakkında konuşacağız.

MindAudio, ses işleme uygulamaları için kullanılan bir kütüphanedir. MindSpore platformunun bir parçası olarak, özellik çıkarımı, ses dönüştürümü, ses sınıflandırması, sesli komut algılama ve konuşma tanıma gibi çeşitli ses işleme görevlerini destekler.

Ses İşlemenin Temel Bileşenleri

Ses Veri Setleri

Ses işleme modellerini eğitmek veya değerlendirmek için kullanılan ses veri setlerini yönetir. Ses veri setleri, önceden işlenmiş ses örneklerini veya gerçek zamanlı ses akışlarını içerebilir.

Görsel Referansı

Ses Ön İşleme Fonksiyonları

Ses veri setleri, ses işleme modellerine uygun hale getirilmeden önce ön işleme adımlarından geçirilir. Ön işleme aşamaları, sesin spektrograma dönüştürülmesi, sesin normalizasyonu, parazitlerin temizlenmesi ve özellik çıkarımı gibi adımları içerebilir.

Görsel Referansı

Yapay Zeka Modelleri

MindAudio, ses işleme modellerini tanımlamak, eğitmek ve değerlendirmek için kullanılan bir dizi yapay zeka modelini içerir. Bu modeller, konuşma tanıma, sesli komut algılama, ses sınıflandırma ve diğer ses işleme görevlerini gerçekleştirmek için tasarlanmıştır.

Görsel Referansı

Model Eğitim ve Değerlendirme Fonksiyonları

MindAudio, ses işleme modellerini eğitmek ve değerlendirmek için gerekli olan araçları sağlar. Bu araçlar, veri seti hazırlığı, model eğitimi, model değerlendirmesi ve sonuçların analizi gibi adımları içerir.

Görsel Referansı

Ses Ön İşleme Aşamaları

Ses ön işleme, ses veri setlerini ses işleme modellerine uygun bir formata dönüştürme sürecidir. İşte temel ses ön işleme aşamaları:

1- Sesin Yüklenmesi: Ses veri seti, ses dosyalarını yüklemek için kullanılır. Ses dosyaları, genellikle WAV veya MP3 formatında olabilir.

2- Örnekleme Hızının Ayarlanması: Ses dosyaları, genellikle farklı örnekleme hızlarına sahip olabilir. Örnekleme hızı, ses verisinin saniyede kaç kez örneklendiğini belirtir. Ses veri seti, örnekleme hızını sabit bir değere dönüştürmek için örnekleme hızı dönüştürme işlemlerinden geçirilir.

Görsel Referansı

3- Spektrogram Oluşturma: Ses verileri, spektrogram adı verilen bir temsil formuna dönüştürülür. Spektrogram, frekans ve zamana bağlı bir ısı haritasıdır ve sesin frekans bileşenlerini zamanla nasıl değiştirdiğini gösterir. Bu, sesin spektral özelliklerini yakalamak için kullanılır.

Görsel Referansı

4- Özellik Çıkarımı: Spektrogram, daha sonra sesin özelliklerini temsil eden vektörlere dönüştürülür. Özellik çıkarımı adı verilen bu işlem, sesin önemli spektral bileşenlerini vurgulamak için filtreleme ve matematiksel dönüşümler kullanır. Özellik çıkarımı, genellikle Mel Frekans Cepstral Katsayıları (MFCC) veya Periyodiklik Doğrusal Özellikler (PLP) gibi yöntemlerle gerçekleştirilir.

Görsel Referansı

MindAudio ile Özellik Çıkarımı Aşamaları

MindAudio kütüphanesini kullanarak bir ses dosyasından özellik çıkarma ve Spektrogram görselleştirmesi yapma işlemlerini gerçekleştiren kodu inceleyelim;

Örnek kodlamayı gerçekleştirmek için gerekli kütüphaneleri çağırmamız gerekiyor. Ses dosyalarını okumak ve spektrum analizi yapmak için kütüphaneleri çağırmamız gerekiyor. Bu sebeple mindaudio.data.io ve mindaudio.data.spectrum modüllerini içe aktarıyoruz.

io.read() fonksiyonuyla ilgili ses dosyasını okuyoruz.

stft() fonksiyonunu kullanarak ses verisinden spektrogram matrisini elde ediyoruz. n_fft parametresi, Fourier dönüşümünde kullanılan pencere boyutunu belirtir. magphase() fonksiyonuyla spektrogram matrisini genlik ve faz matrislerine ayırıyoruz. Biz sadece genlik matrisini kullanacağız.

pcolormesh() fonksiyonunu kullanarak spektrogramı renkli bir şekilde görselleştiriyoruz. x ekseni zamanı, y ekseni frekansı temsil eder. shading parametresi gouraud renklendirme kullanılacağını belirtir. Grafik başlığını, eksen etiketlerini belirleyerek görseli düzenliyoruz. plt.show() komutuyla görseli ekranda görüntülüyoruz.

Görsel Referansı

Yaptığımız aşamalar sonunda, verilen ses dosyasının spektrogramını elde edebiliriz. Spektrogram, zaman-frekans alanında sesin frekans bileşenlerini temsil eden bir görsel sunar.

Elde ettiğimiz Spektogram verisi Konuşma Bilgi Sistemleri uygulamalarında kullanılabilir:

  1. Konuşma Tanıma (Automatic Speech Recognition): Ses verilerinden konuşma metnine dönüştürme işlemi için spektrogramlar kullanılabilir. Bu sistemler, konuşmayı anlamak ve transkript oluşturmak için ses dalgalarını analiz eder. Dil modelleri ve ses özelliklerini kullanarak konuşulan sözcükleri metin formatına çevirir. ASR, sesli komutlar, konuşma tanıma sistemleri, sesli asistanlar ve transkripsiyon hizmetleri gibi birçok uygulamada kullanılır.
  2. Konuşma Tespiti (Speech Non-Speech Detection): Ses verilerinde konuşma ve konuşma olmayan kısımları ayırt etmeyi amaçlayan bir teknolojidir. Bu tür bir sistem, ses sinyallerini analiz ederek konuşma içeren bölümleri belirleyebilir ve bu sayede gürültü filtreleme, konuşma tanıma sistemlerinin performansını artırma veya sesli komutlara tepki verme gibi uygulamalarda kullanılabilir.
  3. Konuşmacı Tanıma (Speaker Recognition): Ses tabanlı biyometrik bir teknoloji olup, bir kişinin konuşma özelliklerini kullanarak bu kişiyi tanıma sürecini ifade eder. Bu sistemler, bireylerin ses özelliklerini (tonlama, vurgu, konuşma hızı vb.) analiz ederek özgün bir ses profili oluşturur. Konuşma tanıma veya doğrulama amacıyla kullanılabilirler. Güvenliği artırmak, erişim kontrolu uygulamak veya telefon bankacılığı gibi alanlarda doğrulama sağlamak amacıyla kullanılabilir.
  4. Metin-Konuşma Dönüşümü (Text to Speech): Metin verilerini konuşma sesine dönüştüren bir teknolojiyi ifade eder. Bu sistemler, yazılı metinleri otomatik olarak konuşmaya çevirir ve sesli bir çıktı oluşturur. TTS, genellikle kullanıcı arayüzleri, sesli kitaplar, telefon yanıtları, navigasyon sistemleri ve diğer ses tabanlı uygulamalarda kullanılır.
  5. Dil Tanımlama Modelleri (Language Identification Models): Ses verilerinde konuşulan dilin tespitini sağlayan modelleri ifade eder. Bu modeller, ses kayıtlarını analiz ederek hangi dilin konuşulduğunu belirler. Ses tabanlı uygulamalarda, çok dilli ortamlarada veya transkripsiyon hizmetlerinde kullanılır. Bu modeller, konuşulan dilin doğru bir şekilde tanımlanması sayesinde çeşitli dil tabanlı işlemlerin gerçekleştirilmesine olanak tanır.

Sonuç

Bu makalede, MindSpore Audio’nun ses işleme uygulamalarında nasıl kullanıldığına ve ses ön işleme aşamalarının nasıl gerçekleştirildiğine değindik. MindSpore Audio, ses işleme modellerini yönetmek, ses veri setlerini işlemek ve çeşitli ses işleme görevlerini gerçekleştirmek için kullanılan bir kütüphanedir. Mindspore ve MindAudio hakkında daha fazla bilgi edinmek isterseniz MindSpore sitesini ziyaret edebilirsiniz.

Bir sonraki yazımızda görüşmek üzere :)

Image Reference

Kaynaklar

--

--