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, ahmetsuzen@sdu.edu.tr , 2 Süleyman Demirel Üniversitesi, Teknoloji Fakültesi, Elektrik-Elektronik Mühendisliği, 32100 Isparta /TÜRKİYE, kubilaytasdelen@sdu.edu.tr 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