11 issue'sunda belirlenen NER Token Classification task'ına ait birden fazla ve farklı parametrelere ait modelleri uygun dataset ile fine tune edilip sonuçların not edilmesi ve en uygunun bulunması amaçlanmaktadır.
Görev Gereksinimleri ve Yapılacaklar
Öncelikle restorant ve otel yorumları/öneri isteklerini içeren ve bunlara ait entity labelları olan datasetlerden bize en uygun olanın bulunup preprocess edilmesi gerekmektedir. Daha sonra bulunan base modellerin bu dataset ile küçük trainler atılarak probleme en uygun olan modelin belirlenip hyper-parameter tuning yapılarak optimal hale getirilmelidir.
Yapılacaklar
[x] Dataset bulunması ve preprocessing yapılması
[x] Bu task'a uygun modellerin denenmesi ve sonuçların not edilerek en iyisinin bulunması
[x] Uygun learning rate ve epoch sayısı ile modelin train edilmesi
[x] Model deployment
Yazılım Tasarımı
Modelin fine-tuning'i için ve deployment için Huggingface API kullanılacaktır. Huggingface içerisindeki transformer library ve trainer library ile fine tuning gerçekleştirilmelidir.
Metrikler için precision, recall, accuracy ve f1 score olmak üzere 4 ayrı skor puanı kayıt altına alınacak ve en iyi model seçilecektir.
Data tarafında train, validation ve test setleri olmalıdır ve validation loss'lara göre learning rate ve epoch sayısı belirlenmelidir.
Görev Çıktısı
Girilen bir prompt içerisinde ihtiyacımız olan ve database'imizde varolan şehir, koordinat, cuisine, fiyat, öğün özellikleri tag'lenebilir ve işlenebilir bir json olarak dönmelidir
Model denemeleri:
Aşağıdaki modellerin tamamı 3 epoch olarak bulunan dataset üzerinden fine tune edilmiş:
google-bert/bert-base-uncased
google-bert/bert-base-cased
google-bert/bert-large-uncased
google-bert/bert-large-cased
distilbert/distilbert-base-uncased
FacebookAI/xlm-roberta-large
3 epoch eğitim sonucunda en iyi metrik ölçümleri large olan ve uncased olanlarda görülmüş ve onlar arasından en iyisi FacebookAI/xlm-roberta-large olarak belirlenmiştir. 3 epoch sonucundaki değerleri:
Training Loss: 0.181100
Validation Loss: 0.289698
Precision: 0.812945
Recall: 0.834756
F1: 0.823706
Accuracy: 0.923658
Görev Açıklaması
11 issue'sunda belirlenen NER Token Classification task'ına ait birden fazla ve farklı parametrelere ait modelleri uygun dataset ile fine tune edilip sonuçların not edilmesi ve en uygunun bulunması amaçlanmaktadır.
Görev Gereksinimleri ve Yapılacaklar
Öncelikle restorant ve otel yorumları/öneri isteklerini içeren ve bunlara ait entity labelları olan datasetlerden bize en uygun olanın bulunup preprocess edilmesi gerekmektedir. Daha sonra bulunan base modellerin bu dataset ile küçük trainler atılarak probleme en uygun olan modelin belirlenip hyper-parameter tuning yapılarak optimal hale getirilmelidir.
Yapılacaklar
Yazılım Tasarımı
Modelin fine-tuning'i için ve deployment için Huggingface API kullanılacaktır. Huggingface içerisindeki transformer library ve trainer library ile fine tuning gerçekleştirilmelidir. Metrikler için precision, recall, accuracy ve f1 score olmak üzere 4 ayrı skor puanı kayıt altına alınacak ve en iyi model seçilecektir. Data tarafında train, validation ve test setleri olmalıdır ve validation loss'lara göre learning rate ve epoch sayısı belirlenmelidir.
Görev Çıktısı
Girilen bir prompt içerisinde ihtiyacımız olan ve database'imizde varolan şehir, koordinat, cuisine, fiyat, öğün özellikleri tag'lenebilir ve işlenebilir bir json olarak dönmelidir
Model denemeleri:
Aşağıdaki modellerin tamamı 3 epoch olarak bulunan dataset üzerinden fine tune edilmiş:
3 epoch eğitim sonucunda en iyi metrik ölçümleri large olan ve uncased olanlarda görülmüş ve onlar arasından en iyisi FacebookAI/xlm-roberta-large olarak belirlenmiştir. 3 epoch sonucundaki değerleri: Training Loss: 0.181100 Validation Loss: 0.289698 Precision: 0.812945 Recall: 0.834756 F1: 0.823706 Accuracy: 0.923658