pattern recognition learning, Summaries of Pattern Classification and Recognition

learning pattern recognition through assignment conceptual understanding

Typology: Summaries

2025/2026

Uploaded on 03/03/2026

amit-kumar-gdc
amit-kumar-gdc 🇮🇳

1 document

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
AI Assignment – Detailed Explanation of Python
Codes
Question 1: KL-Divergence Demonstration
The first program demonstrates KL-Divergence between two probability distributions using Python
libraries such as NumPy, SciPy, and Matplotlib. 1. Two normal distributions are defined: - P(x):
Standard Normal Distribution (mean=0, std=1) - Q(x): Shifted and wider Normal Distribution
(mean=2, std=1.5) 2. KL-Divergence Formula Used: D(P||Q) = Σ P(x) * log(P(x)/Q(x)) 3. The
function kl_divergence(p, q) computes the divergence while avoiding division-by-zero errors using
NumPy's conditional operations. 4. Results: KL Divergence P||Q = 50.7780 KL Divergence Q||P =
110.8657 This shows that KL-Divergence is not symmetric. D(P||Q) D(Q||P). The graphical plot
visually compares both distributions and displays divergence values on the figure.
pf3

Partial preview of the text

Download pattern recognition learning and more Summaries Pattern Classification and Recognition in PDF only on Docsity!

AI Assignment – Detailed Explanation of Python

Codes

Question 1: KL-Divergence Demonstration

The first program demonstrates KL-Divergence between two probability distributions using Python libraries such as NumPy, SciPy, and Matplotlib. 1. Two normal distributions are defined: - P(x): Standard Normal Distribution (mean=0, std=1) - Q(x): Shifted and wider Normal Distribution (mean=2, std=1.5) 2. KL-Divergence Formula Used: D(P||Q) = Σ P(x) * log(P(x)/Q(x)) 3. The function kl_divergence(p, q) computes the divergence while avoiding division-by-zero errors using NumPy's conditional operations. 4. Results: KL Divergence P||Q = 50.7780 KL Divergence Q||P = 110.8657 This shows that KL-Divergence is not symmetric. D(P||Q) ≠ D(Q||P). The graphical plot visually compares both distributions and displays divergence values on the figure.

Question 2: Manual FFT on Voice Signal

The second program records or loads a voice sample and computes its FFT using a manually implemented Recursive Cooley-Tukey Algorithm. 1. The algorithm splits the signal into even and odd indexed samples. 2. It recursively computes FFT on smaller parts. 3. Combines results using butterfly operations: X[k] = Even[k] + Twiddle * Odd[k] X[k+N/2] = Even[k] - Twiddle * Odd[k] Operation Counting: For N = 4096 samples: Complex Multiplications = 24576 Complex Additions = 49152 The program also plots: - Time Domain signal - Frequency Domain (Magnitude Spectrum) This demonstrates computational efficiency of FFT (O(N log N)) compared to naive DFT (O(N²)).