Bu PDF dosyasını indir - El-Cezeri Journal of Science and Engineering

Transkript

Bu PDF dosyasını indir - El-Cezeri Journal of Science and Engineering
www.tubiad.org
ISSN:2148-3736
El-Cezerî Fen ve Mühendislik Dergisi
Cilt: 3, No: 1, 2016 (118-124)
El-Cezerî Journal of Science and
Engineering
ECJSE
Vol: 3, No: 1, 2016 (118-124)
Makale / Research Paper
Anlamsal Web Teknolojisi İle İçerik Arama
Ahmet Ali SÜZEN1 ve Kubilay TAŞDELEN2
1
Süleyman Demirel Üniversitesi, Uluborlu Selahattin Karasoy M.Y.O, Bilgisayar Tek. Bölümü, 32100
Isparta /TÜRKİYE, [email protected] ,
2
Süleyman Demirel Üniversitesi, Teknoloji Fakültesi, Elektrik-Elektronik Mühendisliği, 32100
Isparta /TÜRKİYE, [email protected]
Received/Geliş: 06.11.2015
Revised/Düzeltme: Accepted/Kabul: 24.11.2015
Özet: Anlamsal Web teknolojisi, içeriklerin sadece doğal dillerle değil ilgili yazılımlar tarafından anlaşılabilir ve
yorumlanabilir bir biçimde kullanılmasına imkan sağlamaktadır[1]. Bu iletişimi anlamlı bir şekilde
yorumlayabilmek için Ontoloji kullanılmalıdır. Bu temeller doğrultusunda gerçekleştirilen çalışmada, daha
önceden oluşturulmuş bilgisayar donanımı konusunu içeren doküman içerisine, soru sorarak veya hazır soru
kalıpları kullanarak cevap üretme sağlanmıştır. Ontoloji ile işlenmiş bilgiler, JENA kütüphanesi ile Java
teknolojisine aktarılmıştır. Hazırlanan arayüz ile bilgilerin kullanıcı tarafından erişimine imkân sağlanmıştır. Bu
sayede doküman içerisindeki karmaşık bilgiler içerisinden, istenilen bilgiye erişim kolaylaştırılmıştır.
Anahtar Kelimeler: Anlamsal Web; JENA; Ontoloji; Java; İçerik Arama.
Search The Content Semantic Web Technology
Abstract: Semantic Web technology, content is not only natural speak in tongues can be identified by the
software and can only be interpreted by a so it is possible to be used. This communication should be used in a
meaningful way to interpret ontology. In line with the basis for the operation, computer hardware containing the
document into topics, by asking questions or by using molds ready to question generation is provided. Processed
data with ontologies, with JENA library were transferred to Java technology. The interface and access to
information is provided by the user. This makes the document through complex information is facilitated by the
desired access to the information.
Keywords: Semantic Web; JENA; Ontology; Java; Content Search.
1. Giriş
Anlamsal Web, web ortamındaki veriler arasında anlamlı bağlantıların oluşturulması ve bu
bağlantıların sadece kullanıcılar tarafından değil bilgisayarlar tarafından da anlaşılabilir olmasını
hedeflemektedir. Yeni bir web değil, var olan web teknolojisinin bir uzantısıdır. Anlamsal Web
ortamındaki kaynaklar arasında anlaşılabilirliği sağlamak için önemli bileşen olarak ontolojiler
tanımlanmaktadır. Her ontoloji, belirli alandaki terimleri, terimler aralarındaki ilişkileri ve kuralları
tanımlayan mantıksal ifadeleri içerir [2].
Anlamsal Web uygulamaların gerçekleştiği alanlardan biride E- Öğrenme ‘dir [3]. Günümüzde web
teknolojisi kullanılarak yapılan bir arama sonucunda konuyla ilgili birbirleriyle ilişkisi olan ve
olmayan sonuçlar karşımıza çıkarken anlamsal web teknolojisi kullanılarak yapılan arama
sonucunda arama yapılan konuyla ilişkili sonuçlar karşımıza çıkmaktadır. Anlamsal web
Bu makaleye atıf yapmak için
Süzen, A., A., Taşdelen, K., “Anlamsal Web Teknoloji ile İçerik Arama” El-Cezerî Fen ve Mühendislik Dergisi 2016, 3(1); 118-124.
How to cite this article
Süzen, A.A., Taşdelen, K., “Search the Content Semantic Web Technology” El-Cezerî Journal of Science and Engineering, 2016, 3(1); 118-124.
Süzen, A.A., Taşdelen, K.
ECJSE 2016 (1) 118-124
teknolojisinde ise birbirine bağlı kaynakların arasındaki ilişki türü önceden tanımlanmıştır [4]. Bu
sayede kaynaklar bilgisayarın anlayabileceği bir formata dönüştürülmüştür. Bu dönüşüm Ontoloji
yapısı kullanılacaktır.
Gerçekleştirilen çalışmada, bilgisayar donanımı ile ilgili örnek bir doküman içerisinde sorulara
cevap çıkarma işlemi yapılmaktadır. Daha önceden hazırlanmış doküman içerisinden konu
başlıkları ve terimler çıkartılarak ontoloji yapısı ile anlamsal bir konuma dönüştürülmüştür. Java
teknolojisi kullanılarak kullanıcı web arayüzü geliştirilmiştir. JENA kütüphanesi ile ontoloji ile
arayüz arasında bağlantı sağlanmıştır. Arayüzden girilen sorular ontolojinin anlayabileceği
SPARQL sorgularına dönüştürülmüş ve sonuç alınmıştır. Çalışmada ontolojinin geliştirilmesi için
Protege, arayüz için Netbeans kullanılmıştır. Çalışmanın sonucunda örnek doküman içerisinde
aramak istenilen bilgi, sisteme soru sorarak sağlanmıştır. Bu sayede karmaşık bilgilere daha kolay
ve doğru bir şekilde erişim sağlanması hedeflenmiştir.
2. Anlamsal Web (Semantic Web)
İyi tanımlanmış ve ilişkilendirilmiş olan bilgilerin ve servislerin, web ortamında bilgisayarlarca
okunabilir ve anlaşılabilir olmasını sağlayacak standartların ve teknolojilerin geliştirilmesidir [5].
Anlamsal Web sadece web sayfalarındaki bilgileri kullanan bir insan-bilgisayar ilişkisi olmayıp,
verinin bulunduğu diğer ortamlar olan; veri tabanları, servisler, programlar, çeşitli sensörler, kişisel
araçlar ve hatta ev içindeki uygulamalara ait verilerin de işlenebileceği karmaşık bir ortamdır [6].
Şekil 1 ‘de web teknolojilerinin tarihi gelişimi görülmektedir.
Şekil 1. Web’in Tarihsel Gelişimi
Tablo 1. Eğitimde anlamsal web uygulamaları
Referans
Amorim ve
Ark.
Boyce ve Pahl
Ontoloji Türü
IMS öğrenme tasarım
süreci ontolojisi
Aşkar ve Ark.
Qin ve
Hernández
Fok
K12 eğitim ontolojisi
Öğrenme nesnesi
ontolojisi
PeOnto kişiselleştirilmiş
eğitim ontolojisi
Pedagoji, öğrenci ve alan
ontolojileri
Castello ve
Gauthier
--
Mitrovic ve
Devedzic
Kontopulos
--
Chen ve Ark..
alan ontolojisi, öğretim
stratejisi ontolojisi, öğrenen modeli
ontolojisi ve arayüz ontolojisi
--
Gomes ve Ark.
Knight ve Ark.
PASER ontolojisi
LOCO, LOCO-cite ve
ALOCoM ontolojileri
Çalışmanın Amacı
Öğretim tasarımı sürecinin ana elemanlarını belirten bir ontoloji
tasarlamak
Alan uzmanlarının ders içeriği oluşturmak için kullanabileceği bir
ontoloji geliştirme yöntemi oluşturmak [7].
Eğitim ontolojileri için tasarım ve geliştirme süreçlerini göstermek [8].
Öğrenme nesneleriyle ilgili ontoloji geliştirerek, ontolojinin
geçerliliğini test etmek [9].
Öğrenenlerin ihtiyaçlarına uygun öğrenme nesneleri sağlayan
ontolojilerin geliştirilmesi [10].
Uyarlanabilir derslerin oluşturulmasında kullanılmak üzere
ontolojilerin geliştirilerek, web tabanlı eğitim
ortamlarında kullanılabilmesi [11].
Ontoloji tabanlı M-OBLIGE modeli ile çok öğreticili öğrenme ortamı
kurulması [12].
PASER sistemi ile ontoloji, yapay zeka planlama ve anlamsal web
teknolojilerini bir araya getirerek otomatik müfredat üretimi
sağlanması [13].
SmartTrainer adındaki akıllı öğretim aracı ve görev ontolojilerinin
kullanımının ile öğreneni ve öğretim
stratejisini modellenmesine yardımcı olduğunun gösterilmesi [14].
PERSONA projesi kapsamında ontoloji tabanlı öğrencilerin bilişsel
stillerine göre değerlendirme yapabilen bir araç
Geliştirmek [15].
Ontoloji tabanlı bir çatı oluşturularak öğretim tasarımı ve öğretim
içeriğinin nasıl bir araya getirilebileceğinin
Gösterilmesi [16].
119
Anlamsal Web Teknolojisi İle İçerik Arama
ECJSE 2016 (1) 118-124
Gerçekleştirilen çalışmaya paralel olarak Anlamsal Web’in kullanıldığı eğitim alanında yapılmış
çalışmalar Tablo 1'de incelenmiştir.
2.1. Ontoloji
Ontoloji, varlıkları ilişkileri ile birlikte tanımlayan felsefi bir sözcüktür ve Anlamsal Web en temel
bileşenidir [17]. Web Ontolojisi, web üzerindeki bir alanda (domain, özel bir konuya ait bilgi alanı),
paylaşılabilinir bilgiye ulaşmak isteyen ihtiyaç sahiplerine, nesnelerin kurallı tanımı yaparak ortak
kelimeler ve anlamlar sunmaktadır [18].
Yaygın kullanılan çeşitli ontoloji geliştirme araçları aşağıdaki gibi listelenmektedir [19].








Protege
Apollo
LinkFactory
OntoEdit
OILedOntosaurus
OpenKnoME
SESAME
RDFDB
Şekil 2’ de bilgisayar donanımı konusunda hazırlanmış bir ontoloji örneği görülmektedir.
Şekil 2. Örnek bir ontoloji yapısı
2.2. SPARQL
SPARQL anlamsal web için bir sorgulama dili ve veri erişim protokolüdür. W3C tarafından RDF
veri modeli için tanımlanmıştır. RDF sorgulama dilleri üzerindeki çalışmalar son birkaç yıldır
devam etmektedir. Bu süreç içerisinde RDQL, Squish, Versa gibi farklı yaklaşımların kullanıldığı
diller geliştirilmiştir. RDQL ve Squish’e benzer olarak SQL sözdizimini örnek alan bir dil olan
SPARQL kendisine geniş bir kullanım alanı bulmuştur [20]. RDF ve OWL sorgulama araçlarının
büyük çoğunluğu SPARQL desteği sunmaktadır [21]. Aşağıda verilen örnek kod bloğunda
SPARQL sorgusunun kullanımı verilmiştir
PREFIX a: <http://example.com/resources/> ...
SELECT ?x
WHERE { ... }
120
Süzen, A.A., Taşdelen, K.
ECJSE 2016 (1) 118-124
3. Gerçekleştirilen Çalışma
Çalışma içerisinde kullanılacak örnek doküman, bilgisayar donanımı alanının “İç Donanım
Birimleri” bölümünü olarak belirlenmiştir. Bu dokümanı anlamlandırmak için ontolojisinin
oluşturulması gerekmektedir. Ontolojilerin hazırlanması için java tabanlı “Protege” programı,
kullanıcı arayüzü tasarımı için Netbeans programı kullanılmaktadır. Kullanıcı arayüzünden
hazırlanan ontolojilere erişmek için JENA Kütüphanesi aracılığıyla SPARQL sorgulama dili
kullanılmıştır.
3.1. Ontolojinin Oluşturulması
Örnek Doküman olarak kullanılan “ iç donanım birimleri” oluşturulan nesne ve alt nesne örneği
Şekil 3’de görülmektedir. Oluşturulan nesne ve alt nesneler arasındaki ilişkiler Şekil 4’de görüldüğü
gibi topObjectProperty olarak tanımlanmıştır. Bu nesne ve alt nesneler oluşturulurken;
 Ders notları incelenerek konuyla ilgili temel kavramlar ontolojinin nesnesi olarak
belirlenmektedir. Örnek: Anakart, RAM, İşlemci, Ekran Kartı
 Bu nesnelere ait alt nesneler ve alt nesnelerin alt nesneleri belirlenmektedir. Yani nesnelere ait
alt konular belirlenmelidir. Örnek: RAM türleri (DDR2, DDR3), İşlemci Markaları
(AMD,İntel), İntel’in işlemci modelleri (i3, i5, i7)
 Belirlenen nesneler, alt nesneler ve daha alt nesneler arasındaki ilişkiler ünite içerisinden
bulunup topObjectProperty olarak tanımlanmıştır.
 Belirlenen nesneler, alt nesneler ve daha alt nesneler arasındaki ilişkiler tanımlı olan
topObjectProperty ile eşleştirilmiştir. Örnek: i7 İntel’in modelidir. İntel işlemci markasıdır.
İşlemci anakart üzerine takılır.
Şekil 5’de tanımlı nesneler arası ilişkiler belirtilmiş ve nesnelere ait özellikler girilmiştir.
Şekil 3. Nesnelerin Tanımlanması
Şekil 4. Özelliklerin Tanımlanması
Şekil 5. Nesnenin nitelik tanımlanması
121
Anlamsal Web Teknolojisi İle İçerik Arama
ECJSE 2016 (1) 118-124
Şekil 3’te kullanılan nesneler ve ilişkileri tanımlandıktan sonra Protege programı içerisinde bulunan
Ontograph yapısı kullanılarak ontolojinin Şekil 6’te görüldüğü gibi grafiksel yapısı çıkarılmıştır.
“Thing” ifadesi ontolojide nesnelerin başlangıç noktasını ifade eder. Ontoloji grafiği
incelendiğinde;
 “Thing” ifadesinden çıkan oklar, tanımlanan nesneleri göstermektedir.
 Tanımlı nesnelerden çıkan oklar, alt nesneleri göstermektedir.
 Alt nesnelerden çıkan oklar, daha alt nesneleri göstermektedir.
 Daha alt nesneden alt nesneye, alt nesneden nesneye giden oklar iki nesne arasındaki ilişkiyi
göstermektedir.
Şekil 6. Ontolojisinin grafiksel gösterimi
Hazırlanan ontolojiler OWL dosya uzantısı olarak XML yapısında saklanmaktadır.
3.2. JENA ile SPARQL sorgularının hazırlanması
Oluşturulan OWL dosyası geliştirilecek olan uygulama yazılımında kullanılması için gerekli
kütüphaneler JENA Framework’ te bulunmaktadır. JENA çerçevesinin sunduğu uygulama
programlama arayüzü (API) ile ontoloji içindeki nesnelere erişilip gerekli sorgulama ve
düzenlemeler yapılabilmektedir.
JENA çerçevesinin sunmuş olduğu kütüphaneler çalışmanı bilgi işleme katmanını meydana
getirmektedir. JENA sınıfları ve SPARQL sorgularını kullanarak ontoloji içerisinden gerekli
bilgilerin getirilmesini sağlayan metotları üzerinde barındıran Java sınıflarının oluşturmuş olduğu
katmandır.
Netbeans programı ile Java kodları kullanarak aşağıda verilen sorgu yöntemi ile tanımlı ontolojiden
veriler çekilmektedir.
PREFIX foaf:<http://xmlns.com/foaf/0.1/>
PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
PREFIX k:<http://www.example.org/donanim.owl#>
SELECT ?y WHERE { y k:ram
ORDER BY ?ram
SPARQL sorgu biçimi bileşenleri şu şekilde açıklanabilir:
122
Süzen, A.A., Taşdelen, K.





ECJSE 2016 (1) 118-124
PREFIX ile URI’leri, kaymak tanımlaması için kullanılan kısaltmalar için ön ektir,
SELECT ile kaynaktan bazı koşulları sağlayan sonuçların döndürülmesi sağlanır,
FROM ile kaynak tanımlanır,
WHERE ile sorgunun şartları belirtilir,
ORDER BY ile gelen sonuçların sıralanması sağlanır.
Netbeans programında JAVA kodları ile tasarlanan uygulamada, doküman içerisinde öne çıkan
terimler SPARQL sorgularıyla tasarlanan ontolojiden çekilerek soru kalıpları oluşturulup Şekil
7’de görüldüğü gibi akıllı ekranda sunulmaktadır.
Şekil 7. Soru cevaplama ekranı
Şekil 8 ‘de seçilen soru kalıbına göre nesne ve ilişkisi belirlenip SPARQL sorgusu ile
ontolojiden cevap verildiği görülmektedir.
Şekil 8. Örnek arama
4. Sonuçlar
Bu çalışmada, bilgisayar donanımı konusuna ait örnek bir doküman içerisinde sorulara cevap
çıkarma işlemi gerçekleştirilmiştir. Daha önceden hazırlanmış doküman içerisinden konu başlıkları
ve terimler çıkartılarak ontoloji yapısı, anlamsal bir konuma dönüştürülmüştür. Bu verilere Java
teknolojisi kullanılarak kullanıcı arayüzünden erişim imkanı geliştirilmiştir. Yapılan çalışmada
veriler hazır soru kalıplar ile sorgulanmaktadır. Bunun avantajı kullanıcının soruyu daha hızlı ve
doğru oluşturmasını sağlamaktır. Böylece kullanıcı görmek istediği bilgiye konu ya da terimlerle
ulaşabilmektedir.
Uygulanabilirlik yönünden çalışmanın dezavantajı, sorgulama öncesi sorgulamada kullanıla cak
verilerin işlenmesi gerekmektedir. Bu durum da geliştirici açısından belirli bir süre almaktadır.
Hazır verilerin otomatik olarak işlenip sisteme dahil edilmesi, çalışmanın uygulanabilirliğini önemli
derecede artıracağı düşünülmektedir.
Kaynaklar
[1]. Çelik,D., Elçi,A., Elverici, E., İnan, N., Çelik, C.,” Uzaktan Eğitim Ders Yönetim Sistemi İçin
Anlamsal Tabanlı Kaynak Tarama Ajanı”, Çankaya Üniversitesi 4.ncü Mühendislik ve
Teknoloji Sempozyumu , Ankara, (2010).
[2]. Ünalır M.O., Öztürk Ö., Özacar T., “Ontoloji Tabanlı Türk Şarap Portalı Tasarımı”, İnternet
Konferansı (Inet-tr 2003), İstanbul, (2003).
123
Anlamsal Web Teknolojisi İle İçerik Arama
ECJSE 2016 (1) 118-124
[3]. Ferber, J., Gutknecht, O., “A Meta-Model for the Analysis and Design of Organizations in
Multi-Agent Systems”, In proceedings of the Third International Conference, (1998).
[4]. Lee, T, Hendler J., Lassila, O, The Semantic Web, Scientific American, 284(5), (2001) 34-43.
[5]. Tonta, Y., Madran, O., “The Future of Web 2.0 in Libraries and Information Centers: Open
Discussion”, IMC Workshop on Understanding Web 2.0 and Future Technologies, Romania
(2009) 29-30.
[6]. Güney, K., “Anlamsal web ve etmen teknolojileri Kullanarak sağlık bilgi sistemi Geliştirme”,
Yüksek Lisans Tezi, Fen Bilimleri Enstitüsü, 144s, (2009).
[7]. Boyce, S., Pahl, C., “Developing Domain Ontologies for Course Content”, Educational
Technology & Society, 10, (2007) 275-288.
[8]. Aşkar, P., Kalınyazgan, K., Altun, A., Pekince, S.S., “An Ontology driven model for e-learning
in K-12 education”. In T. Kidd & H. Song (Eds.). Handbook of Research on Instructional
Systems and Technology,Idea Group Reference, pp. (2007) 105-114.
[9]. Qin, J., Hernández, N.,” Building Interoperable Vocabulary and Structures For Learning
Objects”, Journal of the American Society for Information Science and Technology, 57 , (2006)
280-292.
[10]. Fok, A. W. P., “Peonto--Integration of multiple ontologies for personalized Learning”, In
Uskov , Proceedings of Web-Based Education, 2006.
[11]. Castello, W., Gauthier, F., “Sharing and Reusing Information on Web-Based Learning”,
International Workshop on Applications of Semantic Web Technologies for E-Learning,
(2006).
[12]. Mitrovic, A., Devedzic, V., “A Model of Multitutor Ontology –Based Learning
Environments”, In Proceedings of ICCE Workshop on Concepts and Ontologies in Web-based
Educational Systems,2002.
[13]. Kontopoulos, E., Vrakas, D., Kokkoras, F., Bassiliades, N., Vlahavas I., “An Ontology-based
Planning System for e-Course Generation”, Expert Systems with Applications, Elsevier, 35,
(2007) 398-406.
[14]. Chen, W., Hayashi Y., Jin, L., Mitsuru, I., Mizoguchi, R.,“An Ontology-based Intelligent
Authoring Tool. Proc. of the”, 6th International Conference on Computers in Education.
Beijing, China, 41-49. 1998.
[15]. Gomes, P., Antunes, B., Rodrigues, L., ve Ark., “Using Ontologies for e-learning
Personalization “, 3rd Learning Conference, 3rd E-learning Conference – Computer Science
Education, Coimbra, 2006.
[16]. Knight, C., Gašević, D., Richards, G.,
“An Ontology-Based Framework for Bridging
Learning Design and Learning Content”, Educational Technology & Society, 9 , (2006) 23-37.
[17]. Çoban, H., D., “Bir Anlamsal Web Uygulaması Olarak Türkiye Organik Tarım Bilgi Portalı
Tasarımı”, (Yüksek Lisans Tezi, Çukurova Üniversitesi Fen Bilimleri Enstitüsü, 2010.
[18]. Karademirci, O., (2008). Anlamsal Web Teknikleri Kullanılarak GPS Tabanlı Bağlam Bilinçli
Mobil Uygulama, Yüksek Lisans Tezi), Gazi Üniversitesi Fen Bilimleri Enstitüsü.
[19]. Yüksek, Y.,Karasulu, B., “Çoklu ortam ontolojilerini kullanan anlamsal Video analizi üzerine
bir inceleme”, Mühendislik Mimarlık Fakültesi Dergisi, 25, (2010) 719-739.
[20]. Özpala, A., Köker, R., “İş Başvuru Sisteminde Anlamsal Ağ Servislerinin Kullanımı,” 1.
Mühendislik ve Teknoloji Sempozyumu, Çankaya Üniversitesi, (2008) 382-384.
[21]. Battal, A., “Semantik Web ile Geliştirilen Bir Televizyon Program Öneri Sistemi” , (Yüksek
Lisans Tezi), TOBB Ekonomi ve Teknoloji Üniversitesi Fen Bilimleri Enstitüsü, 78s. 2009.
124