Adlandırılmış-Varlık Tanıma

Adlandırılmış-Varlık Tanıma

Adlandırılmış-varlık tanıma veya ingilizcesi ile named-entity recognition, doğal dil işlemede sıklıkla kullanılan ve “NER” olarak bilinen bir yapıdır. Metinde bahsedilen adlandırılmış varlıkları kişi adları, kuruluşlar, yerler, tıbbi kodlar, zaman ifadeleri, miktarlar, parasal değerler, yüzdeler gibi önceden tanımlanmış kategorilere yerleştirmeyi ve sınıflandırmayı amaçlayan bir bilgi çıkarma alt görevidir.

Varlık İsmi Tanıma kişi, yer, organizasyon gibi önceden tanımlanmış kategorilerin metin dokümanları üzerinden çıkarılma işlemidir. Bilgi çıkarımının(Information Extraction) bir alt da

1995 yılında Message Understanding Konferansı'nda tanımı ortaya çıkmıştır. ENAMEX, TIMEX ve NUMEX olmak üzere 3 temel kategoride tanımlamalar yapılmaktadır.

• Enamex:Kişi, yer, organizasyon gibi ifadeleri

• Numex:Parasal ve yüzdesel ifadeleri

• Timex:Gün ve tarih gibi zamansal ifadeleri tanımlamak için kullanılmaktadır.

Adlandırılmış varlık tanıma (NER) - bazen varlık parçalama, çıkarma veya tanımlama olarak da anılır. Metindeki anahtar bilgileri (varlıkları) tanımlama ve kategorize etme görevidir. Bir varlık, sürekli olarak aynı şeyi ifade eden herhangi bir kelime veya kelime dizisi olabilir. Tespit edilen her varlık önceden belirlenmiş bir kategoride sınıflandırılır. Örneğin, bir NER makine öğrenimi (ML) modeli, bir metindeki "Sisasoft" kelimesini algılayabilir ve bunu bir "Şirket" olarak sınıflandırabilir.

NER, yapay zekanın bir alt alanı olan doğal dil işleme (NLP) biçimidir. NLP, doğal dili, yani bilgisayar kodlama dilleri gibi yapay olarak değil, doğal olarak gelişen herhangi bir dili işleyen ve analiz eden bilgisayarlarla ilgilidir.

Python'da Spacy kütüphanesi, İngilizce dilini işlemek için geliştirilmiş bir NER aracıdır. Bu anlamda default olarak belirlenmiş bazı kategoriler yer almaktadır.

Yukarıdaki kategoriler görüldüğü üzere bazı temel kelimeleri ve isimleri nitelemektedir. Bunlar arasında çok temel sayısal ifadelerin (yüzde, saat, tarih..) yer alması gibi sözel ve terimesel başlıklar da yer almaktadır. Bu kategorilerin çeşitlenmesi ancak yeni etiketlenmiş kelimelerin ve cümlelerin eklenmesi ve modlein geliştirilmesi ile mümkündür.

Veri etiketleme formatı, alışılageldik etiketlemelerden biraz farklılaşmaktadır. Burada tüm cümle ve ögelerinin etiketlenmesi, böylece adlandırılmış ve adlandırılmamışların farklılaştırılması planlanmaktadır. Bunlara ek birlikte kullanılan isimlerin başlangıcı, devam etmesi, son kelimesi olması, hiçbir kategoriye ait olmaması gibi durumlar da etiketler ile anlamlandırılmıştır.

Raw, IOB, IOB2, BILOU gibi farklı veri etiketleme formatları bulunmaktadır. Aşağıda sembollerin açıklaması verilmiştir.

Bu etiket tipleri ile etiketlenmiş örneğe göz atalım.

Bu örnek etiketlenmiş cümlede kişi ismi, tarih, lokasyon etiketlemelerini ; hiçbir kategoriye ait olmayanların da “O” şeklinde etiketlendiğini görmekteyiz.

Bu şekilde verilen büyük verisetleri ile gerçekleştirilen eğitim sonucunda, verilen bir cümleden bu kategoriye ait bulunan değerler çıkartılabilmektedir.

Kategorilerin sayısı etiketlemelere göre arttırılabilir. Bu etiketler çalışma yapılan konuya veya alana göre farklılık gösterebilir. Örneğin dizi adlarının tanınması, bitki adlarının tanınması, bir firmaya ait ürünlerin tanınması...

İşletmenizin veya projenizin NER'den yararlanabileceğini düşünüyorsanız, başlamak oldukça kolaydır. NLTK, SpaCy ve Stanford NER dahil olmak üzere, sizi harekete geçirebilecek çok sayıda mükemmel açık kaynaklı kitaplık vardır. Her birinin kendi artıları ve eksileri vardır ve bunları yakında daha ayrıntılı olarak inceleyeceğiz. Ancak bir model oluşturmak için bu kitaplıklardan birini kullanmaya başlamadan önce, modeli eğitmek için ilgili etiketli bir veri kümesi oluşturmanız gerekecektir.

Varlık İsmi Tanıma İçin State of Art Teknikler

Varlık ismi tanıma için en iyi çözümler incelendiğinde skip-gram, glove gibi klasik word embeddinglerin yer almadığını Flair, BERT, ELMO gibi yeni nesil word embedding tekniklerinin yer aldığını görmekteyiz. BLSTM+CRF tabanlı tekniklerin yerini de başka mimariler almaya başlamakta bu çözümler incelendiğinde çok fazla hesaplama gücü gerektirmektedir. BLSTM+CRF tabanlı çözümler computional-cost/accuracy olarak daha uygun gözükmektedir.

Peki NER nerelerde kullanılabilir?

Haber İçeriklerinin Sınıflandırılması:

Haberlerde geçen kişi, yer ve lokasyon gibi ifadeler otomatik olarak çıkartılarak belli bir bölge ya da kişilere ait haberlere ulaşılmasını kolaylaştırmaktadır. Haberler için ilgili etiketleri bilmek, tanımlanmış hiyerarşilerde otomatik olarak kategorilere ayırmada ve içerik keşfi için kullanılmaktadır.

Müşteri Hizmetleri:

Örnek vermek gerekirse Samsung Note 7 batarya problemleri ile gündeme gelen bir üründü. Note 7'nin telefon, bataryanın telefon parçası olduğu bilgisi otomatik olarak çıkartılırsa, bu ürünü üreten firmanın ilgili birimine sorunlar doğrudan aktarılabilir. Problemin ilgili birime aktarılmasında geçen süre oldukça kısalmış olur. Twitter gibi sosyal medya üzerinden analizler yapılırsa hangi üründe hangi lokasyonda ne tür problem olduğu otomatik olarak çıkartılır. Firma elde ettiği verilerle gerekli analizleri yaparak ilgili konu için yatırımlar yapabilir.

Makine Çevirileri (Machine Translation)

Farklı Doğal Diller arasında çeviri yapılırken dikkat edilmesi gereken konulardan biri özel isimler gibi dile ait bilgilerin çeviri sisteminde değişmeden olduğu gibi kalmasıdır.

Örnek vermek gerekirse “Toprak bugün okula gelmedi” cümlesini incelersek burada Toprak özel isimdir eğer çeviri sistemi bunu madde olarak algılarsa çeviri hatalı yapılmış olur. Bu sebeple enamex veri tiplerinin çıkartılması çeviri sistemleri için önemlidir.

Duygu Analizi (Sentiment Analysis)

Kişi, yer ve organizasyon gibi ifadeler bir yorumun iyi ya da kötü olmasını genelde etkilemez. Bu yüzden varlık isimlerinin çıkartılması az da olsa başarımı artıracaktır.

Arama ve öneri motorları

Açıklayıcı metni, incelemeleri ve tartışmaları özetleyerek arama sonuçlarının ve önerilerin hızını ve alaka düzeyini iyilşetirir. “Booking.com” bu alanda dikkate değer bir başarı hikayesidir.

İçerik sınıflandırması

Blog gönderilerinin ve haber makalelerinin konularını ve temalarını belirleyerek içeriği daha kolay ortaya çıkarın ve trendlere ilişkin içgörü kazandırır.

Sağlık hizmeti

Laboratuvar raporlarından temel bilgileri alarak hasta bakım standartlarını iyileştirin ve iş yüklerini azaltın Roche bunu patoloji ve radyoloji raporlarıyla yapıyor.

Akademi

Makaleleri ve arşiv materyallerini özetleyerek ve önemli terimleri, konuları ve temaları vurgulayarak öğrencilerin ve araştırmacıların ilgili materyalleri daha hızlı bulmalarını sağlayın AB'nin kültürel miras için dijital platformu Europeana, tarihi gazeteleri aranabilir hale getirmek için NER kullanıyor

Bu anlamda Adlandırılmış-varlık tanımanın kullanımını, çalışmasını, temel amacını ve nerelede kullanılabileceğini görmüş olduk. NER'in, temelde isimsel veya alansal olarak farklı kullanılan kelimeleri, cümle içerisinde tespit edilemesini ve ayrıştırılabilmesini sağlıyor olması farklı projelerde farklı şekillerde işe yarayabileceğini gösteriyor. Bazen twitter verisi üzerinde inceleme yaparken, bazı özel kelimelerin geçip geçmediğine bakarken kullanmak, problemlerin çözümünü sağlayacaktır.

Referanslar

https://en.wikipedia.org/wiki/Named-entity_recognition

https://medium.com/codable/named-entity-recognition-varl%C4%B1k-i%CC%87smi-tan%C4%B1ma-b21315a30029

https://tezarsivi.com/turkcede-varlik-ismi-tanima

Haberdar olun!

E-bültenimize kayıt olarak tüm yeniliklerimizden haberdar olabilirsiniz.

"Sisasoft İnternet Sitesi kullanım deneyiminizi kişiselleştirmek ve iyileştirmek için çerezler kullanıyoruz. Ziyaretinizi varsayılan ayarlarla gerçekleştirerek Sisasoft Gizlilik Politikası'da belirtilen şekilde çerezlerin kullanımını kabul etmiş oluyorsunuz."

0312 227 06 34