Keras ile Uygulamalı Derin Öğrenme-1

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ก.ย. 2024

ความคิดเห็น • 72

  • @ahmetmelik06
    @ahmetmelik06 6 ปีที่แล้ว +1

    Hocam şu videoyu baştan sona izledim. İnan o kadar faydalı bir video ki. Teori derslerin yanında böyle sık sık uygulama videosu çeksen pek faydalı oluyor. Teori de uyulama da çok önemli. Her ikisini de es geçmemek lazım. Allah senden razı olsun :)

  • @metalhayalc
    @metalhayalc 6 ปีที่แล้ว +2

    Elinize, ağzınıza sağlık. Videoların devamını bekliyorum. Kolay gelsin

  • @muhammetemirbulut6511
    @muhammetemirbulut6511 2 ปีที่แล้ว

    Elinize kolunuza sağlık

  • @ahmetberkkosal5321
    @ahmetberkkosal5321 6 ปีที่แล้ว +2

    Hocam sizi çok takdir ediyorum. Videoların devamını bekliyoruz elinize sağlık..

    •  6 ปีที่แล้ว

      Ahmet Berk Koşal Allah razi olsun efendim, sizleri de bekleriz bu tarz islere

    • @ahmetberkkosal5321
      @ahmetberkkosal5321 6 ปีที่แล้ว

      Yakında aranıza katılacağım..

  • @cagrsahin9358
    @cagrsahin9358 6 ปีที่แล้ว

    Yolun açık olsun güzel kardeşim teşekkür ederiz.

  • @veliyetisgengil8332
    @veliyetisgengil8332 6 ปีที่แล้ว

    Kolay gelsin mukemmel bir video olmus en kisa zamanda 2. Videoyu bekliyorum cok ihtiyacimiz var :)

  • @halitramazankubilay4985
    @halitramazankubilay4985 2 ปีที่แล้ว

    Çok güzel, birde ses daha iyi olsaydı 10 numara olurdu. :)

  • @bahadryildiz8989
    @bahadryildiz8989 4 ปีที่แล้ว

    Merhabalar. ValueError: Error when checking input: expected sequential_1_input to have 2 dimensions, but got array with shape (32, 256, 256, 3) böyle bir hata alıyorum nedeni ne olabilir. Araştırdım ama bir türlü bulamadım.

  • @Sa-pj2qy
    @Sa-pj2qy ปีที่แล้ว

    Haftada 1 kez bakabiliyorum kafayı yicem her şeyi unuttum ve hala aynı videodayım

  • @ahmetmelik06
    @ahmetmelik06 6 ปีที่แล้ว

    Üstadım eline sağlık. Fully connected layer ile de alaka bir iki örnek videosu çeksen pek makbule geçer. Elimde 60 satırlı bir veri seti var, train ettiğimde acc değeri 0.03 larda kalıyor nerde hata yapıyorum, veriler gerçek. Bu durumu nasıl aşabilirim.

  • @alirzakurt8089
    @alirzakurt8089 4 ปีที่แล้ว

    cv2.error: OpenCV(4.1.2) C:\projects\opencv-python\opencv\modules\imgproc\src
    esize.cpp:3720: error: (-215:Assertion failed) !ssize.empty() in function 'cv::resize'
    bu hata neden olur?

    •  4 ปีที่แล้ว

      Ya bu opencv'nin garip gureba hataları. OpenCV normalde C++'da kodlanıyor. Python versiyonu C++ fonksiyonlarını çalıştırıyor. Büyük ihtimal boş resim çekiyorsunuz. resize'dan önce cv2.imshow() yapar mısınız?
      Resim adresi vb. yanlıştır, resmi sisteme hiç alamıyor. Bu yüzden resim size'Ina empty diyor.

  • @gulaykarahanl7200
    @gulaykarahanl7200 6 ปีที่แล้ว

    Hata alıyorum ve bir türlü düzeltemiyorum. Yardımcı olurmusunuz?
    Aldığım hata şöyle:
    File "C:/Users/PC/DerinOgrenme/egitim.py", line 25, in
    splitverisi=splitverisi.reshape(-1,224,224,3)
    ValueError: cannot reshape array of size 6 into shape (224,224,3)
    Kodlarım şöyle:
    girisverisi=np.load("girisverimiz.npy")
    giriverisi=np.reshape(girisverisi,(-1,224,224,3))
    cikisverisi=np.array([[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[1,0],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1],[0,1]])
    splitverisi=girisverisi[1:4]
    splitverisi=np.append(splitverisi,girisverisi[24:27])
    splitverisi=splitverisi.reshape(-1,224,224,3)
    splitcikis=np.array([[1,0],[1,0],[1,0],[0,1],[0,1],[0,1]])
    #print(cikisverisi.shape)
    model=Sequential()
    model.add(Conv2D(50,11,strides=(4,4),input_shape=(224,224,3) ))
    model.add(MaxPooling2D((5,5)))
    model.add(Conv2D(50,5))
    model.add(Conv2D(50,3))
    model.add(Conv2D(50,3))
    model.add(Conv2D(50,2))
    model.add(Flatten())
    model.add(Dense(4096,activation='relu'))
    model.add(Dropout(0,3))
    model.add(Dense(4096,activation='relu'))
    model.add(Dense(2))
    model.add(Activation('softmax'))
    model.compile(loss='categorical_crossentropy',optimizer=optimizers.RMSprop(lr=0.00001),metrics=['accuracy'])
    model.summary()
    print(splitverisi.shape)
    model.fit(girisverisi,cikisverisi,batch_size=2,epochs=2,validation_data=(splitverisi,splitcikis))

  • @elifkubra7520
    @elifkubra7520 5 ปีที่แล้ว

    hocam ben harfleri sınıflandırmaya çalışıyorum 32 harf var ve büyük küçük olunca 64 ediyor bir font için sizin gibi yapacağım zaman [1,0][1.0][0,1][0,1]... diye devam etmesi gerekiyor 32 lik bir dizin oluşturup mu 0,1 atamalıyım bu çok saçma olmaz mı yardımlarınızı bekliyorum.

  • @esmayldz2930
    @esmayldz2930 6 ปีที่แล้ว

    preferences project interpreter dan tensorflow u indirmiyor hata veriyor Tensorflowu nasıl ekleyebiriz

    •  6 ปีที่แล้ว

      Sadece keras indirirseniz hepsi iner : th-cam.com/video/WWLcq8Yeypk/w-d-xo.html

    • @esmayldz2930
      @esmayldz2930 6 ปีที่แล้ว

      kerası indirdim ama No module named tensorflow şeklinde hata çıkıyor. Başka bi sebebten dolayı mı ki?

    •  6 ปีที่แล้ว +1

      Kodunuzun en en başına :
      import os
      os.environ["KERAS_BACKEND"] = "theano"
      import keras; import keras.backend
      if keras.backend.backend() != 'theano':
      raise BaseException("This script uses other backend")
      else:
      keras.backend.set_image_dim_ordering('th')
      print("Backend ok")
      Bunu deneyin, arkada tensorflow yerine Theano ile çalışır, fakat gene aynı şeyi kodlarsınız.

  • @turanalp6377
    @turanalp6377 6 ปีที่แล้ว

    Hocam 15 silgi 15 kalem resmini elle etiketlemişsiniz peki bu 1000 silgi 1000 kalem olsaydı nasıl yapardınız.

    • @turanalp6377
      @turanalp6377 6 ปีที่แล้ว

      def cikisverisi(resim_adi):
      obje_turu = resim_adi.split('.')[-3]
      if obje_turu == 'cat':
      return np.array([1, 0])
      elif obje_turu == 'dog':
      return np.array([0, 1])

    •  6 ปีที่แล้ว

      Bu mantıkta olan Keras fonksyionu var. silgi adlı klasör acıp tüm silgi resimlerini numpy kullanmadan bir klasöre, tüm kalem resimlerini kalem adlı klasörün içine numpy kullanmadan atıp, keras ın flow from directory metoduyla alırım.
      www.kaggle.com/ievgenvp/keras-flow-from-directory-on-python
      veyahut, gene iki ayrı klasörde resmin boyutları küçük oldugu zaman direkt opencv'nin bir metodunu kullanarak klasördeki tüm resimleri aynı boyuta çekip numpy da saklar, onu daha sonra eğitime alırım.

    • @turanalp6377
      @turanalp6377 6 ปีที่แล้ว

      Makine Öğrenmesi sayın hocam etiketliyeceğim isimler cat ve dog şeklindeyse yukarida benim yazdığım fonksiyon iş görürmü

    •  6 ปีที่แล้ว

      yaraması lazım hocam

    •  6 ปีที่แล้ว

      ama bir klasorde her resmin adı kedi.jpg olamaz ki,

  • @mrcyber8196
    @mrcyber8196 4 ปีที่แล้ว

    abi sadece senin sayende başka kabal değil sadece senin sayende 10 yaşında yapay sinir ağı yaptım

  • @ahmetmelik06
    @ahmetmelik06 6 ปีที่แล้ว

    Lütfen daha fazla video, c # gibi dillerde anlatım yapsanız çok iyi olur. Kaynak bi siz vardınız

    •  6 ปีที่แล้ว +1

      C sharp malesef bilmiyorum

    • @ahmetmelik06
      @ahmetmelik06 6 ปีที่แล้ว

      Hocan elinize yüreğinize sağlık, derin öğrenme üzerinde çalışmalar yapıyorum, Matlab ın hazır toollarını kullanmaya başladım. Videolarınızdan oldukça fazla istifade ediyorum. İlerleyen zamanda sizinle tanışmak isterim. Hukuk öğrencisiyim. Hukuki konuna merak ettiğiniz birşey filan olursa lütfen çekinmeyin. Sorularınıza yanıt olmaktan mutluluk duyarım :)

    •  6 ปีที่แล้ว +1

      Ömer Şentürk Hukukta olup da bu isle ilgilenmeniz baya sasirtti,masaAllah. mumkun oldukca her sorunuzu yanitlarim ederim. Yapay zekanin her alanda kullanilmasi lazm. bu teknolpjik alanlardwn sosyal alanlara yayilacak. tebrik ediyorum basarilarinizin devamini diliyorum

  • @rainyday7919
    @rainyday7919 6 ปีที่แล้ว +1

    "Ne kadar amele iş varsa çözmeye çalışıcağız " 5.54 :D

    •  6 ปีที่แล้ว +1

      Şirin gösterecek halim yoktu :D

    • @rainyday7919
      @rainyday7919 6 ปีที่แล้ว +1

      Teşekkürler, çok eğlenerek ve öğrenerek izliyoruz...

  • @Sa-pj2qy
    @Sa-pj2qy 2 ปีที่แล้ว

    GOAT

    •  2 ปีที่แล้ว

      Hocam utandim ya

    • @Sa-pj2qy
      @Sa-pj2qy 2 ปีที่แล้ว

      @ ytyi bıraktın sandım video gelcek mi

    • @Sa-pj2qy
      @Sa-pj2qy 2 ปีที่แล้ว

      Yeni video *

    •  2 ปีที่แล้ว +1

      ​@@Sa-pj2qy​ calısıyoruz hocam, belki ilerde rahata erersem biraz

  • @myamoto-musasi
    @myamoto-musasi 6 ปีที่แล้ว

    Hocam size ulaşabileceğim bi yer var mı ? mail vs.

    •  6 ปีที่แล้ว +1

      Proton makineogrenmesibrk@gmail.com buradan konusalim hocam

  • @kaan7866
    @kaan7866 6 ปีที่แล้ว

    Hocam iyi çalışmalar , şöyle bir hata aldım internette gördüğüm şeyleri denedim ama bir çözüm bulamadım , bakabilir misiniz ?
    boyutlandirilmisresim = cv2.resize(klasordenalinmisresim,(224,224))
    cv2.error: OpenCV(3.4.3) /Users/travis/build/skvark/opencv-python/opencv/modules/imgproc/src/resize.cpp:4044: error: (-215:Assertion failed) !ssize.empty() in function 'resize'

    •  6 ปีที่แล้ว

      Klasör ismini doğru yazmadınız büyük ihtimal. Kontrol eder misiniz, Bu hatanın oldugu satıra kadarki kodu atar mısınız? imread fonksiyonunda hata verdi mi?

    • @kaan7866
      @kaan7866 6 ปีที่แล้ว

      import cv2
      import numpy as np
      def resmiklasordenal(dosyaadi):
      resim = cv2.imread("%s"%dosyaadi)
      return resim
      girisverisi = np.array([])
      for i in range (40):
      klasordenalinmisresim=0
      i=i+1
      string = 'veriseti/%s.jpg'%i
      klasordenalinmisresim = resmiklasordenal(string)
      boyutlandirilmisresim = cv2.resize(klasordenalinmisresim, (224,224))
      Kodlar bu şekilde hocam

    • @kaan7866
      @kaan7866 6 ปีที่แล้ว

      Klasör adı veriseti resimler jpg formatında içinde

    •  6 ปีที่แล้ว

      Resmi çekemiyor olması lazım. hala bakıyroum.

    •  6 ปีที่แล้ว

      Galiba içinde hatalı resimler var. Hatadan kastım formatı bozulmus resimler. Bundan tabi emin olamıyoruz. O yüzden önce şunu yapın.
      dosyanın içindeki bir resmin adını alın. veriseti/1.jpg olsun. Ardından yeni bir .py dosyasnda şunu deneyin.
      import cv2
      import numpy as np
      def resmiklasordenal(dosyaadi):
      resim = cv2.imread("%s"%dosyaadi)
      return resim
      resim = resmiklasordenal("veriseti/1.jpg")
      cv2.imshow('image',resim)
      cv2.waitKey(0)
      cv2.destroyAllWindows()
      Ayrıca, .py dosyanızın olduğu klasörde veriseti klasör var değil mi?
      -Proje dosyanız
      --.py dosyanız
      -- veriseti
      --1.jpg
      --2.jpg

  • @sevgigundogdu3431
    @sevgigundogdu3431 6 ปีที่แล้ว

    Hocam elimde 1000 veri var var ve bunları 5 sınıfa ayırmak istiyorum veri etiketleme de daha kolay bir yöntem var mı ?

    •  6 ปีที่แล้ว

      Verilerinizi ve sınıflarınozı acıklar msnz

    • @sevgigundogdu3431
      @sevgigundogdu3431 6 ปีที่แล้ว

      1000 adet resimde ilk 200 tanesi 0' I temsil eden el resmi, 200 tanesi 1'i temsil eden el resmi aynı şekilde diğerleri de 2 3 ve 4'ü temsil etmektedir.
      cıkışverisi=np.array([1,0],[1,0]............)
      siz bu şekilde verileri etiketlediniz ancak ben
      0,1,2,3,4 şeklinde etiketlenmesini istiyorum ?

    •  6 ปีที่แล้ว

      Şöyle yapacaksınız. Toplam beş sınıf. 1. sınıf -> [1,0,0,0,0] 2. sınıf [0,1,0,0,0] diye devam edecek. bunun için:
      cikis = np.array([])
      birler = np.array([ [1,0,0,0,0]])
      ikiler = np.array([ [0,1,0,0,0]])
      böyle yazın. Sonra numpy ın tile fonksiyonunu kullanın. Ayni elemnadan 200 tane üretecek.
      cikis = np.append(cikis,np.tile(birler,200))
      cikis = np.append(cikis,np.tile(ikiler,200))
      cikis = np.append(cikis,np.tile(ucler,200))
      cikis = np.append(cikis,np.tile(dortler,200))
      cikis = np.append(cikis,np.tile(besler,200))
      print(cikis.shape)

    • @sevgigundogdu3431
      @sevgigundogdu3431 6 ปีที่แล้ว

      bu kod 1000 adet verimden sürekli ilk 200 taneyi almaz değil mi?

    •  6 ปีที่แล้ว

      yaptığınız şey 200 tane 1 i cikis verisetinize ekliyor. Ardından 200 tane 2 yi, ardından 200 tane 3 ü ... Siz ise hepsinin yani 1000 tane nin bulunduğu cikis verisetini modele verecekisiniz.

  • @salihakevserkavuncu8979
    @salihakevserkavuncu8979 6 ปีที่แล้ว

    Merhaba videolar benim için bayağı faydalı oldu, teşekkür ederim,
    Bi de, bi hata alıyorum yardımcı olabilir misiniz?:
    kod satırım bu ==> from keras.layers import MaxPooling2D
    ...
    model = model.add(MaxPooling2D((5,5)))
    hata ==========>model = model.add(MaxPooling2D((5,5)))
    AttributeError: 'NoneType' object has no attribute 'add'

    •  6 ปีที่แล้ว

      Saliha Kevser KAVUNCU videonun devamini izlersenjz orada hata yaptigimi soylemjstim devaminda gorursunjz dogrusunu. kusura bakmayin. model = yerine direkt olarak model.add olmali

  • @veliyetisgengil8332
    @veliyetisgengil8332 6 ปีที่แล้ว

    Tahmin yapmak için bu kodu yazdım.Ama hata alıyorum.
    image2D = np.array(cv2.resize(cv2.imread('cat.1.jpg', 0), (224, 224)))
    imageData = image2D.reshape(224, 224, 3)
    prediction = model.predict([imageData])[0]
    print(prediction)
    Hata mesajı:
    ValueError: cannot reshape array of size 50176 into shape (224,224,3)

    • @serkankrks9071
      @serkankrks9071 6 ปีที่แล้ว +1

      Kolay gelsin .. Hatayı bulamadıysan hala .
      image2D = np.array(cv2.resize(cv2.imread('cat.1.jpg', 0), (224, 224)))
      kodunu şununla değiştir
      image2D = np.array(cv2.resize(cv2.imread('cat.1.jpg',), (224, 224)))
      Program çalışıcaktır

  • @Sa-pj2qy
    @Sa-pj2qy ปีที่แล้ว

    Böyle bi hata aldım
    2022-10-05 12:24:20.813959: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found
    2022-10-05 12:24:20.814157: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
    Traceback (most recent call last):
    File "C:\Users\GAMEPOVER\Desktop\cnndenemesi\egitim.py", line 6, in
    from keras.layers.normalization import BatchNormalization
    ImportError: cannot import name 'BatchNormalization' from 'keras.layers.normalization' (C:\Users\GAMEPOVER\Desktop\cnndenemesi\lib\site-packages\keras\layers
    ormalization\__init__.py)
    anlamadım napıcam
    edit: tamamdır yaptım hatayı ctrlc ctrl v yaptım google videdaki gibi bu çıktı
    stackoverflow.com/questions/69471749/importerror-cannot-import-name-batchnormalization-from-keras-layers-normaliz
    muhammet talha diyo bide helal olsun

  • @serkankrks9071
    @serkankrks9071 6 ปีที่แล้ว

    [EDIT :]
    hatanın sebebini buldum ... splitverisinide Reshape yapmak gerekiyor Videoda bunu yapıyor ama Ben o arayı atlayarak Geçtiğimden farkedemişim..
    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Bende yapamadım bir turlu. Kodlar Senin kodlarının aynısı.. Ama hata veririyor.
    ValueError: Error when checking input: expected conv2d_1_input to have 4 dimensions, but got array with shape (752640, 1)
    Girisverisi Boyutları da doğru
    In [1]: veriseti.size
    Out[1]: 4515840
    in [2]: girisverisi.size
    Out[2]: 4515840
    In [3]: girisverisi.shape
    Out[3]: (30, 224, 224, 3)
    Size 'lar dogru gosteriyor. 30*224*224*3 = 4515840
    Fakat verdiği hatada 752640 gosteriyor buda 15*224*224*1
    Yani RGB 3 kanal almasına ragmen sanki 1 kanal varmıs gibi yapıyor
    Sorun ne acaba yardımcı olurmusun ?
    Layer (type) Output Shape Param #
    =================================================================
    conv2d_1 (Conv2D) (None, 54, 54, 96) 34944
    _________________________________________________________________
    max_pooling2d_1 (MaxPooling2 (None, 10, 10, 96) 0
    _________________________________________________________________
    conv2d_2 (Conv2D) (None, 6, 6, 256) 614656
    _________________________________________________________________
    conv2d_3 (Conv2D) (None, 4, 4, 384) 885120
    _________________________________________________________________
    conv2d_4 (Conv2D) (None, 2, 2, 384) 1327488
    _________________________________________________________________
    conv2d_5 (Conv2D) (None, 1, 1, 256) 393472
    _________________________________________________________________
    flatten_1 (Flatten) (None, 256) 0
    _________________________________________________________________
    dense_1 (Dense) (None, 4096) 1052672
    _________________________________________________________________
    dropout_1 (Dropout) (None, 4096) 0
    _________________________________________________________________
    dense_2 (Dense) (None, 4096) 16781312
    _________________________________________________________________
    dense_3 (Dense) (None, 2) 8194
    _________________________________________________________________
    activation_1 (Activation) (None, 2) 0
    =================================================================
    Total params: 21,097,858
    Trainable params: 21,097,858
    Non-trainable params: 0
    _________________________________________________________________
    ValueError: Error when checking input: expected conv2d_1_input to have 4 dimensions, but got array with shape (752640, 1)

    • @alpercelik8624
      @alpercelik8624 4 ปีที่แล้ว

      aynı hata var da nereyi düzelttiğini anlamadım?

    • @serkankrks9071
      @serkankrks9071 4 ปีที่แล้ว

      @@alpercelik8624 ya Çok zaman geçti üstünden .. Kodun tam olarak neresinde değişiklik yapmalısın söylemem zor.
      ama şimdi kısaca videoya bir göz gezdirdim ilgili kısmıda bir türlü bulamadım.. Aklımda kaldıgı ve anladığım kadarını söyliyeyim
      Giriş Verisi 30 resimden oluşuyor 224X224 Boyutlarında ve Renkli oldugundan 3 Byte
      Yani Burda 4 'lü bir matris var 30 * 224 * 224 * 3
      Fakat Benim Programda Split verisi Matristi tek bir matristi 752640 buda hataya neden oluyordu.
      Yani Split verisinide Reshape yapmak lazım
      Şimdi Kod olmadığı için SplitVerisi RGB mi Yoksa Sihay Beyazmı hatırlamıyorum ama Muhtemelen Siyah beyazdı .. Siyah beyaz ise bu demek oluyorki senin 15 resmin var Ozaman
      splitverisi = np.reshape(splitverisi,(-1,224,224,1)) Kodunu eklemek lazım
      Renkli ise Buda 5 Resim var demek .. Ozamanda
      splitverisi = np.reshape(splitverisi,(-1,224,224,3)) Kodunu Kullanmalısın..

  • @mersoz2007
    @mersoz2007 4 ปีที่แล้ว

    bi müslüman kardeşimiz çalışan kod yazsa şuraya