Datamining terutama digunakan untuk mencari pengetahuan yang terdapat dalam basis data
yang besar sehingga sering disebut Knowledge Discovery in Databases (KDD). Proses
pencarian pengetahuan ini menggunakan berbagai teknik-teknik pembelajaran komputer
(machine learning) untuk menganalisis dan mengekstraksikannya. Proses pencarian bersifat
iteratif dan interaktif untuk menemukan pola atau model yang sahih, baru, bermanfaat, dan
dimengerti. Dalam penerapannya dataminig memerlukan berbagai perangkat lunak analisis
data untuk menemukan pola dan relasi data agar dapat digunakan untuk membuat prediksi
dengan akurat.
Masalah kinerja
Efisiensi dan skalabilitas data mining / Efficiency and scalability of data mining
algorithms− algoritma untuk secara efektif mengekstrak informasi dari sejumlah besar
data dalam database, data pertambangan algoritma harus efisien dan scalable.
Paralel, didistribusikan dan inkremental mining algoritma / Parallel, distributed, and
incremental mining algorithms − faktor-faktor seperti ukuran besar database, distribusi
data, dan kompleksitas dari metode pertambangan data memotivasi pengembangan data
paralel dan didistribusikan mining algoritma. Algoritma ini membagi data ke partisi yang
diproses lebih lanjut dalam mode paralel. Kemudian hasil dari partisi digabungkan.
Algoritma inkremental, update database tanpa pertambangan data lagi dari awal.
Class adalah attribute CollegePlans yang berisi dua pernyataan, Yes dan No, perhatikan
ini.
Sebuah Classification Model akan menggunakan atribut lain dari kasus tersebut (input
attribut; yaitu kolom IQ, Gender, ParentIncome, dan ParentEncouragement) untuk dapat
menentukan pola (pattern) class (Output Attribute; yaitu Kolom CollegePlans yang berisi
Yes atau No).
Algoritma Data Mining yang membutuhkan variabel target untuk belajar (sampai
mendapatkan rule / pola yang berlaku pada data tersebut) kita standarkan dengan sebutan
dengan Supervised Algorithm. Yang termasuk kepada Classification Algorithm adalah
Decision Trees, Neural Network dan Naives Bayes.
Clustering
Clustering juga disebut sebagai segmentation. Metoda ini digunakan untuk
mengidentifikasi kelompok alami dari sebuah kasus yang di dasarkan pada sebuah
kelompok atribut, mengelompokkan data yang memiliki kemiripan atribut. Gambar ini
menunjukkan kelompok data pelanggan sederhana yang berisi dua atribut, yaitu Age
(Umur) dan Income (Pendapatan). Algoritma Clustering mengelompokkan kelompok
data kedalam tiga segment berdasarkan kedua atribut ini.
Cluster 1 berisi populasi berusia muda dengan pendapatan rendah
Cluster 2 berisi populasi berusia menengah dengan pendapatan yang lebih tinggi
Cluster 3 berisi populasi berusia tua dengan pendapatan yang relatif rendah.
Clustering adalah metode data mining yang Unsupervised, karena tidak ada satu
atributpun yang digunakan untuk memandu proses pembelajaran, jadi seluruh atribut
input diperlakukan sama. Kebanyakan Algoritma Clustering membangun sebuah model
melalui serangkaian pengulangan dan berhenti ketika model tersebut telah memusat atau
berkumpul (batasan dari segmentasi ini telah stabil).
Association
Association juga disebut sebagai Market Basket Analysis. Sebuah problem bisnis yang
khas adalah menganalisa tabel transaksi penjualan dang mengidentifikasi produk-produk
yang seringkali dibeli bersamaan oleh customer, misalnya apabila orang membeli sambal,
biasanya juga dia membeli kecap. Kesamaan yang ada dari data pembelian digunakan
untuk mengidentifikasi kelompok kesamaan dari produk dan kebiasaan apa yang terjadi
guna kepentingan cross-selling seperti gambar dibawah ini.
Regression
Metode Regression mirip dengan metode Classification, yang membedakannya adalah
metode regression tidak bisa mencari pola yang dijabarkan sebagai class (kelas). Metoda
regression bertujuan untuk mecari pola dan menentukan sebuah nilai numerik.
Sebuah Teknik Linear Line-fitting sederhana adalah sebuah contoh dari Regression,
dimana hasilnya adalah sebuah fungsi untuk menentukan hasil yang berdasarkan nilai
dari input. Bentuk yang lebih canggih dari regression sudah mendukung input berupa
kategori, jadi tidak hanya input berupa numerik. Teknik paling popular yang digunakan
untuk regression adalah linear regression dan logistic regression. Teknik lain yang
didukung oleh SQL Server Data mining adalah Regression Trees (bagian dari dari
algoritma Microsoft Decission Trees) dan Neural Network.
Regression digunakan untuk memecahkan banyak problem bisnis, contohnya untuk
memperkirakan metode distribusi, kapasitas distribusi, musim dan untuk memperkirakan
kecepatan angin berdasarkan temperatur, tekanan udara, dan kelembaban.
Forecasting
Forecasting adalah metode data mining yang sangat penting. Contohnya digunakan untuk
menjawab pertanyaan seperti berikut:
o Seperti apa jadinya nilai saham dari Microsoft Corporation (pada NASDAQ,
disimbolkan sebagai MSFT) pada keesokan hari?
o Sebanyak apa penjualan produk tertentu pada bulan depan?
Gambar diatas menunjukkan dua kurva, garis yang tegas adalah time-series data
sebenarnya dari nilai saham Microsoft, dan garis putus-putus adalah time series model
yang memprediksi nilai saham berdasarkan nilai saham pada masa lalu.
Sequence Analysis
Sequence Anlysis digunakan untuk mencari pola pada serangkaian kejadian yang disebut
dengan Sequence. Sebagai contoh sebuah DNA terdiri dari rangaian bagian: A, G, C, dan
T. dan rangkaian klik pada sebuah website berisi rentetan URL. Pada kejadian nyata anda
mungkin memodelkan pembelian oleh pelanggan sebagai sebuah sequence (rangkaian)
data, rangkaian tersebut adalah:
Pertama-tama Seorang pelanggan membeli komputer
kemudian membeli speaker
dan akhirnya membeli sebuah webcam.
Baik Sequence maupun time-series data mempunyai kemiripan, mereka sama sama berisi
tinjauan berdekatan yang urutannya bergantung. Bedanya adalah sebuah time-series
berisi data bertipe numerik, dan sebuah sequence series berisi bagian yang khas. Gambar
ini menunjukan rangkaian klik pada sebuah website berita. Setiap node adalah sebuah
kategori URL. Dan garis melambangkan transisi antar kategori URL tersebut. Setiap
transisi di kelompokan dengan sebuah bobot yang menggambarkan kemungkinan transisi
antara satu URL dan URL yang lain.
High dimensionality
– Data set dengan komponen temporal dan spasial seringkali merupakan data berdimensi
tinggi
– Metode: pengurangan atribut
Analisis non-tradisional
– Pendekatan berorientasi hipotesis vs pendefinisian hipotesis dan evaluasi otomatis
• Pendekatan statistik tradisional berdasat pada paradigma hipotesis dan pengujian.
Eksperimen dan analisis data didesain untuk membuktikan kebenaran hipotesis.
– Dataset bukan merupakan sampel random
– Dataset merupakan non-traditional distribution
BAB 2 Data
2.1 Definisi dan Tipe Data
Menurut Turban et al, data adalah deskripsi dasar tentang sesuatu, kejadian, kegiatan, dan
transaksi yang ditangkap, direkam, disimpan, dan diklasifikasikan namun tidak terorganisir
untuk menyampaikan suatu arti khusus.
Menurut McLeod dan Schell, data terdiri dai fakta dan gambaran yang secara umum tidak
dapat digunakan oleh user (perlu diolah).
Dari kedua definisi diatas, dapat diambil kesimpulan bahwa data adalah fakta yang masih
mentah dan belum memiliki arti bagi pengguna karena belum diolah. Dalam definisi lain,
data adalah catatan atas kumpulan fakta. Data merupakan bentuk jamak dari datum,berasal
dari bahasa Latin yang berarti "sesuatu yang diberikan". Dalam penggunaan sehari-hari data
berarti suatu pernyataan yang diterima secara apa adanya. Pernyataan ini adalah hasil
pengukuran atau pengamatan suatu variabel yang bentuknya dapat berupa angka, kata-kata,
atau citra.
Data adalah sesuatu yang belum mempunyai arti bagi penerimanya dan masih memerlukan
adanya suatu pengolahan. Data bisa berujut suatu keadaan, gambar, suara, huruf, angka,
matematika, bahasa ataupun simbol-simbol lainnya yang bisa kita gunakan sebagai bahan
untuk melihat lingkungan, obyek, kejadian ataupun suatu konsep.
Tipe Data adalah jenis nilai yang dapat ditampung oleh suatu variabel.
Jenis-jenis Tipe Data:
1. Tipe data primitive (Sederhana)
Tipe data primitive adalah Tipe data yang mampu menyimpan satu nilai tiap satu
variabel. Tipe data primitive merupakan tipe data dasar yang sering dipakai oleh
program. Contoh tipe data primitive adalah tipe numerik (integer dan real), tipe data
karakter/char, tipe data boolean.
1. Numeric
Tipe data numeric digunakan pada variabel atau konstanta untuk menyimpan nilai
dalam bentuk angka. Tipe data ini terbagi atas integer, dan real.
a. Integer
Integer Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa
kategori seperti table dibawah ini
2. Karakter (char)
Karakter merupakan tipe data yang hanya mampu menyimpan 1 digit karakter.
Ukuran untuk tipe data karakter adalah 1 byte (1 byte = 8 bit). Adapun macam
karakter yang ada sejumlah 256 macam karakter yaitu dari kode karakter (ASCII), 0
sampai dengan 255. Untuk penulisan karakter menggunakan tanda petik tunggal (‘ )
di depan dan belakang karakter yang ditulis. Contoh : ‘a’, ‘A’,’&’ dll.
Nilai-nilai yang termasuk karakter adalah :
a. Karakter huruf : ‘a’..’z’,’A’..’Z’
b. Karakter angka : ‘0’..’9’
c. Karakter tanda baca : titik, koma, titik koma, titik dua dan sebagainya
d. Karakter khusus : $, %, #, @ dan sebagainya.
3. Boolean
Boolean merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE
(benar) atau FALSE (salah). Tipe data boolean memakai memori paling kecil.
A. Array
Array atau sering disebut sebagai larik, adalah tipe data yang sudah terstruktur
dengan baik, meskipun masih sederhana. Array mampu menyimpan sejumlah data
dengan tipe yang sama (homogen) dalam sebuah variabel. Sebagai ilustrasi, array
mampu menampung banyak data namun dengan satu tipe data yang sama, misalnya
integer saja. Setiap lokasi data array diberi nomor indeks yang berfungsi sebagai
alamat dari data tersebut.
C. Image
Image, atau gambar, atau citra, merupakan tipe data grafik. Misalnya grafik
perkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan, dan lain-lain.
Pada bahasa-bahasa pemrograman modern terutama yang berbasis visual, tipe data ini
telah didukung dengan sangat baik.
D. Date Time
Nilai data untuk tanggal (date) dan waktu (time) secara internal disimpan dalam
format yang spesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data
Date dapat digunakan untuk menyimpan, baik tanggal maupun jam. Tipe data ini
masuk dalam kelompok tipe data composite, karena merupakan bentukan dari
beberapa tipe data.
E. Object
Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-
obyek yang disediakan oleh Visual Basic, Delphi, dan bahasa pemrograman lain yang
berbasis GUI. Sebagai contoh, apabila mempunyai form yang memiliki control
Command button, yang kita beri nama Command1.
F. Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan nilai
tertentu sesuai dengan yang ditetapkan programmer. Biasanya, tipe data ini
mempunyai nilai batas minimum dan nilai batas maksimum. Tipe data ini didukung
dengan sangat baik dalam Delphi.
G. Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus
disebut satu persatu, dan bernilai konstanta integer sesuai dengan urutannya. Nilai
konstanta integer elemen ini diwakili oleh suatu nama variable yang ditulis di dalam
kurung. Tipe data ini juga dijumpai pada Delphi, dan bahasa pemrograman deklaratif
seperti SQL.
Pada contoh di atas, tipe data Hari_dlm_Minggu termasuk enumerasi dengan rentang
nilai Nol, dimana Senin sampai dengan Minggu dan nilai data dari 0, 1, sampai
dengan 7. Sedangkan tipe data Nama_Bulan termasuk enumerasi dengan rentang nilai
Nol, Januari sampai dengan Desember dan nilai data dari 0, 1, sampai dengan 12.
Salah satu manfaat dari penggunaan tipe data set adalah untuk mengecek apakah
suatu nilai muncul dalam suatu range tertentu. Misalnya, untuk menentukan apakah
suatu karakter berupa Lower Case Letter (huruf kecil), mis. Ch adalah tipe Char, kita
bisa menulis, if (Ch >= 'a') and (Ch <= 'z') then Writeln( Ch,' merupakan huruf
kecil.'); atau, dengan notasi set, kita bisa menulis, if Ch in ['a'..'z'] then Writeln( Ch,'
merupakan huruf kecil.');
a. Tidak Lengkap
Data hilang / Kosong
Kekurangan atribut tertentu atau atribut yang sesuai
Hanya berisi data agregat
b. Noise
Mengandung kesalahan
Mengandung data yang outlier
c. Tidak Konsisten
Mengandung perbedaan dalam kode atau nama
Maka dari itu pentingnya melakukan Data Preprocesing dikarenakan data yang tidak
berkualitas akan menghasilkan kualitas mining yang tidak baik. Lalu Data Preprocessing,
cleaning, dan transformasi merupakan pekerjaan mayoritas dalam aplikasi data mining.
Kualitas Data
Pandangan kualitas data multidimensional yang diterima dengan baik yakni:
Ketepatan
Kelengkapan
Konsistensi
Ketepatan waktu
Percaya diri
Interpretabilitas
Aksesibilitas
Sumber
a. Pembersihan Data
Isi nilai yang hilang
Data noise yang halus
Mengidentifikasi dan menghapus outlier
Menyelesaikan inkonsistensi
b. Integrasi Data
Integrasi beberapa database, kubus data, atau file
c. Transformasi Data
Normalisasi dan agregasi
d. Pengurangan Data
Memperoleh penurunan representasi dalam volume tetapi menghasilkan hasil analitis
yang sama atau serupa
e. Diskretisasi Data
Pengurangan data namun sangat penting, terutama untuk data numerik
Banyak lagi pembahasan yang masih belum saya rangkum kedalam sebuah tulisan
sebagai bahan pembelajaran. Karena untuk memahami metode pembelajaran Data
Mining dibutuhkan waktu dan juga kesabaran untuk memahami segala hal. Ada kalanya
membaca itu menjadi jembatan bagi kita untuk menggali sejuta wawasan yang ada di
dunia ini. Tat kala seseorang yang ingin terjun ke dunia Teknik Informatika ini akan jadi
langkah awal baginya yang ingin membuka pola pikir untuk berlogikaria yang
merupakan makanan sehari-hari programmer yaitu wajib memiliki logika serta
berdedikasi tinggi dalam mempelajari segala macam ilmu yang berkaitan dengan
Informatika.
8. Data Integration
Integrasi data merupakan proses mengkombinasikan dua atau lebih set data agar
mempermudah dalam berbagi dan analisis, dalam rangka mendukung manajemen
informasi di dalam sebuah lingkungan kerja. Integrasi data menggabungkan data dari
berbagai sumber database yang berbeda ke dalam sebuah penyimpanan seperti gudang
data (data warehouse).
Alasan perlunya dilakukan integrasi data adalah:
Data yang sama (misalnya: data penduduk) dapat dipakai bersama antar bagian
organisasi (antar instansi).
Data suatu instansi dapat dipakai bersama oleh instansi-instansi lain yang
memerlukan (tidak perlu ada duplikasi data dalam suatu lingkungan organisasi).
Meskipun fokus integrasi adalah data, tapi perlu juga integrasi hal-hal lain yang
terkait.
Integrasi data perlu dilakukan secara cermat karena kesalahan pada integrasi data
bisa menghasilkan ouput/keluaran yang menyimpang dan bahkan menyesatkan
pengambilan keputusan nantinya.
Syarat integrasi data dapat dipenuhi dengan berbagai cara seperti konsisten dalam
penamaan variabel, konsisten dalam ukuran variabel, konsisten dalam struktur
pengkodean dan konsisten dalam atribut fisik dari data. Masalah-masalah yang ada pada
integrasi data yaitu heterogenitas data, otonomi sumber data, kebenaran dan kinerja
query/permintaan.
Integrasi data membuat penyatuan pandangan dari data bisnis. Pandangan ini bisa dibuat
dengan bermacam teknik, yang akan kita paparkan selanjutnya. Bagaimanapun juga,
integrasi data bukanlah jalan satu-satunya untuk data bisa digabungkan melalui sebuah
perusahaan.
9. Data Reduction
Teknik ini dilakukan dengan cara mengurangi jumlah data sehingga resource yang
digunakan lebih sedikit, sehingga prosesnya dapat lebih cepat dilakukan dengan langkah
sebagai berikut:
4. Sampling/generalisasi.
5. Agregasi, seperti agregasi padat ransformasi. Data ribuan memiliki volume byte yang
lebih kecil dari pada data jutaan.
6. Mengurangi atribut yang tidak perlu (korelasi yang rendah terhadap keseluruhan data)
7. Kompresi data.
Generalization
Generalization atau generalisasi adalah ketika data level rendah (low-level data) diganti
dengan konsep yang lebih tinggi, yaitu dengan melakukan diskretisasi. Teknik
diskretisasi dapat digunakan untuk mereduksi sekumpulan nilai yang terdapat pada
atribut continuous, dengan membagi range dari atribut ke dalam interval.
Proses diskretisasi secara umum terdiri dari 4 tahapan, yaitu:
1. Sorting, melakukan sorting nilai atribut continuous yang mau didiskretisasi.
2. Memilih “cut-point”, banyak fungsi evaluasi yang dapat digunakan seperti binning
dan pengukuran entropy.
3. Splitting, dilakukan evaluasi cut-point yang ada dan pilih satu yang terbaik dan
lakukan split range nilai atribut continuous ke dalam dua partisi. Diskretisasi berlanjut
untuk tiap partisi sampai kondisi berhenti tercapai.
4. Stopping criterion, diperlukan untuk menghentikan proses diskretisasi.
Normalization
Normalization atau normalisasi adalah proses transformasi dimana sebuah atribut
numerik diskalakan dalam range yang lebih kecil seperti -1.0 sampai 1.0, atau 0.0 sampai
1.0.
Ada beberapa metode/teknik yang diterapkan untuk normalisasi data, diantaranya:
Min-max Normalization: Min-max normalization memetakan sebuah value v dari
atribut A menjadi v’ ke dalam range [new_minA, new_maxA] berdasarkan rumus
Z-Score Normalization: Disebut juga zero-mean normalization, dimana value dari
sebuah atribut A dinormalisasi berdasarkan nilai rata-rata dan standar deviasi dari
atribut A.
Normalization by Decimal Scaling: Normalisasi yang diperoleh dengan melakukan
penggeseran titik desimal dari value sebuah atribut A. Jumlah titik desimal yang
digeser tergantung dari nilai absolut maksimum dari atribut A.
Aggregation
Adalah operasi summary (peringkasan) diaplikasikan pada data numerik. Misalnya pada
data penjualan harian digabungkan untuk menghitung pendapatan perbulan dan pertahun
dengan dirata-rata atau ditotal. Langkah ini dilakukan dengan memanfaatkan operator
data cube (operasi roll up/meringkas).
Attribute/Feature Construction
Pada attribute construction, atribut baru dibentuk dari atribut yang sudah ada dan
ditambahkan bersama atribut lainnya untuk membantu meningkatkan ketelitian/ketepatan
dan pemahaman struktur dalam high-dimensional data. Contohnya, mau menambahkan
atribut luas berdasarkan atribut tinggi dan lebar. Atau, atribut lama kerja jadi dosen dan
usia bisa digantikan dengan senioritas, yunioritas, dan orientasi.
2. Integrated (Integrasi)
Data warehouse dapat menyimpan data-data yang berasal dari sumber-sumber yang
terpisah ke dalam suatu format yang konsisten dan saling terintegrasi satu sama lain.
Data tidak dapat dipecah-pecah karena data yang ada merupakan suatu kesatuan yang
menunjang keseluruhan konsep data warehouse itu sendiri.
Syarat integrasi sumber data dapat dipenuhi dengan cara konsisten dalam penamaan
variabel, ukuran variabel, dan atribut fisik dari data. Misalnya untuk tabel pelanggan
yang berasal dari sumber data I, format untuk jenis kelamin menggunakan format F
dan M (Female dan Male). Sedangkan untuk tabel pelanggan yang berasal dari
sumber data II menggunakan format P dan L (Perempuan dan Laki-Laki). Maka data
tersebut sebelum masuk ke dalam data warehouse harus dilakukan integrasi terlebih
dahulu. Misalnya memilih format dari salah satu sumber data atau menggunakan
format yang baru, misalnya 0 untuk perempuan/female dan 1 untuk laki-laki/male.
4. Non Volatile
Data pada data warehouse tidak di-update secara real time, tetapi di-refresh dari
sistem operasional secara reguler. Data yang baru selalu ditambahkan sebagai
tambahan bagi database itu sendiri. Database tersebut secara berkesinambungan
mengambil data baru ini, dan kemudian disatukan dengan data sebelumnya.
Data yang berada dalam data warehouse bersifat read-only, dan tidak berubah setiap
saat sehingga hanya terdapat dua kegiatan dalam data warehouse, yaitu mengambil
data (loading data), dan akses data (mengakses data warehouse, seperti melakukan
query untuk menampilkan laporan yang dibutuhkan, tidak ada kegiatan updating
data).
Sehingga database tersebut didesain atau dirancang khusus untuk menangani kegiatan
operasional atau transaksi dari suatu toko atau perusahaan.
Hal ini jelas berbeda dengan data warehouse karena data warehouse menyimpan data
yang bersifat historical dan digunakan untuk menangani kegiatan penyajian
informasi.
2. Orientasi
OLTP lebih berorientasi pada transaksi, sedangkan data warehouse lebih
diorientasikan pada proses untuk melakukan analisis.
3. Struktur Data
Karena OLTP diorientasikan pada proses transaksi, maka query yang digunakan lebih
dioptimalkan untuk mendukung proses transaksi tersebut. Sehingga harus dihindarkan
dari data yang berulang-ulang atau redudan. Dalam hal ini, perancangannya
membutuhkan normalisasi.
Sedangkan dalam data warehouse yang berorientasi pada proses query untuk
menghasilkan suatu informasi yang lengkap dan akurat, maka memungkinan
terjadinya data yang berulang-ulang karena dibutuhkan akses yang cepat dalam
query-nya. Dalam hal ini, perancangannya haruslah denormalisasi.
4. Tipe Data
Dalam hal tipe data, data yang dimiliki oleh OLTP bersifat bernilai sekarang. Hal ini
disebabkan karena OLTP menyimpan data operasional atau transaksi yang terjadi
secara terus-menerus dalam suatu perusahaan atau toko.
Sedangkan data warehouse memiliki data yang bersifat historical, karena data
tersebut hanya akurat pada saat proses ETL (update) dilaksanakan atau berdasarkan
periode yang telah ditentukan.
5. Frekuensi Akses
Frekuensi dalam mengakses OLTP sangat tinggi karena data terus-menerus
dibutuhkan untuk mendukung kegiatan operasional atau transaksi dalam suatu
perusahaan atau toko. Contoh : dalam sistem informasi penjualan, dimana data yang
terdapat dalam tabel yang berisi informasi barang akan sangat ditinggi diakses untuk
mendukung proses transaksi (misalnya harga barang).
Sedangkan dalam data warehouse, frekuensi aksesnya sangat sedang dan bahkan
dapat dikatakn rendah, hal ini disebabkan karena data warehouse hanya diakses pada
saat proses analisis dibutuhkan.
Skema bintang dan skema snowflake adalah sarana untuk mengorganisir data mart – data
mart atau gudang-gudang data dengan menggunakan basis data relasional. Kedua skema
tersebut menggunakan tabel-tabel dimensi untuk mendeskripsikan data-data yang
terdapat di dalam tabel fakta.
Setiap perusahaan pada umumnya menjual produk, pengetahuan, maupun jasa. Sehingga
sistem penjualan adalah sebuah sistem yang terdapat di sebagian besar perusahaan.
Berikut ini dijelaskan mengenai model penjualan baik skema bintang maupun skema
snowflake.
Karakteristik utama dari skema bintang adalah bahwa tabel dimensinya tidak
dinormalisasi. Pada model di atas, tabel fakta fact_sales (warna merah muda)berisi data-
data yang diekstrakdari database operasional. Sedangkan tabel yang berwarna biru muda
adalah tabel dimensi. Pada gambar di atas terdapat lima tabel dimensi yaitu
dim_sales_type, dim_store, dim_employee, dim_product, dan dim_time.
Dari model ini, kita dapat dengan mudah melihat mengapa skema ini disebut ‘skema
bintang’, karena model tersebut terlihat seperti bintang, dengan tabel dimensi yang
mengelilingi tabel fakta.
Skema snowflakejuga menyimpan data yang sama seperti pada skema bintang. Tabel
fakta yang digunakan pada skema bintang maupun pada skema snowflake berisi field-
field yang sama. Perbedaan utama antara skema bintang dan skema snowflake adalah
semua tabel dimensi pada skema snowflake telah dinormalisasi. Proses normalisasi tabel-
tabel dimensi pada skema snowflake ini disebut dengan proses snowflaking,sehingga
tampilan tabel-tabel pada skema snowflake bentuknya menyerupai snowflake.
Seperti yang telah disebutkan di atas, normalisasi adalah perbedaan utama antara skema
bintang dengan skema snowflake. Beberapa hal yang harus diperhatikan adalah sebagai
berikut:
1. Skema snowflake menggunakan ruang penyimpanan yang lebih kecil dibandingkan
ruang penyimpanan pada skema bintang. Hal ini disebabkan karena tabel-tabel
dimensi yang telah dinormalisasi memiliki record-record yang efisien karena tidak
terjadi pengulangan data-data yang sama.
2. Tabel dimensi yang tidak dinormalisasi dapat menyebabkan masalah integritas data.
Karena data-data yang sama bisa muncul berulang-ulang, bahkan bisa juga terjadi
kesalahan pengetikan pada data-data yang sama tersebut. Sehingga pada skema
bintang harus dilakukan pengecekan dan maintenance secara berkala.
3. Penyimpanan data pada skema snowflake lebih terorganisir dan lebih rapi
dibandingkan dengan skema bintang.
BAB 5 CLUSTERING
5.1 Konsep dasar Clustering
Clustering atau klasterisasi adalah metode pengelompokan data. Menurut Tan, 2006
clustering adalah sebuah proses untuk mengelompokan data ke dalam beberapa cluster atau
kelompok sehingga data dalam satu cluster memiliki tingkat kemiripan yang maksimum dan
data antar cluster memiliki kemiripan yang minimum.
Clustering merupakan proses partisi satu set objek data ke dalam himpunan bagian yang
disebut dengan cluster. Objek yang di dalam cluster memiliki kemiripan karakteristik antar
satu sama lainnya dan berbeda dengan cluster yang lain. Partisi tidak dilakukan secara
manual melainkan dengan suatu algoritma clustering. Oleh karena itu, clustering sangat
berguna dan bisa menemukan group atau kelompokyang tidak dikenal dalam data.
Clustering banyak digunakan dalam berbagai aplikasi seperti misalnya pada business
inteligence, pengenalan pola citra, web search, bidang ilmu biologi, dan untuk keamanan
(security). Di dalam business inteligence, clustering bisa mengatur banyak customer ke
dalam banyaknya kelompok. Contohnya mengelompokan customer ke dalam beberapa
cluster dengan kesamaan karakteristik yang kuat. Clustering juga dikenal sebagai data
segmentasi karena clustering mempartisi banyak data set ke dalam banyak group
berdasarkan kesamaannya. Selain itu clustering juga bisa sebagai outlier detection.
5.2 Clustering Type
1. Partitional Clustering
Pembagian objek data ke dalam non-overlapping subset (cluster) sehingga setiap objek
data adalah tepat satu subset
2. Hirerarchical Clustering
Sehimpunan cluster bersarang yang diorganisasikan sebagai struktur hirarki pohon.
5.2 Metode Clustering
Metoda berbasis Partisi
Partitional clusteringyaitu data dikelompokkan ke dalam sejumlah cluster tanpa adanya
struktur hirarki antara satu dengan yang lainnya. Pada metode partitional clusteringsetiap
cluster memiliki titik pusat cluster (centroid) dan secara umum metode ini memiliki fungsi
tujuan yaitu meminimumkan jarak (dissimilarity) dari seluruh data ke pusat cluster masing-
masing. Contoh metode partitional clustering: K-Means, Fuzzy K-means dan Mixture
Modelling.
Metoda berbasis Hirarki
Pada hierarchical clusteringdata dikelompokkan melalui suatu bagan yang berupa hirarki,
dimana terdapat penggabungan dua grup yang terdekat disetiap iterasinya ataupun
pembagian dari seluruh set data kedalam cluster.
Langkah melakukan Hierarchical clustering:
Identifikasi item dengan jarak terdekat
Gabungkan item itu kedalam satu cluster
Hitung jarak antar cluster
Ulangi dari awal sampai semua terhubung
Contoh metode hierarchy clustering: Single Linkage, Complete Linkage, Average Linkage,
Average Group Linkage.
Metoda berbasis Kepadatan
Metoda berbasis
BAB 6 KLASIFIKASI
6.1 Konsep dasar Klasifikasi
Klasifikasi adalah suatu pengelompokan data dimana data yang digunakan tersebut
mempunyai kelas label atau target.
Klasifikasi digunakan untuk memprediksi label clas (diskrit atau kontinu) serta
mengklasifikasi data (membangun model) yang didasarkan pada data training dan nilai
label class dalam mengklasifikasikan atribut dan menggunakannya saat
mengklasifikasikan data baru.
a. Klasifikasi Bayes
Model Naïve Bayes adalah klasifikasi statistikk yang dapat digunakan untuk
memprediksi suatu kelas. Model Naïve Bayes dapat diasumsikan bahwa efek dari suatu
nilai atribut sebuah kelas yang diberikan adalah bebas dari atribut-atribut lain. Kelebihan
yang dimiliki oleh Naïve Bayes adalah dapat menangani data kuantitatif dan data diskrit,
Naïve Bayes kokoh terhadap noise, Naïve Bayes hanya memerlukan sejumlah kecil data
pelatihan untuk mengestimasi parameter yang dibutuhkan untuk klasifikasi, Naïve Bayes
dapat menangani nilai yang hilang dengan mengabaikan instansi selama perhitungan
estimasi peluang, Naïve Bayes cepat dan efisiensi ruang.
b. Decission Tree
Decision tree merupakan salah satu metode klasifikasi yang menggunakan representasi
struktur pohon (tree) di mana setiap node merepresentasikan atribut, cabangnya
merepresentasikan nilai dari atribut, dan daun merepresentasikan kelas. Node yang paling
atas dari decision tree disebut sebagai root. Decision tree merupakan metode klasifikasi
yang paling populer digunakan. Selain karena pembangunannya relatif cepat, hasil dari
model yang dibangun mudah untuk dipahami.
Pada decision tree terdapat 3 jenis node, yaitu:
C. Root Node, merupakan node paling atas, pada node ini tidak ada input dan bisa tidak
mempunyai output atau mempunyai output lebih dari satu.
D. Internal Node , merupakan node percabangan, pada node ini hanya terdapat satu input
dan mempunyai output minimal dua.
E. Leaf node atau terminal node , merupakan node akhir, pada node ini hanya terdapat
satu input dan tidak mempunyai output.
Tetapi ini tidak adil bagi seseorang yang mendapatkan penghasilan $49.000 sehingga bila
menggunakan metode fuzzy logic:
g. Evaluation Method
Metode evaluasi adalah tolak ukur untuk memeriksa efisiensi dan kinerja model apa pun.
Evaluasi penting untuk memahami kualitas model atau teknik untuk memperbaiki
parameter dalam proses pembelajaran berulang dan untuk memilih model atau teknik
yang paling dapat diterima dari seperangkat model atau teknik yang diberikan. Ada
beberapa kriteria yang dapat menjadi penting juga, seperti kompleksitas komputasional
atau komprehensibilitas model. Langkah-langkah yang paling banyak digunakan untuk
mengevaluasi kinerja teknik yang digunakan untuk melaksanakan tugas data mining yang
berbeda.
Arsitektur QAS
Umumnya arsitektur question answering system yang berbasis teks dibangun atas enam
tahapan proses, yaitu analisis pertanyaan, preprocessing koleksi dokumen, pemilihan
kandidat dokumen, analisis kandidat dokumen, ekstraksi jawaban, dan pemberian respon.
Aplikasi-aplikasi QA system (baik yang dapat diakses melalui internet maupun tidak)
yang dikembangkan dengan ciri khasnya masing-masing memiliki urutan proses yang
tidak jauh berbeda satu dengan lainnya. Jawaban yang dikembalikan oleh sebuah QA
system sebagai respon terhadap pertanyaan perlu dievaluasi untuk menilai performansi
sistem.
Implementasi QAS
Berdasarkan penelitian berjudul “Implementasi Question Answering System (QAS)
dengan Metode Rule-Based Untuk Temu Kembali Informasi Berbahasa Indonesia” yang
dibangun oleh Ikhsani dan Nafi tahun 2006, Question Answering System (QAS) dapat
diterapkan untuk membangun sistem temu kembali jawaban atas pertanyaan dalam suatu
bacaan (reading comprehension). Dengan memasukkan kueri berupa pertanyaan ke dalam
sistem, maka sistem akan mengembalikan sebuah kalimat sebagai jawabannya. Proses
penemukembalian jawaban dimulai dengan memecah (parsing) suatu dokumen bacaan
menjadi kalimat-kalimat. Kalimat-kalimat tersebut dipecah dan di-stem menjadi token-
token. Begitu pula dengan kalimat pertanyaan pada kueri dipecah dan di-stem menjadi
token-token. Token-token dari setiap kalimat dokumen maupun kueri diproses dalam
rules sesuai dengan tipe pertanyaannya. Dalam penelitian ini tipe pertanyaan yang
digunakan hanya lima tipe, yaitu: APA, SIAPA, KAPAN, MANA, dan MENGAPA.
Proses di dalam rules itu memberikan nilai (score) untuk masing-masing kalimat
dokumen. Kalimat yang memiliki nilai tinggi akan dikembalikan sebagai jawaban.
Kalimat yang dikembalikan sebagai jawaban bisa lebih dari satu, karena ada
kemungkinan beberapa kalimat yang memiliki nilai yang sama tingginya. Banyaknya
kalimat yang ditemukembalikan juga bergantung pada ambang batas nilai (threshold of
score) yang digunakan. Threshold of score yang digunakan dalam penelitian ini adalah 1
sampai 12. Kinerja sistem tertinggi dicapai saat menggunakan ambang batas 7 dan 8,
yang mengembalikan rata-rata tiga kalimat dan banyaknya hasil yang benar mencapai
82,5%. Dari evaluasi berdasarkan rules, rules ”APA” mempunyai kinerja yang paling
tinggi, dan akurasi rata-rata rules adalah 74,65%. Namun, akurasi yang cukup tinggi yang
dapat dicapai sistem ini hanya berlaku untuk penelitian ini saja dengan berbagai asumsi
yang digunakan.
1. Terminologi NLP
Perkembangan NLP menghasilkan kemungkinan dari interface bahasa natural menjadi
knowledge base dan penterjemahan bahasa natural. Poole dan Mackworth (2010)
menjelaskan bahwa ada 3 (tiga) aspek utama pada teori pemahaman mengenai natural
language:
e. Syntax: menjelaskan bentuk dari bahasa. Syntax biasa dispesifikasikan oleh
sebuah grammar. Natural language jauh lebih daripada formal language yang
digunakan untuk logika kecerdasan buatan dan program compute.
f. Semantics: menjelaskan arti dari kalimat dalam satu bahasa. Meskipun teori
semantics secara umum sudah ada, ketika membangun sistem natural language
understanding untuk aplikasi tertentu, akan digunakan representasi yang paling
sederhana.
g. Pragmatics: menjelaskan bagaimana pernyataan yang ada berhubungan dengan
dunia. Untuk memahami bahasa, agen harus mempertimbangan lebih dari hanya
sekedar kalimat. Agen harus melihat lebih ke dalam konteks kalimat, keadaan
dunia, tujuan dari speaker dan listener, konvensi khusus, dan sejenisnya.
Contoh kalimat di bawah ini akan membantu untuk memahami perbedaan diantara ketiga
aspek tersebut di atas. Kalimat-kalimat ini adalah kalimat yang mungkin muncul pada
bagian awal dari sebuah buku Artificial Intelligence (AI):
1. This book is about Artificial Intelligence
2. The green frogs sleep soundly
3. Colorless green ideas sleep furiously
4. Furiously sleep ideas green colorless
Kalimat pertama akan tepat jika diletakkan pada awal sebuah buku, karena tepat secara
sintaks, semantik, dan pragmatik. Kalimat kedua tepat secara sintaks dan semantic,
namun kalimat tersebut akan menjadi aneh apabila diletakkan pada awal sebuah buku AI,
sehingga kalimat ini tidak tepat secara pragmatik. Kalimat ketiga tepat secara sintaks,
tetapi tidak secara semantik. Sedangkan pada kalimat keempat, tidak tepat secara sintaks,
semantik, dan pragmatik.
Selain daripada ketiga istilah tersebut ada beberapa istilah yang terkait dengan NLP,
yaitu:
c. Morfologi. Adalah pengetahuan tentang kata dan bentuknya sehingga bisa
dibedakan antara yang satu dengan yang lainnya. Bisa juga didefinisikan asal
usul sebuah kata itu bisa terjadi. Contoh : membangunkan –> bangun (kata
dasar), mem- (prefix), -kan (suffix)
d. Fonetik. Adalah segala hal yang berhubungan dengan suara yang
menghasilkan kata yang dapat dikenali. Fonetik digunakan dalam
pengembangan NLP khususnya bidang speech based system.
5. Konsep Text Mining
Text mining (juga disebut dengan text data mining, atau knowledge discovery in textual
database) adalah proses semi-otomatis dalam mengekstrak berbagai pola data (informasi
dan database yang bermanfaat) dari sumber data tak-terstruktur. Perlu diingat bahwa data
mining adalah suatu proses untuk mengidentifikasi pola-pola yang valid, baru, berpotensi
bermanfaat, dan akhirnya bisa dipahami yang ada di dalam data yang disimpan dalam
database terstruktur, dimana data dikelola secara terstruktur berdasarkan atribut atau
variable-variabel categorical, ordinal, atau continuous. Text mining sama dengan data
mining dalam arti dia punya maksud yang sama dan menggunakan proses yang sama,
tetapi dalam text mining input terhadap proses adalah file-file data tak-terstruktur (atau
kurang terstruktur) seperti dokumen word, file-file pdf, kutipan-kutipan text, file-file
XML, dan seterusnya. Pada dasarnya, text mining bisa dipikir sebagai suatu proses
(dengan dua langkah utama) yang mulai dengan memaksakan struktur ke berbagai
sumber data berbasis teks yang diikuti dengan mengektrak informasi dan knowledge
yang relevan dari data berbasis teks yang sudah terstruktur tersebut dengan
menggunakan berbagai tool dan teknik data mining.
Manfaat text mining sangat terasa di bidang-bidang yang memiliki banyak data teks,
seperti bidang hukum (perintah pengadilan), penelitian akademis (artikel-artikel ilmiah),
keuangan (laporan quarterly), pengobatan/kedokteran, biologi (interaksi molekuler),
teknologi (file-file paten), dan marketing (komentar-komentar pelanggan). Sebagai
contoh, berbagai macam jenis interaksi dengan para pelanggan berbasis teks dengan
format yang sembarangan dalam hal complain (atau mungkin juga pujian) dan klaim
jaminan bisa digunakan untuk mengidentifikasi karakteristik produk dan layanan secara
objektif yang dianggap kurang sempurna untuk dijadikan sebagai input terhadap
pengembangan produk dan alokasi layanan. Demikian juga, dengan berbagai macam
program untuk menjangkau market yang menghasilkan jumlah data yang besar. Dengan
tidak membatasi feedback terhadap produk dan layanan dengan bentuk yang terformat,
pelanggan bisa menyajikan dengan kata-kata mereka sendiri apa yang mereka pikirkan
tentang produk dan layanan perusahaan. Bidang lain dimana pemrosesan otomatis
terhadap text tak terstruktur telah membawa berbagai impact adalah dalam email dan
komunikasi elektronik. Text mining tidak hanya bisa digunakan untuk
mengklasifikasikan dan memfilter junk email, tetapi juga bisa digunakan untuk
memprioritaskan email secara otomatis berdasarkan tingkat kepentingannya dan juga
menghasilkan respon otomatis (Weng and Liu, 2004).
Berikut ini adalah bidang-bidang penerapan text mining yang paling popular:
Information extraction (ekstraksi informasi). Identifikasi terhadap hubungan dan
frase-frase kunci dalam text dengan mencari urutan yang sudah ditetapkan dalam
text menggunakan pencocokan pola.
Topic tracking (pelacakan topic). Berdasarkan pada profil user dan berbagai
dokumen yang dilihat user, text mining bisa memprediksi dokumen-dokumen lain
yang menjadi perhatian/minat user tersebut.
Summarization (peringkasan). Meringkas suatu dokumen untuk menghemat
waktu dari sis si pembaca
Clustering. Mengelompokkan dokumen-dokumen yang mirip tanpa memiliki
kategori yang sudah ditetapkan sebelumnya.
Concept linking. Menghubungkan berbagai dokumen terkait dengan
mengidentifikasi konsep yang digunakan berbsama dan dengan demikian
membantu para user untuk menemukan informasi yang barangkali mereka tidak
akan temukan dengan menggunakan metode-metode pencarian tradisional.
Question answering. Menemukan jawaban terbaik pada pertanyaan yang
diberikan melalui pencocokan pola berbasis knowledge
6. Information Extraction
IE merupakan proses identifikasi fragmen-fragmen khusus suatu dokumen yang
membentuk inti dari isi semantiknya. IE biasanya bergantung pada aturan ekstraksi yang
dibuat khusus untuk sumber informasi tertentu, yang biasa disebut wrapper (berupa
program atau set aturan-aturan). Dengan wrapper ini, berbagai macam struktur sumber
data dapat diproses.
IE mengekstraksi data terstruktur atau pengetahuan dari teks tak terstruktur dengan
mengidentifikasi referensi entitas nama serta hubungan antar entitas. Jadi, IE secara
umum berhubungan dengan penggalian informasi semantik dalam teks. IE meliputi
pengenalan entitas, resolusi coreference, ekstraksi hubungan, dan sebagainya. Tujuan
umum IE adalah agar komputer dapat melakukan pengolahan dengan data-data yang pada
mulanya tidak terstruktur. Lebih spesifik lagi, IE memungkinkan komputer untuk
menarik kesimpulan dari konteks logis sebuah data.
IE merupakan proses mengolah teks sebagai input dan memproduksi data dengan format
yang baku dan tidak ambigu sebagai outputnya. Aplikasi IE menganalisis teks dan
menyajikan hanya informasi khusus yang menarik minat pengguna atau sesuai konteks
pengguna. Prosees IE dapat dipermudah dengan pemanfaatkan teknik-teknik lainnya,
seperti bag of words, NLP, machine learning, model hidden markov, model statistik, dan
lain sebagainya.
Dalam praktiknya, IE sering dibantu dengan penggunaan pola tata bahasa serta aturan
linguistik yang diterapkan pada bahasa alami manusia. Namun, dengan bantuan domain
pengetahuan yang sesuai konteks, representasi pengetahuan yang dihasilkan oleh proses
IE dapat berkurang dari sisi kompleksitasnya. Selain itu, algoritma pembelajarannya serta
efisiensi ekstraksi menjadi semakin baik. Bahkan, disebutkan bahwa tanpa domain
pengetahuan yang sesuai konteks, proses dari IE tidak dapat menghasilkan analisis yang
tepat.
7. Information Retrieval
Information Retrieval (IR) adalah pekerjaan untuk menemukan dokumen yang relevan
dengan kebutuhan informasi yang dibutuhkan oleh user. Contoh sistem IR yang paling
popular adalah search engine pada World Wide Web. Seorang pengguna Web bisa
menginputkan query berupa kata apapun ke dalam sebuah search engine dan melihat hasil
dari pencarian yang relevan. Karakteristik dari sebuah sistem IR (Russel & Norvig, 2010)
diantaranya adalah:
1. A corpus of documents. Setiap sistem harus memutuskan dokumen yang ada akan
diperlakukan sebagai apa. Bisa sebagai sebuah paragraf, halaman, atau teks multipage.
2. Queries posed in a query language. Sebuah query menjelaskan tentang apa yang user ingin
peroleh. Query language dapat berupa list dari kata-kata, atau bisa juga menspesifikasikan
sebuah frase dari kata-kata yang harus berdekatan
3. A result set. Ini adalah bagian dari dokumen yang dinilai oleh sistem IR sebagai yang relevan
dengan query.
4. A presentation of the result set. Maksud dari bagian ini adalah tampilan list judul dokumen
yang sudah di ranking.
DAFTAR PUSTAKA
• Kusrini, dan Emha Taufiq Luthfi. 2009. Algoritma Data Mining. Yogyakarta: C.V
ANDI OFFSET
• Feri Sulianta dan Domunikus Juju. Data Mining: Meramalkan Bisnis Perusahaan.
2010. Jakarta: Elex Media Komputindo
• Han, Jiawei, dkk. Data Mining Concepts and Techniques. 2012. The Morgan
Kauffman
• Sungkono, Christian. 2008. Pengantar Ilmu Penggalian Data Bisnis. Jakarta:
Penerbit Salemba Empat
• Defiyanti dan Jajuli. 2015. Integrasi Metode Klasifikasi Dan Clustering dalam Data
Mining. Konferensi Nasional Informatik, 2354-645X/15.Diambil dari:
https://goo.gl/R89Vq3
• https://mti.binus.ac.id/2017/11/24/klasifikasi/: ANTONI WIBOWO, Lecturer
Specialist S3, Universitas Bina Nusantara
• Nuryani, A., Susanto, B., dan Proboyekti, U., 2007, Implementasi Naive Bayes
Classifier pada Program Bantu Penentuan Buku Referensi Mata Kuliah, Jurnal
Informatika Vol 3 No. 2, 32-36.
• Gunawan Gunawan, dan Gita Lovina. 2006. Question Answering System dan
Penerapannya Pada Alkitab. Jurnal Informatika Vol. 7.
http://jurnalinformatika.petra.ac.id/index.php/inf/article/view/16479
• Piskorski, J. and Yangarber, R., 2013, Information Extraction: Past, Present and
Future, In: T. Poibeau et al., eds., Multi-source, Multilingual Information Extraction
and Summarization, Springer-Verlag, Berlin, Ch.2.
• Pustejovsky, J., Stubbs A. (2012). Natural Language Annotation for Machine
Learning. Beijing: O’Reilly.
• Massachusetts Institute of Technology (2010). Advanced Natural Language
Processing. http://people.csail.mit.edu/regina/6864/. Cambridge
• Kowalski, M. (2011). Information Retrieval Architecture and Algorithms. New York:
Springer.
• North, D.M. 2012. Data Mining For The Masses. A Global Text Project Book
• Keekyoung Seo; Jaeyoung Yang; Joongmin Choi, "Building intelligent systems for
mining information extraction rules from web pages by using domain knowledge,"
Industrial Electronics, 2001. Proceedings. ISIE 2001. IEEE International Symposium
on , vol.1, no., pp.322,327 vol.1, 2001
• Mooney, Raymond J., and Razvan Bunescu. "Mining knowledge from text using
information extraction." ACM SIGKDD explorations newsletter 7.1 (2005): 3-10.
• Turban, E dan Jay E, (2001), “Decision Support Systems and Intelligent Systems”,.
Aronson, 6th edition, Copyright 2001, Prentice Hall, Upper Saddle River, NJ
• Hammer, J., Garcia-molina, H., Cho, J., Aranha, R., dan Crespo, A, 1997, Extracting
Semistructured Information from the Web, Proceedings of the Workshop on
Management of Semistructured Data, Tucson, Arizona.