• Sonuç bulunamadı

3. VERİ MADENCİLİĞİ TABANLI İLAÇ SINIFLANDIRMA ÇATISI

3.7 Sınıflandırma Metotları

3.7.3 Hiyerarşik çoklu etiket sınıflaması

Hiyerarşik çoklu etiket sınıflaması (hierarchical multi-class classification, HMC), örneklerin aynı anda birden çok sınıfa ait olabileceği ve bu sınıfların bir hiyerarşide düzenlendiği bir sınıflandırma varyantıdır.

Sınıflandırma sınıflandırılmış örneklerden oluşan bir setten yeni örneklerin sınıfını öğrenme görevidir (Chen ve diğ., 2009). Hiyerarşik çok etiketli sınıflandırma normal sınıflandırmadan iki şekilde farklıdır. İlk olarak tek bir örnek aynı anda birden fazla sınıfa dahil olabilir. İkincisi sınıflar bir hiyerarşide organize edilir. Yani bir örnek bir sınıfa (class) aitken aynı anda o sınıfın tüm üst sınıflarınada (superclasses) aittir (Hiyerarşi kısıtlaması) (Freitas and Carvalho, 2007). HMC metin sınıflandırması (Rousu ve diğ., 2006), fonksiyonel genomik (Barutcuoğlu, 2006) ve nesne tanımlama alanlarında kullanılabilir. Burada fonksiyonel genomik genlerin fonksiyonlarını tahmin etme açısından önemli bir problemdir. Biyologlar genlerdeki olabilir fonksiyonların setine sahiptir. HMC algoritması genlerin sahip olabileceği işlevleri ve bu işlevleri bir hiyerarşide organize edebilir (Schietgat ve diğ., 2010). Tek bir gen birden fazla fonksiyona sahip olabilir. Bu nedenle, farklı genler arasındaki etkileşimleri anlamak amacıyla yorumlanabilir bir model elde etmek önemli bir problemdir. Buradan yola çıkarak ilaç adayı moleküller için bu yolla oluşturulan bir modelle moleküllerin onaylanmış, geri çekilen veya sinir sistemi ilacı olma durumunun yanında aynı zamanda sinir sistemi ilaçları ele alındığında ilacın hangi hastalık grubuna dahil olduğu önceden yorumlanabilir. Çalışmamızda HMC

47

algoritması ilaçların dahil olduğu grupları tahmin edip onları bir hiyerarşide organize etmiştir. HMC tüm sınıfları bir kerede öngören bir ağaç öğrenme algoritmasıdır. HMC’nin görevini şu şekilde tanımlayabiliriz (Barutcuoğlu ve diğ., 2006; Blockeel ve diğ., 2002; Vens ve diğ., 2008).

Verilenler:

 X bir örnek uzayı olsun

 Sınıf hiyerarşisi (C, ≤ℎ), C sınıfların bir seti ve ≤ℎ partial order (hiyerarşi

köklü bir ağaç olarak yapılandırıldı) üst sınıf ilişkilerini sunar. Her 𝑐1 ve 𝑐2 ∈ 𝐶 𝑖ç𝑖𝑛, 𝑐1 ≤ℎ 𝑐2 ancak ve ancak 𝑐1 𝑐2’nin bir super sınıfı ise geçerlidir.

 Örneklerin bir seti T olsun (𝑥𝑖,𝑆𝑖) , 𝑥𝑖 ∈ 𝑋 ve 𝑆İ⊆ 𝐶 buradan c ∈ 𝑆𝑖 ⇒

∀𝑐′

ℎ 𝑐 ∶ 𝑐′∈ 𝑆𝑖 ve

 Sınıflandırmanın kalitesi q ile belirtilsin burada tahmin yeteneği yüksek düşük karmaşıklık hedeflenir.

Bulunacak hiyerarşik kısıtlama:

 f bir fonksiyon f: X → 2𝐶 burada 2𝐶, C’nin kuvvet seti, buradan f q’yu

maksimize eder ve c∈ f(x) ⇒ ∀𝑐′

ℎ 𝑐 ∶ 𝑐′ ∈ 𝑓(𝑥) ‘tir. f karar ağaçlarıyla

ifade edilir.

Karar ağacı metotları tahmini kümelenme ağacı (predictive clustering tree, PCT) çerçevesinde belirlenmiştir. Buna göre ağaç bir kümelenme hiyerarşisi olarak karşımıza çıkar. En tepedeki düğüm bütün verileri içeren bir kümeye karşılık gelir. Bu küme yinelemeli olarak daha küçük kümelere bölünür (aşağı yönde). PCT’ler her bölünmede küme içi varyansı azami ölçüde azaltacak şekilde inşa edilmiştir ve burada yukarıdan-aşağı indüksiyon algoritmasıdır. PCT’ler standart karar ağacı algoritmalarına çok benzerler. Aralarındaki temel fark PCT’ler varyans ve prototip fonksiyonlarını parametre olarak görür ve bu parametreler eldeki öğrenme görevine dayanarak örneklendirilir. Bir regresyon ağacı oluşturmak için, varyans fonksiyonu, verilen örneklerin hedef değerlerinin varyansını döndürür ve prototip, hedef değerlerinin ortalamasıdır (Blockeel ve diğ., 1998; Struyf ve diğ., 2005). PCT yapısı Clus-sistemi içine uygulanmıştır (Struyf ve diğ., 2011). Clus bir karar ağacı ve kural öğrenme sistemidir. PCT’ler için yukarıdan aşağı indüksiyon algoritması Çizelge (3.2)’de gösterilmektedir (Schietgat ve diğ., 2010).

48

Çizelge 3.2: PCT’ler için yukarıdan-aşağı indüksiyon algoritması.

prosedure PCT ( I ) returns tree Procedure BestTest ( I )

1: (𝑡∗, 𝒫) = BestTest ( I ) 1: (𝑡, ℎ 𝒫) = (none, 0, ∅)

2: if 𝑡≠ 𝑛𝑜𝑛𝑒 2: for each posible test t

3: for each 𝐼𝑘 ∈ 𝒫∗ 3: 𝒫 = partition induced by t on I

4: tree𝑘= PCT (𝐼𝑘 ) 4: ℎ = Var ( I ) -∑ 𝐼𝑘∈ 𝒫|𝐼|𝐼|𝑘| Var ( 𝐼𝑘)

5: return node (𝑡, 𝒰

𝑘{𝑡𝑟𝑒𝑒𝑘} ) 5: if (ℎ > ℎ∗) ⋀ 𝐴𝑐𝑐𝑒𝑝𝑡𝑎𝑏𝑙𝑒 (𝑡, 𝒫)

6: else 6: (𝑡, ℎ 𝒫) = ( 𝑡, ℎ, 𝒫 )

7: return leaf (Prototype (I)) 7: return (𝑡, ℎ)

Çizelge 3.2’de I eğitim örneklerini, t öznitelik-değer testi, 𝒫 t tarafından I üzerinde ayrılmış bölüm ve h t nin sezgisel değeridir. Üst simge * ise mevcut en iyi testi ve onunla ilgili bölüm ve sezgisel metotları göstermektedir. En iyi testi seçmek için (BestTest) algoritma testleri varyans azalması ile puanlandırır. Varyans azalması maksimum olduğunda küme homojenliği en üst düzeye çıkar ve bu tahmin performansını arttırır. Kabul edilebilir herhangi bir test bulunamazsa yani varyansı önemli ölçüde azaltacak test yoksa algoritma bir yaprak (leaf) oluşturur ve onu verilen örneklerin temsili bir örneği veya prototipi ile etiketler.

PCT’ler HMC görevine uygulandığında varyans ve prototip parametreleri örneği aşağıdaki gibidir (Struyf ve diğ., 2011). Örnek bir etiket, Boolean bileşenleriyle bir vektör olarak gösterilir. Eğer vektörün i.ci bileşeni 1 ise örnek sınıf 𝑐𝑖’ye aittir aksi halde bileşenler 0 değerini alır. Örneklerin bir setinin varyansı Eşitlik (3.23) ile verilir.

Var (S)

=

∑ 𝑖 𝑑(𝑣𝑖 ,𝑣̅)

2

|𝑆|

(3.23)

Burada 𝑣𝑖 her örnek vektör arasında ortalama kare mesafesi ve 𝑣̅ setin ortalama vektörünü göstermektedir. HMC bağlamında hiyerarşinin yüksek seviyelerinde benzerlikleri dikkate almak alt düzeydekilerden çok daha önemlidir bu nedenle ağırlıklı öklid uzaklığı (weighted Euclidean distance) kullanılır (Struyf ve diğ., 2011). Clus-HMC sınıf vektörleri arasındaki öklid uzaklığına dayalı varyansı hesaplar. Bu uzaklık Eşitlik (3.24)’te verilmiştir.

49

𝑑(𝑣

1

, 𝑣

2

) = √∑ 𝑖 𝑤(𝑐

𝑖

). (𝑣

1,𝑖

− 𝑣

2,𝑖

)

2

(3.24)

Eşitlik 3.24’te 𝑣𝑘,𝑖 , bir örnek 𝑥𝑘 olmak üzere örneğin sınıf vektörünün (𝑣𝑘) i.ci bileşenidir. W(c) sınıf ağırlıklarını temsil eder ve hiyerarşide sınıfın derinliğiyle birlikte azalır. (𝑤(𝑐) = 𝑤0𝑑𝑒𝑝𝑡ℎ(𝑐), with 0 <𝑤0<1) (Vens ve diğ., 2008). Bir sınıflandırma ağacı çoğunluk sınıfını bir yaprağa depolar ve bu sınıf ağaca varan örnekler için bir tahmin olur. Ancak bizim problemimizde bir örnek birden fazla sınıfa sahip olabileceğinden çoğunluk sınıfı kavramı geçerli olmaz. Bunun yerine, bu yaprakta depolanan örnek vektörlerinin ortalama 𝑣̅ ‘sidir. Yani prototip fonksiyonu 𝑣̅ ‘yi döndürür. Eğer 𝑣̅ bazı eşik 𝑡𝑖 𝑖 değerinin üstünde olursa, örneğin ait olduğu sınıf 𝑐𝑖

tahmin edilir. Tahminlerin hiyerarşi sınırlamasını yerine getirmesini sağlamak için 𝑐𝑖 ≤ℎ 𝑐𝑗 olduğunda 𝑡𝑖 ≤ 𝑡𝑗 seçmek yeterlidir. Bu eşik değerlerin nasıl seçileceği

sınıflandırmanın sonucunda tahmin doğruluğunu maksimum yapma, maksimum F1- skoruna ulaşma gibi hedefler için farklı seçilebilir.

Şekil (3.4)’te ilaçları hiyerarşik olarak gruplarına göre sınıflandırırken bir sınıf setinin vektör olarak gösterimi (𝑣𝑘 ) örnek olarak verilmiştir. Yapılan çalışma 4. bölümde detaylı anlatıldı.

Şekil 3.4: İlaç grup hiyerarşisi. (A) Sınıf etiketlerini ve (B) bir sınıf seti örneğini göstermektedir, hiyerarşide kalın çizgiyle gösterilmiştir.

Sınıf etiketleri hiyerarşideki konumu yansıtır. Örneğin ‘1/3’ ‘1’in bir alt sınıfıdır. Bir sınıf seti {1, 1/3} olsun. Şekil 2.4 (B)’de sınıfların bir setinin vektör olarak gösterimi 𝑣𝑘 = [ 1⏞ (1) 0 ⏞ (2) 0⏞ (3) 1⏞ (4) 0⏞ (5) 0⏞ (6) 0⏞ (7) 0⏞ (8) ] şeklindedir.

50

Uygulama alanlarına bağlı olarak sınıfların hiyerarşisi her bir sınıf en fazla bir tane parent’a sahipse hiyerarşi ağaç yapısındadır, eğer sınıf birden fazla parent’a sahipse hiyerarşi DAG (directed acyclic graphs) yapısındadır. İlaç moleküllerini sınıflandırma probleminde hiyerarşi ağaç yapısındadır.

Clus-HMC ile sınıflandırma yaparken diğer önemli bir konuda dengesiz sınıf dağılımlarıdır bu durumda Eşitsizlik (3.25) problemin çözümü için oldukça dengeli sınıf dağılımları oluşturur.

𝑁𝑐

𝑁

+

𝑁𝑐

𝑁𝑝𝑎𝑟(𝑐)

< 1

(3.25)

Burada c sınıfları, N toplam örnek sayısını, par (c) c’nin parent sınıfını belirtmektedir. Buna göre Nc, c sınıfına ait örnek sayısını; Npar(c), c’nin parent sınıfına

ait örnek sayısını göstermektedir. İlaç molekülleri için hiyerarşik çoklu etiket sınıflaması yaparken Eşitsizlik (3.25) ile oldukça dengeli sınıf dağılımları oluşturduk.

Clus-HMC’nin tahmin edici performans ölçütleri olarak precision-recall eğrileri ve ROC analizleri kullanılır. Precision ve recall geleneksel olarak pozitif ve negatif sınıflara sahip bir ikili sınıflandırma görevi için tanımlanır. Precision pozitif tahminlerin doğru olduğu bölgedir ve recall pozitif olarak doğru tahmin edilen pozitif örneklerin oranıdır, Eşitlik (3.26-3.27).

precision

=

𝑇𝑃

𝑇𝑃+𝐹𝑃 (3.26)

recall

=

𝑇𝑃

𝑇𝑃+𝐹𝑁

(3.27)

Eşitlik (3.26-3.27)’de TP doğru tahmin edilen pozitif örneklerin sayısını, FP yanlış tahmin edilen pozitif örneklerin sayısını, FN negatif tahmin edilen pozitif örnekleri göstermektedir. Bir precision-recall eğrisi (PR eğrisi) bir modelin precision’nı recall’un bir fonksiyonu olarak çizer. Varsayalımki model yeni bir örneğin pozitif olma olasılığını tahmin etsin. Tahmin edilen sınıfı elde etmek için bu olasılığı bir eşik t ile eşleştirelim. Bu eşik PR alanındaki tek bir noktaya karşılık gelir ve eşiği değiştirerek bir PR eğrisi elde ederiz. T'yi 1.0'dan 0.0'a düşürürken, artan sayıda örnek pozitif olarak tahmin edilir, recall artar ancak precision artabilir veya azalabilir (normalde bir eğilim azalır). Bir PR eğrisi, modelin tahmin edici davranışını anlamaya yardımcı olsa da, modelleri karşılaştırmak için tek bir performans skoru

51

daha yararlıdır. Bu amaçla sıklıkla kullanılan bir skor, PR eğrisi ve recall ekseni arasındaki alan olup, PR eğrisinin altındaki alan AUPRC olarak adlandırılır. AUPRC 1.0'a ne kadar yakın olursa, model o kadar iyi olur (Schietgat ve diğ., 2010). PR eğrileri çoklu etiket sınıflandırma görevindeki her bir sınıf için sınıfa ait örnekleri pozitif olarak ve diğer örnekleri negatif olarak alarak oluşturulur.

Ortalama PR eğrisinin altındaki alan (Area Under the Average PR Curve) Clus- HMC’de genel bir performans skoru elde etmek için kullanılır. Başlangıçta belirli bir eşik değeri için bu PR alanında tek bir nokta (𝑃𝑟𝑒𝑐𝚤𝑠𝚤𝑜𝑛,̅̅̅̅̅̅̅̅̅̅̅̅̅̅ 𝑅𝑒𝑐𝑎𝑙𝑙̅̅̅̅̅̅̅̅̅) oluşturur, Eşitlik (3.28-3.29).

𝑃𝑟𝑒𝑐𝚤𝑠𝚤𝑜𝑛̅̅̅̅̅̅̅̅̅̅̅̅̅ = ∑ 𝑇𝑃𝑖 𝑖

∑ 𝑇𝑃𝑖 𝑖 +∑ 𝐹𝑃𝑖 𝑖 (3.28)

𝑅𝑒𝑐𝑎𝑙𝑙̅̅̅̅̅̅̅̅̅ = ∑ 𝑇𝑃𝑖 𝑖

∑ 𝑇𝑃𝑖 𝑖 +∑ 𝐹𝑁𝑖 𝑖

(3.29)

Eşitlik (3.28-3.29)’da i bütün sınıfları dolaşır. 𝑃𝑟𝑒𝑐𝚤𝑠𝚤𝑜𝑛 ̅̅̅̅̅̅̅̅̅̅̅̅̅̅ doğru tahmin edilen etiketlerin oranına karşılık gelir ve 𝑅𝑒𝑐𝑎𝑙𝑙̅̅̅̅̅̅̅̅̅ doğru tahmin edilen verilerin içindeki etiketlerin oranıdır. Yukarıda anlatılan eşik değeri çeşitlendirilerek ortalama bir PR eğrisi elde edilir. Bu eğri altındaki alan 𝐴𝑈(𝑃𝑅𝐶)̅̅̅̅̅̅̅ ile verilir.

PR eğrileri altındaki ortalama alan (Average Area Under the PR Curves) ise hesaplanan bireysel (her sınıf için) PR eğrileri altındaki alanların ağırlıklı (weighted) ortalamasını almakla elde edilir ve aşağıdaki şekilde hesaplanır, Eşitlik (3.30).

𝐴𝑈𝑃𝑅𝐶̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ = ∑ 𝑤𝑊1,…,𝑊|𝐶| 𝑖 𝑖. 𝐴𝑈𝑃𝑅𝐶𝑖 (3.30)

Bu yaklaşımda tüm ağırlıklar genel olarak 1 / |C| belirlenir. C sınıfların kümesini ifade eder. Diğer yandan bir sınıfın ağırlığı frekansıyla belirlenebilir. 𝑤𝑖 = 𝑣𝑖

∑ 𝑣𝑗 𝑗 ⁄ olmak üzere, 𝑣𝑖 veri içinde 𝑐𝑖’nin frekansını belirtir. 𝐴𝑈𝑃𝑅𝐶̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ifadesine alan 𝑊1,…,𝑊|𝐶| olarak karşılık gelen PR eğrisi, recall ekseni üzerindeki her değer için sınıfsal precision değerlerin (ağırlıklı) noktasal ortalaması alınarak çizilir. Bu eğri üzerindeki her nokta, her sınıf için farklı bir eşiğe karşılık gelebilir (Schietgat ve diğ., 2010).

52