CEYD ile Derin Öğrenme Algoritmalarına Giriş
CEYD ile Derin Öğrenme Algoritmalarına Giriş
Derin Öğrenme çok geniş bir kavram. CEYD dili ile çok basit bir giriş yapalım. Derin öğrenme için güçlü donanımlar gerektiğinden şu an için mobil cihazlar üzerinde sadece basit ve algoritmaların anlaşılması için denemelerimizi gerçekleştirmemiz mümkün. Gerçekte derin öğrenme için çok fazla sayıda hatta devasa veri örneği gerekmekte ancak bu örnekte örneği az tutup mantığı uygulamaya çalışacağız. Belki de çoğu kişiye standartların dışında ilginç bir yaklaşım olacağı kesin.
Şimdi CEYD dilinde destelenen bazı komutlara bakalım:
cmdlearnbpl $leftinputs,$rightinputs,$outputs
ile CEYD-A’ya verilen örnek giriş kümeleri içeren dizileri ve sonuçlarının hangi dizide tutulduğunu belirtiyoruz. Bu komutu kullanarak geri yayılımlı öğrenme algoritması (BPL – Back Propagation Learning) ile bu örneklerin sonuçlarını öğreniyor. Öğrenme işlemi örneklerin sayısına göre zaman alabiliyor.
cmdforwardbpl $leftinputs,$rightinputs,$outputs
ile CEYD-A’ya daha önce öğrenmiş olduğu örneklerden yola çıkarak farklı bir örnek sorabiliyoruz. Giriş değerlerine soracağımız örneği giriyoruz. CEYD-A öğrenmiş olduklarını formüle ederek sonucu çıkış dizisinde tutuyor.
Şimdi kolay bir örnekle bu fonksiyonları gösterelim. İlk komut olan derin öğrenme deneme ile CEYD-A’ya 2 üssü 1, 2 üssü 2, 2 üssü 4, 2 üssü 5 ve 2 üssü 6 nın kaç olduğunu gösteriyoruz. Dikkat ederseniz 2 üssü 3 ün kaç olduğunu söylemiyoruz. Önceden de 2 üssü ifadelerini CEYD-A bilmemekte.
İkinci komut olan derin öğrenme cevap ile 2 üssü 3 ün değerinin kaç olduğunu soruyoruz. Öğrendiklerini formüle ederek bize 2 üssü 3 ün 8 olduğunu söylüyor.
1 2 3 |
<strong class="markup--strong markup--pre-strong">SORU</strong>:derin öğrenme deneme |
1 2 3 |
<strong class="markup--strong markup--pre-strong">CEVAP</strong>:<br><strong class="markup--strong markup--pre-strong">{!SET</strong> $leftinputstr=<strong class="markup--strong markup--pre-strong">2</strong>;<strong class="markup--strong markup--pre-strong">2</strong>;<strong class="markup--strong markup--pre-strong">2</strong>;<strong class="markup--strong markup--pre-strong">2</strong>;<strong class="markup--strong markup--pre-strong">2!}<br>{!RET</strong> cmdsplit ;,leftinputs,$leftinputstr<strong class="markup--strong markup--pre-strong">!}<br>{!SET</strong> $rightinputstr=<strong class="markup--strong markup--pre-strong">1</strong>;<strong class="markup--strong markup--pre-strong">2</strong>;4;5;6<strong class="markup--strong markup--pre-strong">!}<br>{!RET</strong> cmdsplit ;,rightinputs,$rightinputstr<strong class="markup--strong markup--pre-strong">!}<br>{!SET</strong> $outputstr=<strong class="markup--strong markup--pre-strong">2</strong>;4;16;32;64<strong class="markup--strong markup--pre-strong">!}<br>{!RET</strong> cmdsplit ;,outputs,$outputstr<strong class="markup--strong markup--pre-strong">!}<br>{!RET</strong> cmdlearnbpl $leftinputs,$rightinputs,$outputs<strong class="markup--strong markup--pre-strong">!}<br></strong>Öğrenme verileri şunlar:<strong class="markup--strong markup--pre-strong"><br>{!GET</strong> $outputs[0]<strong class="markup--strong markup--pre-strong">!}<br>{!GET</strong> $outputs[<strong class="markup--strong markup--pre-strong">1</strong>]<strong class="markup--strong markup--pre-strong">!}<br>{!GET</strong> $outputs[<strong class="markup--strong markup--pre-strong">2</strong>]<strong class="markup--strong markup--pre-strong">!}<br>{!GET</strong> $outputs[3]<strong class="markup--strong markup--pre-strong">!}<br>{!GET</strong> $outputs[4]<strong class="markup--strong markup--pre-strong">!}</strong> |
1 2 3 |
<strong class="markup--strong markup--pre-strong">SORU</strong>:derin öğrenme <strong class="markup--strong markup--pre-strong">cevap</strong> |
1 2 3 |
<strong class="markup--strong markup--pre-strong">CEVAP</strong>:<br><strong class="markup--strong markup--pre-strong">{!SET</strong> $leftinputstr=<strong class="markup--strong markup--pre-strong">2!}<br>{!RET</strong> cmdsplit ;,leftinputs,$leftinputstr<strong class="markup--strong markup--pre-strong">!}<br>{!SET</strong> $rightinputstr=3<strong class="markup--strong markup--pre-strong">!}<br>{!RET</strong> cmdsplit ;,rightinputs,$rightinputstr<strong class="markup--strong markup--pre-strong">!}<br>{!RET</strong> cmdforwardbpl $leftinputs,$rightinputs,$outputs<strong class="markup--strong markup--pre-strong">!}<br></strong>Üzeri nedir bilmiyorum ama bana verilen benzer örneklere göre <strong class="markup--strong markup--pre-strong">2</strong> üzeri 3 değeri = <strong class="markup--strong markup--pre-strong">{!GET</strong> $outputs[0]<strong class="markup--strong markup--pre-strong">!}</strong> |