CWB -CQPweb

CWB (IMS Open Corpus Workbench) bir çok açık kaynak kodlu aracın bir araya getirilmesiyle oluşturulmuş, 2 milyar sözcüğe kadar ulaşan büyüklüklerdeki veriyi, dilbilimsel etiketlemeler de dahil olmak üzere işleyebilen bir yazılımlar bütünüdür.
CWB’nin çekirdeğini CQP (Corpus Query Processor) oluşturmaktadır. CQP girdi veriyi ikili sistemde (binary) işlenmektir. Bu yöntem veriyi ham olarak işlemekten (düz metin belgesi, başka bir deyişle .txt formatı veya sql tabanlı yapılarda LongText hüreleri) çok daha verimli ve hızlıdır.
CWB ile hazırlanan derlemler son kullanıcıya internet arayüzü olan CQPWeb ile sunulmaktadır. CWB ile dünyada en fazla bilinen derlem olan BNCWeb XML (British National Corpus XML Sürümü) kullanıcılara internet üzerinden sunulmaktadır.
Projenin temelindeki amaç

  • açık kaynak kodlu
  • internet üstünden erişilebilen
  • dilbilimsel etiketlemeleri barındırabilen
  • eşdizimlilik örüntüleri, sıklık listeleri vb. özellikleri barındıran
  • istatistiki sonuçlar sunabilen
  • farklı formatlarda sonuçları kaydedebilen
  • kullanıcıların kendi tercihleri ile oturum açabildikleri

bir derlem altyapısı ve arayüzü oluşturmak olarak özetlenebilir.

CQP, Perl ile yazılmış bir yazılımdır. CQPWeb’in yanısıra, komut satırından erişilebilen bir “cli” (command line interface) arayüzü de vardır.

cqp_cli

CQP komut satırı arayüzünde basit arama sonucunun gösterimi

Açık kaynak kodlu bu yazılıma iki şekilde ulaşılabilir. Yazılımın binary dağıtımını indirerek kurulumu yapmak mümkün olduğu gibi svn reposuna (subversion – bir sürüm yönetim sistemi) erişerek kurulum yapmak da mümkündür. Halihazırda Windows platformu için bir beta dağıtım bulunmasına rağmen, CWB bu platformda ancak bir Linux terminal emülatörü ile birlikte çalışacağından kurulum oldukça zahmetlidir. Kişisel tavsiyem (CWB’nin tüm olanaklarından kolaylıkla faydalanmak adına) x86_64 tabanlı bir Linux dağıtımı ile çalışmak olacaktır. Debian, Ubuntu, Linux Mint, Fedora,  vb. dağıtımlarda kurulum için gerekli tüm bağımlılıklar da repolarda bulunmaktadır. Mac OS X platformunda kurulum için xCode ve xCode’un komut satırı araçlarına ihtiyaç vardır. Ayrıca MacPorts , Fink veya HomeBrew gibi bir paket yöneticisi kurarak gerekli bağımlılıkları buradan edinmek gereklidir.

CWB, kurulum ve kullanım noktasında kullanıcıların bazı bilgilere sahip olduğunu öngörmektedir. Svn reposundan kurulum için kaynak kodunu derlemek ve gereken bağımlılıkları sisteme yüklemek gereklidir. Bunun için temel kabuk komutları ve Linux sistemlerde bulunan paket yöneticilerinin kullanımı bilinmelidir.
Bazı sistemlerde öntanımlı olarak bulunmayan Perl kütüphaneleri için kullanıcılar CPAN (The Comprehensive Perl Archive Network) kullanabilmelidirler.
CQPWeb arayüzünün kurulumu ve kullanımı içinse (kısaca LAMP olarak adlandırılan) Apache (web sunucusu), MySql (veri tabanı sunucusu), PhP (sunucu taraflı programlama dili) sistemde kurulu olmalıdır.

CWB her satıra bir sözcük gelecek şekilde hazırlanmış, isteğe bağlı olarak dilbilimsel etiketler (sözcük türü, biçimbirimsel çözümleme vb.) içeren girdi dosyaları ile çalışmaktadır. txt ve .xml sıklıkla kullanılan iki biçimdir. Örnek bir girdi şu şekilde gösterilebilir:

 <text id="001">
  Ali
  eve
  geldi
  .
  </text>

Bu örnekte gösterilen veri hiçbir etiketleme içermemektedir. Verinin etiketlenmiş biçimi şöyle görünecektir.

 <text id="001">
  Ali    Noun    Noun    ali
  eve    Noun    Noun+A3sg+Pnon+Dat    ev
  geldi    Verb    Verb+Pos+Past+A3sg    gel
  .    Punc    Punc    .
  </text>

Etiketlemede kullanılan gösterim sözcük türü etiketleme yazılımına bağlı olarak değişiklik göstermektedir.
Girdi verideki her bir sütun tab karakteri ile (\t) ayrılmalıdır.
CWB bu etiketlemedeki her bir sütunu p-attribute (posititonal attribute – konumsal özellik) olarak işleyecektir.
Aynı zamanda girdi veri metnin yapısal olarak işaretlenmesine de olanak sağlamaktadır. Örneğimize yapısal bir özellik ekleyelim.

 <text id="001">
  <s>
  Ali    Noun    Noun    ali
  eve    Noun    Noun+A3sg+Pnon+Dat    ev
  geldi    Verb    Verb+Pos+Past+A3sg    gel
  .    Punc    Punc    .
  </s>
  </text>

Bu örnekte <s> etiketiyle cümle (sentence) işaretlenmiştir. CWB bu bilgiyi s-attribute (structural attribute – yapısal özellik) olarak adlandırmaktadır.
Yapısal ve konumsal özellikler derlemin hazırlanması sırasında kullanıcının istekleri doğrultusunda belirlenerek istenilen sayıda artırılabilir.
Her girdi metnin üstünde bulunan “id” numarası o metinle ilgili üstmetin bilgilerinin refere edilmesini sağlamaktadır. CWB derlemin oluşturulması sırasında her bir metinde kaç sözcük bulunduğu, ilglili metnin üst metin işaretlemesi vb. bilgileri bu id numarasına göre işlemlemektedir.
CWB ile aynı sistemde birden fazla derlem oluşturmak, kullanmak ve bu derlemleri internet üstünden kullanıcıların erişimine açmak mümkündür. TS Corpus sunucularında şu an aktif olarak 2 ayrı derlem kullanıcılara sunulmaktadır.
Kullanıcılar aramalarını derlemin oluşturulması sırasında tanımlanan özelliklere göre yapabilirler. TS Corpus v2 üstünden örnek vermek gerekirse kullanıcılar

  • basit aramalar
  • sözcük türü aramaları
  • biçimbirimsel aramalar
  • kök aramaları

yapabilmektedir.
Aynı zamanda, eğer oluşturulan derlem üst metin bilgilerine sahipse, kullanıcılar bu bilgilere göre aramalarını sınırlayabilmekte veya sonuçların bu metin türleri içindeki dağılımlarını görebilmektedir. BNCweb XML ile kullanıcılar metin türlerine, yıllara, yazar bilgilerine vb. özelliklere göre arama yapabilirler. Yine bu bilgilere göre alt derlemler oluşturabilir, bu derlemler arasında kıyaslama yapabilirler.
CWB kullanıcıların aramalarını, altderlemlerini, sonuçlarını kaydetmesine, bu sonuçları kelime işlemci, hesap tablosu, veri tabanı yazılımlarına uygun biçimde bilgisayarlarına idirmesine izin vermektedir. Hatta kullanıcılar kullandıkları platforma göre satır sonu işaretlemesini seçebilmektedir.
CWB ile yapılan aramalarda düzenli ifadeler kullanılabilmektedir. Bunun yanısıra CQP için geliştirilmiş “CQP Syntax” kullanılarak da arama yapılabilmektedir.
Bu arama yapısı karmaşık aramaların yapılabilmesine olanak tanımaktadır. Örneğin
[Lemma=”televizyon”] + [Lemma=”bak” | Lemma=”izle” | Lemma=”seyret”]
sorgusunu TS Corpus v2 üstünde ve CQP Syntax modunda yaptığımızda televizyon sözcügünü takip eden tüm bakmak, izlemek ve seyretmek sözcüklerine ulaşılabilmektedir.
CWB aralarında İngilizce, Almanca, İtalyanca, İspanyolca, Rusça, Danimarka Dili, İsveççe, Fransızca, Portekizce ve Türkçe’ninde bulunduğu 30 kadar dilde farklı derlemlere evsahipliği yapmaktadır.

CWB – CQPweb şu özellikleri barındırmaktadır:

  • Önbellekleme (Caching): Aramaları önbelleğe alarak tekrarlanan aramaları daha hızlı yapabilmek.
  • Aramaların Sıralanması (Query Sorting): Arama sonuçlarını istenilen sınırlılıklar içinde sıralama. Bu sınırlama derlemin oluşturulması sırasında tanımlanan özellikle bağlıdır.
  • Eşdizimsel Örüntüler (Collocations): Eşdizimsel örüntülere ulaşabilmek. Kullanıcılar bu eşdizimsel örüntüleri derlemin oluşturulması sırasında tanımlanmış özelliklere göre oluşturabilirler.
  • Dağılım (Distribution): Sonuçların derlemi oluşturan veri içindeki dağılımı görülebilir.
  • Çoklu Arama Artişlemlemesi (Multiple Query Postprocesses): İlk arama sonrasındaki sonuçlar tekrar işlemlenebilmekte, bu sonuçlar üstünde arama yapılabilmektedir.
  • Elle İşaretleme (Manual Annotation): Arama sonuçları kullanıcılar tarafından kategorilere ayrılabilmektedir.
  • Genişletilmiş Metin (Context): Arama sonucunu barındıran metin görülebilmektedir.(TS Corpus üstünde bulanan derlemlerde bu alanda her bir sözcüğün biçimbirimsel çözümlemesi de sunulmaktadır.)
  • Sağdan Sola Yazım Desteği (Left-to-Right Support): Sağdan sola yazımlı dillere destek verilmektedir.
  • Metin Üstbilgisi (Text Metadata): Metin üst bilgileri işlemlenebilmektedir.
  • Arama Geçmişi (Query History): Aramalar arama geçmişine kaydedilebilmektedir. Böylece kullanıcılar daha önce yaptıkları aramalara kolayca ulaşabilir.
  • Altderlemler (Subcorpora): CWB altderlemler oluşturmayı desteklemektedir.
  • Anahtar Sözcükler (Keywords): Derlemler ve altderlemler arasında anahtar sözcükler karşılaştırılabilmektedir. Karşılaştırılan her iki derlemde de bulunan ve bulunmayan sözcüklere ulaşılabilmektedir.
  • Kullanıcı Erişimi Sınırlaması (Access Limits): Sistem yöneticisi her bir derleme ulaşabilecek kullanıcı ve kullanıcı gruplarını tanımlayabilmektedir.

CWB ile ilgili detaylı bilgilere ve belgelendirmeye buradan erişebilirsiniz.

CWB kullanarak, yeni bir arayüz ve altyapı hazırlamaya harcanan işgücü ve maliyet ortadan kaldırılabilir. Açık kaynak kodunun sunduğu esneklik ile istenilen eklentiler yapılabilir, kullanım özellikleri değiştirilebilir.

NOTLAR:

  • TS Corpus Arama Özellikleri: http://tscorpus.com/en/documents
  • CWB ile hazırlanmış bazı derlemler: http://cwb.sourceforge.net/demos.php