Şimdi Ara

matlab yapay sinir agları yardımmm

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
21
Cevap
0
Favori
5.503
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 12
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • Selam arkadaşlar ödevim war yüz tanıma yapay sınır ağları ile . 30 tane değer çıkardım bunları yapay sinir ağlarında aktarıp bir görüntü geldığınde onu tanıması lazım. değerleri çıkardım ama yapay sinir ağlarında takıldım . nasıl bır sey yazacagımı anlamadım
    plzz help me



  • Matlabte nntool yazarsan neural network toolbox arayüzü gelir. Buraya giriş verilerini, eğitme verilerini (hangi öğrenme algoritması kullanıyorsan) girip istediğin/tasarladığın yapay sinir ağını kurup eğitebilirsin, eğitme sonucu çıkış ağırlıklarını görebilir, test verisi girerek ağını test edebilirsin. Sorduğun soru çok genel nerde takıldığını ayrıntılı biçimde yazarsan daha çok yardımcı olabiliriz.
  • elimde tek kişiden 11 ayrı foto var ve her foto dan da 10 tane sayısal değer var . toplam kısı sayısı 8 .bu değerleri yapay sınır ağına nasıl gireceğimi bulamıyorum. söylediğiniz nntool da yapmaya çalıştım gene olmadı. yardım ederseniz çok sevinecem.
  • Yapay Sinir Ağları dersi aldınız mı bilmiyorum.Genel olarak Yapay sinir ağılarında ağ eğitilirken genelde veritabanının belli bir kısmı test için ayrılır. Yani elinizde 8 örnek varsa genel olarak 4 örnek ağa eğitme verisi olarak girilir ağ 4 örneği öğrendikten sonra ağı test etmek için kullanılır. 10 ayrı özellik varsa ağın giriş sayısı sanırım 10 olacak. Buna uygun ağ yapını nntoolda tasarlamışsındır umarım. Senin probleminde toplam örnek sayısı 88, sınıf sayısı 8, giriş sayısı 10. Çıkış sayısını sen belirleyeceksin 8 farklı sınıf olduğundan çıkışın 3 nöron olabilir 4 olabilir , sana kalmış. Her sınıftan homojen bir biçimde eğitme ve test verisi ayırman gerek. standart MLP ağı kullanabilirsin. RBF de dene derim. MATLAB te bu girişleri mi tanımlayamadın? Çıkışları mı alamadın? Ağı mı yapamadın?



    < Bu mesaj bu kişi tarafından değiştirildi technologist -- 16 Aralık 2010; 22:41:05 >
  • Nasıl yani gireceğimi bulamadım derken? Sorununuz size nasıl bir ağ gerektiğini bilmemeniz olabilir. help nntool yazın veyahttp://www.mathworks.com/help/toolbox/nnet/nntool.html linkini takip edin, ihtiyacınız olan tüm bilgileri bulacaksınız.
  • Ben 10 tane foto war bır kısıden 5 tanesını eğitmek için düşündum rbf ağını düşündüm onun üstüne baya araştırdım ama anlayamadım nasıl kodlayacagımı (mlp ağınıda araştırıyım ). Ama yapamadım . anlamadığım nokta buldugum tüm değerleri aga nasıl girecegim bilemiyorum .yada tüm değerleri nasıl bir araya getirecem ? tabi eğitirken nasıl olacak . yapay sinir ağları dersi almadım
  • Dersi almamış olman senin için büyük dezavantaj matlabte nasıl giriş yapacağını filan bulursun yaparsın ama sonuçları yorumlaman ve ağı daha başarılı hale getirebilmen için müdahale edemeyebilirsin. Ben sana burdan elimden geldiğince yazayım.
    1. Önce verilerin elinde ise bunları bir excel dosyasında veya text dosyasında güzelce yazısız biçimde listele ve bu dosyayı matlabe okut. ( örrneğin 10 özellikle 88 tane verin var Matlabte bu 88x10 bir matris olarak tanımlansın. İstersen elle yaz ama uğraşma excelden okut )
    2. Matlabte command window ortamında "nntool" yaz >Enter ... Önüne bir hazır toolbox gelecek.
    3. Matlabte tanımladığın verileri toolbox a import et.
    4. bu toolbox karıştırırsan göreceksin bir sürü ağ seçeneği var. Burdan new network tanımlayacaksın. önüne seçenekler gelecek ağin girişi ne olsun hedef veriler neler öğrenme algoritması ne olsun ağ kaç katmandan oluşsun 1. katman kaç nöron gibi liste gibi önüne çıkacak burdan ağını tasarlayacaksın.
    5. Tasarladığın ağın içine girince orda sekmeleri karıştır. Ordada girişlerini belirle hedeflerini belirle kaç iterasyon yapılacak öğrenme oranı ne momentum (varsa) katsayısı kaç istenilen minimum hata hedef katsayısı bunları gireceksin ve train diyeceksin
    6. Matlab bu sırada girdiğin özellikteki ağı eğitecek ve sana grafikler öğrenmedeki hatayı gösteren grafiği karşına çıkaracaktır. Sonra buradan verileri export ederek ağırlıkları, çıkış verilerini alabilirsin.

    Yazıyla bu kadar anlatılıyor. Kolay gelsin.




  • çok saolasın teşekkur ederim denemeye başlıcam hemen . Ben yüz tanımada yuzu bulmak felan zor sanardım ama yapay sınır ağları daha zor geldı walla...
  • arkadaşlar yapay sinir ağlarından newrb yi kullandım ama sistemin performansı yüzde 30 larda çıkıyor değerleri ile oynadım ama 30 u geçmedi hiç :(:(:( acaba neden böyle oldu anlamadım. goal ve sp değerleri ile de oynadım ama olmadı . değerleri seçmek içinde pca uyguladım ama . kafam da çok karıştı arkadaşlar yardımıza ihtiyacım war..

    eg = 5; % sum-squared error goal
    sc = 1; % spread constant
    [net,tr] = newrb(finalTrainingData,trainingLabels,eg,sc);

    finalTestingData = rowFeatureVector*rowAdjustTestData;% = 7xN


    y = round(sim(net,finalTestingData));
    trueLabels = testingLabels;

    disp(['Classifier performance: ' num2str(round(sum(y==trueLabels)/length(y)*100)) '% correct detection...'])

    classificationPerformance = round(sum(y==trueLabels)/length(y)*100);
  • Sistemin performansı derken;
    - Eğitme kümesini öğrenme oranı mı?
    - Eğitme sonrası test işlemi doğruluk başarı oranı mı?
  • Eğitme sonrası test işlemi doğruluk başarı oranı :(:(:(
  • Olası sebepler:
    Eğitme verisine örnekler homojen dağıtılmamış olabilir.
    Ağ tam öğrenmemiş olabilir. Kaç iterasyon yapıyorsun? Öğrenme oranı ve momentum katsayın kaç (MLP için geçerli) ? Eğitimi hangi hata oranına kadar sürdürüyorsun?
    El tanıma için uygun öğrenme algoritması kullanmıyor olabilirsin. Bunuda bi araştır derim.
  • arkadaslar nerde hata yapıyorum bulamıyorum :(:(:( Matlab da çok iyi değilim de. yazdığım kodun newrb kısmı aşagıdaki gıbı.

    10 tanae tranıng için 5 resimde testing için hazırladım

    eg = 0.01; % sum-squared error goal
    sc = 1; % spread constant
    [net,tr] = newrb(finalTrainingData,trainingLabels,eg,sc);

    sonra çalıştırınca aşağıdaki gibi komutlar çıkıyor . Tabi traning with newrb grafiğide çıkıyor performance=0.014041 Goal is 0.01 yazıyor işlem bitince .

    NEWRB, neurons = 0, MSE = 21.25
    NEWRB, neurons = 25, MSE = 5.62492
    NEWRB, neurons = 50, MSE = 3.84267
    NEWRB, neurons = 75, MSE = 3.27841
    NEWRB, neurons = 100, MSE = 2.82147
    NEWRB, neurons = 125, MSE = 2.36167
    NEWRB, neurons = 150, MSE = 1.72591
    NEWRB, neurons = 175, MSE = 1.4264
    NEWRB, neurons = 200, MSE = 1.04101
    NEWRB, neurons = 225, MSE = 0.872306
    NEWRB, neurons = 250, MSE = 0.523469
    NEWRB, neurons = 275, MSE = 0.333151
    NEWRB, neurons = 300, MSE = 0.207619
    NEWRB, neurons = 325, MSE = 0.0637487
    bu işlem 16 kere tekrarlanıyor.


    Sonra guı da yapınca yanlış eşleme yapıyor resimleri . newrb deki goal ve spread değerleri ile oynuyorum ama gene resimleri yanlış eşliyor. acaba bu performance değeri kaç gibi olmalı arkadaslar. neden olmuyor anlamıyrum yardım plzzz




  • Öğrenme oranını 0.2-0.8 arası seç, bir eğitim en az 200 iterasyondan oluşsun. Bana eğitim adımların az gibi geldi.
  • arkadaşlar yapay sinir ağında performans değeri her seferinde farklı çıkması( yada çıkış değeri her seferinde farklı çıkıyor) normal mi acaba ??? neyi unutuyorum acaba ???
  • Başlangıç ağırlıklarını rastgele veriyorsan ve az iterasyon yapıyorsan sonucun farklı çıkması normal.
  • technologist çewap verdiğin için tekrardan teşekkür ederim...Başlangıç ağırlıklarını nasıl ayarlıcam öğlenden beri araştırıyorum ama bir gelişme gösteremedim.
  • arkadaşlar yapay sinir ağında başlangıç ağırlıklarını nasıl ayarlıya bilirim ??? yada bias la weight ??? uğraşıyorum ama olmuyor . sistemi çalıştırdığımda farklı değerler veriyor :(:(:( plzzz help me


    net = newff(minmax(p),[8 1],{'logsig' 'purelin'},'trainlm' );

    % net.LW{2,1} = net.LW{2,1}*0.01; %weights initialization
    % net.b{2} = net.b{2}*0.01; %biases initialization
    % net.IW{1,1};
    % net.b{1};


    net.performFcn='mse';
    Net.trainParam.show=5 ;
    net.trainParam.lr=0.05;
    net.trainParam.epochs=1000;
    net.trainParam.goal=0.05;
    net.trainParam.mc=0.9;


    [net,tr]=train(net,trainingData,trainingLabels);

    y = sim(net,testingData);
  • selam herkeze... yapay sinir ağında yardımınıza ihtiyacım war arkadaşlar. Bias ve weight nasıl olacak ... help me plzzz

    net = newff(minmax(p),[8 1], { 'tansig', 'purelin'}, 'trainlm');


    net.trainParam.epochs =1000;
    net.trainParam.goal=0.2;
    net.trainParam.show = 150;
    net.trainParam.lr=0.01;


    net.LW{1}
    net.IW{2}
    net.b{2}
    net.b{1}
    .......
    geri kalanlarıda yazıyorum ama sistemi her çalıstırdığımda farklı performance değerleri veriyor ve net.LW net.IW net.b değerleride farklı oluyor . bunları nasıl duzeltte bılırım arkadaşlar...
  • Merhaba arkadaslar ben yapay sinir ağlarını eğitirken newton metodunu kullanmak istiyorum bunu nasıl yapabilirim ?
  • 
Sayfa: 12
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.