III ANALISIS DAN PERANCANGAN Bab ini membahas tahap analisis dan perancangan yang dilakukan dalam mengembangkan konsep dan model pengelompokkan informasi atau dokumen untuk aplikasi content service, khususnya document classification pada sistem NoteBOX. III.1 Analisis III.1.1 Analisis Sistem NoteBOX Analisis sistem NoteBOX yang dilakukan mencakup analisis sifat dan prinsip dasar NoteBOX untuk menganalisis kebutuhan NoteBOX berkaitan dengan pengembangan aplikasi content service sistem NoteBOX. Hasil analisis sifat dan prinsip dasar NoteBOX dijelaskan sebagai berikut. NoteBOX merupakan aplikasi berbasis IP yang menyediakan informasi dan pengetahuan kepada pengguna, yang dapat diakses melalui layanan messaging jaringan internet dan jaringan mobile, seperti Email, Instant Messaging, SMS, MMS, voice messaging, dan facsimile.
NoteBOX menggunakan unified
messaging system untuk mengintegrasikan layanan-layanan messaging yang berbeda-beda, yang memungkinkan berbagai jenis pesan disatukan pada satu sistem tunggal.
UMS memberikan dua manfaat utama yaitu memudahkan
pertukaran pesan antara media yang berbeda, dan memudahkan pengaksesan konten atau informasi oleh media yang berbeda pula. Dengan kata lain, UMS memungkinkan NoteBOX untuk menangani beragam pesan dengan media yang berbeda. Sebagai sistem yang menyediakan informasi dan pengetahuan kepada pengguna, content service merupakan aplikasi yang dikembangkan untuk memberikan nilai tambah pada sistem. Pada NoteBOX, content service dapat diberikan berdasarkan permintaan pengguna (pull) atau berupa notifikasi yang dikirim secara periodik kepada pengguna (push). Aplikasi content service akan dijalankan oleh content server yang terletak pada lapisan aplikasi sistem NoteBOX.
Content server
berfungsi sebagai penyedia informasi dan pengetahuan, dalam hal ini adalah
III-1
dokumen, yang akan diakses oleh aplikasi search engine; seperti digambarkan pada gambar III.1.
Gambar III.1. Arsitektur Sistem NoteBOX-UMS
Gambar III.1 menjelaskan pengembangan sistem NoteBOX dengan komponen UMS yang lebih terperinci.
Pada gambar ini sistem dibagi ke dalam empat
lapisan yaitu: 1. User layer, lapisan yang berisi aplikasi-aplikasi yang terhubung dengan pengguna sistem. 2. Gateway layer, lapisan yang berisi gateway-gateway yang menghubungkan pengguna sistem dengan core server NoteBOX. 3. Core layer, lapisan yang berisi core server yang menjalankan fungsi-fungsi utama sistem NoteBOX. 4. Application layer, lapisan yang berisi aplikasi-aplikasi layanan yang mendukung sistem NoteBOX, seperti search engine server dan content server.
Berdasarkan prinsip dasar NoteBOX diatas, dilakukan analisis kebutuhan aplikasi content service, khususnya untuk pengembangan aplikasi document classification sebagai bagian dari content service, sebagai berikut:
III-2
1. Content service pada NoteBOX merupakan aplikasi yang memberikan nilai tambah bagi sistem. Sehingga, content service, sebagai penyedia konten yang akan diakses oleh aplikasi search engine, harus menyediakan mekanisme pengaksesan konten yang mudah, cepat dan menghasilkan konten dengan nilai presisi yang tinggi.
Search engine menggunakan teknik indexing untuk
mempercepat proses pencarian dokumen.
Selain dengan teknik indexing,
untuk mempercepat proses pencarian dokumen dapat dibantu dengan mengelompokkan dokumen, yang disimpan dalam content server, ke dalam kelas-kelas yang sesuai dengan isi dokumen.
Pengelompokkan dokumen
memungkinkan search engine untuk menemukan dokumen yang memiliki tingkat relevansi tinggi dengan query pengguna. 2. Berdasarkan prinsip NoteBOX yang dapat menangani beragam jenis pesan dengan media yang berbeda, konten yang disediakan aplikasi content service pada NoteBOX juga harus dapat dikirim dalam bentuk pesan yang beragam, termasuk ukuran panjang dan pendek pesan.
Contoh, konten yang akan
dikirim dalam bentuk SMS adalah konten yang ukuran pesannya singkat sehingga tidak seluruh dokumen utuh dapat dikirim; sedangkan konten yang akan dikirim dalam bentuk e-mail atau faks dapat berukuran panjang, yang memungkinkan untuk mengirim bagian dokumen yang lebih panjang atau sebuah dokumen utuh.
Sehingga, dibutuhkan skema pengelompokkan
dokumen yang memungkinkan untuk me-retrieve sebuah dokumen secara utuh, dan juga me-retrieve hanya bagian-bagian tertentu dari dokumen saja. Analisis skema pengelompokkan dokumen dijelaskan pada bagian III.2. III.1.2 Analisis Skema Pengelompokkan Dokumen Semi-structured Gambaran pengelompokkan dokumen yang memungkinkan akses terhadap dokumen utuh dan bagian-bagian tertentu dokumen dijelaskan pada gambar III.2. Pada gambar tersebut dapat dilihat: dokumen telah dikelompokkan pada kelaskelas dokumen, dan pada setiap kelas dokumen dilakukan pengklasifikasian bagian-bagian dokumen.
Dengan demikian search engine dapat melakukan
pencarian dan retrieval dokumen pada kelas-kelas dokumen, dan juga pencarian dan retrieval bagian-bagian tertentu dokumen pada kelas-kelas elemen dokumen.
III-3
Title
Artificial Intelligence
Author Body etc
Computer Science
Title
Communication & Network
Author Body
Programming Language
Gambar III.2. Klasifikasi Dokumen dan Struktur Dokumen
Mengelompokkan dokumen tanpa mempertimbangkan struktur dokumen hanya menghasilkan kelas-kelas dokumen saja, sehingga search engine hanya dapat meretrieve dokumen utuh dari kelas-kelas tersebut dan tidak dapat mengakses bagian-bagian tertentu dokumen. Agar pengklasifikasian bagian-bagian dokumen dapat dilakukan, diperlukan struktur logik dokumen. Struktur logik dokumen akan menentukan kelas-kelas bagian atau elemen dokumen. Bentuk struktur logik dokumen direpresentasikan oleh struktur dokumen XML. Untuk menghasilkan contoh pengelompokkan seperti pada gambar III.2 proses pengelompokkan dilakukan dengan dua langkah.
Langkah pertama adalah mengelompokkan
dokumen, dan langkah kedua adalah mengelompokkan bagian-bagian dokumen. Langkah pertama: pengelompokkan dokumen. Seperti dijelaskan pada bagian II.1, pengelompokkan dokumen dapat dilakukan dengan dua pendekatan yaitu klasifikasi dan clustering, dan setiap pendekatan memiliki kelebihan dan keterbatasan.
Sehingga, untuk mengatasi keterbatasan salah satu pendekatan,
digunakan teknik hybrid, yaitu menggabungkan teknik klasifikasi dan clustering untuk mengelompokkan dokumen. Pengelompokkan dengan teknik hybrid dapat dilakukan dengan pendekatan atau metode clustering-classification, atau classification-clustering.
III-4
a. Clustering – Classification. Proses pengelompokkan pertama menggunakan teknik clustering, dan menghasilkan cluster-cluster dokumen dan setiap dokumen telah memiliki cluster.
Hasil clustering dapat dikelompokkan
kembali secara langsung dengan teknik klasifikasi, atau digunakan sebagai parameter masukan untuk mengelompokkan dokumen dengan teknik klasifikasi. Pada pendekatan pertama akan dihasilkan cluster-cluster dokumen dan setiap cluster dapat berisi sub-kelas klasifikasi. Pada pendekatan kedua nama cluster dari dokumen digunakan sebagai label atau predefined class label yang akan dipakai pada proses klasifikasi, dan akan membentuk kelaskelas klasifikasi dokumen sebagai hasil akhir. Dengan pendekatan ini, proses penentuan label dokumen secara manual dapat di-eliminasi, dan hasil clustering yang kurang akurat dapat diperbaiki. b. Classification – Clustering. Proses pengelompokkan pertama menggunakan teknik klasifikasi, kemudian hasil proses klasifikasi; yaitu dokumen-dokumen yang sudah memiliki kelompok dengan akurasi yang baik, dikelompokkan kembali dengan proses clustering. Pada pendekatan ini hasil proses klasifikasi yaitu nama kelas untuk dokumen tidak digunakan sebagai label dokumen untuk diproses dengan teknik clustering karena teknik clustering tidak bergantung pada predefined class label dokumen.
Pendekatan ini akan
membentuk kelas-kelas klasifikasi dokumen dan dalam setiap kelas dapat berisi cluster-cluster.
Metode ini tidak mengatasi keterbatasan teknik
klasifikasi dalam menangani dokumen dalam jumlah besar, dan waktu yang dibutuhkan untuk menentukan label dokumen sebelum di-klasifikasi. Langkah kedua: pengelompokkan bagian-bagian dokumen. dikelompokkan
adalah
struktur
logik
direpresentasikan oleh structural node.
atau
elemen
Objek yang akan dokumen
yang
Representasi struktur logik dokumen
dapat dilihat pada struktur dokumen XML. Dengan demikian, dokumen perlu diubah ke dalam bentuk XML untuk dapat membaca struktur dokumennya. Pengelompokkan dapat menggunakan teknik classification atau clustering. Dengan teknik classification, predefined class label dapat diberikan pada struktur dokumen berdasarkan ‗nama‘ struktur atau elemen dokumen tersebut, sehingga dapat menghasilkan kelas-kelas struktur dokumen yang tepat. Dengan teknik III-5
clustering, kelas-kelas struktur dokumen ditentukan secara otomatis oleh algoritma clustering. Kelas awal ditentukan dengan cara memilih dari structural node secara acak, dimana ada kemungkinan structural node yang dipilih tidak tepat. Penentuan kelas awal yang tidak tepat akan menghasilkan cluster akhir yang tidak tepat pula. Berdasarkan
uraian
diatas,
untuk
aplikasi
document
classification,
direkomendasikan teknik hybrid clustering-classification untuk mengelompokkan dokumen, dan untuk mengelompokkan struktur dokumen menggunakan teknik classification. Skema pengelompokkan dokumen semi-structured dapat dilihat pada gambar III.3.
Gambar III.3. Skema Klasifikasi Dokumen Semi-structured
III-6
Pada gambar III.3 terdapat dua proses pengelompokkan, yaitu document classification dan document structure classification.
Document classification
adalah proses untuk mengelompokkan dokumen.
Hasil proses document
classification adalah kelas-kelas dokumen. Setelah dokumen dikelompokkan ke dalam kelas, kemudian dilakukan pengelompokkan elemen atau bagian dokumen pada proses document structure classification. Pengelompokkan bagian-bagian dokumen didasarkan pada struktur logik dokumen. III.1.2.1 Contoh Proses Pengelompokkan Untuk Skema Klasifikasi Dokumen Semi-structured Untuk memberikan gambaran hasil proses clustering dan classification dari skema klasifikasi dokumen yang digambarkan pada gambar III.3, diberikan ilustrasi proses pengelompokkan sebagai berikut: Terdapat koleksi dokumen yang terdiri atas 6 dokumen, yang akan dikelompokkan. Doc1
:
The diseases of the 21st century will be ―chronic‖ diseases, those that steal vitality and productivity, and consume time and money. These diseasesheart disease, diabetes, obesity, asthma, and depression- are diseases that can be moderated by how we design and build our human environment. It is now accepted that, in addition to direct hazards from infectious diseases and environmental toxins, human behaviors play a critical role in determining human health. As we begin to include consideration of these factors into our health-related decision-making, we must additionally guard against using too narrow a definition of the environment. Every person has a stake in environmental public health, and as environments deteriorate, so does the physical and mental health of the people who live in them. There is a connection, for example, between the fact that the urban sprawl we live with daily makes no room for sidewalks or bike paths and the fact that we are an overweight, heart disease-ridden society.
Doc2
:
Though many companies are still just beginning to grasp the potential uses and impacts of the Web and e-commerce, advances in technologies and their application continue. These advances often present various managerial and technological issues for individuals, companies, governments, and other entities. One significant area of technological advancement is the development of mobile e-commerce, which encompasses interactive
III-7
business activities and processes related to a (potential) commercial transaction conducted through communications networks that interface with wireless devices. These systems provide the potential for organizations and users to perform various commerce-related tasks without regard to time and location (anytime from anywhere). This emerging mobile e-commerce environment presents a new set of issues. Doc3
:
Internet is a system architecture that has revolutionized communications and methods of commerce by allowing various computer networks around the world to interconnect, sometimes referred to as a ―network of networks‖. The Internet provides a capability so powerful and general that it can be used for almost any purpose that depends on information, and it is accessible by every individual who connects to one of its constituent networks. It supports human communication via electronic mail (e-mail), ―chat rooms,‖ newsgroups, and audio and video transmission and allows people to work collaboratively at many different locations. It supports access to digital information by many applications, including the World Wide Web. The Internet has proved to be a spawning ground for a large and growing number of ―e-businesses‖ (including subsidiaries of traditional ―brick-and-mortar‖ companies) that carry out most of their sales and services over the Internet. Many experts believe that the Internet will dramatically transform business as well as society
Doc4
:
Cardiovascular disease is any of the diseases, whether congenital or acquired, of the heart and blood vessels. Among the most important are atherosclerosis, rheumatic heart disease, and vascular inflammation. Cardiovascular diseases constitute one of the major human health problems of modern times. Life depends on the functioning of the heart; thus, the heart is involved in all death, but this does not account for its prominence in causing death. To some degree, as medical science advances, more people are saved from other illnesses, only to die from one of the unsolved and uncontrolled disorders of the cardiovascular system. Some forms of cardiovascular diseases are becoming less frequent causes of death, and continued research and preventive measures may provide even greater benefits
Doc5
:
Education can be thought of as the transmission of the values and
III-8
accumulated knowledge of a society. In this sense, it is equivalent to what social scientists term socialization or enculturation. Children—whether conceived among New Guinea tribespeople, the Renaissance Florentines, or the middle classes of Manhattan—are born without culture. Education is designed to guide them in learning a culture, molding their behaviour in the ways of adulthood, and directing them toward their eventual role in society. In the most primitive cultures, there is often little formal learning, little of what one would ordinarily call school or classes or teachers; instead, frequently, the entire environment and all activities are viewed as school and classes, and many or all adults act as teachers. As societies grow more complex, however, the quantity of knowledge to be passed on from one generation to the next becomes more than any one person can know; and hence there must evolve more selective and efficient means of cultural transmission. The outcome is formal education—the school and the specialist called the teacher. Doc6
:
As important as standard forms are for business-to-business transactions, ecommerce encompasses much wider activity. For example, secure electronic transfer of sensitive information (such as credit card numbers and electronic funds transfer [EFT] orders) is essential to the continued growth of e-commerce. In addition to encrypting Web purchase forms, many individuals also routinely encrypt their e-mail. Among other innovations that have contributed to the growth of e-commerce are electronic directories and search engines for finding information on the Web; software agents, or ―bots,‖ that act autonomously to locate goods and services; and digital authentication services that vouch for identities over the Internet. These intermediary services facilitate the sale of goods (actually delivering the goods in the case of information), the provision of services such as banking, ticket reservations, and stock market transactions, and even the delivery of remote education and entertainment. Electronic auctions and reverse markets (where a buyer elicits offers from many sellers) are another growing component of e-commerce. From its founding in 1995, the world's largest online open auction site, eBay Inc., grew to more than 42 million members at the start of the 21st century
III-9
Diasumsikan, dokumen-dokumen tersebut telah melalui proses pra-pengolahan dokumen.
Proses clustering akan menghasilkan 4 cluster dokumen, yang
dijelaskan pada tabel III.1 dan gambar III.4 berikut ini: Tabel III.1. Ilustrasi Hasil Proses Clustering IDDok
Nama Cluster
Doc1
Disease
Doc2
e-commerce
Doc3
Internet
Doc4
Cardiovascular Disease
Doc5
Education
Doc6
e-commerce
Gambar III.4. Ilustrasi Hasil Proses Clustering: Cluster Dokumen
Pada skema pengelompokkan (gambar III.3), proses selanjutnya adalah classification.
Hasil proses clustering adalah dokumen-dokumen yang telah
memiliki cluster. Label cluster inilah yang akan digunakan sebagai predefined class label untuk masing-masing dokumen, yang selanjutnya akan dikelompokkan dengan teknik classification. Proses classification akan menghasilkan kelas-kelas klasifikasi dokumen. Karena predefined class label dokumen diambil dari cluster dokumen (hasil proses clustering), maka kelas-kelas klasifikasi yang akan terbentuk berasal dari clustercluster hasil proses clustering.
Hasil proses classification untuk kumpulan
dokumen diatas adalah:
III-10
Tabel III.2. Ilustrasi Hasil Proses Classification IDDok
Nama Cluster
Doc1
Disease
Doc2
e-commerce
Doc3
Internet
Doc4
Disease
Doc5
Education
Doc6
e-commerce
Gambar III.5. Ilustrasi Hasil Proses Classification: Kelas Klasifikasi Dokumen
III.1.3 Analisis Kebutuhan Aplikasi Document Classification Aplikasi document classification merupakan bagian dari aplikasi content service yang akan diimplementasikan pada content server.
Dari analisis kebutuhan
aplikasi content service untuk NoteBOX dan skema pengelompokkan dokumen yang disesuaikan dengan kebutuhan sistem NoteBOX, didefinisikan kebutuhan dan alur proses untuk aplikasi document classification sebagai berikut: 1. Dokumen teks yang akan disimpan adalah dokumen dengan format beragam; untuk tesis ini dokumen yang dikaji adalah dokumen HTML, PDF, Word. Untuk memudahkan proses ekstraksi kata dalam dokumen, dokumen dengan berbagai format tersebut perlu dilakukan parsing untuk mengubah format dokumen ke dalam format tekstual. 2. Agar dokumen yang ditulis dengan bahasa alami manusia dapat diolah dalam proses pengelompokkan dokumen, maka dokumen harus dikonversi ke dalam bentuk yang dipahami oleh algoritma pengelompokkan, disebut proses pra-
III-11
pengolahan dokumen.
Pada proses ini dilakukan ekstraksi dokumen dan
pembobotan dokumen. 3. Proses ekstraksi dokumen mencakup identifikasi term-term dalam dokumen, penyaringan term yang tidak memiliki makna semantik (stop words), dan penghapusan imbuhan kata untuk mencari kata dasar. Untuk mengekstrak dokumen menjadi term-term dibutuhkan parser dokumen, untuk memproses stop words dibutuhkan stopper, dan untuk mencari kata dasar sebuah kata dibutuhkan stemmer. 4. Term-term yang merupakan hasil proses ekstraksi dokumen akan dibobotkan untuk menghitung frekuensi kemunculan term pada dokumen. Setelah term dibobotkan, selanjutnya dilakukan menyimpan hasil pembobotan.
Hasil
pembobotan akan digunakan untuk proses pengelompokkan dokumen. 5. Pengelompokkan dokumen menggunakan teknik clustering-classification. 6. Untuk mengelompokkan elemen dokumen dibutuhkan structural node dokumen; yang dapat dibaca dari struktur dokumen XML.
Sehingga
dibutuhkan parser untuk melakukan parsing dokumen menjadi dokumen XML. III.1.4 Analisis Algoritma Klasifikasi dan Clustering Dalam
memilih
algoritma
klasifikasi
dan
clustering
untuk
proses
pengelompokkan dokumen, digunakan kriteria penilaian algoritma yang dijelaskan pada bagian II.2.
Dari pembahasan kriteria penilaian algoritma
clustering maupun klasifikasi dapat disimpulkan bahwa faktor penting untuk menentukan algoritma yang baik adalah akurasi, skalabilitas, dan kompleksitas komputasi. Akurasi berkaitan dengan hasil pengelompokkan dokumen; dokumen harus dikelompokkan pada kelas yang tepat sesuai dengan isi dokumen. Skalabilitas berkaitan dengan kemampuan algoritma untuk menangani data dalam jumlah besar. Kompleksitas komputasi berkaitan dengan waktu yang dibutuhkan untuk membangun model klasifikasi dan mengelompokkan objek, atau membentuk cluster-cluster objek. Skalabilitas berkaitan erat dengan kompleksitas komputasi. Algoritma yang baik adalah algoritma yang mampu menangani data dalam jumlah besar dengan efisien. Dengan kata lain, sebuah algoritma harus III-12
dapat mengelompokkan data dengan waktu komputasi yang sebanding, atau berbanding lurus, dengan jumlah data. Berdasarkan uraian pada bagian II.2 mengenai proses pengelompokkan serta kelebihan dan keterbatasan setiap algoritma, maka dipilih algoritma k-Means dan Centroid-based untuk mengelompokkan dokumen. Algoritma k-Means mampu memproses data dalam jumlah besar dengan kompleksitas komputasi linier terhadap total jumlah dokumen dan jumlah cluster. Algoritma Centroid-based juga dapat menangani data dalam jumlah besar dengan kompleksitas komputasi yang bersifat linier; pada fase learning untuk membangun model klasifikasi kompleksitas komputasi CB linier terhadap jumlah dokumen, dan kompleksitas klasifikasi dokumen baru juga linier terhadap jumlah kelas. Disamping itu, CB dapat mengelompokkan dokumen dengan akurasi yang baik karena vektor centroid yang digunakan dalam mengukur kesamaan dokumen dengan kelas adalah nilai rata-rata dari fitur-fitur semua dokumen dalam centroid atau kelas; dengan kata lain, similarity dokumen baru dengan kelas tertentu sama dengan similarity antara dokumen baru dengan semua dokumen dalam kelas tersebut.
III.2 Perancangan Perancangan yang dibuat pada tesis ini dibagi menjadi: perancangan model pengelompokkan dokumen semi-structured, perancangan struktur informasi untuk konten teks, dan perancangan struktur basis data.
Perancangan model
pengelompokkan dokumen mencakup arsitektur pengelompokkan dan pemodelan arsitektur pengelompokkan dokumen menggunakan diagram use case dan diagram kelas. Desain struktur informasi untuk konten teks mencakup desain struktur kelas klasifikasi dokumen dan kelas klasifikasi elemen-elemen dokumen. III.2.1 Perancangan Model Pengelompokkan Dokumen Semi-structured Model atau arsitektur pengelompokkan dokumen semi-structured untuk aplikasi content service sistem NoteBOX ditunjukkan pada gambar III.6.
Model ini
dikembangkan berdasarkan kebutuhan dan alur proses yang didefinisikan pada bagian III.1.3, yang terdiri atas tiga komponen utama yaitu Document Parsing, Document Preprocessing, dan Classication. Pada Document Parsing dilakukan
III-13
pengubahan format dokumen yang beragam menjadi dokumen berformat teks. Document
Preprocessing
adalah
proses
pra-pengolahan
dokumen,
dan
Classification adalah proses inti untuk mengelompokkan dokumen.
Gambar III.6. Model Pengelompokkan Dokumen Semi-structured
Pra-pengolahan dokumen dimulai dengan proses parsing untuk meng-ekstrak dokumen menjadi term-term, disebut juga tokenisasi. Selanjutnya term-term yang dihasilkan akan disaring oleh stopper untuk mengeliminasi term yang sering muncul tetapi tidak memiliki makna semantik, dengan melakukan pengecekan term dengan daftar stop words yang sudah ditentukan. Jika term terdapat dalam daftar stop list, maka term tersebut akan diabaikan. Sebaliknya, jika term tidak terdapat dalam stop list, maka term tersebut akan diproses oleh stemmer untuk menghapus imbuhan kata. Dengan menghilangkan stop word dan imbuhan dapat mengurangi waktu penghitungan bobot term, dan mengurangi jumlah term yang harus disimpan pada basis data. Proses selanjutnya adalah pembobotan term dengan melakukan penghitungan tf (jumlah frekuensi kemunculan term pada dokumen), idf (jumlah dokumen dimana term ke-i muncul), dan tf-idf. Pembobotan term dilakukan pada proses pra-pengolahan dokumen bertujuan untuk mengurangi waktu analisis saat pengelompokkan dokumen.
Setelah
membobotkan term, dilakukan penyimpanan hasil ekstraksi dan pembobotan. Classification terdiri atas document classification dan document structure classification.
Document classification mengelompokkan dokumen ke dalam
III-14
kelas-kelas
dokumen,
mengelompokkan pengelompokkan
sedangkan
elemen-elemen pada
gambar
document dokumen.
III.3,
proses
structure
classification
Berdasarkan pengelompokkan
skema dokumen
menggunakan teknik hybrid, diawali dengan meng-cluster dokumen, kemudian mengklasifikasi dokumen.
Hasil clustering adalah dokumen-dokumen yang
sudah memiliki cluster atau kelas.
Kelas-kelas ini dapat digunakan sebagai
predefined class label pada dokumen, yang selanjutnya akan dikelompokkan kembali dengan algoritma classification.
Mengelompokkan dokumen dengan
langkah-langkah pengelompokkan seperti ini akan menghasilkan kelas-kelas dokumen akhir, sebagai hasil proses classification dokumen, yang memiliki akurasi pengelompokkan yang lebih tinggi.
Untuk mengklasifikasi dokumen
digunakan pendekatan hierarchical classification, dimana dokumen-dokumen dikelompokkan ke dalam kelas-kelas yang terhubung dalam bentuk struktur hirarki. Document structure classification akan mengelompokkan elemen atau structural node dokumen ke dalam kelas-kelas struktur dokumen. Proses pengelompokkan elemen dokumen terdiri dari tiga langkah, yaitu parsing dokumen ke dalam format XML, membaca struktur logik dokumen dan mendaftar nama elemenelemen dokumen, dan mengklasifikasi elemen dokumen berdasarkan struktur logiknya. III.2.2 Pemodelan Pengolompokkan Dokumen Semi-structured Menggunakan Use Case Berdasarkan model pengelompokan dokumen pada gambar III.6, didefinisikan spesifikasi fungsi yang harus disediakan untuk aplikasi document classification, sebagai berikut: 1. Penambahan dokumen baru.
Untuk tesis ini diasumsikan penambahan
dokumen dilakukan oleh seorang administrator atau crawler engine. 2. Melakukan pra-pengolahan dokumen mencakup parsing dokumen ke dalam format tekstual untuk identifikasi term, eliminasi term yang tidak memiliki makna semantik, menghilangkan imbuhan kata. 3. Melakukan pembobotan term hasil proses pra-pengolahan. III-15
4. Mengelompokkan dokumen dengan teknik hybrid clustering-classification. 5. Mengelompokkan struktur dokumen berdasarkan struktur logiknya. 6. Parsing dokumen menjadi dokumen XML untuk mendukung fungsi pengelompokkan struktur dokumen. Dari spesifikasi yang didefinisikan diatas, dikembangkan model sistem pengelompokan menggunakan diagram use case.
Use case mendeskripsikan
interaksi antara actor pengguna sistem dengan sistem, juga mendeskripsikan fungsi-fungsi yang dibutuhkan sistem. Diagram use case untuk aplikasi document classification ditunjukan pada gambar III.7.
Gambar III.7. Diagram Use Case Aplikasi Document Classification
Model pengelompokan dokumen terdiri dari tiga aktor, yaitu administrator, crawler engine, dan classification engine. Administrator dan crawler engine adalah aktor yang melakukan penambahan dokumen baru yang akan dikelompokkan; administrator menambah dokumen secara manual, sedangkan III-16
crawler engine melakukan penambahan dokumen baru secara otomatis. Pada tesis ini tidak dikaji tentang cara kerja crawler engine. Classification engine adalah aktor yang akan mengelompokkan dokumen. Pada model yang dibangun terdapat 14 use cases, dijelaskan pada tabel III.3. Tabel III.3. Deskripsi Use Case Pada Aplikasi Document Classification Use Case
Deskripsi
Add Document
Menambah dokumen baru
Classifying Document
Mengelompokkan dokumen
Extracting
Melakukan ekstraksi dokumen
Doc Parsing
Melakukan parsing dokumen menjadi dokumen dengan format teks (.txt)
Tokenizing
Mengekstrak dokumen menjadi term-term
Stopping
Mengeliminasi stop words
Stemming
Menghapus imbuhan kata dan mengidentifikasi kata dasar
Weighting
Melakukan pembobotan term
Count tf
Melakukan penghitungan frekuensi kemunculan term (tf) pada dokumen
Count idf
Melakukan penghitungan term yang jarang muncul (idf) pada dokumen
Count tf-idf
Melakukan perkalian tf dan idf
Classifying
Melakukan pengelompokkan dokumen
Doc Classifying
Mengelompokkan dokumen ke dalam kelas-kelas dokumen
Structure Classifying
Mengelompokkan elemen dokumen ke dalam kelaskelas struktur dokumen
Berdasarkan deskripsi use cases yang dijelaskan pada tabel III.3, dapat ditentukan kelas-kelas potensial untuk aplikasi document classification, seperti dijelaskan pada tabel III.4. Tabel III.4. Kelas-Kelas Pada Aplikasi Document Classification Kelas LoadDocument
Use Case
Deskripsi
Add Document
Menangani operasi untuk mengambil
III-17
Kelas
Use Case
Deskripsi dokumen baru yang akan diklasifikasi
HTMLParser
Doc Parsing
Menangani operasi parsing dokumen
PDFParser
menjadi format teks (.txt)
WordParser Tokenizer
Tokenizing
Menangani operasi ekstraksi kata dari dokumen
Stopwords
Stopping
Menangani operasi eliminasi stop words
PorterStemmer
Stemming
Menangani operasi penentuan kata dasar (stemming)
CountTF
Count tf
Menangani operasi untuk menghitung frekuensi kemunculan term
CountTFIDF
Count idf
Menangani operasi yang berkaitan
Count tf-idf
dengan pembobotan term; untuk menghitung idf dan tf-idf
DocClusterer
Doc Classifying
Menangani proses clustering dokumen
DocClassifier
Doc Classifying
Menangani proses pengelompokan dokumen dengan teknik classification
ClassifierEstimator Doc Classifying
Menangani proses estimasi akurasi classifier/model hasil proses learning dari teknik classification
XMLParser
Structure Classifying
Menangani operasi parsing dokumen menjadi format XML
StructureClassifier
Structure Classifying
Menangani operasi pengelompokkan struktur dokumen
III.2.3 Perancangan Diagram Kelas Pengelompokkan Dokumen Semistructured Kelas mendeskripsikan konsep domain aplikasi. Diagram kelas mendeskripsikan kelas-kelas dalam sebuah aplikasi.
Diagram kelas untuk aplikasi document
classification digambarkan pada gambar III.8.
III-18
Gambar III.8. Diagram Kelas Aplikasi Document Classification
Beberapa kelas yang berkaitan dapat dibungkus ke dalam satu package. Dari kelas-kelas potensial yang dijelaskan pada tabel III.4 dapat ditentukan package kelas untuk aplikasi document classification, seperti pada tabel III.5. Tabel III.5. Package Kelas Potensial Aplikasi Document Classification Package LoadDocument
Class(es)
Deskripsi
LoadDocument
Menangani operasi untuk mengambil dokumen baru yang akan diklasifikasi
DocParser
HTMLParser
Menangani operasi parsing dokumen
PDFParser
menjadi format teks (.txt)
WordParser FeatureExtractor
Tokenizer
Menangani operasi ekstraksi dokumen
Stopwords
menjadi term-term, eliminasi stop
PorterStemmer
words, dan stemming kata
III-19
Package Weighting
Class(es)
Deskripsi
CountTF
Menangani operasi yang berkaitan
CountTFIDF
dengan pembobotan term
DocumentClassifier DocClusterer
Menangani proses pengelompokkan
DocClassifier
dokumen
ClassifierEstimator StructureClassifier
XMLParser
Menangani proses pengelompokkan
StructureClassifier
struktur dokumen
III.2.4 Desain Struktur Informasi Konten Teks Struktur informasi yang akan didesain adalah struktur kelas klasifikasi dokumen dan struktur kelas elemen-elemen dokumen. III.2.4.1 Struktur Kelas Klasifikasi Struktur kelas klasifikasi adalah bentuk kelas-kelas klasifikasi dokumen yang saling terhubung dan direpresentasikan dalam bentuk hirarki atau struktur pohon; disebut juga hirarki klasifikasi. Struktur kelas klasifikasi yang didesain adalah bentuk category tree, dimana kelas-kelas disusun sebagai sebuah pohon, dan dokumen dikelompokkan pada kelas internal dan kelas leaf (kelas yang tidak dapat dibagi lagi). Hirarki klasifikasi ini merepresentasikan pohon pengelompokkan dokumen. Root pohon, disebut Top, adalah kelas tunggal yang menyimpan semua dokumen. Pada level-1 terdapat 12 kelas klasifikasi; setiap kelas dapat memiliki satu atau beberapa sub-kelas, yang menjadi kelas-kelas klasifikasi pada level-2, dan seterusnya hingga kelas klasifikasi tidak dapat dibagi lagi.
Gambar III.9
menunjukkan struktur atau direktori kelas klasifikasi level 1 dan beberapa subkelas pada level 2; struktur yang lebih detil pada lampiran A. Struktur hirarki klasifikasi yang di desain untuk tesis ini diadopsi dari struktur hirarki direktori ODP dan direktori Yahoo [1, 2].
III-20
Architecture Arts Art History Accounting Business E-commerce Computer Science Computers Hardware By Subject TOP
Education Distance Learning Diseases Health Nutrition Media News Journalism
Biology Science Mathematic Gambar III.9. Struktur Kelas Klasifikasi Dokumen
III.2.4.2 Struktur Kelas Elemen Dokumen Struktur kelas elemen dokumen adalah kelas-kelas untuk mengelompokkan elemen-elemen dokumen menurut struktur logiknya; sehingga, struktur kelas yang akan di desain adalah struktur kelas untuk setiap dokumen. Sebuah dokumen III-21
dapat memiliki struktur logik yang berbeda dari dokumen lainnya.
Untuk
mengurangi jumlah struktur kelas yang harus di desain, sebuah struktur kelas dibuat untuk dokumen yang bertipe sama. Dengan kata lain, struktur kelas dibuat menurut tipe dokumen; karena, pada umumnya, dokumen yang bertipe sama memiliki struktur logik yang serupa. Tipe dokumen yang digunakan sebagai contoh pada tesis ini adalah buku, paper, technical report, tesis, artikel, halaman web, prosiding, jurnal, dan majalah.
Gambar III.10 & III.11 menunjukkan
struktur kelas untuk tipe dokumen buku dan paper; struktur kelas untuk tipe dokumen lainnya pada lampiran B. Book Title
Author(s)
Edition
Year
Publisher
ISBN
Content
Gambar III.10. Struktur Kelas Dokumen Buku
Paper Title
Author(s)
Source
Abstract
SourceName
SourceVolume
SourceYear
SourcePublisher
Content
Gambar III.11. Struktur Kelas Dokumen Paper
III.2.5 Perancangan Basis Data Pengelompokkan Dokumen Semi-structured Basis data pada aplikasi pengelompokkan dokumen semi-structured menyimpan deskripsi dokumen, kelas-kelas klasifikasi yang menyimpan dokumen menurut kategori tertentu, dan kelas struktur dokumen.
Gambar III.12 menjelaskan
struktur basis data untuk aplikasi document classification yang dikaji pada tesis ini. Skema basis data pada gambar terdiri dari tabel Document, Term, Class, DocClass, ClassTerm, Cluster, DocCluster, TermWeight, DocType, DocStructure, BookDoc, PaperDoc, dan PaperSource. Masing-masing tabel dijelaskan sebagai III-22
berikut: tabel Document menyimpan deskripsi dokumen, tabel Term menyimpan term hasil proses pra-pengolahan dokumen, tabel Class menyimpan kelas-kelas atau kategori dokumen, tabel DocClass menyimpan informasi tentang dokumen dan kelasnya, tabel ClassTerm menyimpan term-term yang mungkin untuk kelas tertentu, tabel Cluster menyimpan cluster-cluster dokumen, tabel DocCluster menyimpan informasi tentang dokumen dan cluster-nya, tabel TermWeight menyimpan hasil pembobotan term. Tabel DocType menyimpan informasi tipe dokumen seperti buku, paper, tesis, artikel, dan sebagainya. Tabel DocStructure menyimpan informasi struktur atau elemen dokumen, yang menyatakan kelaskelas struktur dokumen. Setiap tipe dokumen memiliki pola struktur logik yang berbeda dengan tipe dokumen lain. Sebagai contoh: buku dapat memiliki elemen seperti Title, Author, Edition, Year, Publisher, dan sebagainya; paper dapat memiliki elemen seperti Title, Author, Source (sumber dimana paper dipublikasikan), Abstract, dan sebagainya. Title dan Author merupakan elemen yang dimiliki sebagian besar dokumen, sehingga kedua elemen ini disimpan dalam tabel DocStructure, dan sisa elemen lain disimpan dalam tabel terpisah menurut tipe dokumennya. Untuk tipe dokumen paper, dapat dipublikasikan pada sebuah jurnal atau prosiding. Tabel PaperSource menyimpan informasi sumber dimana paper tersebut dimuat.
III-23
Gambar III.12. Basis Data Aplikasi Document Classification
III-24