Tekil değer ayrıştırması (SVD) yöntemi büyük boyuttaki veri kümeleri için baskın özellikleri çıkarmak ve boyut azaltmak için kullanılan bir yöntemdir [1]. Matrisler bu yöntem kullanılarak anlamsal bir vektör uzayı oluşturmak için ayrıştırılmaktadır. Bu şekilde matris kavramsal olarak daha küçük bir veri uzayı ile temsil edilmiş olmaktadır. Tekil değer ayrıştırması yöntemi sınıflandırma ve boyut azaltılması için de kullanılmaktadır [2].
A = UΣVT (1.1)
Bu yöntemde A matrisi üç farklı matris olarak ifade edilir. Denklem. 1.1’de A matrisi için tekil değer ayrıştırması gösterilmiştir. Vektörlerinin matrisleri U ve V ile ifade edilmekte, tekil değerlere ait köşegen matrisi Σ ile ifade edilmektedir. Bu yöntemde en büyük k adet tekil değer seçilerek boyut azaltma yapılmaktadır. Denklem 1.2’de Uk, U matrisinin ilk k sütununu ifade etmektedir. V T k, V T matrisinin ilk k satırını ifade etmekte ve Σk, Σ matrisinin k elemanını ifade etmektedir [1].
Ak = UkΣkVk (1.2)
A matrisinin tekil değer ayrıştırması için gerekli adımlar aşağıda ifade etmek gerekirse;
Adım–1: A matrisinin transpozu A T bulunur.
Adım–2: A matrisinin transpozu ile kendisinin çarpımı AT A bulunur.
Adım–3: A T A matrisinin öz değerleri (eigenvalue) bulunur. Daha sonra azalan şekilde sıralanır ve tekil değerler kullanılarak öz vektörler (eigenvector) bulunur.
Adım–4: Köşegen matris azalan şekilde sıralanmış tekil değerler kullanılarak bulunur.
Adım–5: Köşegen matrisin tersi alınır.
Adım–6: A T A için öz değerler ve öz vektörler hesaplanır. Bulunan vektörler V matrisine yerleştirilir. Adım–7: V matrisinin transpozu V T bulunur.
Adım–8: U matrisi U = AV Σ -1 şeklinde hesaplanarak bulunur.
Tekil değer ayrıştırması yöntemi en etkili özellikleri yapıda tutarak diğer özellikleri yapıdan çıkarmaktadır [2].
Matematiksel olarak örnek vermek gerekirse;


A=USVT ve AT=VSUT
ATA = VSUTUSVT
ATA = VS2VT
ATAV = VS2 [3]
Görsel olarak ifade etmek gerekirse;

R * r köşegen matrisindeki değerler tekil değerdir. Tekil değer U ve V matrisleri ile birlikte orijinal matrisin sıkıştırılması için kullanılabilir. Bu şekilde yeni oluşan matris orijinal matrisi temsil edecektir ve oldukça küçük bir yer kaplayacaktır. [4]
Matlab ile bir uygulama yaparsak;
Matlab ile yaptığımız işlem sonucunda sıkıştırma eğrisi paralelleşmeye başladığı noktada(Rank 50K) görüntüdeki kayıp önemli ölçüde azalıyor. (Grafik 1)
Buradaki uygulama bize veri ön işlemede önemli avantajlar sağlıyor. Yaptığımız çalışmada resmin ne olduğunu anlamamız bize yeterli ise çok büyük bir depolama ve işlemci tasarrufu sunuyor.
%Matlab SVD Örnek Kodları İmage Compression
clear; clc
a=imread(‘a.jpg’);
[m,n,d]=size(a);
kmax=floor((m*n)/(m+n+1));
da=double(a);
U=zeros(m,m);S=zeros(m,n);V=zeros(n,n);e=zeros(kmax,d);cr=zeros(kmax,1);rmse=zeros(kmax,d);
for i=1:d
[U(:,:,i),S(:,:,i),V(:,:,i)]=svd(da(:,:,i));
end
for k=1:kmax
ca=zeros(m,n,d);
cr(k)=m*n/(k*(m+n+1));
for i=1:d
cai=zeros(m,n,d);
[ca(:,:,i),cai(:,:,i)]=deal(U(:,1:k,i)*S(1:k,1:k,i)*V(:,1:k,i)’);
e(k,i)=S(k+1,k+1,i)/S(1,1,i);
rmse(k,i)=sqrt(sum(sum(((da(:,:,i)-ca(:,:,i)).^2)))/(m*n));
imwrite(uint8(cai), sprintf(‘%dk%d.jpg’,k,i));
end
imwrite(uint8(ca), sprintf(‘%dk.jpg’, k));
end
figure
p=plot(1:kmax,e,’MarkerEdgeColor’,’r’,’MarkerEdgeColor’,’g’);
set(p,{‘color’},{‘red’;’green’;’blue’})
xlabel(‘Approximation Rank k’);
ylabel(‘Relative 2-Norm’);
xlim([1 kmax])
legend(‘Red’,’Green’,’Blue’)
grid on
figure
p=plot(1:kmax,rmse,’MarkerEdgeColor’,’r’,’MarkerEdgeColor’,’g’);
set(p,{‘color’},{‘red’;’green’;’blue’})
xlabel(‘Approximation Rank k’);
ylabel(‘RMS Erorr’);
xlim([1 kmax])
legend(‘Red’,’Green’,’Blue’)
grid on
figure
plot(1:kmax,cr);
xlabel(‘Approximation Rank k’);
ylabel(‘Compression Ratio’);
xlim([1 kmax])
grid on
%Kodlar Bitti




Kaynaklar
- Park, S.C., Li, C.H., “An efficient document classification model using an improved back propagation neural network and singular value decomposition”, Expert Systems with Applications, 36 (2): 3208–3215 (2009).
- Abidin, T.F., Yusuf, B., Umran, M., “Singular Value Decomposition for Dimensionality Reduction in Unsupervised Text Learning Problems”, 2nd International Conference on Education Technology and Computer (ICETC), 4: 422–426 (2010).
- https://web.mit.edu/be.400/www/SVD/Singular_Value_Decomposition.htm
- https://devhunteryz.wordpress.com/2018/03/01/denetimsiz-ogrenme-yontemleri/
Henüz yorum yok