Class info.

  • Online InClass Kaggle Competitions with corresponding Github projects (programs)
  • Reports
  • Oral presentations, at least three times, 100%

Date

9/12

Course Outline

9/19

Human Voice, Phonetic, Speech Signal and Hearing System

語言的三要素

  • Semantic (Content) 語意
  • Form (Phonology Morphology Syntax) 語形
  • Use (Pragmatic) 語用

語意

語意是指語言最常代表的涵義,可以是一個字、一個人、一個詞或一句話。

語法

語法就是語言的結構,也是指將字、詞組織成有意義的句子,主詞、動詞及受詞都有一定規則與順序。

語音

指語言所發出的聲音,也是語言最原始的訊號,具有特別的結構,不同語言會有不同的語音。

語形

指語言的聲音和符號。

語用

能在不同的時間、地點、及情境中適當的使用語言,達到有效溝通的目的,這就是語用,換句話說,就是與他人溝通的技巧。


窄頻帶的聲譜圖(narrowband spectrograms)

聲譜圖的產生是用富利葉轉換(Fourier transform),當我們用較長的分析視窗 (analysis windows),約20ms,對應頻寬約為45 Hz,得到的頻率解析度較高,頻譜上可以看到諧振的成分。

在聲譜圖上呈現 距的黑白相間橫線條,其間距就是基頻(F0)。

超音段特徵(suprasegmental feature)

當我們說出完整的一句話時,是包含了一連串的發音過程,發音器官進行一連串的動作,將一個一個音節的發音產生出來。

在這過程中,會有音高的改變,音節時間長短的變化,重音的不同,以及呼吸中斷的停頓等現象,我們將這些現象所引起的聲調與節奏(rhythm)因素,稱為說話的韻律特徵(prosodic feature)。這些特徵超越音位的音段,所以稱為超音段特徵。

Homework 1/2

  • Program

    • Audacity: Recording/Stereo/44100 Hz, Specgram, Effect/Normalization
  • Command Line Operation

    • SoX: Mixing (Stereo to Mono) → Resampling/16000 Hz
    • Rubberband → Time Stretching and Pitch shift 5x5
  • Python Programming using Librosa, NLPaug and Audiomentations

    • Feature Extraction
    • Audio Data Augmentation
    • Librosa: 求參數
    • NLPaug and Audiomentations: 調整快慢
  • Report

    • Waveform, Specgram
    • Experimental Results
  • Speech vocoding

  • Spectrogram

x = librosa.stft(audio, n_fft=2048, hop_length=480)
librosa.display.specshow(librosa.amplitude_to_db(np.abs(x)), sr=sr)
  • Pitch Tracking
pitches, magnitudes = librosa.piptrack(y=audio, sr=sr)
plt.imshow(pitches[:, :], aspect="auto", interpolation="nearest", origi
n="bottom")
  • Resampling
audio = librosa.resample(audio, orig_sr=sr, target_sr=target_sr)
  • NarrowBand and WideBand Spectrogram
x = librosa.stft(audio, n_fft=2048, hop_length=80)
x = librosa.stft(audio, n_fft=128, hop_length=80)
  • Pitch Detection
  • Pitch Contour Extraction
snd = parselmouth.Sound(human_sound_file)
snd.resample(new_frequency=16000)
pitch = snd.to_pitch()
  • Mel-Scaled Spectogram
audio = librosa.resample(audio, orig_sr=sr, target_sr=target_sr)
  • MFCCs
mfcc = librosa.feature.mfcc(S=log_S, n_mfcc=13)

聲音感知

人類在分辨聲音時,是取決於頻域上的解析度,聽覺器官等於是將時域的聲音波形轉換成在頻域的頻譜,能否聽到聲音或分辨聲音,是取決於音強(intensity)與頻譜(spectrum)。

一般人的聽覺器官可以感知頻率範圍16 Hz到18 kHz的聲音,動態範圍約1000倍。

超出人類聽覺感知範圍,如20 kHz以上的聲波,我們稱之為超音波(ultrasonic)。

人耳對於1 kHz到5 kHz的聲音最為敏感,但是對於1 kHz以下與5 kHz以上的聲音,就要較大的音強才聽得到。

遮蔽效應(masking effect)

當一個聲音存在時,它會將另一個聲音的感知臨界值提高,也就是說當某一頻率的聲音,有一特定音強存在時,另一個不同頻率的聲音要將音強提高才會被聽到,這就是遮蔽效應。

同時存在的聲音,常常是低頻的聲音傾向於遮蔽掉高頻的聲音,這是一種頻率遮蔽(frequency masking)的現象。

某一段時間存在一個聲音,在此聲音剛結束的一小段時間內,其他的聲音會聽不見這種遮蔽現象叫做時間遮蔽(temporal masking)。

這個現象也會發生在此存在聲音之前,這是由於聲音在聽覺器官中傳遞時延遲所造成的。

臨界頻帶(critical band)

當我們改變窄帶聲音刺激(narrowband sound stimulus)時,若其聲音成分跨越某一頻率,在聽覺上就會感到有差異,而在一個頻率範圍內時,則不感覺到差異,這個頻率範圍就叫做臨界頻帶。

當兩個聲音訊號同在一個臨界頻帶範圍內時,能量高的聲音就把另一個聲音遮蔽掉。

如果有一個帶通的噪音維持了固定的音強,當其頻寬增加,聽到的響度仍是一樣,一直到頻寬跨過臨界頻帶時,聽起來就不一樣,覺得噪音響度變大,這是因為鄰近的神經元(neurons)也發射訊號。

10/3

The Acoustic Environment

  • Attenuation

\[ d_2 + d_3 - d_1 = n \lambda + \frac{\lambda}{2} \]

  • Amplification

\[ d_2 + d_3 - d_1 = n \lambda \]

Model for a single sound source with one reflection:

\[ x(t) = a_d \cdots s(t - \tau_d) + a_r \cdot s(t - \tau_r) \]

Generalization:

\[ x(t) = \sum_{i=0}^\infty a_i \cdot s(t - \tau_i) \]

Impulse response model:

\[ x(t) = \sum_{i=0}^\infty a_i \delta (t - \tau_i) * s(t) \]

where \(h(t) = \sum_{i=0}^\infty a_i \delta (t - \tau_i)\), such that it can be wrote as

\[ x(t) = h(t) * s(t) \]

Introduction to Speech Recognition and Synthesis

Homework 3

Kaggle competition

10/10

國慶

10/17

Mel-Frequency Cepstral Coefficient (MFCC): Most widely used spectral representation in ASR

10/24

HW3 - Kaggle competition

10/31

Hidden Markov Model

11/07

espnet

11/14

11/21

Deep Learning for Speech Synthesis

11/28

Deep Learning for Speech Synthesis

Deep Voice
Tacotron

Select a repo