{"id":35177,"date":"2025-11-26T15:40:53","date_gmt":"2025-11-26T12:40:53","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=35177"},"modified":"2025-11-26T15:40:53","modified_gmt":"2025-11-26T12:40:53","slug":"coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/","title":{"rendered":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar"},"content":{"rendered":"<p><body><\/p>\n<h2>\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar<\/h2>\n<h3>Giri\u015f<\/h3>\n<p>Makine \u00f6\u011frenimi projelerinde kar\u015f\u0131la\u015f\u0131lan veri k\u00fcmeleri, tahmin etmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131m\u0131z hedef de\u011fi\u015fkene (etiket) ba\u011fl\u0131 olarak farkl\u0131 yap\u0131land\u0131rmalara sahip olabilir. Bu yap\u0131land\u0131rmalardan ikisi, ikili (binary) ve \u00e7oklu s\u0131n\u0131f (multiclass) s\u0131n\u0131fland\u0131rma problemleridir. \u0130kili s\u0131n\u0131fland\u0131rma, bir veriyi iki olas\u0131 s\u0131n\u0131ftan birine atama g\u00f6revidir; \u00f6rne\u011fin, bir e-postan\u0131n spam olup olmad\u0131\u011f\u0131, bir hastan\u0131n belirli bir hastal\u0131\u011fa sahip olup olmad\u0131\u011f\u0131 gibi. \u00c7oklu s\u0131n\u0131f s\u0131n\u0131fland\u0131rma ise, bir veriyi ikiden fazla olas\u0131 s\u0131n\u0131ftan birine atama g\u00f6revidir; \u00f6rne\u011fin, bir hayvan\u0131n kedi, k\u00f6pek, ku\u015f veya bal\u0131k olup olmad\u0131\u011f\u0131, el yaz\u0131s\u0131 rakamlar\u0131n 0&#8217;dan 9&#8217;a kadar hangi rakam\u0131 temsil etti\u011fi gibi.<\/p>\n<p>\u00c7o\u011fu makine \u00f6\u011frenimi algoritmas\u0131 do\u011fal olarak \u00e7oklu s\u0131n\u0131f problemlerini \u00e7\u00f6zebilirken, baz\u0131 durumlarda \u00e7oklu s\u0131n\u0131f bir veri k\u00fcmesini ikili bir yap\u0131ya d\u00f6n\u00fc\u015ft\u00fcrme ihtiyac\u0131 do\u011fabilir. Bu makale, \u00e7oklu s\u0131n\u0131f veri k\u00fcmelerini ikiliye d\u00f6n\u00fc\u015ft\u00fcrmenin nedenlerini, temel y\u00f6ntemlerini ve bu d\u00f6n\u00fc\u015f\u00fcm\u00fcn pratik uygulamalar\u0131n\u0131 derinlemesine inceleyecektir. D\u00f6n\u00fc\u015ft\u00fcrme stratejileri, algoritmik k\u0131s\u0131tlamalardan, performans optimizasyonundan, model yorumlanabilirli\u011finden ve \u00f6zel i\u015f gereksinimlerinden kaynaklanabilir.<\/p>\n<h3>Neden \u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrmeliyiz?<\/h3>\n<p>\u00c7oklu s\u0131n\u0131f bir problemi ikili s\u0131n\u0131fland\u0131rma problemine d\u00f6n\u00fc\u015ft\u00fcrmek ilk ba\u015fta gereksiz g\u00f6r\u00fcnebilir, ancak bu yakla\u015f\u0131m\u0131n arkas\u0131nda yatan sa\u011flam nedenler vard\u0131r:<\/p>\n<h4>Algoritma K\u0131s\u0131tlamalar\u0131<\/h4>\n<p>Baz\u0131 makine \u00f6\u011frenimi algoritmalar\u0131 do\u011falar\u0131 gere\u011fi sadece ikili s\u0131n\u0131fland\u0131rma i\u00e7in tasarlanm\u0131\u015ft\u0131r. \u00d6rne\u011fin, orijinal Destek Vekt\u00f6r Makineleri (SVM) ve Lojistik Regresyon modelleri temel olarak ikili s\u0131n\u0131fland\u0131rma i\u00e7in geli\u015ftirilmi\u015ftir. Bu algoritmalar\u0131 \u00e7oklu s\u0131n\u0131f problemlerinde kullanabilmek i\u00e7in, genellikle &#8220;tek-e-kar\u015f\u0131-t\u00fcm&#8221; (One-vs-Rest) veya &#8220;tek-e-kar\u015f\u0131-tek&#8221; (One-vs-One) gibi stratejilerle ikili s\u0131n\u0131fland\u0131r\u0131c\u0131lara b\u00f6l\u00fcnmeleri gerekir.<\/p>\n<h4>Model Karma\u015f\u0131kl\u0131\u011f\u0131n\u0131 Azaltma<\/h4>\n<p>\u00c7ok fazla s\u0131n\u0131f i\u00e7eren \u00e7oklu s\u0131n\u0131f modelleri, \u00f6zellikle karma\u015f\u0131k karar s\u0131n\u0131rlar\u0131na sahipse, daha karma\u015f\u0131k ve hesaplama a\u00e7\u0131s\u0131ndan daha pahal\u0131 olabilir. \u00c7oklu s\u0131n\u0131f problemine yakla\u015f\u0131m\u0131 ikili alt problemlere b\u00f6lmek, her bir alt problemi daha basit bir modelle \u00e7\u00f6zmeye olanak tan\u0131r. Bu, e\u011fitim s\u00fcresini k\u0131saltabilir ve modelin genellenebilirli\u011fini art\u0131rabilir.<\/p>\n<h4>Performans Optimizasyonu<\/h4>\n<p>Baz\u0131 durumlarda, belirli bir s\u0131n\u0131f\u0131n di\u011fer t\u00fcm s\u0131n\u0131flara kar\u015f\u0131 ayr\u0131\u015ft\u0131r\u0131lmas\u0131, genel bir \u00e7oklu s\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n t\u00fcm s\u0131n\u0131flar\u0131 ayn\u0131 anda do\u011fru bir \u015fekilde s\u0131n\u0131fland\u0131rmas\u0131ndan daha iyi performans g\u00f6sterebilir. \u00d6zellikle bir veya iki s\u0131n\u0131f\u0131n kritik \u00f6neme sahip oldu\u011fu durumlarda, bu s\u0131n\u0131flar i\u00e7in \u00f6zel ikili s\u0131n\u0131fland\u0131r\u0131c\u0131lar olu\u015fturmak, daha y\u00fcksek hassasiyet (precision) veya hat\u0131rlama (recall) de\u011ferleri sa\u011flayabilir.<\/p>\n<h4>Yorumlanabilirlik<\/h4>\n<p>\u0130kili s\u0131n\u0131fland\u0131r\u0131c\u0131lar genellikle \u00e7oklu s\u0131n\u0131fland\u0131r\u0131c\u0131lardan daha kolay yorumlanabilir. &#8220;Bu, X s\u0131n\u0131f\u0131 m\u0131, de\u011fil mi?&#8221; sorusu, &#8220;Bu, X, Y, Z veya W s\u0131n\u0131flar\u0131ndan hangisi?&#8221; sorusundan genellikle daha net bir cevaba ve daha basit bir model yap\u0131s\u0131na sahiptir. Bu, \u00f6zellikle i\u015f payda\u015flar\u0131na model kararlar\u0131n\u0131 a\u00e7\u0131klarken veya modelin neden belirli bir tahmini yapt\u0131\u011f\u0131n\u0131 anlamaya \u00e7al\u0131\u015f\u0131rken faydal\u0131d\u0131r.<\/p>\n<h4>\u00d6zel \u0130\u015f Problemi \u00c7er\u00e7evesi<\/h4>\n<p>Bazen i\u015f problemi do\u011fas\u0131 gere\u011fi ikilidir, ancak veri k\u00fcmesi \u00e7oklu s\u0131n\u0131f etiketleri i\u00e7erir. \u00d6rne\u011fin, bir \u015firketin ana endi\u015fesi &#8220;m\u00fc\u015fteri kayb\u0131 (churn)&#8221; olup olmad\u0131\u011f\u0131n\u0131 tahmin etmek olabilir. Veri k\u00fcmesi &#8220;y\u00fcksek riskli m\u00fc\u015fteri&#8221;, &#8220;orta riskli m\u00fc\u015fteri&#8221;, &#8220;d\u00fc\u015f\u00fck riskli m\u00fc\u015fteri&#8221; gibi etiketler i\u00e7erse bile, i\u015f problemine odaklanmak i\u00e7in &#8220;y\u00fcksek riskli m\u00fc\u015fteri&#8221; ile &#8220;di\u011fer t\u00fcm m\u00fc\u015fteriler&#8221; aras\u0131nda ikili bir ayr\u0131m yapmak gerekebilir.<\/p>\n<h3>\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme Y\u00f6ntemleri<\/h3>\n<p>\u00c7oklu s\u0131n\u0131f bir veri k\u00fcmesini ikiliye d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in \u00e7e\u015fitli stratejiler mevcuttur. Her bir y\u00f6ntemin kendine \u00f6zg\u00fc avantajlar\u0131 ve dezavantajlar\u0131 vard\u0131r ve do\u011fru se\u00e7imi yapmak probleminizin do\u011fas\u0131na, veri k\u00fcmenizin \u00f6zelliklerine ve kullanmay\u0131 d\u00fc\u015f\u00fcnd\u00fc\u011f\u00fcn\u00fcz algoritmalara ba\u011fl\u0131d\u0131r.<\/p>\n<h4>1. Tek-e-Kar\u015f\u0131-T\u00fcm (One-vs-Rest \/ OvR veya One-vs-All \/ OvA)<\/h4>\n<p>Tek-e-Kar\u015f\u0131-T\u00fcm (OvR) stratejisi, \u00e7oklu s\u0131n\u0131f s\u0131n\u0131fland\u0131rmay\u0131 \u00e7\u00f6zmek i\u00e7in en yayg\u0131n ve sezgisel yakla\u015f\u0131mlardan biridir.<\/p>\n<h5>Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h5>\n<p>OvR stratejisinde, her bir s\u0131n\u0131f i\u00e7in ayr\u0131 bir ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitilir. E\u011fer $C$ adet s\u0131n\u0131f\u0131m\u0131z varsa (\u00f6rne\u011fin, S\u0131n\u0131f A, S\u0131n\u0131f B, S\u0131n\u0131f C), $C$ adet ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitiriz:<br \/>\n*   <strong>S\u0131n\u0131fland\u0131r\u0131c\u0131 1:<\/strong> S\u0131n\u0131f A&#8217;y\u0131 di\u011fer t\u00fcm s\u0131n\u0131flardan (B ve C) ay\u0131r\u0131r. Hedef de\u011fi\u015fken: 1 e\u011fer S\u0131n\u0131f A ise, 0 e\u011fer S\u0131n\u0131f B veya C ise.<br \/>\n*   <strong>S\u0131n\u0131fland\u0131r\u0131c\u0131 2:<\/strong> S\u0131n\u0131f B&#8217;yi di\u011fer t\u00fcm s\u0131n\u0131flardan (A ve C) ay\u0131r\u0131r. Hedef de\u011fi\u015fken: 1 e\u011fer S\u0131n\u0131f B ise, 0 e\u011fer S\u0131n\u0131f A veya C ise.<br \/>\n*   <strong>S\u0131n\u0131fland\u0131r\u0131c\u0131 3:<\/strong> S\u0131n\u0131f C&#8217;yi di\u011fer t\u00fcm s\u0131n\u0131flardan (A ve B) ay\u0131r\u0131r. Hedef de\u011fi\u015fken: 1 e\u011fer S\u0131n\u0131f C ise, 0 e\u011fer S\u0131n\u0131f A veya B ise.<\/p>\n<p>Yeni bir veri \u00f6rne\u011fi geldi\u011finde, bu $C$ adet s\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n her biri \u00f6rne\u011fi s\u0131n\u0131fland\u0131rmaya \u00e7al\u0131\u015f\u0131r ve bir olas\u0131l\u0131k veya karar skoru \u00fcretir. En y\u00fcksek olas\u0131l\u0131k veya skoru veren s\u0131n\u0131fland\u0131r\u0131c\u0131, \u00f6rne\u011fin nihai s\u0131n\u0131f\u0131 olarak se\u00e7ilir.<\/p>\n<h5>Avantajlar\u0131<\/h5>\n<p>*   <strong>Basitlik ve Sezgisellik:<\/strong> Uygulamas\u0131 ve anlamas\u0131 kolayd\u0131r.<br \/>\n*   <strong>Herhangi Bir \u0130kili S\u0131n\u0131fland\u0131r\u0131c\u0131 Kullan\u0131m\u0131:<\/strong> Temel ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 olarak Lojistik Regresyon, SVM, Karar A\u011fa\u00e7lar\u0131 gibi herhangi bir algoritmay\u0131 kullanabilir.<br \/>\n*   <strong>Mod\u00fclerlik:<\/strong> Her s\u0131n\u0131fland\u0131r\u0131c\u0131 ba\u011f\u0131ms\u0131z olarak e\u011fitilir.<br \/>\n*   <strong>S\u0131n\u0131f Dengesizli\u011fi Y\u00f6netimi:<\/strong> Her bir ikili problemde s\u0131n\u0131f dengesizli\u011fi farkl\u0131 olabilece\u011finden, her bir s\u0131n\u0131fland\u0131r\u0131c\u0131 i\u00e7in ayr\u0131 ayr\u0131 s\u0131n\u0131f a\u011f\u0131rl\u0131klar\u0131 veya \u00f6rnekleme teknikleri uygulanabilir.<\/p>\n<h5>Dezavantajlar\u0131<\/h5>\n<p>*   <strong>\u00c7ak\u0131\u015fan Tahminler:<\/strong> Baz\u0131 durumlarda, birden fazla s\u0131n\u0131fland\u0131r\u0131c\u0131 y\u00fcksek g\u00fcvenle ayn\u0131 \u00f6rne\u011fi pozitif olarak etiketleyebilir veya t\u00fcm s\u0131n\u0131fland\u0131r\u0131c\u0131lar d\u00fc\u015f\u00fck g\u00fcvenle negatif olarak etiketleyebilir. Bu durumda, en y\u00fcksek skora sahip olan\u0131 se\u00e7mek genellikle en iyi yakla\u015f\u0131md\u0131r.<br \/>\n*   <strong>Hesaplama Maliyeti:<\/strong> S\u0131n\u0131f say\u0131s\u0131 ($C$) artt\u0131k\u00e7a, e\u011fitilmesi gereken s\u0131n\u0131fland\u0131r\u0131c\u0131 say\u0131s\u0131 da artar. Ancak her bir s\u0131n\u0131fland\u0131r\u0131c\u0131 t\u00fcm veri k\u00fcmesi \u00fczerinde e\u011fitilir.<\/p>\n<h5>Uygulama \u00d6rne\u011fi (Python \/ Scikit-learn)<\/h5>\n<pre><code class=\"language-python\">from sklearn.datasets import load_iris\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.multiclass import OneVsRestClassifier\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.metrics import accuracy_score\n\n<h2>Veri setini y\u00fckle<\/h2>\niris = load_iris()\nX, y = iris.data, iris.target\n\n<h2>E\u011fitim ve test setlerine ay\u0131r<\/h2>\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)\n\n<h2>Temel ikili s\u0131n\u0131fland\u0131r\u0131c\u0131y\u0131 tan\u0131mla<\/h2>\n<h2>Burada LogisticRegression kullan\u0131yoruz, ancak ba\u015fka bir ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 da olabilir.<\/h2>\nbase_classifier = LogisticRegression(solver='liblinear', max_iter=200)\n\n<h2>OneVsRestClassifier'\u0131 kullan<\/h2>\novr_classifier = OneVsRestClassifier(base_classifier)\n\n<h2>Modeli e\u011fit<\/h2>\novr_classifier.fit(X_train, y_train)\n\n<h2>Tahmin yap<\/h2>\ny_pred = ovr_classifier.predict(X_test)\n\n<h2>Performans\u0131 de\u011ferlendir<\/h2>\naccuracy = accuracy_score(y_test, y_pred)\nprint(f\"One-vs-Rest S\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n Do\u011fruluk Oran\u0131: {accuracy:.4f}\")\n\n<h2>Her bir s\u0131n\u0131f i\u00e7in e\u011fitilen temel s\u0131n\u0131fland\u0131r\u0131c\u0131lar\u0131 inceleyebiliriz<\/h2>\n<h2>print(len(ovr_classifier.estimators_)) # 3 s\u0131n\u0131f i\u00e7in 3 temel s\u0131n\u0131fland\u0131r\u0131c\u0131<\/code><\/pre>\n<\/h2>\n<h4>2. Tek-e-Kar\u015f\u0131-Tek (One-vs-One \/ OvO)<\/h4>\n<p>Tek-e-Kar\u015f\u0131-Tek (OvO) stratejisi, \u00f6zellikle s\u0131n\u0131f say\u0131s\u0131 y\u00fcksek oldu\u011funda veya s\u0131n\u0131flar aras\u0131ndaki karar s\u0131n\u0131rlar\u0131 karma\u015f\u0131k oldu\u011funda kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h5>Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h5>\n<p>OvO stratejisinde, her bir <em>s\u0131n\u0131f \u00e7ifti<\/em> i\u00e7in ayr\u0131 bir ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitilir. E\u011fer $C$ adet s\u0131n\u0131f\u0131m\u0131z varsa, $C * (C &#8211; 1) \/ 2$ adet ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitilir. \u00d6rne\u011fin, 3 s\u0131n\u0131f i\u00e7in (A, B, C):<br \/>\n*   <strong>S\u0131n\u0131fland\u0131r\u0131c\u0131 1:<\/strong> Sadece A ve B s\u0131n\u0131flar\u0131na ait \u00f6rnekler \u00fczerinde e\u011fitilir ve A ile B&#8217;yi ay\u0131r\u0131r.<br \/>\n*   <strong>S\u0131n\u0131fland\u0131r\u0131c\u0131 2:<\/strong> Sadece A ve C s\u0131n\u0131flar\u0131na ait \u00f6rnekler \u00fczerinde e\u011fitilir ve A ile C&#8217;yi ay\u0131r\u0131r.<br \/>\n*   <strong>S\u0131n\u0131fland\u0131r\u0131c\u0131 3:<\/strong> Sadece B ve C s\u0131n\u0131flar\u0131na ait \u00f6rnekler \u00fczerinde e\u011fitilir ve B ile C&#8217;yi ay\u0131r\u0131r.<\/p>\n<p>Yeni bir veri \u00f6rne\u011fi geldi\u011finde, t\u00fcm bu ikili s\u0131n\u0131fland\u0131r\u0131c\u0131lar \u00f6rne\u011fi s\u0131n\u0131fland\u0131rmaya \u00e7al\u0131\u015f\u0131r. Her bir s\u0131n\u0131fland\u0131r\u0131c\u0131, \u00f6rne\u011fin ait oldu\u011funu d\u00fc\u015f\u00fcnd\u00fc\u011f\u00fc s\u0131n\u0131fa bir &#8220;oy&#8221; verir. En \u00e7ok oyu alan s\u0131n\u0131f, \u00f6rne\u011fin nihai s\u0131n\u0131f\u0131 olarak se\u00e7ilir (\u00e7o\u011funluk oylamas\u0131).<\/p>\n<h5>Avantajlar\u0131<\/h5>\n<p>*   <strong>Daha K\u00fc\u00e7\u00fck Veri K\u00fcmeleri \u00dczerinde E\u011fitim:<\/strong> Her bir s\u0131n\u0131fland\u0131r\u0131c\u0131, t\u00fcm veri k\u00fcmesi yerine sadece ilgili iki s\u0131n\u0131fa ait \u00f6rnekler \u00fczerinde e\u011fitilir. Bu, \u00f6zellikle veri k\u00fcmesi \u00e7ok b\u00fcy\u00fckse veya s\u0131n\u0131flar\u0131n \u00e7o\u011fu birbiriyle ilgisizse faydal\u0131 olabilir.<br \/>\n*   <strong>Karma\u015f\u0131k Karar S\u0131n\u0131rlar\u0131:<\/strong> Her bir ikili s\u0131n\u0131fland\u0131r\u0131c\u0131, belirli iki s\u0131n\u0131f aras\u0131ndaki karma\u015f\u0131k karar s\u0131n\u0131rlar\u0131n\u0131 daha iyi modelleyebilir.<br \/>\n*   <strong>SVM \u0130\u00e7in Uygunluk:<\/strong> Destek Vekt\u00f6r Makineleri (SVM) gibi baz\u0131 algoritmalar OvO stratejisinde daha iyi performans g\u00f6sterme e\u011filimindedir.<\/p>\n<h5>Dezavantajlar\u0131<\/h5>\n<p>*   <strong>Y\u00fcksek Hesaplama Maliyeti:<\/strong> S\u0131n\u0131f say\u0131s\u0131 ($C$) artt\u0131k\u00e7a, e\u011fitilmesi gereken s\u0131n\u0131fland\u0131r\u0131c\u0131 say\u0131s\u0131 $C^2$ ile orant\u0131l\u0131 olarak artar. Bu, \u00e7ok say\u0131da s\u0131n\u0131fa sahip veri k\u00fcmeleri i\u00e7in \u00f6nemli bir dezavantaj olabilir.<br \/>\n*   <strong>Karma\u015f\u0131k Oylama Mekanizmas\u0131:<\/strong> Tahmin a\u015famas\u0131nda, t\u00fcm s\u0131n\u0131fland\u0131r\u0131c\u0131lar\u0131n oylar\u0131n\u0131n toplanmas\u0131 ve en \u00e7ok oyu alan s\u0131n\u0131f\u0131n belirlenmesi gerekir.<\/p>\n<h5>Uygulama \u00d6rne\u011fi (Python \/ Scikit-learn)<\/h5>\n<pre><code class=\"language-python\">from sklearn.datasets import load_iris\nfrom sklearn.svm import SVC # SVM genellikle OvO ile iyi \u00e7al\u0131\u015f\u0131r\nfrom sklearn.multiclass import OneVsOneClassifier\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.metrics import accuracy_score\n\n<h2>Veri setini y\u00fckle<\/h2>\niris = load_iris()\nX, y = iris.data, iris.target\n\n<h2>E\u011fitim ve test setlerine ay\u0131r<\/h2>\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)\n\n<h2>Temel ikili s\u0131n\u0131fland\u0131r\u0131c\u0131y\u0131 tan\u0131mla (\u00f6rne\u011fin SVC)<\/h2>\nbase_classifier = SVC(kernel='linear', probability=True, random_state=42)\n\n<h2>OneVsOneClassifier'\u0131 kullan<\/h2>\novo_classifier = OneVsOneClassifier(base_classifier)\n\n<h2>Modeli e\u011fit<\/h2>\novo_classifier.fit(X_train, y_train)\n\n<h2>Tahmin yap<\/h2>\ny_pred = ovo_classifier.predict(X_test)\n\n<h2>Performans\u0131 de\u011ferlendir<\/h2>\naccuracy = accuracy_score(y_test, y_pred)\nprint(f\"One-vs-One S\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n Do\u011fruluk Oran\u0131: {accuracy:.4f}\")\n\n<h2>Ka\u00e7 adet temel s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitildi\u011fini g\u00f6rebiliriz<\/h2>\n<h2>print(len(ovo_classifier.estimators_)) # 3 s\u0131n\u0131f i\u00e7in 3 temel s\u0131n\u0131fland\u0131r\u0131c\u0131 (3 * 2 \/ 2)<\/code><\/pre>\n<\/h2>\n<h4>3. Hiyerar\u015fik S\u0131n\u0131fland\u0131rma (Hierarchical Classification)<\/h4>\n<p>Hiyerar\u015fik s\u0131n\u0131fland\u0131rma, \u00f6zellikle s\u0131n\u0131flar aras\u0131nda do\u011fal bir hiyerar\u015fi veya yap\u0131 oldu\u011funda kullan\u0131\u015fl\u0131d\u0131r. Bu yakla\u015f\u0131m, \u00e7oklu s\u0131n\u0131f problemini bir dizi ikili veya daha k\u00fc\u00e7\u00fck \u00e7oklu s\u0131n\u0131f problemine b\u00f6lerek bir &#8220;karar a\u011fac\u0131&#8221; olu\u015fturur.<\/p>\n<h5>Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h5>\n<p>Bu y\u00f6ntemde, \u00f6nce en genel ayr\u0131m\u0131 yapmak i\u00e7in bir ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitilir. \u00d6rne\u011fin, &#8220;Hayvanlar&#8221; veri k\u00fcmesinde \u00f6nce &#8220;Memeli mi de\u011fil mi?&#8221; diye sorulur. E\u011fer &#8220;Memeli&#8221; ise, bir sonraki ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 &#8220;Et\u00e7il mi Ot\u00e7ul mu?&#8221; diye sorabilir. Bu \u015fekilde, bir hiyerar\u015fi veya a\u011fa\u00e7 yap\u0131s\u0131 i\u00e7inde ard\u0131\u015f\u0131k ikili kararlar al\u0131narak nihai s\u0131n\u0131fa ula\u015f\u0131l\u0131r.<\/p>\n<h5>Avantajlar\u0131<\/h5>\n<p>*   <strong>Verimlilik:<\/strong> E\u011fer hiyerar\u015fi iyi tan\u0131mlanm\u0131\u015fsa, her ad\u0131mda sadece ilgili \u00f6rnekler ve \u00f6zellikler \u00fczerinde \u00e7al\u0131\u015f\u0131ld\u0131\u011f\u0131 i\u00e7in olduk\u00e7a verimli olabilir.<br \/>\n*   <strong>Alan Bilgisi Entegrasyonu:<\/strong> Alan uzmanl\u0131\u011f\u0131n\u0131n do\u011frudan model yap\u0131s\u0131na entegre edilmesini sa\u011flar.<br \/>\n*   <strong>Yorumlanabilirlik:<\/strong> Karar s\u00fcreci, a\u011fa\u00e7 yap\u0131s\u0131 nedeniyle olduk\u00e7a \u015feffaf ve yorumlanabilir olabilir.<\/p>\n<h5>Dezavantajlar\u0131<\/h5>\n<p>*   <strong>Hata Yay\u0131l\u0131m\u0131:<\/strong> Hiyerar\u015finin \u00fcst seviyelerindeki hatalar, alt seviyelere do\u011fru yay\u0131labilir ve nihai s\u0131n\u0131fland\u0131rma \u00fczerinde olumsuz etki yaratabilir.<br \/>\n*   <strong>Hiyerar\u015fi Tan\u0131mlama:<\/strong> Do\u011fru ve etkili bir hiyerar\u015fi olu\u015fturmak i\u00e7in derin alan bilgisi ve dikkatli tasar\u0131m gerektirir. Her veri k\u00fcmesi i\u00e7in do\u011fal bir hiyerar\u015fi bulunmayabilir.<br \/>\n*   <strong>Uygulama Karma\u015f\u0131kl\u0131\u011f\u0131:<\/strong> Genel OvR veya OvO sarmalay\u0131c\u0131lar\u0131 kadar kolay uygulanmaz; \u00f6zel bir yap\u0131land\u0131rma ve kodlama gerektirebilir.<\/p>\n<h5>Uygulama \u00d6rne\u011fi<\/h5>\n<p>Bu y\u00f6ntem i\u00e7in Scikit-learn&#8217;de do\u011frudan bir sarmalay\u0131c\u0131 (wrapper) yoktur, ancak \u00f6zel bir fonksiyon veya s\u0131n\u0131fland\u0131rma boru hatt\u0131 (pipeline) olu\u015fturularak uygulanabilir.<\/p>\n<pre><code class=\"language-python\"># \u00d6rnek bir hiyerar\u015fik s\u0131n\u0131fland\u0131rma yap\u0131s\u0131 (pseudocode)\n<h2>S\u0131n\u0131flar: Kedi, K\u00f6pek, Ku\u015f, Bal\u0131k<\/h2>\n<h2>Hiyerar\u015fi:<\/h2>\n<h2>Seviye 1: Memeli mi? (Kedi, K\u00f6pek) vs (Ku\u015f, Bal\u0131k)<\/h2>\n<h2>Seviye 2a (Memeli ise): Kedi mi? vs K\u00f6pek mi?<\/h2>\n<h2>Seviye 2b (Memeli de\u011filse): Ku\u015f mu? vs Bal\u0131k m\u0131?<\/h2>\n\n<h2>import numpy as np<\/h2>\n<h2>from sklearn.tree import DecisionTreeClassifier<\/h2>\n<h2>from sklearn.model_selection import train_test_split<\/h2>\n\n<h2>def hierarchical_classifier(X, y):<\/h2>\n<h2># \u00d6rnek veri ve etiketler (ger\u00e7ek bir veri seti yerine sembolik)<\/h2>\n<h2># y_labels = ['Kedi', 'K\u00f6pek', 'Ku\u015f', 'Bal\u0131k']<\/h2>\n<h2># y_numeric = [0, 1, 2, 3]<\/h2>\n<h2>#     # Seviye 1: Memeli mi? (0, 1) vs (2, 3)<\/h2>\n<h2>y_level1 = np.where(y < 2, 0, 1) # 0: Memeli, 1: Memeli de\u011fil<\/h2>\n<h2>model1 = DecisionTreeClassifier(random_state=42)<\/h2>\n<h2>model1.fit(X, y_level1)<\/h2>\n<h2>#     # Seviye 2a: Memeli ise (Kedi vs K\u00f6pek)<\/h2>\n<h2>X_mammal = X[y_level1 == 0]<\/h2>\n<h2>y_mammal = y[y_level1 == 0]<\/h2>\n<h2>y_level2a = np.where(y_mammal == 0, 0, 1) # 0: Kedi, 1: K\u00f6pek<\/h2>\n<h2>model2a = DecisionTreeClassifier(random_state=42)<\/h2>\n<h2>model2a.fit(X_mammal, y_level2a)<\/h2>\n<h2>#     # Seviye 2b: Memeli de\u011filse (Ku\u015f vs Bal\u0131k)<\/h2>\n<h2>X_non_mammal = X[y_level1 == 1]<\/h2>\n<h2>y_non_mammal = y[y_level1 == 1]<\/h2>\n<h2>y_level2b = np.where(y_non_mammal == 2, 0, 1) # 0: Ku\u015f, 1: Bal\u0131k<\/h2>\n<h2>model2b = DecisionTreeClassifier(random_state=42)<\/h2>\n<h2>model2b.fit(X_non_mammal, y_level2b)<\/h2>\n<h2>#     # Tahmin fonksiyonu<\/h2>\n<h2>def predict(X_new):<\/h2>\n<h2>level1_pred = model1.predict(X_new)<\/h2>\n<h2>final_preds = []<\/h2>\n<h2>for i, pred1 in enumerate(level1_pred):<\/h2>\n<h2>if pred1 == 0: # Memeli<\/h2>\n<h2>pred2a = model2a.predict(X_new[i:i+1])<\/h2>\n<h2>final_preds.append(0 if pred2a == 0 else 1) # Kedi veya K\u00f6pek<\/h2>\n<h2>else: # Memeli de\u011fil<\/h2>\n<h2>pred2b = model2b.predict(X_new[i:i+1])<\/h2>\n<h2>final_preds.append(2 if pred2b == 0 else 3) # Ku\u015f veya Bal\u0131k<\/h2>\n<h2>return np.array(final_preds)<\/h2>\n<h2>#     return predict<\/code><\/pre>\n<\/h2>\n<h4>4. \u00d6zel \u0130kili B\u00f6lme \/ S\u0131n\u0131f Gruplama (Custom Binary Split \/ Class Grouping)<\/h4>\n<p>Bu y\u00f6ntem, belirli bir s\u0131n\u0131f\u0131n veya s\u0131n\u0131f grubunun \u00f6zel bir ilgi alan\u0131 oldu\u011fu ve di\u011fer t\u00fcm s\u0131n\u0131flar\u0131n &#8220;di\u011fer&#8221; veya &#8220;negatif&#8221; olarak grupland\u0131r\u0131labilece\u011fi durumlarda kullan\u0131l\u0131r.<\/p>\n<h5>Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h5>\n<p>Bu yakla\u015f\u0131m, \u00e7oklu s\u0131n\u0131f etiketlerini do\u011frudan manip\u00fcle ederek yeni bir ikili hedef de\u011fi\u015fken olu\u015fturmay\u0131 i\u00e7erir.<br \/>\n\u00d6rne\u011fin, 5 s\u0131n\u0131f\u0131n\u0131z varsa (S\u0131n\u0131f A, B, C, D, E) ve sadece S\u0131n\u0131f A&#8217;n\u0131n varl\u0131\u011f\u0131n\u0131 veya yoklu\u011funu tahmin etmek istiyorsan\u0131z:<br \/>\n*   Yeni hedef de\u011fi\u015fken: 1 e\u011fer orijinal etiket S\u0131n\u0131f A ise, 0 e\u011fer orijinal etiket B, C, D veya E ise.<\/p>\n<p>Ba\u015fka bir senaryoda, S\u0131n\u0131f A ve B&#8217;nin birlikte bir &#8220;pozitif&#8221; kategori olu\u015fturdu\u011funu, C, D, E&#8217;nin ise &#8220;negatif&#8221; kategori oldu\u011funu varsayal\u0131m:<br \/>\n*   Yeni hedef de\u011fi\u015fken: 1 e\u011fer orijinal etiket A veya B ise, 0 e\u011fer orijinal etiket C, D veya E ise.<\/p>\n<p>Bu d\u00f6n\u00fc\u015f\u00fcm, genellikle alan uzmanl\u0131\u011f\u0131na ve i\u015f gereksinimlerine dayan\u0131r.<\/p>\n<h5>Avantajlar\u0131<\/h5>\n<p>*   <strong>Do\u011frudan \u0130\u015f Problemi \u00c7\u00f6z\u00fcm\u00fc:<\/strong> \u00d6zellikle bir s\u0131n\u0131f\u0131n (veya s\u0131n\u0131f grubunun) di\u011ferlerinden ayr\u0131lmas\u0131n\u0131n i\u015f a\u00e7\u0131s\u0131ndan kritik oldu\u011fu durumlarda \u00e7ok etkilidir.<br \/>\n*   <strong>Model Basitli\u011fi:<\/strong> Sadece bir ikili s\u0131n\u0131fland\u0131r\u0131c\u0131 e\u011fitildi\u011fi i\u00e7in en basit model yap\u0131lar\u0131ndan birini sunar.<br \/>\n*   <strong>Kaynak Verimlili\u011fi:<\/strong> En az hesaplama kayna\u011f\u0131 gerektiren y\u00f6ntemlerden biridir.<\/p>\n<h5>Dezavantajlar\u0131<\/h5>\n<p>*   <strong>Bilgi Kayb\u0131:<\/strong> Gruplanan s\u0131n\u0131flar aras\u0131ndaki ayr\u0131m\u0131 tamamen g\u00f6z ard\u0131 eder. Bu, gelecekteki analizler veya daha detayl\u0131 s\u0131n\u0131fland\u0131rma ihtiya\u00e7lar\u0131 i\u00e7in bilgi kayb\u0131na yol a\u00e7abilir.<br \/>\n*   <strong>\u00d6nyarg\u0131 Riski:<\/strong> Gruplama keyfi veya yanl\u0131\u015f yap\u0131l\u0131rsa, modelin performans\u0131 ve genellenebilirli\u011fi olumsuz etkilenebilir.<\/p>\n<h5>Uygulama \u00d6rne\u011fi (Python \/ Scikit-learn)<\/h5>\n<pre><code class=\"language-python\">import numpy as np\nfrom sklearn.datasets import load_iris\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.metrics import accuracy_score, classification_report\n\n<h2>Veri setini y\u00fckle<\/h2>\niris = load_iris()\nX, y = iris.data, iris.target # y: 0, 1, 2\n\n<h2>Diyelim ki sadece s\u0131n\u0131f 0'\u0131 (setosa) di\u011ferlerinden ay\u0131rmak istiyoruz.<\/h2>\n<h2>Yeni ikili hedef de\u011fi\u015fkeni olu\u015ftur: 1 e\u011fer s\u0131n\u0131f 0 ise, 0 di\u011fer s\u0131n\u0131flar i\u00e7in.<\/h2>\ny_binary_target_0 = (y == 0).astype(int)\n\n<h2>E\u011fitim ve test setlerine ay\u0131r<\/h2>\nX_train, X_test, y_train_binary_0, y_test_binary_0 = train_test_split(X, y_binary_target_0, test_size=0.3, random_state=42)\n\n<h2>\u0130kili s\u0131n\u0131fland\u0131r\u0131c\u0131y\u0131 e\u011fit<\/h2>\nbinary_classifier_0 = LogisticRegression(solver='liblinear', random_state=42)\nbinary_classifier_0.fit(X_train, y_train_binary_0)\n\n<h2>Tahmin yap<\/h2>\ny_pred_binary_0 = binary_classifier_0.predict(X_test)\n\n<h2>Performans\u0131 de\u011ferlendir<\/h2>\naccuracy_0 = accuracy_score(y_test_binary_0, y_pred_binary_0)\nprint(f\"S\u0131n\u0131f 0'\u0131 di\u011ferlerinden ay\u0131ran ikili s\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n Do\u011fruluk Oran\u0131: {accuracy_0:.4f}\")\nprint(\"\\nS\u0131n\u0131fland\u0131rma Raporu (S\u0131n\u0131f 0 vs Di\u011ferleri):\")\nprint(classification_report(y_test_binary_0, y_pred_binary_0))\n\n<h2>Diyelim ki s\u0131n\u0131f 0 ve 1'i \"grup A\", s\u0131n\u0131f 2'yi \"grup B\" olarak ay\u0131rmak istiyoruz.<\/h2>\ny_binary_group = np.where(y < 2, 0, 1) # 0: S\u0131n\u0131f 0 veya 1, 1: S\u0131n\u0131f 2\n\n<h2>E\u011fitim ve test setlerine ay\u0131r<\/h2>\nX_train, X_test, y_train_binary_group, y_test_binary_group = train_test_split(X, y_binary_group, test_size=0.3, random_state=42)\n\n<h2>\u0130kili s\u0131n\u0131fland\u0131r\u0131c\u0131y\u0131 e\u011fit<\/h2>\nbinary_classifier_group = LogisticRegression(solver='liblinear', random_state=42)\nbinary_classifier_group.fit(X_train, y_train_binary_group)\n\n<h2>Tahmin yap<\/h2>\ny_pred_binary_group = binary_classifier_group.predict(X_test)\n\n<h2>Performans\u0131 de\u011ferlendir<\/h2>\naccuracy_group = accuracy_score(y_test_binary_group, y_pred_binary_group)\nprint(f\"\\nS\u0131n\u0131f 0&1'i S\u0131n\u0131f 2'den ay\u0131ran ikili s\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n Do\u011fruluk Oran\u0131: {accuracy_group:.4f}\")\nprint(\"\\nS\u0131n\u0131fland\u0131rma Raporu (S\u0131n\u0131f 0&1 vs S\u0131n\u0131f 2):\")\nprint(classification_report(y_test_binary_group, y_pred_binary_group))<\/code><\/pre>\n<h4>5. \u00c7oklu S\u0131n\u0131f Olas\u0131l\u0131\u011f\u0131 \u00dczerinden E\u015fikleme (Thresholding on Multiclass Probability)<\/h4>\n<p>Bu y\u00f6ntem, asl\u0131nda bir d\u00f6n\u00fc\u015f\u00fcmden ziyade, mevcut bir \u00e7oklu s\u0131n\u0131f modelinin \u00e7\u0131kt\u0131s\u0131n\u0131 ikili bir karara d\u00f6n\u00fc\u015ft\u00fcrme \u015feklidir.<\/p>\n<h5>Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h5>\n<p>\u00d6ncelikle, normal bir \u00e7oklu s\u0131n\u0131f s\u0131n\u0131fland\u0131rma modeli e\u011fitilir. Bu model, her bir s\u0131n\u0131f i\u00e7in bir olas\u0131l\u0131k (veya g\u00fcven skoru) \u00e7\u0131kt\u0131s\u0131 verebilir (<code>predict_proba<\/code> metodu). Daha sonra, belirli bir hedef s\u0131n\u0131f i\u00e7in bu olas\u0131l\u0131k de\u011ferleri al\u0131n\u0131r ve bir e\u015fik de\u011feri belirlenir. E\u011fer hedef s\u0131n\u0131f\u0131n olas\u0131l\u0131\u011f\u0131 belirlenen e\u015fi\u011fi a\u015farsa, \u00f6rnek o hedef s\u0131n\u0131fa ait olarak kabul edilir (1); aksi takdirde, di\u011fer s\u0131n\u0131flara ait olarak kabul edilir (0).<\/p>\n<h5>Avantajlar\u0131<\/h5>\n<p>*   <strong>Mevcut Modelleri Kullanma:<\/strong> Yeni bir model e\u011fitmek yerine, mevcut \u00e7oklu s\u0131n\u0131f modelini kullan\u0131r.<br \/>\n*   <strong>Esneklik:<\/strong> E\u015fik de\u011feri, performans gereksinimlerine (\u00f6rne\u011fin, daha y\u00fcksek hat\u0131rlama veya hassasiyet) g\u00f6re ayarlanabilir.<br \/>\n*   <strong>Basit Uygulama:<\/strong> Mevcut modelin <code>predict_proba<\/code> \u00e7\u0131kt\u0131s\u0131 \u00fczerinde basit bir e\u015fik kontrol\u00fc yeterlidir.<\/p>\n<h5>Dezavantajlar\u0131<\/h5>\n<p>*   <strong>Temel Modelin S\u0131n\u0131rlamalar\u0131:<\/strong> \u0130kili karar\u0131n kalitesi, temel \u00e7oklu s\u0131n\u0131f modelinin performans\u0131na ba\u011fl\u0131d\u0131r.<br \/>\n*   <strong>E\u015fik Se\u00e7imi:<\/strong> Optimal e\u015fik de\u011ferini bulmak, ayr\u0131 bir optimizasyon problemi olabilir ve genellikle bir validasyon seti \u00fczerinde ger\u00e7ekle\u015ftirilir.<\/p>\n<h5>Uygulama \u00d6rne\u011fi (Python \/ Scikit-learn)<\/h5>\n<pre><code class=\"language-python\">from sklearn.datasets import load_iris\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score\n\n<h2>Veri setini y\u00fckle<\/h2>\niris = load_iris()\nX, y = iris.data, iris.target\n\n<h2>E\u011fitim ve test setlerine ay\u0131r<\/h2>\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)\n\n<h2>\u00c7oklu s\u0131n\u0131f s\u0131n\u0131fland\u0131r\u0131c\u0131y\u0131 e\u011fit<\/h2>\nmulticlass_classifier = LogisticRegression(solver='liblinear', max_iter=200, random_state=42)\nmulticlass_classifier.fit(X_train, y_train)\n\n<h2>Tahmin olas\u0131l\u0131klar\u0131n\u0131 al<\/h2>\ny_proba = multiclass_classifier.predict_proba(X_test)\n\n<h2>Diyelim ki s\u0131n\u0131f 1'i (versicolor) hedef olarak belirledik (iris.target_names[1])<\/h2>\ntarget_class_index = 1\nthreshold = 0.5 # E\u015fik de\u011feri\n\n<h2>\u0130kili tahminler olu\u015ftur<\/h2>\n<h2>E\u011fer s\u0131n\u0131f 1'in olas\u0131l\u0131\u011f\u0131 e\u015fi\u011fin \u00fczerindeyse 1, de\u011filse 0<\/h2>\ny_pred_binary_from_proba = (y_proba[:, target_class_index] > threshold).astype(int)\n\n<h2>Ger\u00e7ek ikili etiketleri olu\u015ftur (s\u0131n\u0131f 1 mi, de\u011fil mi?)<\/h2>\ny_true_binary = (y_test == target_class_index).astype(int)\n\n<h2>Performans\u0131 de\u011ferlendir<\/h2>\naccuracy = accuracy_score(y_true_binary, y_pred_binary_from_proba)\nprecision = precision_score(y_true_binary, y_pred_binary_from_proba)\nrecall = recall_score(y_true_binary, y_pred_binary_from_proba)\nf1 = f1_score(y_true_binary, y_pred_binary_from_proba)\n\nprint(f\"S\u0131n\u0131f {target_class_index} i\u00e7in olas\u0131l\u0131k e\u015fikleme ile ikili s\u0131n\u0131fland\u0131rma:\")\nprint(f\"Do\u011fruluk: {accuracy:.4f}\")\nprint(f\"Hassasiyet (Precision): {precision:.4f}\")\nprint(f\"Hat\u0131rlama (Recall): {recall:.4f}\")\nprint(f\"F1 Skoru: {f1:.4f}\")<\/code><\/pre>\n<h3>Dikkat Edilmesi Gerekenler ve En \u0130yi Uygulamalar<\/h3>\n<p>\u00c7oklu s\u0131n\u0131f veri k\u00fcmelerini ikiliye d\u00f6n\u00fc\u015ft\u00fcr\u00fcrken g\u00f6z \u00f6n\u00fcnde bulundurman\u0131z gereken baz\u0131 \u00f6nemli noktalar ve en iyi uygulamalar \u015funlard\u0131r:<\/p>\n<h4>S\u0131n\u0131f Dengesizli\u011fi<\/h4>\n<p>\u00d6zellikle OvR veya \u00f6zel ikili b\u00f6lme y\u00f6ntemlerinde, bir s\u0131n\u0131f\u0131n di\u011fer t\u00fcm s\u0131n\u0131flara kar\u015f\u0131 \u00e7ok daha az \u00f6rne\u011fe sahip olmas\u0131 yayg\u0131n bir durumdur. Bu, ikili s\u0131n\u0131fland\u0131r\u0131c\u0131lar\u0131n dengesiz veri \u00fczerinde e\u011fitilmesine yol a\u00e7abilir. Bu durumu y\u00f6netmek i\u00e7in \u015funlar yap\u0131labilir:<br \/>\n*   <strong>S\u0131n\u0131f A\u011f\u0131rl\u0131klar\u0131 (Class Weights):<\/strong> \u00c7o\u011fu Scikit-learn s\u0131n\u0131fland\u0131r\u0131c\u0131s\u0131nda <code>class_weight='balanced'<\/code> parametresi veya manuel a\u011f\u0131rl\u0131klar kullan\u0131labilir.<br \/>\n*   <strong>\u00d6rnekleme Teknikleri:<\/strong> A\u015f\u0131r\u0131 \u00f6rnekleme (oversampling) y\u00f6ntemleri (SMOTE gibi) veya eksik \u00f6rnekleme (undersampling) y\u00f6ntemleri uygulanabilir.<br \/>\n*   <strong>Farkl\u0131 Metrikler:<\/strong> Sadece do\u011fruluk yerine, F1 skoru, hassasiyet, hat\u0131rlama veya ROC-AUC gibi dengesiz veri k\u00fcmeleri i\u00e7in daha uygun metrikler kullan\u0131lmal\u0131d\u0131r.<\/p>\n<h4>Temel S\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n Se\u00e7imi<\/h4>\n<p>D\u00f6n\u00fc\u015f\u00fcm y\u00f6nteminin ba\u015far\u0131s\u0131 b\u00fcy\u00fck \u00f6l\u00e7\u00fcde temel ikili s\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n performans\u0131na ba\u011fl\u0131d\u0131r. Probleminizin \u00f6zelliklerine ve veri k\u00fcmenizin yap\u0131s\u0131na en uygun algoritmay\u0131 se\u00e7mek \u00f6nemlidir. \u00d6rne\u011fin, do\u011frusal olmayan karar s\u0131n\u0131rlar\u0131 i\u00e7in \u00e7ekirdek tabanl\u0131 SVM&#8217;ler veya a\u011fa\u00e7 tabanl\u0131 modeller daha iyi olabilir.<\/p>\n<h4>De\u011ferlendirme Metrikleri<\/h4>\n<p>*   <strong>OvR ve OvO i\u00e7in:<\/strong> Genel performans, genellikle makro ortalama (macro-average) veya mikro ortalama (micro-average) F1 skoru, hassasiyet ve hat\u0131rlama gibi \u00e7oklu s\u0131n\u0131f metrikleri kullan\u0131larak de\u011ferlendirilir.<br \/>\n    *   <strong>Mikro Ortalama:<\/strong> T\u00fcm bireysel ikili s\u0131n\u0131fland\u0131r\u0131c\u0131lar\u0131n TP, FP, FN de\u011ferlerini toplay\u0131p genel metrikleri hesaplar. B\u00fcy\u00fck s\u0131n\u0131flar\u0131n etkisini vurgular.<br \/>\n    *   <strong>Makro Ortalama:<\/strong> Her bir s\u0131n\u0131f i\u00e7in metrikleri ayr\u0131 ayr\u0131 hesaplar ve sonra bunlar\u0131n ortalamas\u0131n\u0131 al\u0131r. S\u0131n\u0131f dengesizli\u011finden daha az etkilenir, k\u00fc\u00e7\u00fck s\u0131n\u0131flar\u0131n performans\u0131n\u0131 daha iyi yans\u0131t\u0131r.<br \/>\n*   <strong>\u00d6zel \u0130kili B\u00f6lme ve E\u015fikleme i\u00e7in:<\/strong> Standart ikili s\u0131n\u0131fland\u0131rma metrikleri (do\u011fruluk, hassasiyet, hat\u0131rlama, F1 skoru, ROC-AUC) do\u011frudan kullan\u0131labilir.<\/p>\n<h4>Hesaplama Maliyeti<\/h4>\n<p>S\u0131n\u0131f say\u0131s\u0131 artt\u0131k\u00e7a, OvO stratejisinin hesaplama maliyeti \u00f6nemli \u00f6l\u00e7\u00fcde artar. \u00c7ok say\u0131da s\u0131n\u0131fa sahip veri k\u00fcmelerinde OvR genellikle daha uygun bir se\u00e7enektir. Hiyerar\u015fik s\u0131n\u0131fland\u0131rma, iyi tasarlanm\u0131\u015fsa verimli olabilir.<\/p>\n<h4>Yorumlanabilirlik<\/h4>\n<p>OvR stratejisi, her bir s\u0131n\u0131fland\u0131r\u0131c\u0131n\u0131n belirli bir s\u0131n\u0131f\u0131 di\u011ferlerinden ay\u0131rmaya odaklanmas\u0131 nedeniyle genellikle OvO&#8217;dan daha yorumlanabilir kabul edilir. \u00d6zel ikili b\u00f6lme de i\u015f kararlar\u0131na do\u011frudan ba\u011fl\u0131 oldu\u011fu i\u00e7in y\u00fcksek yorumlanabilirlik sunar.<\/p>\n<h4>Alan Bilgisi<\/h4>\n<p>\u00d6zellikle hiyerar\u015fik s\u0131n\u0131fland\u0131rma ve \u00f6zel ikili b\u00f6lme y\u00f6ntemlerinde, alan bilgisi kritik \u00f6neme sahiptir. S\u0131n\u0131flar\u0131 nas\u0131l gruplayaca\u011f\u0131n\u0131z, hangi s\u0131n\u0131f\u0131n &#8220;pozitif&#8221; olarak kabul edilece\u011fi gibi kararlar, veri analistinin veya alan uzman\u0131n\u0131n bilgisine dayanmal\u0131d\u0131r.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>\u00c7oklu s\u0131n\u0131f veri k\u00fcmelerini ikiliye d\u00f6n\u00fc\u015ft\u00fcrmek, makine \u00f6\u011freniminde kar\u015f\u0131la\u015f\u0131lan yayg\u0131n bir problem olup, \u00e7e\u015fitli y\u00f6ntemlerle etkili bir \u015fekilde \u00e7\u00f6z\u00fclebilir. Tek-e-Kar\u015f\u0131-T\u00fcm (OvR) ve Tek-e-Kar\u015f\u0131-Tek (OvO) stratejileri, genel ama\u00e7l\u0131 sarmalay\u0131c\u0131lar olarak \u00f6ne \u00e7\u0131karken, hiyerar\u015fik s\u0131n\u0131fland\u0131rma ve \u00f6zel ikili b\u00f6lme, belirli problem yap\u0131lar\u0131na ve i\u015f gereksinimlerine y\u00f6nelik daha \u00f6zel \u00e7\u00f6z\u00fcmler sunar. \u00c7oklu s\u0131n\u0131f olas\u0131l\u0131klar\u0131 \u00fczerinden e\u015fikleme ise, mevcut bir modelin \u00e7\u0131kt\u0131s\u0131n\u0131 ikili bir karara d\u00f6n\u00fc\u015ft\u00fcrmenin esnek bir yoludur.<\/p>\n<p>Hangi y\u00f6ntemin se\u00e7ilece\u011fi, temel algoritman\u0131n k\u0131s\u0131tlamalar\u0131, veri k\u00fcmesinin boyutu ve s\u0131n\u0131f say\u0131s\u0131, s\u0131n\u0131f dengesizli\u011fi, istenen model yorumlanabilirli\u011fi ve en \u00f6nemlisi \u00e7\u00f6z\u00fclmek istenen i\u015f probleminin do\u011fas\u0131 gibi fakt\u00f6rlere ba\u011fl\u0131d\u0131r. Her bir y\u00f6ntemin avantajlar\u0131n\u0131 ve dezavantajlar\u0131n\u0131 anlayarak, veri bilimciler daha bilin\u00e7li kararlar verebilir ve makine \u00f6\u011frenimi modellerinin performans\u0131n\u0131 ve uygulanabilirli\u011fini art\u0131rabilirler. D\u00f6n\u00fc\u015f\u00fcm s\u00fcrecinde s\u0131n\u0131f dengesizli\u011fi gibi potansiyel tuzaklara dikkat etmek ve uygun de\u011ferlendirme metriklerini kullanmak, ba\u015far\u0131l\u0131 bir proje i\u00e7in hayati \u00f6neme sahiptir.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar\nGiri\u015f\nMakine \u00f6\u011frenimi projelerinde kar","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-35177","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar\" \/>\n<meta property=\"og:description\" content=\"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar Giri\u015f Makine \u00f6\u011frenimi projelerinde kar\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-26T12:40:53+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"23 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar\",\"datePublished\":\"2025-11-26T12:40:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\"},\"wordCount\":3308,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\",\"name\":\"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-26T12:40:53+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/","og_locale":"tr_TR","og_type":"article","og_title":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar","og_description":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar Giri\u015f Makine \u00f6\u011frenimi projelerinde kar","og_url":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-26T12:40:53+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"23 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar","datePublished":"2025-11-26T12:40:53+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/"},"wordCount":3308,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/","url":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/","name":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-26T12:40:53+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/coklu-sinif-veri-kumelerini-ikiliye-donusturme-makine-ogrenimi-icin-yontemler-ve-uygulamalar\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"\u00c7oklu S\u0131n\u0131f Veri K\u00fcmelerini \u0130kiliye D\u00f6n\u00fc\u015ft\u00fcrme: Makine \u00d6\u011frenimi \u0130\u00e7in Y\u00f6ntemler ve Uygulamalar"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=35177"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35177\/revisions"}],"predecessor-version":[{"id":35178,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35177\/revisions\/35178"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=35177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=35177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=35177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}