mekal / zemberek

Automatically exported from code.google.com/p/zemberek
0 stars 0 forks source link

Ayristirmada ufak problemler #12

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Dün geceki denemelerim sırasında farkettiklerim...

zemberek2'deki ZemberekDeneme'yi çalıştırınca 

ayristirma sonuclari:
[kedi, ler, im]
[kedi, le, r, im]

yerine (ki bu zemberek'in eski sayfasında beklenen sonuç olarak yeralıyor);

ayristirma sonuclari:
[kedi]

çıkıyor. Bunu .net tarafında deneme yaparken farkettim. Araştırırken
KelimeUretici sınıfında şöyle bir bölüme rastladım:

// eger incelenen ek onceki ekten sonra gelemezse cik.
if (i > 0) {
  Ek oncekiEk = ekler.get(i - 1);
  if (oncekiEk.ardindanGelebilirMi(ek)) {
     return ure;
  }
}

Sanki  if (!oncekiEk.ardindanGelebilirMi(ek))  olması gerekiyormuş gibi
geldi. .net kodunda düzeltmeyi yapınca da şöyle bir sonuç elde ettim:

ayristirma sonuclari:
[kedi-ler-im-]
[kedi-l-er-m-]

Yine beklenenden farklıydı.  Bu sefer'de sanki ekin üretiminde problem
vardı.  Ek sınıfındaki olusumIcinUret metodunda 

foreach (EkOzelDurumu ozelDurum in ozelDurumlar) {
    HarfDizisi ozelDurumSonucu = ozelDurum.olusumIcinUret(kelime, sonrakiEk);
    if (ozelDurumSonucu != null)
        return ozelDurumSonucu;
        }
return ekUretici.olusumIcinEkUret(kelime.icerik(), sonrakiEk,
uretimBilesenleri);

sanki if (ozelDurumSonucu == null) olmalıymış gibi geldi. Onu da düzeltince
sonuç:

ayristirma sonuclari:
[kedi-ler-im-]
[kedi-le-r-im-]

Yazdıklarım doğruysa düzeltmeleri yapabiliriz. Emin olmadığımdan size
bırakıyorum.

mert

Original issue reported on code.google.com by spino...@gmail.com on 8 Dec 2006 at 12:10

GoogleCodeExporter commented 8 years ago
Merhaba, gercekten de

// eger incelenen ek onceki ekten sonra gelemezse cik.
...
  if (!oncekiEk.ardindanGelebilirMi(ek)) {
     return ure;
...

seklinde olmaliydi. Bunu duzeltince zemberek dogru sonuc uretti. ikinci kisim, 
yani

    if (ozelDurumSonucu != null)
        return ozelDurumSonucu;
        }

uzerinde degisiklik yapilmamali saniyorum. Aksam tekrar gozden gecirecegim. 

Original comment by ahme...@gmail.com on 8 Dec 2006 at 2:31

GoogleCodeExporter commented 8 years ago
zemberek icin islediginden kapatiyorum. Nzemberek icin oradaki kodu incelemeye
calisacagim.

Original comment by ahme...@gmail.com on 9 Dec 2006 at 8:23

GoogleCodeExporter commented 8 years ago
sorun .net tarafındaymış... kusura bakmayın. ama en azından biri 
doğruymuş.. :o)

Original comment by spino...@gmail.com on 9 Dec 2006 at 10:15