1)
PerceptronAmbiguityResolver'ı eğitmek(train) için kullanılan data/gold/gold1.txt dosyasını inceledim. Bu dosya formatına uygun, yeni bir dataset etiketlemeye çalışıyorum.
Etiketleyeceğim cümleleri, öncelikle projenizde yer alan eğitilmiş analyzer'a verdim. Analyzer sonuçları üzerinde düzeltme/ekleme yaparak gold data işaretlemesi yapıyorum.
Örnek:
S:Adının Muhammed Ali Rızai olduğunu ...
Adının
[ad:Noun] ad:Noun+A3sg+ın:P2sg+ın:Gen
[ad:Noun] ad:Noun+A3sg+ı:P3sg+nın:Gen
Muhammed
[Muhammed:Noun,Prop] muhammed:Noun+A3sg
Ali
[ali:Adj] ali:Adj
[Ali:Noun,Prop] ali:Noun+A3sg*
.....
Bu cümleyi zemberek analyzer'a verdiğimde, "Ali" kelimesi için sadece [ali:Adj] ali:Adj analiz sonucunu çıkardı.
[Ali:Noun,Prop] ali:Noun+A3sg* analiz sonucunu ben ekledim ve doğru sonuç olduğunu gösteren "*" ibaresini sonuna ekledim.
Ayrıca "Ali" kelimesini "proper.dict" dosyasına da ekledim.
Etiketlediğim yeni dataset ile bir model eğitmek istediğim de (PerceptronAmbiguityResolverTrainer kullanıyorum) ise eklediğim yeni analiz sonuçları için SingleAnalysis instance'ı üretmem gerekiyor.
Yeni eklediğim analiz sonuçları için, SingleAnalysis instance nasıl yaratabilirim ?
Input: string, "[Ali:Noun,Prop] ali:Noun+A3sg"
Ouput: SingleAnalysis instance
2)
Modelinizi eğitmek için kullandığınız verisetlerinin çoğuna ("www.aljazeera.com.tr-rule-result.txt", "wowturkey.com-rule-result.txt", "open-subtitles-tr-2018-rule-result.txt","sak.train","sak.test", "sak.dev" "www.haberturk.com-rule-result.txt","www.cnnturk.com-rule-result.txt") ulaşamadım. Bu yüzden eğittiğiniz modeli yeni etiketlenen dataset ile güncellemek istiyorum. Bu yüzden ambiguity modelinizin, sıkıştırılmamış (compressed) olmayan halini paylaşabilir misiniz ?
Merhaba, 2 konuda yardımlarınıza ihtiyacım var:
1) PerceptronAmbiguityResolver'ı eğitmek(train) için kullanılan data/gold/gold1.txt dosyasını inceledim. Bu dosya formatına uygun, yeni bir dataset etiketlemeye çalışıyorum.
Etiketleyeceğim cümleleri, öncelikle projenizde yer alan eğitilmiş analyzer'a verdim. Analyzer sonuçları üzerinde düzeltme/ekleme yaparak gold data işaretlemesi yapıyorum.
Örnek: S:Adının Muhammed Ali Rızai olduğunu ... Adının [ad:Noun] ad:Noun+A3sg+ın:P2sg+ın:Gen [ad:Noun] ad:Noun+A3sg+ı:P3sg+nın:Gen Muhammed [Muhammed:Noun,Prop] muhammed:Noun+A3sg Ali [ali:Adj] ali:Adj [Ali:Noun,Prop] ali:Noun+A3sg* .....
Bu cümleyi zemberek analyzer'a verdiğimde, "Ali" kelimesi için sadece [ali:Adj] ali:Adj analiz sonucunu çıkardı. [Ali:Noun,Prop] ali:Noun+A3sg* analiz sonucunu ben ekledim ve doğru sonuç olduğunu gösteren "*" ibaresini sonuna ekledim. Ayrıca "Ali" kelimesini "proper.dict" dosyasına da ekledim.
Etiketlediğim yeni dataset ile bir model eğitmek istediğim de (PerceptronAmbiguityResolverTrainer kullanıyorum) ise eklediğim yeni analiz sonuçları için SingleAnalysis instance'ı üretmem gerekiyor.
Class: https://github.com/ahmetaa/zemberek-nlp/blob/master/morphology/src/main/java/zemberek/morphology/ambiguity/PerceptronAmbiguityResolverTrainer.java 237-243 if bloğundaki: analysisMap: pretrained model'in analiz sonuçları (Ali için [Ali:Noun,Prop] ali:Noun+A3sg sonucunu üretmiyor) s.correctAnalysis: [Ali:Noun,Prop] ali:Noun+A3sg analysisMap, s.correctAnalysis'i içermediğinden dolayı bu cümle göz ardı ediliyor.
Yeni eklediğim analiz sonuçları için, SingleAnalysis instance nasıl yaratabilirim ? Input: string, "[Ali:Noun,Prop] ali:Noun+A3sg" Ouput: SingleAnalysis instance
2) Modelinizi eğitmek için kullandığınız verisetlerinin çoğuna ("www.aljazeera.com.tr-rule-result.txt", "wowturkey.com-rule-result.txt", "open-subtitles-tr-2018-rule-result.txt","sak.train","sak.test", "sak.dev" "www.haberturk.com-rule-result.txt","www.cnnturk.com-rule-result.txt") ulaşamadım. Bu yüzden eğittiğiniz modeli yeni etiketlenen dataset ile güncellemek istiyorum. Bu yüzden ambiguity modelinizin, sıkıştırılmamış (compressed) olmayan halini paylaşabilir misiniz ?
Yardımlarınız için teşekkür ederim
Ayşenur Genç Uzun