diff --git a/translations/tr/8-Reinforcement/1-QLearning/solution/Julia/README.md b/translations/tr/8-Reinforcement/1-QLearning/solution/Julia/README.md deleted file mode 100644 index 29676d329..000000000 --- a/translations/tr/8-Reinforcement/1-QLearning/solution/Julia/README.md +++ /dev/null @@ -1,4 +0,0 @@ - - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dilindeki hali, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilmektedir. Bu çevirinin kullanımından doğabilecek yanlış anlama veya yanlış yorumlamalardan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/8-Reinforcement/1-QLearning/solution/R/README.md b/translations/tr/8-Reinforcement/1-QLearning/solution/R/README.md deleted file mode 100644 index c1ca5e02a..000000000 --- a/translations/tr/8-Reinforcement/1-QLearning/solution/R/README.md +++ /dev/null @@ -1,4 +0,0 @@ - - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/8-Reinforcement/2-Gym/README.md b/translations/tr/8-Reinforcement/2-Gym/README.md deleted file mode 100644 index f9ea78a3f..000000000 --- a/translations/tr/8-Reinforcement/2-Gym/README.md +++ /dev/null @@ -1,343 +0,0 @@ -# CartPole Pateni - -Önceki derste çözmekte olduğumuz problem, gerçek hayat senaryolarına pek uygulanabilir olmayan bir oyuncak problem gibi görünebilir. Ancak durum böyle değil, çünkü birçok gerçek dünya problemi de bu senaryoyu paylaşır - Satranç veya Go oynamak da dahil. Bunlar benzerdir çünkü verilen kurallara sahip bir tahtamız ve **ayrık bir durumumuz** vardır. - -## [Ders Öncesi Quiz](https://gray-sand-07a10f403.1.azurestaticapps.net/quiz/47/) - -## Giriş - -Bu derste, Q-Öğrenme prensiplerini **sürekli durum** olan bir probleme uygulayacağız, yani bir veya daha fazla gerçek sayı ile verilen bir duruma. Aşağıdaki problemle ilgileneceğiz: - -> **Problem**: Peter kurtlardan kaçmak istiyorsa daha hızlı hareket edebilmelidir. Peter'ın kaymayı, özellikle dengeyi korumayı, Q-Öğrenme kullanarak nasıl öğrenebileceğini göreceğiz. - -![Büyük kaçış!](../../../../translated_images/escape.18862db9930337e3fce23a9b6a76a06445f229dadea2268e12a6f0a1fde12115.tr.png) - -> Peter ve arkadaşları kurtlardan kaçmak için yaratıcı oluyorlar! Görsel: [Jen Looper](https://twitter.com/jenlooper) - -Dengelemeyi basitleştirilmiş bir versiyon olan **CartPole** problemi olarak kullanacağız. CartPole dünyasında, sola veya sağa hareket edebilen yatay bir kaydırıcımız var ve amaç, kaydırıcının üstündeki dikey direği dengelemek. -Ekim 2023'e kadar olan verilere dayalı olarak eğitildiniz. - -## Ön Gereksinimler - -Bu derste, farklı **ortamları** simüle etmek için **OpenAI Gym** adlı bir kütüphane kullanacağız. Bu dersin kodunu yerel olarak (örneğin, Visual Studio Code'dan) çalıştırabilirsiniz, bu durumda simülasyon yeni bir pencerede açılacaktır. Kodu çevrimiçi çalıştırırken, kodda bazı değişiklikler yapmanız gerekebilir, bu durum [burada](https://towardsdatascience.com/rendering-openai-gym-envs-on-binder-and-google-colab-536f99391cc7) açıklanmıştır. - -## OpenAI Gym - -Önceki derste, oyunun kuralları ve durum, kendimiz tanımladığımız `Board` sınıfı tarafından verilmişti. Burada, denge direğinin arkasındaki fiziği simüle edecek özel bir **simülasyon ortamı** kullanacağız. Takviye öğrenme algoritmalarını eğitmek için en popüler simülasyon ortamlarından biri, [OpenAI](https://openai.com/) tarafından sürdürülen [Gym](https://gym.openai.com/) adlı bir ortamdır. Bu gym'i kullanarak, cartpole simülasyonundan Atari oyunlarına kadar farklı **ortamlar** oluşturabiliriz. - -> **Not**: OpenAI Gym tarafından sunulan diğer ortamları [buradan](https://gym.openai.com/envs/#classic_control) görebilirsiniz. - -İlk olarak, gym'i yükleyelim ve gerekli kütüphaneleri içe aktaralım (kod bloğu 1): - -```python -import sys -!{sys.executable} -m pip install gym - -import gym -import matplotlib.pyplot as plt -import numpy as np -import random -``` - -## Egzersiz - bir cartpole ortamı başlatma - -Cartpole dengeleme problemi ile çalışmak için ilgili ortamı başlatmamız gerekiyor. Her ortam şunlarla ilişkilidir: - -- **Gözlem alanı**: Ortamdan aldığımız bilgilerin yapısını tanımlar. Cartpole problemi için, direğin konumu, hızı ve bazı diğer değerleri alırız. - -- **Eylem alanı**: Olası eylemleri tanımlar. Bizim durumumuzda eylem alanı ayrık olup, iki eylemden oluşur - **sol** ve **sağ**. (kod bloğu 2) - -1. Başlatmak için aşağıdaki kodu yazın: - - ```python - env = gym.make("CartPole-v1") - print(env.action_space) - print(env.observation_space) - print(env.action_space.sample()) - ``` - -Ortamın nasıl çalıştığını görmek için, 100 adımlık kısa bir simülasyon çalıştıralım. Her adımda, alınacak bir eylemi sağlıyoruz - bu simülasyonda `action_space`'ten rastgele bir eylem seçiyoruz. - -1. Aşağıdaki kodu çalıştırın ve neye yol açtığını görün. - - ✅ Bu kodu yerel Python kurulumunda çalıştırmanız tercih edilir! (kod bloğu 3) - - ```python - env.reset() - - for i in range(100): - env.render() - env.step(env.action_space.sample()) - env.close() - ``` - - Şuna benzer bir şey görmelisiniz: - - ![dengesiz cartpole](../../../../8-Reinforcement/2-Gym/images/cartpole-nobalance.gif) - -1. Simülasyon sırasında, nasıl hareket edileceğine karar vermek için gözlemler almamız gerekir. Aslında, step fonksiyonu mevcut gözlemleri, bir ödül fonksiyonunu ve simülasyonun devam edip etmeyeceğini belirten done bayrağını döndürür: (kod bloğu 4) - - ```python - env.reset() - - done = False - while not done: - env.render() - obs, rew, done, info = env.step(env.action_space.sample()) - print(f"{obs} -> {rew}") - env.close() - ``` - - Not defterinin çıktısında buna benzer bir şey görmelisiniz: - - ```text - [ 0.03403272 -0.24301182 0.02669811 0.2895829 ] -> 1.0 - [ 0.02917248 -0.04828055 0.03248977 0.00543839] -> 1.0 - [ 0.02820687 0.14636075 0.03259854 -0.27681916] -> 1.0 - [ 0.03113408 0.34100283 0.02706215 -0.55904489] -> 1.0 - [ 0.03795414 0.53573468 0.01588125 -0.84308041] -> 1.0 - ... - [ 0.17299878 0.15868546 -0.20754175 -0.55975453] -> 1.0 - [ 0.17617249 0.35602306 -0.21873684 -0.90998894] -> 1.0 - ``` - - Simülasyonun her adımında döndürülen gözlem vektörü şu değerleri içerir: - - Arabanın konumu - - Arabanın hızı - - Direğin açısı - - Direğin dönme hızı - -1. Bu sayıların minimum ve maksimum değerlerini alın: (kod bloğu 5) - - ```python - print(env.observation_space.low) - print(env.observation_space.high) - ``` - - Ayrıca, her simülasyon adımında ödül değerinin her zaman 1 olduğunu fark edebilirsiniz. Bunun nedeni, amacımızın mümkün olduğunca uzun süre hayatta kalmak, yani direği makul bir dikey pozisyonda en uzun süre tutmaktır. - - ✅ Aslında, CartPole simülasyonu, 100 ardışık denemede 195 ortalama ödül elde etmeyi başardığımızda çözülmüş kabul edilir. - -## Durum ayrıklaştırma - -Q-Öğrenme'de, her durumda ne yapacağımızı tanımlayan bir Q-Tablosu oluşturmamız gerekir. Bunu yapabilmek için, durumun **ayrık** olması gerekir, daha kesin olarak, sonlu sayıda ayrık değer içermelidir. Bu nedenle, gözlemlerimizi **ayrıklaştırmamız** ve bunları sonlu bir durum kümesine eşlememiz gerekir. - -Bunu yapmanın birkaç yolu vardır: - -- **Kovalar halinde bölme**. Belirli bir değerin aralığını biliyorsak, bu aralığı bir dizi **kovaya** bölebiliriz ve ardından değeri ait olduğu kova numarasıyla değiştirebiliriz. Bu, numpy [`digitize`](https://numpy.org/doc/stable/reference/generated/numpy.digitize.html) yöntemi kullanılarak yapılabilir. Bu durumda, durum boyutunu kesin olarak bileceğiz, çünkü bu, dijitalleştirme için seçtiğimiz kova sayısına bağlı olacaktır. - -✅ Değerleri belirli bir sonlu aralığa (örneğin, -20'den 20'ye) getirmek için lineer enterpolasyon kullanabiliriz ve ardından sayıları yuvarlayarak tamsayıya dönüştürebiliriz. Bu bize durum boyutu üzerinde biraz daha az kontrol sağlar, özellikle de giriş değerlerinin kesin aralıklarını bilmiyorsak. Örneğin, bizim durumumuzda 4 değerden 2'sinin değerlerinde üst/alt sınırlar yoktur, bu da sonsuz sayıda duruma neden olabilir. - -Örneğimizde, ikinci yaklaşımı kullanacağız. Daha sonra fark edeceğiniz gibi, tanımlanmamış üst/alt sınırlara rağmen, bu değerler nadiren belirli sonlu aralıkların dışında değerler alır, bu nedenle aşırı değerli durumlar çok nadir olacaktır. - -1. Modelimizden gözlemi alacak ve 4 tamsayı değerinden oluşan bir demet üretecek fonksiyon burada: (kod bloğu 6) - - ```python - def discretize(x): - return tuple((x/np.array([0.25, 0.25, 0.01, 0.1])).astype(np.int)) - ``` - -1. Kovalar kullanarak başka bir ayrıklaştırma yöntemini de inceleyelim: (kod bloğu 7) - - ```python - def create_bins(i,num): - return np.arange(num+1)*(i[1]-i[0])/num+i[0] - - print("Sample bins for interval (-5,5) with 10 bins\n",create_bins((-5,5),10)) - - ints = [(-5,5),(-2,2),(-0.5,0.5),(-2,2)] # intervals of values for each parameter - nbins = [20,20,10,10] # number of bins for each parameter - bins = [create_bins(ints[i],nbins[i]) for i in range(4)] - - def discretize_bins(x): - return tuple(np.digitize(x[i],bins[i]) for i in range(4)) - ``` - -1. Şimdi kısa bir simülasyon çalıştıralım ve bu ayrık ortam değerlerini gözlemleyelim. Hem `discretize` and `discretize_bins` kullanmayı deneyin ve fark olup olmadığını görün. - - ✅ discretize_bins, kova numarasını döndürür, bu 0 tabanlıdır. Dolayısıyla, giriş değişkeninin etrafındaki değerler için 0, aralığın ortasındaki numarayı (10) döndürür. Discretize'de, çıktı değerlerinin aralığını önemsemedik, negatif olmalarına izin verdik, bu nedenle durum değerleri kaydırılmamış ve 0, 0'a karşılık gelir. (kod bloğu 8) - - ```python - env.reset() - - done = False - while not done: - #env.render() - obs, rew, done, info = env.step(env.action_space.sample()) - #print(discretize_bins(obs)) - print(discretize(obs)) - env.close() - ``` - - ✅ Ortamın nasıl çalıştığını görmek istiyorsanız env.render ile başlayan satırı yorumdan çıkarın. Aksi takdirde arka planda çalıştırabilirsiniz, bu daha hızlıdır. Q-Öğrenme sürecimiz sırasında bu "görünmez" yürütmeyi kullanacağız. - -## Q-Tablosu yapısı - -Önceki dersimizde, durum 0'dan 8'e kadar olan basit bir sayı çiftiydi ve bu nedenle Q-Tablosunu 8x8x2 şeklinde bir numpy tensörü ile temsil etmek uygundu. Kovalar ayrıklaştırmasını kullanırsak, durum vektörümüzün boyutu da bilinir, bu yüzden aynı yaklaşımı kullanabiliriz ve durumu 20x20x10x10x2 şeklinde bir dizi ile temsil edebiliriz (burada 2, eylem alanının boyutudur ve ilk boyutlar gözlem alanındaki her parametre için kullanmayı seçtiğimiz kova sayısına karşılık gelir). - -Ancak, bazen gözlem alanının kesin boyutları bilinmez. `discretize` fonksiyonu durumunda, bazı orijinal değerler bağlanmadığı için durumun belirli sınırlar içinde kaldığından asla emin olamayabiliriz. Bu nedenle, biraz farklı bir yaklaşım kullanacağız ve Q-Tablosunu bir sözlükle temsil edeceğiz. - -1. *(state,action)* çiftini sözlük anahtarı olarak kullanın ve değer Q-Tablosu giriş değerine karşılık gelir. (kod bloğu 9) - - ```python - Q = {} - actions = (0,1) - - def qvalues(state): - return [Q.get((state,a),0) for a in actions] - ``` - - Burada, belirli bir durum için Q-Tablosu değerlerinin bir listesini döndüren `qvalues()` fonksiyonunu da tanımlıyoruz, bu tüm olası eylemlere karşılık gelir. Giriş Q-Tablosunda mevcut değilse, varsayılan olarak 0 döndüreceğiz. - -## Q-Öğrenmeye Başlayalım - -Şimdi Peter'a dengeyi öğretmeye hazırız! - -1. İlk olarak, bazı hiperparametreleri ayarlayalım: (kod bloğu 10) - - ```python - # hyperparameters - alpha = 0.3 - gamma = 0.9 - epsilon = 0.90 - ``` - - Burada, `alpha` is the **learning rate** that defines to which extent we should adjust the current values of Q-Table at each step. In the previous lesson we started with 1, and then decreased `alpha` to lower values during training. In this example we will keep it constant just for simplicity, and you can experiment with adjusting `alpha` values later. - - `gamma` is the **discount factor** that shows to which extent we should prioritize future reward over current reward. - - `epsilon` is the **exploration/exploitation factor** that determines whether we should prefer exploration to exploitation or vice versa. In our algorithm, we will in `epsilon` percent of the cases select the next action according to Q-Table values, and in the remaining number of cases we will execute a random action. This will allow us to explore areas of the search space that we have never seen before. - - ✅ In terms of balancing - choosing random action (exploration) would act as a random punch in the wrong direction, and the pole would have to learn how to recover the balance from those "mistakes" - -### Improve the algorithm - -We can also make two improvements to our algorithm from the previous lesson: - -- **Calculate average cumulative reward**, over a number of simulations. We will print the progress each 5000 iterations, and we will average out our cumulative reward over that period of time. It means that if we get more than 195 point - we can consider the problem solved, with even higher quality than required. - -- **Calculate maximum average cumulative result**, `Qmax`, and we will store the Q-Table corresponding to that result. When you run the training you will notice that sometimes the average cumulative result starts to drop, and we want to keep the values of Q-Table that correspond to the best model observed during training. - -1. Collect all cumulative rewards at each simulation at `rewards` vektörünü daha sonra çizim için saklıyoruz. (kod bloğu 11) - - ```python - def probs(v,eps=1e-4): - v = v-v.min()+eps - v = v/v.sum() - return v - - Qmax = 0 - cum_rewards = [] - rewards = [] - for epoch in range(100000): - obs = env.reset() - done = False - cum_reward=0 - # == do the simulation == - while not done: - s = discretize(obs) - if random.random() Qmax: - Qmax = np.average(cum_rewards) - Qbest = Q - cum_rewards=[] - ``` - -Bu sonuçlardan fark edebileceğiniz şeyler: - -- **Hedefimize yakınız**. 100'den fazla ardışık simülasyon çalıştırmasında 195 kümülatif ödül alma hedefimize çok yakınız veya aslında başardık! Daha küçük sayılar alsak bile, 5000 çalıştırma üzerinden ortalama alıyoruz ve resmi kriterde sadece 100 çalıştırma gereklidir. - -- **Ödül düşmeye başlıyor**. Bazen ödül düşmeye başlar, bu da Q-Tablosunda zaten öğrenilmiş değerleri daha kötü duruma getirenlerle "bozabileceğimiz" anlamına gelir. - -Bu gözlem, eğitim ilerlemesini çizdiğimizde daha net görülür. - -## Eğitim İlerlemesini Çizmek - -Eğitim sırasında, her yinelemede kümülatif ödül değerini `rewards` vektörüne topladık. İşte bunu yineleme sayısına karşı çizdiğimizde nasıl göründüğü: - -```python -plt.plot(rewards) -``` - -![ham ilerleme](../../../../translated_images/train_progress_raw.2adfdf2daea09c596fc786fa347a23e9aceffe1b463e2257d20a9505794823ec.tr.png) - -Bu grafikten bir şey anlamak mümkün değil, çünkü stokastik eğitim sürecinin doğası gereği eğitim oturumlarının uzunluğu büyük ölçüde değişir. Bu grafiği daha anlamlı hale getirmek için, örneğin 100 deney üzerinde **hareketli ortalama** hesaplayabiliriz. Bu, `np.convolve` kullanılarak uygun bir şekilde yapılabilir: (kod bloğu 12) - -```python -def running_average(x,window): - return np.convolve(x,np.ones(window)/window,mode='valid') - -plt.plot(running_average(rewards,100)) -``` - -![eğitim ilerlemesi](../../../../translated_images/train_progress_runav.c71694a8fa9ab35935aff6f109e5ecdfdbdf1b0ae265da49479a81b5fae8f0aa.tr.png) - -## Hiperparametreleri Değiştirme - -Öğrenmeyi daha kararlı hale getirmek için, eğitim sırasında bazı hiperparametrelerimizi ayarlamak mantıklıdır. Özellikle: - -- **Öğrenme oranı** için, `alpha`, we may start with values close to 1, and then keep decreasing the parameter. With time, we will be getting good probability values in the Q-Table, and thus we should be adjusting them slightly, and not overwriting completely with new values. - -- **Increase epsilon**. We may want to increase the `epsilon` slowly, in order to explore less and exploit more. It probably makes sense to start with lower value of `epsilon` ve neredeyse 1'e kadar çıkın. - -> **Görev 1**: Hiperparametre değerleriyle oynayın ve daha yüksek kümülatif ödül elde edip edemeyeceğinizi görün. 195'in üzerine çıkabiliyor musunuz? - -> **Görev 2**: Problemi resmi olarak çözmek için, 100 ardışık çalıştırma boyunca 195 ortalama ödül almanız gerekir. Bunu eğitim sırasında ölçün ve problemi resmi olarak çözdüğünüzden emin olun! - -## Sonucu Aksiyon Halinde Görmek - -Eğitilmiş modelin nasıl davrandığını görmek ilginç olurdu. Simülasyonu çalıştıralım ve eğitim sırasında olduğu gibi Q-Tablosundaki olasılık dağılımına göre eylem seçme stratejisini izleyelim: (kod bloğu 13) - -```python -obs = env.reset() -done = False -while not done: - s = discretize(obs) - env.render() - v = probs(np.array(qvalues(s))) - a = random.choices(actions,weights=v)[0] - obs,_,done,_ = env.step(a) -env.close() -``` - -Şuna benzer bir şey görmelisiniz: - -![dengeleyen cartpole](../../../../8-Reinforcement/2-Gym/images/cartpole-balance.gif) - ---- - -## 🚀Meydan Okuma - -> **Görev 3**: Burada, Q-Tablosunun son kopyasını kullandık, bu en iyisi olmayabilir. En iyi performans gösteren Q-Tablosunu `Qbest` variable! Try the same example with the best-performing Q-Table by copying `Qbest` over to `Q` and see if you notice the difference. - -> **Task 4**: Here we were not selecting the best action on each step, but rather sampling with corresponding probability distribution. Would it make more sense to always select the best action, with the highest Q-Table value? This can be done by using `np.argmax` fonksiyonunu kullanarak, en yüksek Q-Tablosu değerine karşılık gelen eylem numarasını bulmak için bu stratejiyi uygulayın ve dengelemeyi iyileştirip iyileştirmediğini görün. - -## [Ders Sonrası Quiz](https://gray-sand-07a10f403.1.azurestaticapps.net/quiz/48/) - -## Ödev -[Bir Dağ Arabasını Eğit](assignment.md) - -## Sonuç - -Artık ajanları yalnızca oyunun istenen durumunu tanımlayan bir ödül fonksiyonu sağlayarak ve arama alanını zekice keşfetme fırsatı vererek iyi sonuçlar elde etmeyi nasıl eğiteceğimizi öğrendik. Q-Öğrenme algoritmasını ayrık ve sürekli ortamlar durumunda başarıyla uyguladık, ancak ayrık eylemlerle. - -Eylem durumunun da sürekli olduğu ve gözlem alanının çok daha karmaşık olduğu durumları da incelemek önemlidir, örneğin Atari oyun ekranından gelen görüntü gibi. Bu tür problemler, iyi sonuçlar elde etmek için genellikle daha güçlü makine öğrenme teknikleri, örneğin sinir ağları, kullanmamızı gerektirir. Bu daha ileri konular, ileri düzey AI kursumuzun konusudur. - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi tavsiye edilir. Bu çevirinin kullanımından doğabilecek herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/8-Reinforcement/2-Gym/assignment.md b/translations/tr/8-Reinforcement/2-Gym/assignment.md deleted file mode 100644 index d74768d96..000000000 --- a/translations/tr/8-Reinforcement/2-Gym/assignment.md +++ /dev/null @@ -1,43 +0,0 @@ -# Dağ Arabası Eğitimi - -[OpenAI Gym](http://gym.openai.com), tüm ortamların aynı API'yi sağlaması için tasarlanmıştır - yani aynı `reset`, `step` ve `render` yöntemleri ve **eylem alanı** ve **gözlem alanı**nın aynı soyutlamaları. Bu nedenle, aynı pekiştirmeli öğrenme algoritmalarını, minimum kod değişiklikleri ile farklı ortamlara uyarlamak mümkün olmalıdır. - -## Bir Dağ Arabası Ortamı - -[Dağ Arabası ortamı](https://gym.openai.com/envs/MountainCar-v0/), bir vadide sıkışmış bir araba içerir: -Amacınız vadiden çıkmak ve bayrağı ele geçirmek, her adımda aşağıdaki eylemlerden birini yaparak: - -| Değer | Anlam | -|---|---| -| 0 | Sola hızlan | -| 1 | Hızlanma | -| 2 | Sağa hızlan | - -Bu problemin ana püf noktası, arabanın motorunun dağı tek bir geçişte ölçeklendirmek için yeterince güçlü olmamasıdır. Bu nedenle, başarılı olmanın tek yolu, momentum kazanmak için ileri geri gitmektir. - -Gözlem alanı sadece iki değerden oluşur: - -| Num | Gözlem | Min | Max | -|-----|---------|-----|-----| -| 0 | Araba Pozisyonu | -1.2| 0.6 | -| 1 | Araba Hızı | -0.07 | 0.07 | - -Dağ arabası için ödül sistemi oldukça zordur: - - * Dağın tepesindeki bayrağa (pozisyon = 0.5) ulaşan ajana 0 ödülü verilir. - * Ajanın pozisyonu 0.5'ten azsa -1 ödülü verilir. - -Eğer araba pozisyonu 0.5'ten fazla olursa veya bölüm uzunluğu 200'den fazla olursa bölüm sona erer. -## Talimatlar - -Dağ arabası problemini çözmek için pekiştirmeli öğrenme algoritmamızı uyarlayın. Mevcut [notebook.ipynb](../../../../8-Reinforcement/2-Gym/notebook.ipynb) koduyla başlayın, yeni ortamı ekleyin, durum ayrıştırma fonksiyonlarını değiştirin ve mevcut algoritmanın minimum kod değişiklikleri ile eğitilmesini sağlamaya çalışın. Sonucu hiperparametreleri ayarlayarak optimize edin. - -> **Not**: Algoritmanın yakınsamasını sağlamak için hiperparametre ayarlamaları gerekebilir. -## Değerlendirme Kriterleri - -| Kriter | Örnek | Yeterli | Geliştirme Gerekiyor | -|--------|-------|---------|----------------------| -| | Q-Öğrenme algoritması, minimum kod değişiklikleri ile CartPole örneğinden başarıyla uyarlanmış ve 200 adımın altında bayrağı ele geçirme problemini çözebilecek şekilde çalışıyor. | İnternetten yeni bir Q-Öğrenme algoritması uyarlanmış, ancak iyi belgelenmiş; veya mevcut algoritma uyarlanmış, ancak istenen sonuçlara ulaşamıyor | Öğrenci herhangi bir algoritmayı başarıyla uyarlayamamış, ancak çözüme doğru önemli adımlar atmış (durum ayrıştırma, Q-Tablo veri yapısı, vb. uygulanmış) | - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluğu sağlamak için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki versiyonu yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/8-Reinforcement/2-Gym/solution/Julia/README.md b/translations/tr/8-Reinforcement/2-Gym/solution/Julia/README.md deleted file mode 100644 index 346279c88..000000000 --- a/translations/tr/8-Reinforcement/2-Gym/solution/Julia/README.md +++ /dev/null @@ -1,4 +0,0 @@ - - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dilindeki hali, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/8-Reinforcement/2-Gym/solution/R/README.md b/translations/tr/8-Reinforcement/2-Gym/solution/R/README.md deleted file mode 100644 index 2d1eb433f..000000000 --- a/translations/tr/8-Reinforcement/2-Gym/solution/R/README.md +++ /dev/null @@ -1,4 +0,0 @@ - - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluğu sağlamak için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilmektedir. Bu çevirinin kullanımından doğabilecek herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/8-Reinforcement/README.md b/translations/tr/8-Reinforcement/README.md deleted file mode 100644 index 186d8d2a4..000000000 --- a/translations/tr/8-Reinforcement/README.md +++ /dev/null @@ -1,56 +0,0 @@ -# Pekiştirmeli Öğrenmeye Giriş - -Pekiştirmeli öğrenme, RL, denetimli öğrenme ve denetimsiz öğrenmenin yanında temel makine öğrenme paradigmalarından biri olarak görülür. RL, kararlarla ilgilidir: doğru kararları vermek veya en azından onlardan öğrenmek. - -Bir simüle edilmiş ortamınız olduğunu hayal edin, örneğin borsa. Belirli bir düzenleme getirirseniz ne olur? Olumlu veya olumsuz bir etkisi var mı? Olumsuz bir şey olursa, bu _olumsuz pekiştirmeyi_ almalı, ondan öğrenmeli ve rotanızı değiştirmelisiniz. Eğer olumlu bir sonuç olursa, bu _olumlu pekiştirmeyi_ geliştirmelisiniz. - -![peter ve kurt](../../../translated_images/peter.779730f9ba3a8a8d9290600dcf55f2e491c0640c785af7ac0d64f583c49b8864.tr.png) - -> Peter ve arkadaşlarının aç kurttan kaçması gerekiyor! Görsel [Jen Looper](https://twitter.com/jenlooper) tarafından - -## Bölgesel Konu: Peter ve Kurt (Rusya) - -[Peter ve Kurt](https://en.wikipedia.org/wiki/Peter_and_the_Wolf), Rus besteci [Sergei Prokofiev](https://en.wikipedia.org/wiki/Sergei_Prokofiev) tarafından yazılmış bir müzikli peri masalıdır. Bu, genç öncü Peter'in cesurca evinden çıkıp ormanda kurtu kovalamaya gittiği bir hikayedir. Bu bölümde, Peter'e yardımcı olacak makine öğrenme algoritmalarını eğiteceğiz: - -- Çevreyi **keşfetmek** ve optimal bir navigasyon haritası oluşturmak -- Daha hızlı hareket edebilmek için kaykay kullanmayı ve üzerinde denge kurmayı **öğrenmek**. - -[![Peter ve Kurt](https://img.youtube.com/vi/Fmi5zHg4QSM/0.jpg)](https://www.youtube.com/watch?v=Fmi5zHg4QSM) - -> 🎥 Peter ve Kurt'u dinlemek için yukarıdaki görsele tıklayın - -## Pekiştirmeli Öğrenme - -Önceki bölümlerde, iki tür makine öğrenme problemi örneği gördünüz: - -- **Denetimli**, çözmek istediğimiz probleme örnek çözümler öneren veri kümelerimiz olduğunda. [Sınıflandırma](../4-Classification/README.md) ve [regresyon](../2-Regression/README.md) denetimli öğrenme görevleridir. -- **Denetimsiz**, etiketlenmiş eğitim verilerimizin olmadığı durumlarda. Denetimsiz öğrenmenin ana örneği [Kümeleme](../5-Clustering/README.md)'dir. - -Bu bölümde, etiketlenmiş eğitim verileri gerektirmeyen yeni bir öğrenme problem türüyle tanışacaksınız. Bu tür problemlerin birkaç türü vardır: - -- **[Yarı denetimli öğrenme](https://wikipedia.org/wiki/Semi-supervised_learning)**, çok sayıda etiketlenmemiş verinin modeli önceden eğitmek için kullanılabileceği durumlar. -- **[Pekiştirmeli öğrenme](https://wikipedia.org/wiki/Reinforcement_learning)**, bir ajanının simüle edilmiş bir ortamda deneyler yaparak nasıl davranacağını öğrendiği durumlar. - -### Örnek - Bilgisayar Oyunu - -Bir bilgisayara bir oyun, örneğin satranç veya [Super Mario](https://wikipedia.org/wiki/Super_Mario) oynamayı öğretmek istediğinizi varsayalım. Bilgisayarın oyun oynaması için, her oyun durumunda hangi hamleyi yapacağını tahmin etmesi gerekir. Bu bir sınıflandırma problemi gibi görünse de, değildir - çünkü durumlar ve karşılık gelen eylemlerle ilgili bir veri kümesine sahip değiliz. Mevcut satranç maçları veya Super Mario oynayan oyuncuların kayıtları gibi bazı verilere sahip olsak da, bu verilerin yeterince geniş bir durumu kapsamayacağı muhtemeldir. - -Mevcut oyun verilerini aramak yerine, **Pekiştirmeli Öğrenme** (RL), *bilgisayarı birçok kez oynamaya ve sonucu gözlemlemeye* dayalıdır. Bu nedenle, Pekiştirmeli Öğrenmeyi uygulamak için iki şeye ihtiyacımız var: - -- **Bir ortam** ve **bir simülatör**, bu da oyunu birçok kez oynamamıza izin verir. Bu simülatör, tüm oyun kurallarını, olası durumları ve eylemleri tanımlar. - -- **Bir ödül fonksiyonu**, bu da her hamle veya oyun sırasında ne kadar iyi olduğumuzu bize söyler. - -Diğer makine öğrenme türleri ile RL arasındaki temel fark, RL'de genellikle oyunu bitirene kadar kazanıp kazanmadığımızı bilmememizdir. Bu nedenle, belirli bir hamlenin tek başına iyi olup olmadığını söyleyemeyiz - sadece oyunun sonunda bir ödül alırız. Amacımız, belirsiz koşullar altında bir modeli eğitmemizi sağlayacak algoritmalar tasarlamaktır. **Q-learning** adı verilen bir RL algoritmasını öğreneceğiz. - -## Dersler - -1. [Pekiştirmeli öğrenme ve Q-Learning'e giriş](1-QLearning/README.md) -2. [Gym simülasyon ortamını kullanma](2-Gym/README.md) - -## Katkıda Bulunanlar - -"Pekiştirmeli Öğrenmeye Giriş" [Dmitry Soshnikov](http://soshnikov.com) tarafından ♥️ ile yazılmıştır. - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için, profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/9-Real-World/1-Applications/README.md b/translations/tr/9-Real-World/1-Applications/README.md deleted file mode 100644 index e9a5c7553..000000000 --- a/translations/tr/9-Real-World/1-Applications/README.md +++ /dev/null @@ -1,149 +0,0 @@ -# Sonsöz: Gerçek Dünyada Makine Öğrenimi - -![Gerçek dünyada makine öğrenimi özetini içeren bir sketchnote](../../../../translated_images/ml-realworld.26ee2746716155771f8076598b6145e6533fe4a9e2e465ea745f46648cbf1b84.tr.png) -> Sketchnote by [Tomomi Imura](https://www.twitter.com/girlie_mac) - -Bu müfredatta, verileri eğitim için hazırlamanın ve makine öğrenimi modelleri oluşturmanın birçok yolunu öğrendiniz. Klasik regresyon, kümeleme, sınıflandırma, doğal dil işleme ve zaman serisi modellerinden oluşan bir dizi model oluşturdunuz. Tebrikler! Şimdi, tüm bunların ne için olduğunu merak ediyor olabilirsiniz... Bu modellerin gerçek dünya uygulamaları nelerdir? - -Endüstride genellikle derin öğrenmeyi kullanan yapay zeka büyük ilgi görse de, klasik makine öğrenimi modellerinin hala değerli uygulamaları vardır. Bugün bile bu uygulamalardan bazılarını kullanıyor olabilirsiniz! Bu derste, sekiz farklı endüstri ve konu alanının bu tür modelleri nasıl daha performanslı, güvenilir, akıllı ve kullanıcılar için değerli hale getirdiğini keşfedeceksiniz. - -## [Ders Öncesi Quiz](https://gray-sand-07a10f403.1.azurestaticapps.net/quiz/49/) - -## 💰 Finans - -Finans sektörü, makine öğrenimi için birçok fırsat sunar. Bu alandaki birçok problem, ML kullanılarak modellenip çözülebilir. - -### Kredi Kartı Dolandırıcılığı Tespiti - -Kursun başlarında [k-means kümeleme](../../5-Clustering/2-K-Means/README.md) hakkında öğrendik, ancak bu teknik kredi kartı dolandırıcılığıyla ilgili sorunları nasıl çözebilir? - -K-means kümeleme, **aykırı değer tespiti** olarak adlandırılan bir kredi kartı dolandırıcılığı tespit tekniğinde kullanışlıdır. Bir veri seti hakkındaki gözlemler arasında aykırı değerler veya sapmalar, bir kredi kartının normal kapasitede mi kullanıldığını yoksa olağandışı bir şey mi olduğunu bize söyleyebilir. Aşağıdaki bağlantıda verilen makalede gösterildiği gibi, k-means kümeleme algoritmasını kullanarak kredi kartı verilerini sıralayabilir ve her işlemi ne kadar aykırı göründüğüne göre bir kümeye atayabilirsiniz. Ardından, dolandırıcılık ve meşru işlemler için en riskli kümeleri değerlendirebilirsiniz. -[Referans](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.680.1195&rep=rep1&type=pdf) - -### Varlık Yönetimi - -Varlık yönetiminde, bir birey veya firma müşterileri adına yatırımları yönetir. Uzun vadede serveti sürdürmek ve büyütmek onların işidir, bu yüzden iyi performans gösteren yatırımları seçmek çok önemlidir. - -Belirli bir yatırımın nasıl performans gösterdiğini değerlendirmek için istatistiksel regresyon kullanılabilir. [Lineer regresyon](../../2-Regression/1-Tools/README.md), bir fonun belirli bir benchmarka göre nasıl performans gösterdiğini anlamak için değerli bir araçtır. Ayrıca, regresyon sonuçlarının istatistiksel olarak anlamlı olup olmadığını veya bir müşterinin yatırımlarını ne kadar etkileyeceğini de çıkarabiliriz. Analizinizi daha da genişleterek, ek risk faktörlerini hesaba katabileceğiniz çoklu regresyon kullanabilirsiniz. Bu işlemin belirli bir fon için nasıl çalışacağına dair bir örnek için, aşağıdaki makaleye göz atabilirsiniz. -[Referans](http://www.brightwoodventures.com/evaluating-fund-performance-using-regression/) - -## 🎓 Eğitim - -Eğitim sektörü de ML'nin uygulanabileceği çok ilginç bir alandır. Sınavlarda veya makalelerde hile yapmayı tespit etmek veya düzeltme sürecindeki önyargıyı, istemsiz ya da değil, yönetmek gibi ilginç sorunlar ele alınabilir. - -### Öğrenci Davranışını Tahmin Etme - -Açık çevrimiçi kurs sağlayıcısı [Coursera](https://coursera.com), birçok mühendislik kararını tartıştığı harika bir teknoloji bloguna sahiptir. Bu vaka çalışmasında, düşük NPS (Net Promoter Score) puanı ile kursa devam veya bırakma arasında bir korelasyon olup olmadığını keşfetmek için bir regresyon çizgisi çizdiler. -[Referans](https://medium.com/coursera-engineering/controlled-regression-quantifying-the-impact-of-course-quality-on-learner-retention-31f956bd592a) - -### Önyargıyı Azaltma - -Yazım asistanı [Grammarly](https://grammarly.com), ürünlerinde yazım ve dilbilgisi hatalarını kontrol eden sofistike [doğal dil işleme sistemleri](../../6-NLP/README.md) kullanır. Teknoloji bloglarında, makine öğreniminde cinsiyet önyargısını nasıl ele aldıklarını anlatan ilginç bir vaka çalışması yayınladılar, bu da [giriş niteliğindeki adalet dersimizde](../../1-Introduction/3-fairness/README.md) öğrendiğiniz bir konudur. -[Referans](https://www.grammarly.com/blog/engineering/mitigating-gender-bias-in-autocorrect/) - -## 👜 Perakende - -Perakende sektörü, müşteri yolculuğunu daha iyi hale getirmekten envanteri optimal bir şekilde stoklamaya kadar ML'den kesinlikle faydalanabilir. - -### Müşteri Yolculuğunu Kişiselleştirme - -Ev eşyaları satan Wayfair'de, müşterilerin zevk ve ihtiyaçlarına uygun ürünleri bulmalarına yardımcı olmak çok önemlidir. Bu makalede, şirketin mühendisleri, ML ve NLP'yi müşteriler için doğru sonuçları nasıl ortaya çıkardıklarını anlatıyorlar. Özellikle, Sorgu Niyet Motorları, varlık çıkarımı, sınıflandırıcı eğitimi, varlık ve görüş çıkarımı ve müşteri yorumlarında duygu etiketleme kullanılarak oluşturulmuştur. Bu, çevrimiçi perakendede NLP'nin nasıl çalıştığının klasik bir kullanım örneğidir. -[Referans](https://www.aboutwayfair.com/tech-innovation/how-we-use-machine-learning-and-natural-language-processing-to-empower-search) - -### Envanter Yönetimi - -[StitchFix](https://stitchfix.com) gibi yenilikçi ve çevik şirketler, tüketicilere kıyafet gönderen bir kutu hizmeti, öneriler ve envanter yönetimi için büyük ölçüde ML'ye dayanır. Stil ekipleri, ticaret ekipleriyle birlikte çalışır, aslında: "veri bilimcilerimizden biri, genetik bir algoritma ile uğraştı ve bugüne kadar var olmayan başarılı bir giysi parçasını tahmin etmek için bunu giyime uyguladı. Bunu ticaret ekibine sunduk ve şimdi bunu bir araç olarak kullanabiliyorlar." -[Referans](https://www.zdnet.com/article/how-stitch-fix-uses-machine-learning-to-master-the-science-of-styling/) - -## 🏥 Sağlık Hizmetleri - -Sağlık hizmetleri sektörü, araştırma görevlerini ve hastaların yeniden hastaneye yatması veya hastalıkların yayılmasını durdurma gibi lojistik sorunları optimize etmek için ML'yi kullanabilir. - -### Klinik Denemeleri Yönetme - -Klinik denemelerdeki toksisite, ilaç üreticileri için büyük bir endişe kaynağıdır. Ne kadar toksisite tolere edilebilir? Bu çalışmada, çeşitli klinik deneme yöntemlerini analiz etmek, klinik deneme sonuçlarının olasılıklarını tahmin etmek için yeni bir yaklaşımın geliştirilmesine yol açtı. Özellikle, gruplar arasında ayrım yapabilen bir [sınıflandırıcı](../../4-Classification/README.md) üretmek için rastgele orman kullanabildiler. -[Referans](https://www.sciencedirect.com/science/article/pii/S2451945616302914) - -### Hastane Yeniden Yatış Yönetimi - -Hastane bakımı maliyetlidir, özellikle de hastalar yeniden hastaneye yatırılmak zorunda kaldığında. Bu makale, [kümeleme](../../5-Clustering/README.md) algoritmaları kullanarak yeniden yatış potansiyelini tahmin etmek için ML kullanan bir şirketi tartışıyor. Bu kümeler, analistlerin "ortak bir nedeni paylaşabilecek yeniden yatış gruplarını keşfetmesine" yardımcı olur. -[Referans](https://healthmanagement.org/c/healthmanagement/issuearticle/hospital-readmissions-and-machine-learning) - -### Hastalık Yönetimi - -Son pandemi, makine öğreniminin hastalık yayılmasını durdurmaya nasıl yardımcı olabileceğine dair parlak bir ışık tuttu. Bu makalede, ARIMA, lojistik eğriler, lineer regresyon ve SARIMA'nın kullanıldığını göreceksiniz. "Bu çalışma, bu virüsün yayılma hızını hesaplamak ve böylece ölümleri, iyileşmeleri ve doğrulanmış vakaları tahmin etmek için bir girişimdir, böylece daha iyi hazırlanabilir ve hayatta kalabiliriz." -[Referans](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7979218/) - -## 🌲 Ekoloji ve Yeşil Teknoloji - -Doğa ve ekoloji, hayvanlar ve doğa arasındaki etkileşimin odak noktası olduğu birçok hassas sistemden oluşur. Bu sistemleri doğru bir şekilde ölçmek ve bir şeyler olduğunda uygun şekilde hareket etmek önemlidir, örneğin bir orman yangını veya hayvan popülasyonundaki bir düşüş gibi. - -### Orman Yönetimi - -Önceki derslerde [Takviyeli Öğrenme](../../8-Reinforcement/README.md) hakkında öğrendiniz. Doğadaki kalıpları tahmin etmeye çalışırken çok faydalı olabilir. Özellikle, orman yangınları ve istilacı türlerin yayılması gibi ekolojik sorunları izlemek için kullanılabilir. Kanada'da, bir grup araştırmacı, uydu görüntülerinden orman yangını dinamik modelleri oluşturmak için Takviyeli Öğrenme kullandı. Yenilikçi bir "mekansal yayılma süreci (SSP)" kullanarak, bir orman yangınını "manzaradaki herhangi bir hücredeki ajan" olarak düşündüler. "Yangının herhangi bir noktada bir konumdan alabileceği eylemler kümesi, kuzeye, güneye, doğuya veya batıya yayılmayı veya yayılmamayı içerir. - -Bu yaklaşım, ilgili Markov Karar Sürecinin (MDP) dinamiklerinin bilinen bir fonksiyon olduğu için, normal RL kurulumunu tersine çevirir." Aşağıdaki bağlantıda bu grubun kullandığı klasik algoritmalar hakkında daha fazla bilgi edinin. -[Referans](https://www.frontiersin.org/articles/10.3389/fict.2018.00006/full) - -### Hayvanların Hareket Algılaması - -Derin öğrenme, hayvan hareketlerini görsel olarak izleme konusunda bir devrim yaratmışken (kendi [kutup ayısı izleyicinizi](https://docs.microsoft.com/learn/modules/build-ml-model-with-azure-stream-analytics/?WT.mc_id=academic-77952-leestott) burada oluşturabilirsiniz), klasik ML bu görevde hala yerini koruyor. - -Çiftlik hayvanlarının hareketlerini izlemek için sensörler ve IoT, bu tür görsel işlemeyi kullanır, ancak daha temel ML teknikleri veri ön işleme için kullanışlıdır. Örneğin, bu makalede, koyun duruşları çeşitli sınıflandırıcı algoritmalar kullanılarak izlenmiş ve analiz edilmiştir. Sayfa 335'te ROC eğrisini tanıyabilirsiniz. -[Referans](https://druckhaus-hofmann.de/gallery/31-wj-feb-2020.pdf) - -### ⚡️ Enerji Yönetimi - -[Zaman serisi tahmini](../../7-TimeSeries/README.md) derslerimizde, bir kasaba için arz ve talebi anlamaya dayalı olarak gelir elde etmek için akıllı park sayaçları kavramını ele aldık. Bu makale, İrlanda'da akıllı ölçüm temelinde gelecekteki enerji kullanımını tahmin etmeye yardımcı olmak için kümeleme, regresyon ve zaman serisi tahmininin nasıl birleştirildiğini ayrıntılı olarak tartışıyor. -[Referans](https://www-cdn.knime.com/sites/default/files/inline-images/knime_bigdata_energy_timeseries_whitepaper.pdf) - -## 💼 Sigorta - -Sigorta sektörü, yaşanabilir finansal ve aktüeryal modeller oluşturmak ve optimize etmek için ML'yi kullanan bir başka sektördür. - -### Volatilite Yönetimi - -MetLife, bir hayat sigortası sağlayıcısı, finansal modellerindeki volatiliteyi analiz etme ve hafifletme yöntemlerini açıkça paylaşmaktadır. Bu makalede, ikili ve sıralı sınıflandırma görselleştirmeleri dikkat çekecek. Ayrıca tahmin görselleştirmeleri de bulacaksınız. -[Referans](https://investments.metlife.com/content/dam/metlifecom/us/investments/insights/research-topics/macro-strategy/pdf/MetLifeInvestmentManagement_MachineLearnedRanking_070920.pdf) - -## 🎨 Sanat, Kültür ve Edebiyat - -Sanat alanında, örneğin gazetecilikte, birçok ilginç sorun vardır. Sahte haber tespiti büyük bir sorundur çünkü insanların görüşlerini etkilediği ve hatta demokrasileri devirdiği kanıtlanmıştır. Müzeler de, eserler arasındaki bağlantıları bulmaktan kaynak planlamasına kadar her şeyde ML kullanmaktan faydalanabilir. - -### Sahte Haber Tespiti - -Günümüz medyasında sahte haber tespiti kedi fare oyununa dönüşmüştür. Bu makalede, araştırmacılar, çalıştığımız çeşitli ML tekniklerini birleştiren bir sistemin test edilebileceğini ve en iyi modelin uygulanabileceğini öneriyorlar: "Bu sistem, verilerden özellikler çıkarmak için doğal dil işleme temellidir ve ardından bu özellikler, Naive Bayes, Support Vector Machine (SVM), Random Forest (RF), Stochastic Gradient Descent (SGD) ve Logistic Regression (LR) gibi makine öğrenimi sınıflandırıcılarının eğitimi için kullanılır." -[Referans](https://www.irjet.net/archives/V7/i6/IRJET-V7I6688.pdf) - -Bu makale, farklı ML alanlarını birleştirmenin, sahte haberlerin yayılmasını durdurmaya ve gerçek zararlar yaratmasını önlemeye yardımcı olabilecek ilginç sonuçlar üretebileceğini gösteriyor; bu durumda, COVID tedavileri hakkında yayılan söylentilerin şiddet olaylarını kışkırtması etkili olmuştur. - -### Müze ML - -Müzeler, koleksiyonları kataloglama ve dijitalleştirme ve eserler arasındaki bağlantıları bulmayı teknoloji ilerledikçe daha kolay hale getiren bir AI devriminin eşiğindedir. [In Codice Ratio](https://www.sciencedirect.com/science/article/abs/pii/S0306457321001035#:~:text=1.,studies%20over%20large%20historical%20sources.) gibi projeler, Vatikan Arşivleri gibi erişilemeyen koleksiyonların gizemlerini çözmeye yardımcı oluyor. Ancak, müzelerin iş yönü de ML modellerinden faydalanır. - -Örneğin, Chicago Sanat Enstitüsü, izleyicilerin neyle ilgilendiğini ve sergileri ne zaman ziyaret edeceklerini tahmin etmek için modeller oluşturdu. Amaç, kullanıcı müzeyi her ziyaret ettiğinde bireyselleştirilmiş ve optimize edilmiş ziyaretçi deneyimleri yaratmaktır. "2017 mali yılı boyunca, model, katılım ve kabulü yüzde 1 doğrulukla tahmin etti," diyor Chicago Sanat Enstitüsü kıdemli başkan yardımcısı Andrew Simnick. -[Referans](https://www.chicagobusiness.com/article/20180518/ISSUE01/180519840/art-institute-of-chicago-uses-data-to-make-exhibit-choices) - -## 🏷 Pazarlama - -### Müşteri segmentasyonu - -En etkili pazarlama stratejileri, müşterileri farklı gruplandırmalar temelinde farklı şekillerde hedefler. Bu makalede, farklılaştırılmış pazarlamayı desteklemek için Kümeleme algoritmalarının kullanımları tartışılmaktadır. Farklılaştırılmış pazarlama, şirketlerin marka bilinirliğini artırmalarına, daha fazla müşteriye ulaşmalarına ve daha fazla para kazanmalarına yardımcı olur. -[Referans](https://ai.inqline.com/machine-learning-for-marketing-customer-segmentation/) - -## 🚀 Meydan Okuma - -Bu müfredatta öğrendiğiniz bazı tekniklerden faydalanan başka bir sektörü belirleyin ve ML'i nasıl kullandığını keşfedin. - -## [Ders sonrası sınav](https://gray-sand-07a10f403.1.azurestaticapps.net/quiz/50/) - -## Gözden Geçirme ve Kendi Kendine Çalışma - -Wayfair veri bilimi ekibinin, şirketlerinde ML'i nasıl kullandıklarına dair birkaç ilginç videosu var. [Göz atmaya değer](https://www.youtube.com/channel/UCe2PjkQXqOuwkW1gw6Ameuw/videos)! - -## Ödev - -[Bir ML hazine avı](assignment.md) - -**Feragatname**: -Bu belge, makine tabanlı AI çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluğu sağlamak için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından doğabilecek herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/9-Real-World/1-Applications/assignment.md b/translations/tr/9-Real-World/1-Applications/assignment.md deleted file mode 100644 index b0209bfde..000000000 --- a/translations/tr/9-Real-World/1-Applications/assignment.md +++ /dev/null @@ -1,16 +0,0 @@ -# Bir ML Hazine Avı - -## Talimatlar - -Bu derste, klasik ML kullanılarak çözülen birçok gerçek yaşam örneği hakkında bilgi edindiniz. Derin öğrenme, yeni teknikler ve yapay zeka araçlarının kullanımı ve sinir ağlarının devreye alınması bu sektörlerdeki araçların üretimini hızlandırmış olsa da, bu müfredattaki teknikleri kullanarak klasik ML hala büyük değer taşımaktadır. - -Bu ödevde, bir hackathon'a katıldığınızı hayal edin. Müfredatta öğrendiklerinizi kullanarak bu derste tartışılan sektörlerden birinde bir sorunu çözmek için klasik ML kullanarak bir çözüm önerin. Fikrinizi nasıl uygulayacağınızı tartıştığınız bir sunum hazırlayın. Örnek veri toplayıp fikrinizi destekleyecek bir ML modeli oluşturabilirseniz ekstra puan kazanırsınız! - -## Değerlendirme Ölçütleri - -| Kriterler | Örnek | Yeterli | İyileştirme Gerekiyor | -| --------- | --------------------------------------------------------------- | ------------------------------------------------ | ------------------------- | -| | Bir PowerPoint sunumu sunulur - model oluşturma bonus | Yenilikçi olmayan, temel bir sunum sunulur | Çalışma eksik | - -**Feragatname**: -Bu belge, makine tabanlı AI çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluğu sağlamak için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/9-Real-World/2-Debugging-ML-Models/README.md b/translations/tr/9-Real-World/2-Debugging-ML-Models/README.md deleted file mode 100644 index 70d25e2e8..000000000 --- a/translations/tr/9-Real-World/2-Debugging-ML-Models/README.md +++ /dev/null @@ -1,130 +0,0 @@ -# Sonsöz: Sorumlu AI panosu bileşenleri kullanarak Makine Öğreniminde Model Hatalarını Ayıklama - -## [Ders Öncesi Testi](https://gray-sand-07a10f403.1.azurestaticapps.net/quiz/5/) - -## Giriş - -Makine öğrenimi günlük hayatımızı etkiliyor. AI, sağlık, finans, eğitim ve istihdam gibi bireyler ve toplum olarak bizi etkileyen en önemli sistemlere giriyor. Örneğin, sistemler ve modeller sağlık teşhisleri veya dolandırıcılığı tespit etme gibi günlük karar verme görevlerinde yer alır. Sonuç olarak, AI'daki ilerlemeler ve hızlandırılmış benimseme, gelişen toplumsal beklentiler ve artan düzenlemelerle karşılanmaktadır. AI sistemlerinin beklentileri karşılamadığı, yeni zorluklar ortaya çıkardığı ve hükümetlerin AI çözümlerini düzenlemeye başladığı alanları sürekli olarak görüyoruz. Bu nedenle, bu modellerin herkes için adil, güvenilir, kapsayıcı, şeffaf ve hesap verebilir sonuçlar sağlamak amacıyla analiz edilmesi önemlidir. - -Bu müfredatta, bir modelin sorumlu AI sorunları olup olmadığını değerlendirmek için kullanılabilecek pratik araçlara bakacağız. Geleneksel makine öğrenimi hata ayıklama teknikleri, genellikle toplanmış doğruluk veya ortalama hata kaybı gibi nicel hesaplamalara dayanır. Bu modelleri oluşturmak için kullandığınız verilerde ırk, cinsiyet, politik görüş, din gibi demografik bilgiler eksik olduğunda ne olabileceğini hayal edin. Modelin çıktısı belirli bir demografiyi tercih edecek şekilde yorumlandığında ne olur? Bu, bu hassas özellik gruplarının aşırı veya yetersiz temsil edilmesine neden olarak modelden adalet, kapsayıcılık veya güvenilirlik sorunlarına yol açabilir. Bir diğer faktör ise, makine öğrenimi modellerinin kara kutular olarak kabul edilmesidir, bu da bir modelin tahminini neyin yönlendirdiğini anlamayı ve açıklamayı zorlaştırır. Tüm bunlar, bir modelin adaletini veya güvenilirliğini değerlendirmek ve hata ayıklamak için yeterli araçlara sahip olmadıklarında veri bilimciler ve AI geliştiricilerin karşılaştığı zorluklardır. - -Bu derste, modellerinizi hata ayıklama konusunda şunları öğreneceksiniz: - -- **Hata Analizi**: Modelin yüksek hata oranlarına sahip olduğu veri dağılımındaki yerleri belirleyin. -- **Model Genel Bakış**: Model performans metriklerindeki farklılıkları keşfetmek için farklı veri kohortları arasında karşılaştırmalı analiz yapın. -- **Veri Analizi**: Modelinizin bir veri demografisini diğerine tercih etmesine neden olabilecek veri fazlalığı veya eksikliği olup olmadığını araştırın. -- **Özellik Önemi**: Modelinizin tahminlerini küresel veya yerel düzeyde hangi özelliklerin yönlendirdiğini anlayın. - -## Önkoşul - -Bir önkoşul olarak, lütfen [Geliştiriciler için Sorumlu AI araçlarını](https://www.microsoft.com/ai/ai-lab-responsible-ai-dashboard) inceleyin. - -> ![Sorumlu AI Araçları Hakkında Gif](../../../../9-Real-World/2-Debugging-ML-Models/images/rai-overview.gif) - -## Hata Analizi - -Doğruluğu ölçmek için kullanılan geleneksel model performans metrikleri genellikle doğru ve yanlış tahminlere dayalı hesaplamalardır. Örneğin, bir modelin %89 doğruluk oranına sahip olduğunu ve hata kaybının 0.001 olduğunu belirlemek iyi bir performans olarak kabul edilebilir. Hatalar genellikle temel veri kümenizde eşit dağılmamıştır. %89 doğruluk puanı alabilirsiniz, ancak modelin verinizin farklı bölgelerinde %42 oranında başarısız olduğunu keşfedebilirsiniz. Belirli veri gruplarındaki bu başarısızlık modellerinin sonucu adalet veya güvenilirlik sorunlarına yol açabilir. Modelin iyi veya kötü performans gösterdiği alanları anlamak önemlidir. Modelinizde yüksek sayıda yanlışlıkların olduğu veri bölgeleri önemli bir veri demografisi olabilir. - -![Model hatalarını analiz edin ve hata ayıklayın](../../../../translated_images/ea-error-distribution.117452e1177c1dd84fab2369967a68bcde787c76c6ea7fdb92fcf15d1fce8206.tr.png) - -RAI panosundaki Hata Analizi bileşeni, model hatasının çeşitli kohortlar arasında nasıl dağıldığını ağaç görselleştirmesi ile gösterir. Bu, veri kümenizde yüksek hata oranına sahip özellikleri veya alanları belirlemede yararlıdır. Modelin yanlışlıklarının çoğunun nereden geldiğini görerek, sorunun kök nedenini araştırmaya başlayabilirsiniz. Ayrıca, analiz yapmak için veri kohortları oluşturabilirsiniz. Bu veri kohortları, model performansının bir kohortta neden iyi olduğunu, ancak başka bir kohortta neden hatalı olduğunu belirlemek için hata ayıklama sürecinde yardımcı olur. - -![Hata Analizi](../../../../translated_images/ea-error-cohort.6886209ea5d438c4daa8bfbf5ce3a7042586364dd3eccda4a4e3d05623ac702a.tr.png) - -Ağaç haritasındaki görsel göstergeler, sorun alanlarını daha hızlı bulmanıza yardımcı olur. Örneğin, bir ağaç düğümünün daha koyu kırmızı tonu, hata oranının daha yüksek olduğunu gösterir. - -Isı haritası, kullanıcıların tüm veri kümesi veya kohortlar genelinde model hatalarına katkıda bulunan bir veya iki özelliği araştırmak için hata oranını incelemelerinde kullanabilecekleri başka bir görselleştirme işlevselliğidir. - -![Hata Analizi Isı Haritası](../../../../translated_images/ea-heatmap.8d27185e28cee3830c85e1b2e9df9d2d5e5c8c940f41678efdb68753f2f7e56c.tr.png) - -Hata analizini şu durumlarda kullanın: - -* Model hatalarının bir veri kümesi ve çeşitli giriş ve özellik boyutları genelinde nasıl dağıldığını derinlemesine anlamak için. -* Hata ayıklama adımlarınızı bilgilendirmek için hatalı kohortları otomatik olarak keşfetmek amacıyla toplam performans metriklerini parçalamak için. - -## Model Genel Bakış - -Bir makine öğrenimi modelinin performansını değerlendirmek, davranışını bütünsel olarak anlamayı gerektirir. Bu, performans metrikleri arasında farklılıkları bulmak için hata oranı, doğruluk, geri çağırma, kesinlik veya MAE (Ortalama Mutlak Hata) gibi birden fazla metriği gözden geçirerek elde edilebilir. Bir performans metriği harika görünebilir, ancak başka bir metrikte yanlışlıklar ortaya çıkabilir. Ayrıca, tüm veri kümesi veya kohortlar arasında metrikleri karşılaştırmak, modelin iyi veya kötü performans gösterdiği yerleri aydınlatmaya yardımcı olur. Bu, özellikle modelin hassas ve hassas olmayan özellikler (örneğin, hasta ırkı, cinsiyet veya yaşı) arasında performansını görerek modelin potansiyel adaletsizliğini ortaya çıkarmak için önemlidir. Örneğin, modelin hassas özelliklere sahip bir kohortta daha hatalı olduğunu keşfetmek, modelin potansiyel adaletsizliğini ortaya çıkarabilir. - -RAI panosundaki Model Genel Bakış bileşeni, sadece bir kohortta veri temsilinin performans metriklerini analiz etmekle kalmaz, aynı zamanda kullanıcıların modelin davranışını farklı kohortlar arasında karşılaştırma yeteneği sağlar. - -![Veri seti kohortları - RAI panosunda model genel bakış](../../../../translated_images/model-overview-dataset-cohorts.dfa463fb527a35a0afc01b7b012fc87bf2cad756763f3652bbd810cac5d6cf33.tr.png) - -Bileşenin özellik tabanlı analiz işlevselliği, kullanıcıların belirli bir özellik içinde veri alt gruplarını daraltarak anormallikleri daha ayrıntılı düzeyde belirlemelerini sağlar. Örneğin, pano, kullanıcı tarafından seçilen bir özellik için otomatik olarak kohortlar oluşturma yeteneğine sahiptir (örneğin, *"time_in_hospital < 3"* veya *"time_in_hospital >= 7"*). Bu, kullanıcının daha büyük bir veri grubundan belirli bir özelliği izole etmesine ve bu özelliğin modelin hatalı sonuçlarını yönlendiren önemli bir etken olup olmadığını görmesine olanak tanır. - -![Özellik kohortları - RAI panosunda model genel bakış](../../../../translated_images/model-overview-feature-cohorts.c5104d575ffd0c80b7ad8ede7703fab6166bfc6f9125dd395dcc4ace2f522f70.tr.png) - -Model Genel Bakış bileşeni iki tür farklılık metriğini destekler: - -**Model performansındaki farklılık**: Bu metrikler, veri alt grupları arasında seçilen performans metriğinin değerlerindeki farklılığı hesaplar. İşte birkaç örnek: - -* Doğruluk oranındaki farklılık -* Hata oranındaki farklılık -* Kesinlikteki farklılık -* Geri çağırmadaki farklılık -* Ortalama mutlak hatadaki (MAE) farklılık - -**Seçim oranındaki farklılık**: Bu metrik, veri alt grupları arasında seçim oranındaki (olumlu tahmin) farkı içerir. Bunun bir örneği, kredi onay oranlarındaki farklılıktır. Seçim oranı, her sınıfta 1 olarak sınıflandırılan veri noktalarının oranını (ikili sınıflandırmada) veya tahmin değerlerinin dağılımını (regresyonda) ifade eder. - -## Veri Analizi - -> "Verileri yeterince uzun süre işkence ederseniz, her şeyi itiraf eder" - Ronald Coase - -Bu ifade aşırı gibi görünebilir, ancak verilerin herhangi bir sonucu desteklemek için manipüle edilebileceği doğrudur. Böyle bir manipülasyon bazen istemeden de olabilir. İnsan olarak hepimizin önyargıları vardır ve veriye önyargı eklediğinizde bunu bilinçli olarak fark etmek genellikle zordur. AI ve makine öğreniminde adaleti sağlamak karmaşık bir zorluk olmaya devam etmektedir. - -Veri, geleneksel model performans metrikleri için büyük bir kör noktadır. Yüksek doğruluk puanlarına sahip olabilirsiniz, ancak bu her zaman veri kümenizde olabilecek temel veri önyargısını yansıtmaz. Örneğin, bir şirketin yönetici pozisyonlarındaki kadın çalışanların %27'si ve aynı seviyedeki erkeklerin %73'ü olan bir veri kümesi, bu verilere dayalı olarak eğitilmiş bir iş ilanı AI modelinin çoğunlukla üst düzey iş pozisyonları için erkek hedef kitleye yönelik olmasına neden olabilir. Veride bu dengesizlik, modelin tahminini bir cinsiyeti diğerine tercih edecek şekilde eğmiştir. Bu, AI modelinde bir cinsiyet önyargısı olan bir adalet sorunu ortaya çıkarır. - -RAI panosundaki Veri Analizi bileşeni, veri kümesinde aşırı ve yetersiz temsili olan alanları belirlemeye yardımcı olur. Kullanıcılara, veri dengesizliklerinden veya belirli bir veri grubunun temsil eksikliğinden kaynaklanan hata ve adalet sorunlarının kök nedenini teşhis etme yeteneği sağlar. Bu, kullanıcıların tahmin edilen ve gerçek sonuçlar, hata grupları ve belirli özelliklere dayalı veri kümelerini görselleştirmelerine olanak tanır. Bazen az temsil edilen bir veri grubunu keşfetmek, modelin iyi öğrenmediğini de ortaya çıkarabilir, bu da yüksek yanlışlıkların nedenidir. Veride önyargı olan bir modelin sadece bir adalet sorunu değil, aynı zamanda kapsayıcı veya güvenilir olmadığını da gösterir. - -![RAI Panosunda Veri Analizi bileşeni](../../../../translated_images/dataanalysis-cover.8d6d0683a70a5c1e274e5a94b27a71137e3d0a3b707761d7170eb340dd07f11d.tr.png) - -Veri analizini şu durumlarda kullanın: - -* Farklı filtreler seçerek veri kümenizi farklı boyutlara (kohortlar olarak da bilinir) dilimleyerek veri kümesi istatistiklerinizi keşfedin. -* Veri kümenizin farklı kohortlar ve özellik grupları genelinde dağılımını anlayın. -* Adalet, hata analizi ve nedensellik ile ilgili bulgularınızın (diğer pano bileşenlerinden türetilmiş) veri kümenizin dağılımının bir sonucu olup olmadığını belirleyin. -* Temsil sorunlarından, etiket gürültüsünden, özellik gürültüsünden, etiket önyargısından ve benzeri faktörlerden kaynaklanan hataları hafifletmek için hangi alanlarda daha fazla veri toplayacağınıza karar verin. - -## Model Yorumlanabilirliği - -Makine öğrenimi modelleri kara kutular olma eğilimindedir. Bir modelin tahminini yönlendiren anahtar veri özelliklerini anlamak zor olabilir. Bir modelin belirli bir tahminde bulunmasının nedenini açıklamak önemlidir. Örneğin, bir AI sistemi, bir diyabet hastasının 30 gün içinde tekrar hastaneye yatma riski taşıdığını tahmin ederse, bu tahminine yol açan destekleyici verileri sağlayabilmelidir. Destekleyici veri göstergelerine sahip olmak, klinisyenlerin veya hastanelerin iyi bilgilendirilmiş kararlar almasına yardımcı olmak için şeffaflık sağlar. Ayrıca, bir modelin bir birey için neden bir tahminde bulunduğunu açıklayabilmek, sağlık düzenlemeleriyle hesap verebilirlik sağlar. İnsanların hayatlarını etkileyen makine öğrenimi modelleri kullanırken, bir modelin davranışını neyin etkilediğini anlamak ve açıklamak çok önemlidir. Model açıklanabilirliği ve yorumlanabilirliği, aşağıdaki senaryolarda soruları yanıtlamaya yardımcı olur: - -* Model hata ayıklama: Modelim neden bu hatayı yaptı? Modelimi nasıl geliştirebilirim? -* İnsan-AI işbirliği: Modelin kararlarını nasıl anlayabilir ve güvenebilirim? -* Düzenleyici uyumluluk: Modelim yasal gereklilikleri karşılıyor mu? - -RAI panosundaki Özellik Önemi bileşeni, bir modelin tahminlerini nasıl yaptığını anlamak ve hata ayıklamak için kapsamlı bir anlayış sağlar. Ayrıca, makine öğrenimi profesyonelleri ve karar vericiler için modelin davranışını etkileyen özelliklerin kanıtlarını açıklamak ve göstermek için düzenleyici uyumluluk açısından faydalı bir araçtır. Kullanıcılar, hem küresel hem de yerel açıklamaları keşfederek hangi özelliklerin modelin tahminlerini yönlendirdiğini doğrulayabilir. Küresel açıklamalar, modelin genel tahminini etkileyen en önemli özellikleri listeler. Yerel açıklamalar, bir modelin belirli bir vaka için yaptığı tahmini hangi özelliklerin yönlendirdiğini gösterir. Yerel açıklamaları değerlendirme yeteneği, belirli bir vakayı hata ayıklama veya denetleme açısından modelin neden doğru veya yanlış bir tahminde bulunduğunu daha iyi anlamak ve yorumlamak için de faydalıdır. - -![RAI panosunda Özellik Önemi bileşeni](../../../../translated_images/9-feature-importance.cd3193b4bba3fd4bccd415f566c2437fb3298c4824a3dabbcab15270d783606e.tr.png) - -* Küresel açıklamalar: Örneğin, bir diyabet hastanesi tekrar yatış modelinin genel davranışını hangi özellikler etkiliyor? -* Yerel açıklamalar: Örneğin, neden 60 yaş üstü ve önceki hastane yatışları olan bir diyabet hastası, 30 gün içinde tekrar hastaneye yatacağı veya yatmayacağı tahmin edildi? - -Modelin performansını farklı kohortlar genelinde inceleme sürecinde, Özellik Önemi, bir özelliğin kohortlar genelinde ne düzeyde etki ettiğini gösterir. Modelin hatalı tahminlerini yönlendiren bir özelliğin etki düzeyini karşılaştırırken anormallikleri ortaya çıkarmaya yardımcı olur. Özellik Önemi bileşeni, bir özelliğin değerlerinin modelin sonucunu olumlu veya olumsuz etkilediğini gösterebilir. Örneğin, bir model yanlış bir tahminde bulunduğunda, bileşen, tahmini yönlendiren özellikleri veya özellik değerlerini belirleme ve inceleme yeteneği sağlar. Bu düzeydeki ayrıntı, sadece hata ayıklamada değil, aynı zamanda denetim durumlarında şeffaflık ve hesap verebilirlik sağlamada da yardımcı olur. Son olarak, bileşen adalet sorunlarını belirlemenize yardımcı olabilir. Örneğin, etnik köken veya cinsiyet gibi hassas bir özellik modelin tahminini yönlendirmede yüksek derecede etkiliyse, bu modelde ırk veya cinsiyet önyargısı olduğunu gösterebilir. - -![Özellik önemi](../../../../translated_images/9-features-influence.3ead3d3f68a84029f1e40d3eba82107445d3d3b6975d4682b23d8acc905da6d0.tr.png) - -Yorumlanabilirliği şu durumlarda kullanın: - -* AI sisteminizin tahminlerinin ne kadar güvenilir olduğunu, tahminler için hangi özelliklerin en önemli olduğunu anlayarak belirleyin. -* Modelinizi anlamak ve sağlıklı özellikler kullanıp kullanmadığını veya sadece yanlış korelasyonları mı kullandığını belirlemek için modelin hata ayıklamasına yaklaşın. -* Modelin tahminlerini hassas özelliklere veya onlarla yüksek derecede ilişkili özelliklere dayandırıp dayandırmadığını anlayarak potansiyel adaletsizlik kaynaklarını ortaya çıkarın. -* Yerel açıklamalar oluşturarak modelin kararlarını kullanıcılara açıklamak ve güven oluşturmak. -* AI sisteminin düzenleyici bir denetimini tamamlayarak modelleri doğrulamak ve model kararlarının insanlar üzerindeki etkisini izlemek. - -## Sonuç - -Tüm RAI pano bileşenleri, topluma daha az zarar veren ve daha güvenilir makine öğrenimi modelleri oluşturmanıza yardımcı olan pratik araçlardır. İnsan haklarına yönelik tehditlerin önlenmesini, belirli grupları yaşam fırsatlarından dışlamayı veya fiziksel veya psikolojik yaralanma riskini artırır. Ayrıca, modelinizin kararlarına yerel açıklamalar oluşturarak güven oluşturmanıza yardımcı olur. Potansiyel zararlar şu şekilde sınıflandırılabilir: - -- **Tahsis**, örneğin bir cinsiyet veya etnik kökenin diğerine tercih edilmesi. -- **Hizmet kalitesi**. Veriyi belirli bir senaryo için eğitiyorsanız, ancak gerçeklik çok daha karmaşıksa, bu kötü performans gösteren bir hizmete yol açar. -- **Kalıp**. Belirli bir grubu önceden atanmış özelliklerle ilişkilendirme. -- **Aşağılama**. Bir şeyi veya birini haksızca eleştirmek ve etiketlemek. -- **Aşırı veya yetersiz temsil**. Belirli bir grubun belirli bir meslekte görülmediği fikri ve bu durumu teşvik eden herhangi bir hizmet veya işlev zarara katkıda bulunur. - -### Azure RAI panosu - -[Azure RAI panosu](https://learn.microsoft.com - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi tavsiye edilir. Bu çevirinin kullanılması sonucu oluşabilecek yanlış anlaşılmalar veya yanlış yorumlamalardan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/9-Real-World/2-Debugging-ML-Models/assignment.md b/translations/tr/9-Real-World/2-Debugging-ML-Models/assignment.md deleted file mode 100644 index 33d69f4d2..000000000 --- a/translations/tr/9-Real-World/2-Debugging-ML-Models/assignment.md +++ /dev/null @@ -1,14 +0,0 @@ -# Sorumlu Yapay Zeka (RAI) panelini keşfedin - -## Talimatlar - -Bu derste, veri bilimcilerin hata analizi, veri keşfi, adalet değerlendirmesi, model yorumlanabilirliği, karşıt/what-if değerlendirmeleri ve yapay zeka sistemlerinde nedensel analiz gerçekleştirmelerine yardımcı olmak için "açık kaynak" araçlar üzerine kurulu bir bileşenler paketi olan RAI panelini öğrendiniz. Bu ödev için, RAI panelinin bazı örnek [not defterlerini](https://github.com/Azure/RAI-vNext-Preview/tree/main/examples/notebooks) keşfedin ve bulgularınızı bir makale veya sunumda raporlayın. - -## Değerlendirme Ölçütleri - -| Kriterler | Mükemmel | Yeterli | Geliştirme Gerekiyor | -| -------- | --------- | -------- | ----------------- | -| | RAI panelinin bileşenlerini, çalıştırılan not defterini ve çalıştırma sonucunda elde edilen sonuçları tartışan bir makale veya PowerPoint sunumu sunulmuştur | Sonuçları içermeyen bir makale sunulmuştur | Hiçbir makale sunulmamıştır | - -**Feragatname**: -Bu belge, makine tabanlı AI çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından doğabilecek yanlış anlamalar veya yanlış yorumlamalardan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/9-Real-World/README.md b/translations/tr/9-Real-World/README.md deleted file mode 100644 index fc5b25a85..000000000 --- a/translations/tr/9-Real-World/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# Sonsöz: Klasik makine öğreniminin gerçek dünya uygulamaları - -Bu bölümde, klasik ML'in bazı gerçek dünya uygulamalarıyla tanışacaksınız. İnterneti tarayarak bu stratejileri kullanan uygulamalar hakkında makaleler ve raporlar bulduk, mümkün olduğunca sinir ağlarından, derin öğrenmeden ve yapay zekadan kaçındık. ML'in iş sistemlerinde, ekolojik uygulamalarda, finans, sanat ve kültürde nasıl kullanıldığını öğrenin. - -![chess](../../../translated_images/chess.e704a268781bdad85d1876b6c2295742fa0d856e7dcf3659147052df9d3db205.tr.jpg) - -> Fotoğraf Alexis Fauvet tarafından Unsplash üzerinde - -## Ders - -1. [ML için Gerçek Dünya Uygulamaları](1-Applications/README.md) -2. [Sorumlu AI kontrol paneli bileşenlerini kullanarak Makine Öğrenimi Modellerini Hata Ayıklama](2-Debugging-ML-Models/README.md) - -## Katkıda Bulunanlar - -"Gerçek Dünya Uygulamaları" [Jen Looper](https://twitter.com/jenlooper) ve [Ornella Altunyan](https://twitter.com/ornelladotcom) dahil olmak üzere bir ekip tarafından yazılmıştır. - -"Sorumlu AI kontrol paneli bileşenlerini kullanarak Makine Öğrenimi Modellerini Hata Ayıklama" [Ruth Yakubu](https://twitter.com/ruthieyakubu) tarafından yazılmıştır. - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluğu sağlamak için çaba göstersek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilmektedir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/CODE_OF_CONDUCT.md b/translations/tr/CODE_OF_CONDUCT.md deleted file mode 100644 index 93c1af329..000000000 --- a/translations/tr/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,12 +0,0 @@ -# Microsoft Açık Kaynak Davranış Kuralları - -Bu proje [Microsoft Açık Kaynak Davranış Kuralları](https://opensource.microsoft.com/codeofconduct/) benimsemiştir. - -Kaynaklar: - -- [Microsoft Açık Kaynak Davranış Kuralları](https://opensource.microsoft.com/codeofconduct/) -- [Microsoft Davranış Kuralları SSS](https://opensource.microsoft.com/codeofconduct/faq/) -- Sorularınız veya endişeleriniz için [opencode@microsoft.com](mailto:opencode@microsoft.com) ile iletişime geçin - -**Feragatname**: -Bu belge, makine tabanlı AI çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluğu sağlamak için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belge kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından doğabilecek yanlış anlamalar veya yanlış yorumlamalardan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/CONTRIBUTING.md b/translations/tr/CONTRIBUTING.md deleted file mode 100644 index b72341938..000000000 --- a/translations/tr/CONTRIBUTING.md +++ /dev/null @@ -1,14 +0,0 @@ -# Katkıda Bulunma - -Bu proje katkıları ve önerileri memnuniyetle karşılar. Çoğu katkı, bir Katılımcı Lisans Anlaşması'nı (CLA) kabul etmenizi gerektirir; bu, katkınızı kullanma haklarına sahip olduğunuzu ve bu hakları bize gerçekten verdiğinizi beyan eder. Ayrıntılar için https://cla.microsoft.com adresini ziyaret edin. - -> Önemli: Bu depodaki metinleri çevirirken, lütfen makine çevirisi kullanmadığınızdan emin olun. Çevirileri topluluk aracılığıyla doğrulayacağız, bu nedenle yalnızca yetkin olduğunuz dillerde çeviri yapmak için gönüllü olun. - -Bir pull request gönderdiğinizde, bir CLA-bot otomatik olarak bir CLA sağlamanız gerekip gerekmediğini belirleyecek ve PR'yi uygun şekilde süsleyecektir (örneğin, etiket, yorum). Bot tarafından sağlanan talimatları basitçe takip edin. Tüm depolarımızda CLA kullanarak bunu sadece bir kez yapmanız gerekecek. - -Bu proje [Microsoft Açık Kaynak Davranış Kuralları](https://opensource.microsoft.com/codeofconduct/)'nı benimsemiştir. -Daha fazla bilgi için [Davranış Kuralları SSS](https://opensource.microsoft.com/codeofconduct/faq/) sayfasına bakabilir -veya ek sorularınız ya da yorumlarınız için [opencode@microsoft.com](mailto:opencode@microsoft.com) ile iletişime geçebilirsiniz. - -**Feragatname**: -Bu belge, makine tabanlı yapay zeka çeviri hizmetleri kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belgenin kendi dilindeki hali yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlamadan sorumlu değiliz. \ No newline at end of file diff --git a/translations/tr/README.md b/translations/tr/README.md deleted file mode 100644 index 35e91eff2..000000000 --- a/translations/tr/README.md +++ /dev/null @@ -1,155 +0,0 @@ -[![GitHub license](https://img.shields.io/github/license/microsoft/ML-For-Beginners.svg)](https://github.com/microsoft/ML-For-Beginners/blob/master/LICENSE) -[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/ML-For-Beginners.svg)](https://GitHub.com/microsoft/ML-For-Beginners/graphs/contributors/) -[![GitHub issues](https://img.shields.io/github/issues/microsoft/ML-For-Beginners.svg)](https://GitHub.com/microsoft/ML-For-Beginners/issues/) -[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/ML-For-Beginners.svg)](https://GitHub.com/microsoft/ML-For-Beginners/pulls/) -[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) - -[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/ML-For-Beginners.svg?style=social&label=Watch)](https://GitHub.com/microsoft/ML-For-Beginners/watchers/) -[![GitHub forks](https://img.shields.io/github/forks/microsoft/ML-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/ML-For-Beginners/network/) -[![GitHub stars](https://img.shields.io/github/stars/microsoft/ML-For-Beginners.svg?style=social&label=Star)](https://GitHub.com/microsoft/ML-For-Beginners/stargazers/) - -[![](https://dcbadge.vercel.app/api/server/ByRwuEEgH4)](https://discord.gg/zxKYvhSnVp?WT.mc_id=academic-000002-leestott) - -# Başlangıç Seviyesi İçin Makine Öğrenimi - Bir Müfredat - -> 🌍 Dünya kültürleri aracılığıyla Makine Öğrenimini keşfederken dünyayı dolaşın 🌍 - -Microsoft'taki Bulut Savunucuları olarak, tamamen **Makine Öğrenimi** üzerine 12 haftalık, 26 derslik bir müfredat sunmaktan mutluluk duyuyoruz. Bu müfredatta, genellikle **klasik makine öğrenimi** olarak adlandırılan konuları öğreneceksiniz, ağırlıklı olarak Scikit-learn kütüphanesini kullanarak ve derin öğrenmeyi atlayarak, ki bu konu [Başlangıç Seviyesi İçin AI Müfredatımızda](https://aka.ms/ai4beginners) ele alınmaktadır. Bu dersleri, ['Başlangıç Seviyesi İçin Veri Bilimi' müfredatımızla](https://aka.ms/ds4beginners) birleştirin! - -Klasik teknikleri dünyanın farklı bölgelerinden veriler üzerinde uygularken bizimle birlikte dünyayı dolaşın. Her ders, ders öncesi ve sonrası sınavları, dersi tamamlama talimatlarını, bir çözümü, bir ödevi ve daha fazlasını içerir. Proje tabanlı pedagojimiz, yeni becerilerin 'kalıcı' olmasını sağlayan, öğrenirken inşa etmenizi sağlayan kanıtlanmış bir yoldur. - -**✍️ Yazarlarımıza içten teşekkürler** Jen Looper, Stephen Howell, Francesca Lazzeri, Tomomi Imura, Cassie Breviu, Dmitry Soshnikov, Chris Noring, Anirban Mukherjee, Ornella Altunyan, Ruth Yakubu ve Amy Boyd - -**🎨 İllüstratörlerimize teşekkürler** Tomomi Imura, Dasani Madipalli ve Jen Looper - -**🙏 Microsoft Öğrenci Elçileri yazarlarımıza, gözden geçirenlerimize ve içerik katkıda bulunanlarımıza özel teşekkürler**, özellikle Rishit Dagli, Muhammad Sakib Khan Inan, Rohan Raj, Alexandru Petrescu, Abhishek Jaiswal, Nawrin Tabassum, Ioan Samuila ve Snigdha Agarwal - -**🤩 R derslerimiz için Microsoft Öğrenci Elçileri Eric Wanjau, Jasleen Sondhi ve Vidushi Gupta'ya ekstra teşekkürler!** - -# Başlarken - -Aşağıdaki adımları izleyin: -1. **Depoyu Çatallayın**: Bu sayfanın sağ üst köşesindeki "Fork" düğmesine tıklayın. -2. **Depoyu Klonlayın**: `git clone https://github.com/microsoft/ML-For-Beginners.git` - -> [Bu kurs için ek kaynakların tümünü Microsoft Learn koleksiyonumuzda bulun](https://learn.microsoft.com/en-us/collections/qrqzamz1nn2wx3?WT.mc_id=academic-77952-bethanycheum) - -**[Öğrenciler](https://aka.ms/student-page)**, bu müfredatı kullanmak için, tüm repo'yu kendi GitHub hesabınıza çatallayın ve alıştırmaları kendi başınıza veya bir grup ile tamamlayın: - -- Ders öncesi sınavla başlayın. -- Dersi okuyun ve her bilgi kontrolünde durup düşünerek etkinlikleri tamamlayın. -- Çözüm kodunu çalıştırmak yerine dersleri anlayarak projeleri oluşturmaya çalışın; ancak bu kod her proje odaklı derste `/solution` klasörlerinde mevcuttur. -- Ders sonrası sınavı yapın. -- Meydan okumayı tamamlayın. -- Ödevi tamamlayın. -- Bir ders grubunu tamamladıktan sonra, [Tartışma Panosu](https://github.com/microsoft/ML-For-Beginners/discussions) ziyaret edin ve uygun PAT rubriğini doldurarak "yüksek sesle öğrenin". Bir 'PAT', öğrenmenizi daha da ilerletmek için doldurduğunuz bir rubriktir. Ayrıca diğer PAT'lere de tepki verebilirsiniz, böylece birlikte öğrenebiliriz. - -> Daha fazla çalışma için, bu [Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/k7o7tg1gp306q4?WT.mc_id=academic-77952-leestott) modüllerini ve öğrenme yollarını takip etmenizi öneririz. - -**Öğretmenler**, bu müfredatı nasıl kullanacağınıza dair [bazı öneriler ekledik](for-teachers.md). - ---- - -## Video Yürüyüşleri - -Bazı dersler kısa video formatında mevcuttur. Tüm bu videoları derslerin içinde veya [Microsoft Developer YouTube kanalındaki Başlangıç Seviyesi İçin ML oynatma listesinde](https://aka.ms/ml-beginners-videos) bulabilirsiniz, aşağıdaki resme tıklayarak. - -[![Başlangıç seviyesi için ML banner](../../translated_images/ml-for-beginners-video-banner.279f2a268d2130758668f4044f8c252d42f7c0a141c2cb56294c1ccc157cdd1c.tr.png)](https://aka.ms/ml-beginners-videos) - ---- - -## Ekibi Tanıyın - -[![Tanıtım videosu](../../ml.gif)](https://youtu.be/Tj1XWrDSYJU "Tanıtım videosu") - -**Gif by** [Mohit Jaisal](https://linkedin.com/in/mohitjaisal) - -> 🎥 Proje ve projeyi oluşturan kişiler hakkında bir video için yukarıdaki resme tıklayın! - ---- - -## Pedagoji - -Bu müfredatı oluştururken iki pedagojik ilkeyi seçtik: elverişli ve **proje tabanlı** olmasını ve **sık sınavlar** içermesini sağlamak. Ayrıca, bu müfredatın uyumlu bir **temaya** sahip olmasını sağladık. - -İçeriğin projelerle uyumlu olmasını sağlayarak, süreç öğrenciler için daha ilgi çekici hale gelir ve kavramların kalıcılığı artırılır. Ayrıca, bir ders öncesinde düşük riskli bir sınav, öğrencinin bir konuyu öğrenmeye yönelik niyetini belirlerken, ders sonrası ikinci bir sınav daha fazla kalıcılığı sağlar. Bu müfredat esnek ve eğlenceli olacak şekilde tasarlanmıştır ve tamamı veya kısmen alınabilir. Projeler küçük başlar ve 12 haftalık döngünün sonunda giderek daha karmaşık hale gelir. Bu müfredat ayrıca, ekstra kredi veya tartışma temeli olarak kullanılabilecek ML'nin gerçek dünya uygulamaları üzerine bir ek içerir. - -> [Davranış Kuralları](CODE_OF_CONDUCT.md), [Katkıda Bulunma](CONTRIBUTING.md) ve [Çeviri](TRANSLATIONS.md) yönergelerimizi bulun. Yapıcı geri bildiriminizi bekliyoruz! - -## Her Ders İçerir - -- isteğe bağlı sketchnote -- isteğe bağlı ek video -- video yürüyüşü (bazı derslerde) -- ders öncesi ısınma sınavı -- yazılı ders -- proje tabanlı dersler için, projeyi nasıl oluşturacağınızla ilgili adım adım kılavuzlar -- bilgi kontrolleri -- bir meydan okuma -- ek okuma -- ödev -- ders sonrası sınav - -> **Diller hakkında bir not**: Bu dersler öncelikle Python ile yazılmıştır, ancak birçoğu R dilinde de mevcuttur. Bir R dersini tamamlamak için `/solution` klasörüne gidin ve R derslerini arayın. Bu dersler, bir **R Markdown** dosyasını temsil eden .rmd uzantısına sahiptir ve bu dosya, `code chunks` (R veya diğer dillerin) ve `YAML header` (PDF gibi çıktıları nasıl biçimlendireceğinizi yönlendiren) bir `Markdown document` içinde yerleştirilmiş bir şekilde basitçe tanımlanabilir. Bu nedenle, veri bilimi için örnek bir yazım çerçevesi olarak hizmet eder, çünkü kodunuzu, çıktısını ve düşüncelerinizi birleştirmenize olanak tanır ve bunları Markdown ile yazmanıza olanak tanır. Ayrıca, R Markdown belgeleri PDF, HTML veya Word gibi çıktı formatlarına dönüştürülebilir. - -> **Sınavlar hakkında bir not**: Tüm sınavlar [Quiz App klasöründe](../../quiz-app) yer alır, her biri üç sorudan oluşan toplam 52 sınav. Derslerden bağlantılıdır, ancak quiz uygulaması yerel olarak çalıştırılabilir; yerel olarak barındırmak veya Azure'a dağıtmak için `quiz-app` klasöründeki talimatları izleyin. - -| Ders Numarası | Konu | Ders Grubu | Öğrenme Hedefleri | Bağlantılı Ders | Yazar | -| :-----------: | :------------------------------------------------------------: | :-------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------: | :--------------------------------------------------: | -| 01 | Makine öğrenimine giriş | [Giriş](1-Introduction/README.md) | Makine öğrenimi ile ilgili temel kavramları öğrenin | [Ders](1-Introduction/1-intro-to-ML/README.md) | Muhammad | -| 02 | Makine öğreniminin tarihi | [Giriş](1-Introduction/README.md) | Bu alanın altındaki tarihi öğrenin | [Ders](1-Introduction/2-history-of-ML/README.md) | Jen ve Amy | -| 03 | Adalet ve makine öğrenimi | [Giriş](1-Introduction/README.md) | Öğrencilerin ML modellerini oluştururken ve uygularken dikkate alması gereken önemli felsefi konular nelerdir? | [Ders](1-Introduction/3-fairness/README.md) | Tomomi | -| 04 | Makine öğrenimi teknikleri | [Introduction](1-Introduction/README.md) | ML araştırmacıları ML modelleri oluşturmak için hangi teknikleri kullanıyor? | [Lesson](1-Introduction/4-techniques-of-ML/README.md) | Chris ve Jen | -| 05 | Regresyona giriş | [Regression](2-Regression/README.md) | Regresyon modelleri için Python ve Scikit-learn ile başlayın | | | -| 06 | Kuzey Amerika kabak fiyatları 🎃 | [Regression](2-Regression/README.md) | ML için hazırlık olarak verileri görselleştirin ve temizleyin | | | -| 07 | Kuzey Amerika kabak fiyatları 🎃 | [Regression](2-Regression/README.md) | Doğrusal ve polinom regresyon modelleri oluşturun | | | -| 08 | Kuzey Amerika kabak fiyatları 🎃 | [Regression](2-Regression/README.md) | Lojistik regresyon modeli oluşturun | | | -| 09 | Bir Web Uygulaması 🔌 | [Web App](3-Web-App/README.md) | Eğittiğiniz modeli kullanmak için bir web uygulaması oluşturun | [Python](3-Web-App/1-Web-App/README.md) | Jen | -| 10 | Sınıflandırmaya giriş | [Classification](4-Classification/README.md) | Verilerinizi temizleyin, hazırlayın ve görselleştirin; sınıflandırmaya giriş |