Data mining is the process of discovering insightful, interesting, and novel patterns, as well as descriptive, understandable, and predictive models from large-scale data. We begin this chapter by looking at basic properties of data modeled as a data matrix. We emphasize the geometric and algebraic views, as well as the probabilistic interpretation of data. We then discuss the main data mining tasks, which span exploratory data analysis, frequent pattern mining, clustering, and classification, laying out the roadmap for the book. (Data mining adalah proses menemukan pola yang berwawasan, menarik, dan baru, serta model deskriptif, dapat dimengerti, dan prediktif dari data skala besar. Kami memulai bab ini dengan melihat sifat-sifat dasar data yang dimodelkan sebagai matriks data. Kami menekankan pandangan geometris dan aljabar, serta interpretasi data yang probabilistik. Kami kemudian membahas tugas-tugas data mining utama, yang mencakup analisis data eksplorasi, sering melakukan mining pola, pengelompokan, dan klasifikasi, menyusun peta jalan untuk buku ini.) (hal 1) 1. Data matrix Data can often be represented or abstracted as an n × d data matrix, with n row and d columns, where rows correspond to entities in the dataset, and columns represent attributes or properties of interest. Each row in the data matrix records the observed attribute values for a given entity. The n×d data matrix is given as: Data sering dapat direpresentasikan atau diabstraksi sebagai matriks data n × d, dengan baris n dan kolom d, di mana baris berhubungan dengan entitas dalam dataset, dan kolom mewakili atribut atau properti yang diminati. Setiap baris dalam matriks data mencatat nilai atribut yang diamati untuk entitas yang diberikan. Matriks data n × d diberikan sebagai: where xi denotes the ith row, which is a d-tuple given as xi = (xi1,xi2,...,xid) and Xj denotes the jth column, which is an n-tuple given as Xj = (x1j,x2j,...,xnj) di mana xi menunjukkan baris ith, yang merupakan d-tuple yang diberikan sebagai xi = (xi1, xi2, ..., xid) dan Xj menunjukkan kolom jth, yang merupakan n-tuple diberikan sebagai Xj = (x1j, x2j, ..., xnj) Depending on the application domain, rows may also be referred to as entities, instances, examples, records, transactions, objects, points, feature-vectors, tuples, and so on. Likewise, columns may also be called attributes, properties, features, dimensions, variables, fields, and so on. The number of instances n is referred to as the size of the data, whereas the number of attributes d is called the dimensionality of the data. The analysis of a single attribute is referred to as univariate analysis, whereas the simultaneous analysis of two attributes is called bivariate analysis and the simultaneous analysis of more than two attributes is called multivariate analysis. (Bergantung pada domain aplikasi, baris juga dapat disebut sebagai entitas, instance, contoh, catatan, transaksi, objek, titik, vektor fitur, tupel, dan sebagainya. Demikian juga, kolom juga bisa disebut atribut, properti, fitur, dimensi, variabel, bidang, dan sebagainya. Jumlah instance n disebut sebagai ukuran data, sedangkan jumlah atribut d disebut dimensi data. Analisis atribut tunggal disebut sebagai analisis univariat, sedangkan analisis simultan dua atribut disebut analisis bivariat dan analisis simultan lebih dari dua atribut disebut analisis multivariat.) (hal 1-2) Not all datasets are in the form of a data matrix. For instance, more complex datasets can be in the form of sequences (e.g., DNA and protein sequences), text, time-series, images, audio, video, and so on, which may need special techniques for analysis. However, in many cases even if the raw data is not a data matrix it can usually be transformed into that form via feature extraction. For example, given a database of images, we can create a data matrix in which rows represent images and columns correspond to image features such as color, texture, and so on. Sometimes, certain attributes may have special semantics associated with them requiring special treatment. For instance, temporal or spatial attributes are often treated differently. It is also worth noting that traditional data analysis assumes that each entity or instance is independent. However, given the interconnected nature of the world we live in, this assumption may not always hold. Instances may be connected to other instances via various kinds of relationships, giving rise to a data graph, where a node represents an entity and an edge represents the relationship between two entities. (Tidak semua dataset berbentuk matriks data. Misalnya, kumpulan data yang lebih kompleks dapat berupa sekuens (mis., Sekuens DNA dan protein), teks, deret waktu, gambar, audio, video, dan sebagainya, yang mungkin memerlukan teknik khusus untuk analisis. Namun, dalam banyak kasus bahkan jika data mentah bukan matriks data biasanya dapat diubah menjadi bentuk itu melalui ekstraksi fitur. Misalnya, mengingat basis data gambar, kita dapat membuat matriks data di mana baris mewakili gambar dan kolom yang sesuai dengan fitur gambar seperti warna, tekstur, dan sebagainya. Kadang-kadang, atribut tertentu mungkin memiliki semantik khusus yang terkait dengan mereka yang memerlukan perawatan khusus. Misalnya, atribut temporal atau spasial sering diperlakukan secara berbeda. Perlu juga dicatat bahwa analisis data tradisional mengasumsikan bahwa setiap entitas atau instance independen. Namun, mengingat sifat dunia yang saling terhubung di mana kita hidup, asumsi ini mungkin tidak selalu berlaku. Mesin virtual dapat dihubungkan ke mesin virtual lain melalui berbagai jenis hubungan, sehingga memunculkan grafik data, di mana sebuah simpul mewakili suatu entitas dan suatu sisi mewakili hubungan antara dua entitas.) (hal-2) 2. Attributes Attributes may be classified into two main types depending on their domain, that is, depending on the types of values they take on. Numeric Attributes A numeric attribute is one that has a real-valued or integer-valued domain. For example, Age with domain(Age) = N, where N denotes the set of natural numbers (non-negative integers), is numeric, and so is petal length in Table 1.1, with domain (petal length) = R+ (the set of all positive real numbers). Numeric attributes that take on a finite or countably infinite set of values are called discrete, whereas those that can take on any real value are called continuous. As a special case of discrete, if an attribute has as its domain the set {0,1}, it is called a binary attribute. Numeric attributes can be classified further into two types: ATRIBUT Atribut dapat diklasifikasikan ke dalam dua jenis utama tergantung pada domainnya, yaitu, tergantung pada jenis nilai yang diambilnya. Atribut Numerik Atribut numerik adalah atribut yang memiliki domain bernilai nyata atau bilangan bulat. Sebagai contoh, Zaman dengan domain (Zaman) = N, di mana N menunjukkan himpunan bilangan alami (bilangan bulat non-negatif), adalah numerik, dan demikian juga panjang daun bunga pada Tabel 1.1, dengan domain (petal length) = R + (himpunan dari semua bilangan real positif). Atribut numerik yang mengambil serangkaian nilai terbatas atau tak terhingga disebut diskrit, sedangkan atribut yang dapat mengambil nilai nyata apa pun disebut kontinu. Sebagai kasus khusus diskrit, jika suatu atribut memiliki domainnya himpunan {0,1}, itu disebut atribut biner. Atribut numerik dapat diklasifikasikan lebih lanjut menjadi dua jenis: ) (hal 3) • Interval-scaled: For these kinds of attributes only differences (addition or subtraction) make sense. For example, attribute temperature measured in ◦C or ◦F is interval-scaled. If it is 20 ◦C on one day and 10 ◦C on the following day, it is meaningful to talk about a temperature drop of 10 ◦C, but it is not meaningful to say that it is twice as cold as the previous day. • Ratio-scaled: Here one can compute both differences as well as ratios between values. For example, for attribute Age, we can say that someone who is 20 years old is twice as old as someone who is 10 years old. • Skala-interval: Untuk jenis atribut ini hanya perbedaan (penambahan atau pengurangan) yang masuk akal. Misalnya, suhu atribut yang diukur dalam ◦C atau ◦F diskalakan dengan interval. Jika 20 ◦C pada satu hari dan 10 ◦C pada hari berikutnya, akan berarti untuk berbicara tentang penurunan suhu 10 ◦C, tetapi tidak berarti mengatakan bahwa suhu udara dua kali lebih dingin dari hari sebelumnya. • skala-Rasio: Di sini orang dapat menghitung baik perbedaan maupun rasio antara nilai-nilai. Misalnya, untuk atribut umur, kita dapat mengatakan bahwa seseorang yang berusia 20 tahun dua kali lebih tua dari seseorang yang berusia 10 tahun. Categorical Attributes A categorical attribute is one that has a set-valued domain composed of a set of symbols. For example, Sex and Education could be categorical attributes with their domains given as domain(Sex) = {M,F} domain(Education) = {HighSchool,BS,MS,PhD} Categorical attributes may be of two types: • Nominal: The attribute values in the domain are unordered, and thus only equality comparisons are meaningful. That is, we can check only whether the value of the attribute for two given instances is the same or not. For example, Sex is a nominal attribute. Also class in Table 1.1 is a nominal attribute with domain(class) = {iris-setosa,iris-versicolor,iris-virginica}. • Ordinal: The attribute values are ordered, and thus both equality comparisons (is one value equal to another?) and inequality comparisons (is one value less than or greater than another?) are allowed, though it may not be possible to quantify the difference between values. For example, Education is an ordinal attribute because its domain values are ordered by increasing educational qualification. Atribut Kategorikal Atribut kategoris adalah atribut yang memiliki domain set-nilai yang terdiri dari serangkaian simbol. Sebagai contoh, Jenis Kelamin dan Pendidikan dapat menjadi atribut kategorikal dengan domainnya diberikan sebagai domain (Jenis Kelamin) = {M, F} domain (Pendidikan) = {Sekolah Tinggi, BS, MS, PhD} Atribut kategorikal mungkin terdiri dari dua jenis: • Nominal: Nilai atribut dalam domain tidak berurutan, dan dengan demikian hanya perbandingan kesetaraan yang berarti. Artinya, kita hanya dapat memeriksa apakah nilai atribut untuk dua instance yang diberikan sama atau tidak. Misalnya, Seks adalah atribut nominal. Juga kelas dalam Tabel 1.1 adalah atribut nominal dengan domain (class) = {iris-setosa, iris-versicolor, iris-virginica}. • Ordinal: Nilai atribut diurutkan, dan dengan demikian perbandingan kesetaraan (apakah satu nilai sama dengan yang lain?) Dan perbandingan ketidaksetaraan (apakah satu nilai lebih kecil atau lebih besar dari yang lain?) Diperbolehkan, meskipun mungkin tidak mungkin untuk mengukur perbedaan antara nilai. Misalnya, Pendidikan adalah atribut ordinal karena nilai domainnya dipesan dengan meningkatkan kualifikasi pendidikan. (hal 3) 3. DATA: ALGEBRAIC AND GEOMETRIC VIEW If the d attributes or dimensions in the data matrix D are all numeric, then each row can be considered as a d-dimensional point: xi = (xi1,xi2,...,xid) ∈ Rd or equivalently, each row may be considered as a d-dimensional column vector (all vectors are assumed to be column vectors by default): where T is the matrix transpose operator. The d-dimensional Cartesian coordinate space is specified via the d unit vectors, called the standard basis vectors, along each of the axes. The jth standard basis vector ej is the d-dimensional unit vector whose jth component is 1 and the rest of the components are 0 ej = (0,...,1j,...,0)T Any other vector in Rd can be written as a linear combination of the standard basis vectors. For example, each of the points xi can be written as the linear combination where the scalar value xij is the coordinate value along the jth axis or attribute. Example 1.2. Consider the Iris data in Table 1.1. If we project the entire data onto the first two attributes, then each row can be considered as a point or a vector in 2-dimensional space. For example, the projection of the 5-tuple x1 = (5.9,3.0,4.2,1.5,Iris-versicolor) on the first two attributes is shown in Figure 1.1a. Figure 1.2 shows the scatterplot of all the n = 150 points in the 2dimensional space spanned by the first two attributes. Likewise, Figure 1.1b shows x1 as a point and vector in 3-dimensional space, by projecting the data onto the first three attributes. The point (5.9,3.0,4.2) can be seen as specifying the coefficients in the linear combination of the standard basis vectors in R3: Jika atribut atau dimensi d dalam matriks data D semuanya numerik, maka setiap baris dapat dianggap sebagai titik d-dimensi: xi = (xi1, xi2, ..., xid) ∈ Rd atau ekuivalen, setiap baris dapat dianggap sebagai vektor kolom d-dimensi (semua vektor diasumsikan sebagai vektor kolom secara default): di mana T adalah operator matriks transpos. Ruang koordinat Kartesius d-dimensi ditentukan melalui vektor satuan d, disebut vektor basis standar, di sepanjang masing-masing sumbu. Vektor standar jth standar ej adalah vektor satuan d-dimensi yang komponen jth-nya 1 dan sisanya dari komponen 0 ej = (0, ..., 1j, ..., 0) T Vektor lain dalam Rd dapat ditulis sebagai kombinasi linear dari vektor basis standar. Sebagai contoh, masing-masing poin xi dapat ditulis sebagai kombinasi linear: di mana nilai skalar xij adalah nilai koordinat sepanjang sumbu j atau atribut. Contoh 1.2. Pertimbangkan data Iris pada Tabel 1.1. Jika kami memproyeksikan seluruh data ke dua atribut pertama, maka setiap baris dapat dianggap sebagai titik atau vektor dalam ruang 2 dimensi. Sebagai contoh, proyeksi 5-tuple x1 = (5.9,3.0,4.2.1.5, Iris-versicolor) pada dua atribut pertama ditunjukkan pada Gambar 1.1a. Gambar 1.2 menunjukkan scatterplot dari semua n = 150 poin dalam ruang 2 dimensi yang direntang oleh dua atribut pertama. Demikian juga, Gambar 1.1b menunjukkan x1 sebagai titik dan vektor dalam ruang 3 dimensi, dengan memproyeksikan data ke tiga atribut pertama. Titik (5.9,3.0,4.2) dapat dilihat sebagai menentukan koefisien dalam kombinasi linear dari vektor basis standar di R3: (halaman 4) 4. Distance and Angle Treating data instances and attributes as vectors, and the entire dataset as a matrix, enables one to apply both geometric and algebraic methods to aid in the data mining and analysis tasks. Dot Product The dot product between a and b is defined as the scalar value (hal-6) Length The Euclidean norm or length of a vector a ∈ Rm is defined as (hal-6) Distance From the Euclidean norm we can define the Euclidean distance between a and b, as follows (hal-7) Angle The cosine of the smallest angle between vectors a and b, also called the cosine similarity, is given as (hal-7) Orthogonality Two vectors a and b are said to be orthogonal if and only if aTb = 0, which in turn implies that cosθ = 0, that is, the angle between them is 90◦ or π2 radians. In this case, we say that they have no similarity. (hal-8) Jarak dan sudut Memperlakukan instance data dan atribut sebagai vektor, dan seluruh dataset sebagai matriks, memungkinkan seseorang untuk menerapkan metode geometris dan aljabar untuk membantu dalam tugas-tugas analisis dan data mining. Produk titik Produk titik antara a dan b didefinisikan sebagai nilai skalar (hal-6) Panjangnya Norma Euclidean atau panjang vektor a ∈ Rm didefinisikan sebagai (hal-6) Jarak Dari norma Euclidean kita dapat mendefinisikan jarak Euclidean antara a dan b, sebagai berikut (hal-7) Sudut Kosinus dari sudut terkecil antara vektor a dan b, juga disebut persamaan cosinus, diberikan sebagai (hal-7) Orthogonality Dua vektor a dan b dikatakan ortogonal jika dan hanya jika aTb = 0, yang pada gilirannya menyiratkan bahwa cosθ = 0, yaitu, sudut di antara mereka adalah 90◦ atau π2 radian. Dalam hal ini, kami mengatakan bahwa mereka tidak memiliki kesamaan. (hal-8) 1.3.2 Mean and Total Variance Mean The mean of the data matrix D is the vector obtained as the average of all the points: (hal-9) Total Variance The total variance of the data matrix D is the average squared distance of each point from the mean: (hal-9) Centered Data Matrix Often we need to center the data matrix by making the mean coincide with the origin of the data space. The centered data matrix is obtained by subtracting the mean from all the points: (hal-10) Mean Mean dari data matriks D adalah vektor yang diperoleh sebagai rata-rata dari semua poin: (hal-9) Varians total Varians total dari matriks data D adalah jarak kuadrat rata-rata dari setiap titik dari rata-rata: (hal-9) Matriks Data Tengah Seringkali kita perlu memusatkan matriks data dengan membuat mean bertepatan dengan asal ruang data. Matriks data terpusat diperoleh dengan mengurangi rata-rata dari semua poin: (hal-10) 1.3.3 Orthogonal Projection Often in data mining we need to project a point or vector onto another vector, for example, to obtain a new point after a change of the basis vectors. Let a,b ∈ Rm be two m-dimensional vectors. An orthogonal decomposition of the vector b in the direction of another vector a, illustrated in Figure 1.4, is given as (hal-10) Seringkali dalam data mining kita perlu memproyeksikan titik atau vektor ke vektor lain, misalnya, untuk mendapatkan titik baru setelah perubahan vektor basis. Biarkan a, b ∈ Rm menjadi dua vektor m-dimensi. Dekomposisi ortogonal dari vektor b ke arah vektor lain a, diilustrasikan dalam Gambar 1.4, diberikan sebagai (hal-10) 1.3.4 Linear Independence and Dimensionality Given the data matrix D = x1 x2 ··· xnT = X1 X2 ··· Xd we are often interested in the linear combinations of the rows (points) or the columns (attributes). For instance, different linear combinations of the original d attributes yield new derived attributes, which play a key role in feature extraction and dimensionality reduction. Given any set of vectors v1,v2,...,vk in an m-dimensional vector space Rm, their linear combination is given as c1v1 +c2v2 + ··· +ckvk where ci ∈ R are scalar values. The set of all possible linear combinations of the k vectors is called the span, denoted as span(v1,...,vk), which is itself a vector space being a subspace of Rm. If span(v1,...,vk) = Rm, then we say that v1,...,vk is a spanning set for Rm. (hal-12) Diberikan matriks data D = x1 x2 ··· xnT = X1 X2 ··· Xd kita sering tertarik pada kombinasi linear dari baris (titik) atau kolom (atribut). Misalnya, kombinasi linier yang berbeda dari atribut d asli menghasilkan atribut turunan baru, yang memainkan peran kunci dalam ekstraksi fitur dan pengurangan dimensi. Diberikan sekumpulan vektor v1, v2, ..., vk dalam ruang vektor m-dimensional Rm, kombinasi linearnya diberikan sebagai c1v1 + c2v2 + ··· + ckvk di mana ci ∈ R adalah nilai skalar. Himpunan semua kombinasi linier yang mungkin dari vektor k disebut span, dilambangkan sebagai span (v1, ..., vk), yang merupakan ruang vektor yang menjadi subruang dari Rm. Jika span (v1, ..., vk) = Rm, maka kita mengatakan bahwa v1, ..., vk adalah set spanning untuk Rm. (hal-12) Row and Column Space There are several interesting vector spaces associated with the data matrix D, two of which are the column space and row space of D. The column space of D, denoted col(D), is the set of all linear combinations of the d attributes Xj ∈ Rn, that is, col(D) = span(X1,X2,...,Xd) By definition col(D) is a subspace of Rn. The row space of D, denoted row(D), is the set of all linear combinations of the n points xi ∈ Rd, that is, row(D) = span(x1,x2,...,xn) By definition row(D) is a subspace of Rd. Note also that the row space of D is the column space of DT: row(D) = col(DT) (hal-12) Kolom Baris dan Ruang Ada beberapa ruang vektor menarik yang terkait dengan matriks data D, dua di antaranya adalah ruang kolom dan ruang baris D. Ruang kolom D, dinotasikan dengan col (D), adalah himpunan semua kombinasi linear dari atribut d Xj ∈ Rn, yaitu, col (D) = rentang (X1, X2, ..., Xd) Menurut definisi, col (D) adalah subruang dari Rn. Ruang baris D, dinotasikan baris (D), adalah himpunan semua kombinasi linear dari n poin xi ∈ Rd, yaitu, baris (D) = rentang (x1, x2, ..., xn) Menurut definisi baris (D) adalah subruang dari Rd. Perhatikan juga bahwa ruang baris D adalah ruang kolom DT: baris (D) = col (DT) (hal-12) Linear Independence We say that the vectors v1,...,vk are linearly dependent if at least one vector can be written as a linear combination of the others. Alternatively, the k vectors are linearly dependent if there are scalars c1,c2,...,ck, at least one of which is not zero, such that c1v1 +c2v2 +···+ckvk = 0 On the other hand, v1,··· ,vk are linearly independent if and only if c1v1 +c2v2 +···+ckvk = 0 implies c1 = c2 = ··· = ck = 0 Simply put, a set of vectors is linearly independent if none of them can be written as a linear combination of the other vectors in the set. (hal-13) Independensi Linier Kita mengatakan bahwa vektor v1, ..., vk bergantung secara linear jika setidaknya satu vektor dapat ditulis sebagai kombinasi linear dari vektor lainnya. Atau, vektor k tergantung secara linear jika ada skalar c1, c2, ..., ck, setidaknya satu di antaranya tidak nol, sehingga c1v1 + c2v2 + ··· + ckvk = 0 Di sisi lain, v1, ···, vk bebas linear jika dan hanya jika c1v1 + c2v2 + ··· + ckvk = 0 menyiratkan c1 = c2 = ··· = ck = 0 Sederhananya, satu set vektor bebas linear jika tidak ada yang dapat ditulis sebagai kombinasi linear dari vektor lain dalam set. (hal-13) Dimension and Rank Let S be a subspace of Rm. A basis for S is a set of vectors in S, say v1,...,vk, that are linearly independent and they span S, that is, span(v1,...,vk) = S. In fact, a basis is a minimal spanning set. If the vectors in the basis are pairwise orthogonal, they are said to form an orthogonal basis for S. If, in addition, they are also normalized to be unit vectors, then they make up an orthonormal basis for S. For instance, the standard basis for Rm is an orthonormal basis consisting of the vectors Dimensi dan Peringkat Biarkan S menjadi subruang dari Rm. Basis untuk S adalah himpunan vektor dalam S, katakanlah v1, ..., vk, yang bebas linear dan mereka rentang S, yaitu, rentang (v1, ..., vk) = S. Bahkan, a dasar adalah set spanning minimal. Jika vektor-vektor pada basis adalah ortogonal berpasangan, mereka dikatakan membentuk basis ortogonal untuk S. Jika, selain itu, mereka juga dinormalisasi menjadi vektor satuan, maka mereka membentuk basis ortonormal untuk S. Misalnya, standar basis untuk Rm adalah basis ortonormal yang terdiri dari vector (hal-13) 5. DATA: PROBABILISTIC VIEW The probabilistic view of the data assumes that each numeric attribute X is a random variable, defined as a function that assigns a real number to each outcome of an experiment (i.e., some process of observation or measurement). Formally, X is a function X : O → R, where O, the domain of X, is the set of all possible outcomes of the experiment, also called the sample space, and R, the range of X, is the set of real numbers. If the outcomes are numeric, and represent the observed values of the random variable, then X: O → O is simply the identity function: X(v) = v for all v ∈ O. The distinction between the outcomes and the value of the random variable is important, as we may want to treat the observed values differently depending on the context, as seen in Example 1.6. A random variable X is called a discrete random variable if it takes on only a finite or countably infinite number of values in its range, whereas X is called a continuous random variable if it can take on any value in its range. (hal-14) DATA: PEMANDANGAN PROBABILISTIK Pandangan probabilistik dari data mengasumsikan bahwa setiap atribut numerik X adalah variabel acak, yang didefinisikan sebagai fungsi yang menetapkan bilangan real untuk setiap hasil percobaan (mis., Beberapa proses pengamatan atau pengukuran). Secara formal, X adalah fungsi X: O → R, di mana O, domain X, adalah himpunan semua kemungkinan hasil percobaan, juga disebut ruang sampel, dan R, kisaran X, adalah himpunan nyata angka. Jika hasilnya numerik, dan mewakili nilai-nilai yang diamati dari variabel acak, maka X: O → O hanyalah fungsi identitas: X (v) = v untuk semua v ∈ O. Perbedaan antara hasil dan nilai dari variabel acak itu penting, karena kita mungkin ingin memperlakukan nilai-nilai yang diamati secara berbeda tergantung pada konteksnya, seperti yang terlihat dalam Contoh 1.6. Variabel acak X disebut variabel acak diskrit jika hanya mengambil jumlah nilai yang terbatas atau tak terhingga dalam kisarannya, sedangkan X disebut variabel acak kontinu jika dapat mengambil nilai apa pun dalam kisarannya. (hal-14) Probability Mass Function If X is discrete, the probability mass function of X is defined as f (x) = P (X = x) for all x ∈ R In other words, the function f gives the probability P (X = x) that the random variable X has the exact value x. The name “probability mass function” intuitively conveys the fact that the probability is concentrated or massed at only discrete values in the range of X, and is zero for all other values. f must also obey the basic rules of probability. That is, f must be non-negative: f (x) ≥ 0 and the sum of all probabilities should add to 1: ∑ x f (x) = 1 X Fungsi Massa Kemungkinan Jika X adalah diskrit, fungsi massa probabilitas X didefinisikan sebagai f (x) = P (X = x) untuk semua x ∈ R Dengan kata lain, fungsi f memberikan probabilitas P (X = x) bahwa variabel acak X memiliki nilai tepat x. Nama "fungsi massa probabilitas" secara intuitif menyampaikan fakta bahwa probabilitas terkonsentrasi atau bermassa hanya pada nilai diskrit dalam kisaran X, dan nol untuk semua nilai lainnya. f juga harus mematuhi aturan dasar probabilitas. Artinya, f harus non-negatif: f (x) ≥ 0 dan jumlah semua probabilitas harus ditambahkan ke 1: ∑ x f (x) = 1 x (hal-15) Probability Density Function If X is continuous, its range is the entire set of real numbers R. The probability of any specific value x is only one out of the infinitely many possible values in the range of X, which means that P (X = x) = 0 for all x ∈ R. However, this does not mean that the value x is impossible, because in that case we would conclude that all values are impossible! What it means is that the probability mass is spread so thinly over the range of values that it can be measured only over intervals [a,b] ⊂ R, rather than at specific points. Thus, instead of the probability mass function, we define the probability density function, which specifies the probability that the variable X takes on values in any interval [a,b] ⊂ R: (hal-16) Fungsi Kerapatan Probabilitas Jika X adalah kontinu, kisarannya adalah seluruh rangkaian bilangan real R. Probabilitas dari setiap nilai spesifik x hanya satu dari banyak nilai tak terhingga yang mungkin dalam rentang X, yang berarti bahwa P (X = x) = 0 untuk semua x ∈ R. Namun, ini tidak berarti bahwa nilai x tidak mungkin, karena dalam hal ini kita akan menyimpulkan bahwa semua nilai tidak mungkin! Artinya adalah bahwa massa probabilitas tersebar sangat tipis pada rentang nilai sehingga hanya dapat diukur pada interval [a, b] ⊂ R, daripada pada titik-titik tertentu. Dengan demikian, alih-alih fungsi massa probabilitas, kami mendefinisikan fungsi kerapatan probabilitas, yang menentukan probabilitas bahwa variabel X mengambil nilai dalam setiap interval [a, b] ⊂ R: (hal-16) Cumulative Distribution Function For any random variable X, whether discrete or continuous, we can define the cumulative distribution function (CDF) F : R → [0,1], which gives the probability of observing a value at most some given value x: F (x) = P (X ≤ x) Fungsi Distribusi Kumulatif for all -∞ < x < ∞ Untuk variabel acak X apa pun, baik diskrit atau kontinu, kita dapat mendefinisikan fungsi distribusi kumulatif (CDF) F: R → [0,1], yang memberikan kemungkinan mengamati nilai paling banyak pada beberapa nilai tertentu x: F (x) = P (X ≤ x) for all -∞ < x < ∞ (hal-18) 1.4.1 Bivariate Random Variables Instead of considering each attribute as a random variable, we can also perform pair-wise analysis by considering a pair of attributes, X1 and X2, as a bivariate random variable: (hal-19) X : O → R2 is a function that assigns to each outcome in the sample space, a pair of real numbers, that is, a 2-dimensional vector (x1 x2) ∈ R2. As in the univariate case, if the outcomes are numeric, then the default is to assume X to be the identity function. (hal-20) Joint Probability Mass Function If X1 and X2 are both discrete random variables then X has a joint probability mass function given as follows: f (x) = f (x1,x2) = P (X1 = x1,X2 = x2) = P (X = x) f must satisfy the following two conditions: f (x) = f (x1,x2) ≥ 0 for all -∞ < x1,x2 < ∞ (hal-20) 1.4.1 Variabel Acak Bivariat Alih-alih mempertimbangkan setiap atribut sebagai variabel acak, kita juga dapat melakukan analisis pasangan-bijaksana dengan mempertimbangkan sepasang atribut, X1 dan X2, sebagai variabel acak bivariat: (hal-19) X: O → R2 adalah fungsi yang menetapkan untuk setiap hasil dalam ruang sampel, sepasang bilangan real, yaitu, vektor 2 dimensi (x1 x2) ∈ R2. Seperti dalam kasus univariat, jika hasilnya numerik, maka defaultnya adalah menganggap X sebagai fungsi identitas. (hal-20) Fungsi Mass Probability Bersama Jika X1 dan X2 keduanya merupakan variabel acak diskrit maka X memiliki fungsi massa probabilitas gabungan yang diberikan sebagai berikut: f (x) = f (x1, x2) = P (X1 = x1, X2 = x2) = P (X = x) f harus memenuhi dua syarat berikut: f (x) = f (x1, x2) ≥ 0 untuk semua -∞ <x1, x2 <∞ (hal-20) Joint Probability Density Function If X1 and X2 are both continuous random variables then X has a joint probability density function f given as follows: (hal-20) Joint Cumulative Distribution Function The joint cumulative distribution function for two random variables X1 and X2 is defined as the function F , such that for all values x1,x2 ∈ (-∞,∞), F (x) = F (x1,x2) = P (X1 ≤ x1 and X2 ≤ x2) = P (X ≤ x) (hal-22) Statistical Independence Two random variables X1 and X2 are said to be (statistically) independent if, for every W1 ⊂ R and W2 ⊂ R, we have P (X1 ∈ W1 and X2 ∈ W2) = P (X1 ∈ W1)·P (X2 ∈ W2) Furthermore, if X1 and X2 are independent, then the following two conditions are also satisfied: F (x) = F (x1,x2) = F1(x1)·F2(x2) f (x) = f (x1,x2) = f1(x1)·f2(x2) where Fi is the cumulative distribution function, and fi is the probability mass or density function for random variable Xi. (hal-22) Fungsi Kerapatan Probabilitas Gabungan Jika X1 dan X2 keduanya merupakan variabel acak kontinu maka X memiliki fungsi kerapatan probabilitas gabungan f yang diberikan sebagai berikut: (hal20) Fungsi Distribusi Kumulatif Bersama Fungsi distribusi kumulatif bersama untuk dua variabel acak X1 dan X2 didefinisikan sebagai fungsi F, sehingga untuk semua nilai x1, x2 ∈ (-∞, ∞), F (x) = F (x1, x2) = P (X1 ≤ x1 dan X2 ≤ x2) = P (X ≤ x) (hal-22) Kemandirian Statistik Dua variabel acak X1 dan X2 dikatakan independen (secara statistik) jika, untuk setiap W1 ⊂ R dan W2 ⊂ R, kami memiliki P (X1 ∈ W1 dan X2 ∈ W2) = P (X1 ∈ W1) · P (X2 ∈ W2) Lebih lanjut, jika X1 dan X2 independen, maka dua kondisi berikut juga terpenuhi: F (x) = F (x1, x2) = F1 (x1) · F2 (x2) f (x) = f (x1, x2) = f1 (x1) · f2 (x2) di mana Fi adalah fungsi distribusi kumulatif, dan fi adalah probabilitas massa atau fungsi kepadatan untuk variabel acak Xi. (hal-22) 1.4.2 Multivariate Random Variable A d-dimensional multivariate random variable X = (X1,X2,...,Xd)T, also called a vector random variable, is defined as a function that assigns a vector of real numbers to each outcome in the sample space, that is, X : O → Rd. The range of X can be denoted as a vector x = (x1,x2,...,xd)T. In case all Xj are numeric, then X is by default assumed to be the identity function. In other words, if all attributes are numeric, we can treat each outcome in the sample space (i.e., each point in the data matrix) as a vector random variable. On the other hand, if the attributes are not all numeric, then X maps the outcomes to numeric vectors in its range. If all Xj are discrete, then X is jointly discrete and its joint probability mass function f is given as f (x) = P(X = x) f (x1,x2,...,xd) = P(X1 = x1,X2 = x2,...,Xd = xd) If all Xj are continuous, then X is jointly continuous and its joint probability density function is given as (hal-23) 1.4.2 Variabel Acak Multivarian Variabel acak multivariat d-dimensi X = (X1, X2, ..., Xd) T, juga disebut variabel acak vektor, didefinisikan sebagai fungsi yang memberikan vektor bilangan real ke setiap hasil dalam ruang sampel, yang adalah, X: O → Rd. Kisaran X dapat dilambangkan sebagai vektor x = (x1, x2, ..., xd) T. Dalam hal semua Xj adalah numerik, maka X secara default dianggap sebagai fungsi identitas. Dengan kata lain, jika semua atribut numerik, kita dapat memperlakukan setiap hasil dalam ruang sampel (mis., Setiap titik dalam matriks data) sebagai variabel vektor acak. Di sisi lain, jika atribut tidak semuanya numerik, maka X memetakan hasilnya ke vektor numerik dalam jangkauannya. Jika semua Xj adalah diskrit, maka X adalah diskrit bersama dan probabilitas massa fungsi gabungannya f diberikan sebagai f (x) = P (X = x) f (x1, x2, ..., xd) = P (X1 = x1, X2 = x2, ..., Xd = xd) Jika semua Xj kontinu, maka X adalah kontinu bersama dan fungsi densitas probabilitas gabungannya diberikan sebagai (hal-23) 1.4.3 Random Sample and Statistics The probability mass or density function of a random variable X may follow some known form, or as is often the case in data analysis, it may be unknown. When the probability function is not known, it may still be convenient to assume that the values follow some known distribution, based on the characteristics of the data. However, even in this case, the parameters of the distribution may still be unknown. Thus, in general, either the parameters, or the entire distribution, may have to be estimated from the data. In statistics, the word population is used to refer to the set or universe of all entities under study. Usually we are interested in certain characteristics or parameters of the entire population (e.g., the mean age of all computer science students in the United States). However, looking at the entire population may not be feasible or may be too expensive. Instead, we try to make inferences about the population parameters by drawing a random sample from the population, and by computing appropriate statistics from the sample that give estimates of the corresponding population parameters of interest. (hal-24) 1.4.3 Sampel dan Statistik Acak Massa probabilitas atau fungsi kerapatan variabel acak X dapat mengikuti beberapa bentuk yang diketahui, atau seperti yang sering terjadi dalam analisis data, mungkin tidak diketahui. Ketika fungsi probabilitas tidak diketahui, mungkin masih nyaman untuk mengasumsikan bahwa nilai-nilai mengikuti beberapa distribusi yang diketahui, berdasarkan karakteristik data. Namun, bahkan dalam kasus ini, parameter distribusi mungkin masih belum diketahui. Dengan demikian, secara umum, baik parameter, atau seluruh distribusi, mungkin harus diperkirakan dari data. Dalam statistik, kata populasi digunakan untuk merujuk pada himpunan atau semesta dari semua entitas yang diteliti. Biasanya kami tertarik pada karakteristik atau parameter tertentu dari seluruh populasi (mis., Usia rata-rata semua siswa ilmu komputer di Amerika Serikat). Namun, melihat seluruh populasi mungkin tidak layak atau mungkin terlalu mahal. Sebagai gantinya, kami mencoba membuat kesimpulan tentang parameter populasi dengan menggambar sampel acak dari populasi, dan dengan menghitung statistik yang sesuai dari sampel yang memberikan perkiraan parameter populasi yang sesuai dengan minat. (hal-24) Univariate Sample Given a random variable X, a random sample of size n from X is defined as a set of n independent and identically distributed (IID) random variables S1,S2,...,Sn, that is, all of the Si’s are statistically independent of each other, and follow the same probability mass or density function as X. If we treat attribute X as a random variable, then each of the observed values of X, namely, xi (1 ≤ i ≤ n), are themselves treated as identity random variables, and the observed data is assumed to be a random sample drawn from X. That is, all xi are considered to be mutually independent and identically distributed as X. By Eq. (1.11) their joint probability function is given as f (x1,...,xn) = n Y i=1 fX(xi) where fX is the probability mass or density function for X (hal-24) Sampel Univariat Diberikan variabel acak X, sampel acak ukuran n dari X didefinisikan sebagai seperangkat n variabel acak independen dan terdistribusi secara identik (IID) S1, S2, ..., Sn, yaitu, semua Si secara statistik independen satu sama lain, dan mengikuti probabilitas massa yang sama atau fungsi kerapatan sebagai X. Jika kita memperlakukan atribut X sebagai variabel acak, maka masing-masing nilai X yang diamati, yaitu, xi (1 ≤ i ≤ n), dengan sendirinya diperlakukan sebagai variabel acak identitas, dan data yang diamati diasumsikan sebagai sampel acak yang diambil dari X. Artinya, semua xi dianggap saling independen dan didistribusikan secara identik sebagai X. Oleh Persamaan. (1.11) fungsi probabilitas gabungannya diberikan sebagai f (x1, ..., xn) = n Y i = 1 fX (xi) di mana fX adalah probabilitas massa atau fungsi kepadatan untuk X (hal-24) Multivariate Sample For multivariate parameter estimation, the n data points xi (with 1 ≤ i ≤ n) constitute a d-dimensional multivariate random sample drawn from the vector random variable X = (X1,X2,...,Xd). That is, xi are assumed to be independent and identically distributed, and thus their joint distribution is given as f (x1,x2,...,xn) = n Y i=1 fX(xi) (1.12) where fX is the probability mass or density function for X. (hal-24) Estimating the parameters of a multivariate joint probability distribution is usually difficult and computationally intensive. One simplifying assumption that is typically made is that the d attributes X1,X2,...,Xd are statistically independent. However, we do not assume that they are identically distributed, because that is almost never justified. Under the attribute independence assumption Eq. (1.12) can be rewritten as (hal-25) Sampel Multivarian Untuk estimasi parameter multivariat, titik data n xi (dengan 1 ≤ i ≤ n) merupakan sampel acak multivariat d-dimensi yang diambil dari variabel acak vektor X = (X1, X2, ..., Xd). Yaitu, xi diasumsikan independen dan terdistribusi secara identik, dan dengan demikian distribusi bersama mereka diberikan sebagai f (x1, x2, ..., xn) = n Y i = 1 fX (xi) (1.12) di mana fX adalah fungsi probabilitas massa atau kepadatan untuk X. (hal-24) Memperkirakan parameter distribusi probabilitas gabungan multivariat biasanya sulit dan intensif secara komputasi. Salah satu asumsi penyederhanaan yang biasanya dibuat adalah bahwa atribut d X1, X2, ..., Xd secara statistik independen. Namun, kami tidak menganggap bahwa mereka terdistribusi secara identik, karena itu hampir tidak pernah dibenarkan. Di bawah asumsi independensi atribut Persamaan. (1.12) dapat ditulis ulang sebagai (hal-25) Statistic We can estimate a parameter of the population by defining an appropriate sample statistic, which is defined as a function of the sample. More precisely, let {Si}m i=1 denote the random sample of size m drawn from a (multivariate) random variable X. A statistic θˆ is a function θˆ : (S1,S2,...,Sm) → R. The statistic is an estimate of the corresponding population parameter θ. As such, the statistic θˆ is itself a random variable. If we use the value of a statistic to estimate a population parameter, this value is called a point estimate of the parameter, and the statistic is called an estimator of the parameter. In Chapter 2 we will study different estimators for population parameters that reflect the location (or centrality) and dispersion of values. (hal-25) Statistik Kami dapat memperkirakan parameter populasi dengan mendefinisikan statistik sampel yang sesuai, yang didefinisikan sebagai fungsi sampel. Lebih tepatnya, misalkan {Si} mi = 1 menunjukkan sampel acak ukuran m yang diambil dari variabel acak (multivariat) X. Statistik θˆ adalah fungsi θˆ: (S1, S2, ..., Sm) → R. The statistik adalah perkiraan parameter populasi yang sesuai θ. Dengan demikian, statistik θˆ sendiri merupakan variabel acak. Jika kita menggunakan nilai statistik untuk memperkirakan parameter populasi, nilai ini disebut estimasi titik parameter, dan statistik ini disebut penduga parameter. Dalam Bab 2 kita akan mempelajari penduga yang berbeda untuk parameter populasi yang mencerminkan lokasi (atau sentralitas) dan penyebaran nilai. (hal-25) 6. 1.5 DATA MINING Data mining comprises the core algorithms that enable one to gain fundamental insights and knowledge from massive data. It is an interdisciplinary field merging concepts from allied areas such as database systems, statistics, machine learning, and pattern recognition. In fact, data mining is part of a larger knowledge discovery process, which includes pre-processing tasks such as data extraction, data cleaning, data fusion, data reduction and feature construction, as well as post-processing steps such as pattern and model interpretation, hypothesis confirmation and generation, and so on. This knowledge discovery and data mining process tends to be highly iterative and interactive. The algebraic, geometric, and probabilistic viewpoints of data play a key role in data mining. Given a dataset of n points in a d-dimensional space, the fundamental analysis and mining tasks covered in this book include exploratory data analysis, frequent pattern discovery, data clustering, and classification models, which are described next. (hal-26) DATA MINING Data mining terdiri dari algoritma inti yang memungkinkan seseorang untuk mendapatkan wawasan dan pengetahuan mendasar dari data yang sangat besar. Ini adalah bidang interdisipliner yang menggabungkan konsep dari area yang bersekutu seperti sistem basis data, statistik, pembelajaran mesin, dan pengenalan pola. Faktanya, data mining adalah bagian dari proses penemuan pengetahuan yang lebih besar, yang mencakup tugas pra-pemrosesan seperti ekstraksi data, pembersihan data, penggabungan data, pengurangan data dan konstruksi fitur, serta langkah-langkah pasca-pemrosesan seperti interpretasi pola dan model , konfirmasi dan pembangkitan hipotesis, dan sebagainya. Penemuan pengetahuan dan proses data mining ini cenderung sangat berulang dan interaktif. Sudut pandang data aljabar, geometris, dan probabilistik memainkan peran kunci dalam data mining. Dengan set data titik n dalam ruang dimensi-d, tugas dasar analisis dan mining yang tercakup dalam buku ini meliputi analisis data eksplorasi, penemuan pola yang sering, pengelompokan data, dan model klasifikasi, yang akan dijelaskan selanjutnya. (hal-26) 1.5.1 Exploratory Data Analysis Exploratory data analysis aims to explore the numeric and categorical attributes of the data individually or jointly to extract key characteristics of the data sample via statistics that give information about the centrality, dispersion, and so on. Moving away from the IID assumption among the data points, it is also important to consider the statistics that deal with the data as a graph, where the nodes denote the points and weighted edges denote the connections between points. This enables one to extract important topological attributes that give insights into the structure and models of networks and graphs. Kernel methods provide a fundamental connection between the independent pointwise view of data, and the viewpoint that deals with pairwise similarities between points. Many of the exploratory data analysis and mining tasks can be cast as kernel problems via the kernel trick, that is, by showing that the operations involve only dot-products between pairs of points. However, kernel methods also enable us to perform nonlinear analysis by using familiar linear algebraic and statistical methods in high-dimensional spaces comprising “nonlinear” dimensions. They further allow us to mine complex data as long as we have a way to measure the pairwise similarity between two abstract objects. Given that data mining deals with massive datasets with thousands of attributes and millions of points, another goal of exploratory analysis is to reduce the amount of data to be mined. For instance, feature selection and dimensionality reduction methods are used to select the most important dimensions, discretization methods can be used to reduce the number of values of an attribute, data sampling methods can be used to reduce the data size, and so on. Part I of this book begins with basic statistical analysis of univariate and multivariate numeric data in Chapter 2. We describe measures of central tendency such as mean, median, and mode, and then we consider measures of dispersion such as range, variance, and covariance. We emphasize the dual algebraic and probabilistic views, and highlight the geometric interpretation of the various measures. We especially focus on the multivariate normal distribution, which is widely used as the default parametric model for data in both classification and clustering. In Chapter 3 we show how categorical data can be modeled via the multivariate binomial and the multinomial distributions. We describe the contingency table analysis approach to test for dependence between categorical attributes. Next, in Chapter 4 we show how to analyze graph data in terms of the topological structure, with special focus on various graph centrality measures such as closeness, betweenness, prestige, PageRank, and so on. We also study basic topological properties of real-world networks such as the small world property, which states that real graphs have small average path length between pairs of nodes, the clustering effect, which indicates local clustering around nodes, and the scale-free property, which manifests itself in a power-law degree distribution. We describe models that can explain some of these characteristics of real-world graphs; these include the Erdos–R ¨ enyi random graph model, the Watts–Strogatz model, ´ and the Barabasi–Albert model. Kernel methods are then introduced in Cha ´ pter 5, which provide new insights and connections between linear, nonlinear, graph, and complex data mining tasks. We briefly highlight the theory behind kernel functions, with the key concept being that a positive semidefinite kernel corresponds to a dot product in some high-dimensional feature space, and thus we can use familiar numeric analysis methods for nonlinear or complex object analysis provided we can compute the pairwise kernel matrix of similarities between object instances. We describe various kernels for numeric or vector data, as well as sequence and graph data. In Chapter 6 we consider the peculiarities of high-dimensional space, colorfully referred to as the curse of dimensionality. In particular, we study the scattering effect, that is, the fact that data points lie along the surface and corners in high dimensions, with the “center” of the space being virtually empty. We show the proliferation of orthogonal axes and also the behavior of the multivariate normal distribution in high dimensions. Finally, in Chapter 7 we describe the widely used dimensionality reduction methods such as principal component analysis (PCA) and singular value decomposition (SVD). PCA finds the optimal k-dimensional subspace that captures most of the variance in the data. We also show how kernel PCA can be used to find nonlinear directions that capture the most variance. We conclude with the powerful SVD spectral decomposition method, studying its geometry, and its relationship to PCA. (hal-26-27) 1.5.1 Analisis Data Eksplorasi Analisis data eksplorasi bertujuan untuk mengeksplorasi atribut numerik dan kategorikal dari data secara individual atau bersama-sama untuk mengekstraksi karakteristik kunci dari sampel data melalui statistik yang memberikan informasi tentang sentralitas, dispersi, dan sebagainya. Beranjak dari asumsi IID di antara titik-titik data, penting juga untuk mempertimbangkan statistik yang menangani data sebagai grafik, di mana simpul-simpul tersebut menunjukkan titik-titik dan ujung-ujung berbobot menunjukkan hubungan antara titik-titik. Ini memungkinkan seseorang untuk mengekstrak atribut topologis penting yang memberikan wawasan ke dalam struktur dan model jaringan dan grafik. Metode kernel menyediakan koneksi mendasar antara tampilan data pointwise independen, dan sudut pandang yang berkaitan dengan persamaan pairwise antara poin. Banyak analisis data eksplorasi dan tugas mining dapat dilemparkan sebagai masalah kernel melalui trik kernel, yaitu, dengan menunjukkan bahwa operasi hanya melibatkan produk-titik antara pasangan titik. Namun, metode kernel juga memungkinkan kita untuk melakukan analisis nonlinier dengan menggunakan metode aljabar linear dan statistik yang sudah dikenal dalam ruang dimensi tinggi yang terdiri dari dimensi "nonlinear". Mereka lebih lanjut memungkinkan kita untuk memining data yang kompleks selama kita memiliki cara untuk mengukur kesamaan berpasangan antara dua objek abstrak. Mengingat bahwa data mining berkaitan dengan kumpulan data besar dengan ribuan atribut dan jutaan poin, tujuan lain dari analisis eksplorasi adalah untuk mengurangi jumlah data yang akan ditambang. Misalnya, pemilihan fitur dan metode pengurangan dimensi digunakan untuk memilih dimensi yang paling penting, metode diskritisasi dapat digunakan untuk mengurangi jumlah nilai atribut, metode pengambilan sampel data dapat digunakan untuk mengurangi ukuran data, dan sebagainya. Bagian I buku ini dimulai dengan analisis statistik dasar data numerik univariat dan multivariat di Bab 2. Kami menjelaskan ukuran-ukuran kecenderungan sentral seperti rata-rata, median, dan mode, dan kemudian kami mempertimbangkan ukuran penyebaran seperti rentang, varian, dan kovarian. . Kami menekankan pandangan aljabar ganda dan probabilistik, dan menyoroti interpretasi geometris dari berbagai tindakan. Kami terutama berfokus pada distribusi normal multivariat, yang banyak digunakan sebagai model parametrik default untuk data dalam klasifikasi dan clustering. Dalam Bab 3 kami menunjukkan bagaimana data kategorikal dapat dimodelkan melalui binomial multivariat dan distribusi multinomial. Kami menggambarkan pendekatan analisis tabel kontingensi untuk menguji ketergantungan antara atribut kategori. Selanjutnya, dalam Bab 4 kita menunjukkan bagaimana menganalisis data grafik dalam hal struktur topologi, dengan fokus khusus pada berbagai ukuran sentralitas grafik seperti kedekatan, antara, gengsi, PageRank, dan sebagainya. Kami juga mempelajari sifat topologi dasar dari jaringan dunia nyata seperti properti dunia kecil, yang menyatakan bahwa grafik nyata memiliki panjang jalur rata-rata kecil antara pasangan node, efek pengelompokan, yang menunjukkan pengelompokan lokal di sekitar node, dan properti bebas skala , yang memanifestasikan dirinya dalam distribusi gelar kuasa-hukum. Kami menggambarkan model yang dapat menjelaskan beberapa karakteristik grafik dunia nyata ini; ini termasuk model grafik acak Erdos – R ¨ enyi, model Watts-Strogatz, ´ dan model Barabasi-Albert. Metode kernel kemudian diperkenalkan dalam Cha ´ pter 5, yang memberikan wawasan dan koneksi baru antara tugas linier, nonlinier, grafik, dan penambangan data yang kompleks. Kami secara singkat menyoroti teori di balik fungsi kernel, dengan konsep utama adalah bahwa kernel semidefinite positif sesuai dengan produk titik dalam beberapa ruang fitur dimensi tinggi, dan dengan demikian kita dapat menggunakan metode analisis numerik yang sudah dikenal untuk analisis objek nonlinier atau objek kompleks asalkan kita dapat hitung matriks kernel berpasangan kesamaan antara instance objek. Kami menggambarkan berbagai kernel untuk data numerik atau vektor, serta data urutan dan grafik. Dalam Bab 6 kami mempertimbangkan kekhasan ruang dimensi tinggi, yang secara penuh warna disebut sebagai kutukan dimensi. Secara khusus, kami mempelajari efek hamburan, yaitu fakta bahwa titik-titik data terletak di sepanjang permukaan dan sudut-sudut dalam dimensi tinggi, dengan "pusat" ruang yang hampir kosong. Kami menunjukkan proliferasi sumbu ortogonal dan juga perilaku distribusi normal multivariat dalam dimensi tinggi. Akhirnya, dalam Bab 7 kami menjelaskan metode reduksi dimensionalitas yang banyak digunakan seperti analisis komponen utama (PCA) dan dekomposisi nilai singular (SVD). PCA menemukan subruang dimensi-k optimal yang menangkap sebagian besar varians dalam data. Kami juga menunjukkan bagaimana kernel PCA dapat digunakan untuk menemukan arah nonlinier yang menangkap varian paling banyak. Kami menyimpulkan dengan metode dekomposisi spektral SVD yang kuat, mempelajari geometri, dan hubungannya dengan PCA. (hal-26-27) 1.5.2 Frequent Pattern Mining Frequent pattern mining refers to the task of extracting informative and useful patterns in massive and complex datasets. Patterns comprise sets of cooccurring attribute values, called itemsets, or more complex patterns, such as sequences, which consider explicit precedence relationships (either positional or temporal), and graphs, which consider arbitrary relationships between points. The key goal is to discover hidden trends and behaviors in the data to understand better the interactions among the points and attributes. Part II begins by presenting efficient algorithms for frequent itemset mining in Chapter 8. The key methods include the level-wise Apriori algorithm, the “vertical” intersection based Eclat algorithm, and the frequent pattern tree and projection based FPGrowth method. Typically the mining process results in too many frequent patterns that can be hard to interpret. In Chapter 9 we consider approaches to summarize the mined patterns; these include maximal (GenMax algorithm), closed (Charm algorithm), and non-derivable itemsets. We describe effective methods for frequent sequence mining in Chapter 10, which include the level-wise GSP method, the vertical SPADE algorithm, and the projection-based PrefixSpan approach. We also describe how consecutive subsequences, also called substrings, can be mined much more efficiently via Ukkonen’s linear time and space suffix tree method. Moving beyond sequences to arbitrary graphs, we describe the popular and efficient gSpan algorithm for frequent subgraph mining in Chapter 11. Graph mining involves two key steps, namely graph isomorphism checks to eliminate duplicate patterns during pattern enumeration and subgraph isomorphism checks during frequency computation. These operations can be performed in polynomial time for sets and sequences, but for graphs it is known that subgraph isomorphism is NPhard, and thus there is no polynomial time method possible unless P = NP. The gSpan method proposes a new canonical code and a systematic approach to subgraph extension, which allow it to efficiently detect duplicates and to perform several subgraph isomorphism checks much more efficiently than performing them individually. Given that pattern mining methods generate many output results it is very important to assess the mined patterns. We discuss strategies for assessing both the frequent patterns and rules that can be mined from them in Chapter 12, emphasizing methods for significance testing. (hal27-28) 1.5.2 Mining Pola Yang Sering Mining pola yang sering mengacu pada tugas mengekstraksi pola yang informatif dan berguna dalam kumpulan data yang besar dan kompleks. Pola terdiri dari sekumpulan nilai atribut yang terjadi secara bersamaan, yang disebut itemset, atau pola yang lebih kompleks, seperti sekuens, yang mempertimbangkan hubungan diutamakan secara eksplisit (baik posisi atau temporal), dan grafik, yang mempertimbangkan hubungan sewenang-wenang antara titik. Tujuan utamanya adalah untuk menemukan tren dan perilaku tersembunyi dalam data untuk memahami interaksi antara poin dan atribut dengan lebih baik. Bagian II dimulai dengan menyajikan algoritma yang efisien untuk mining itemset yang sering di Bab 8. Metode utama termasuk algoritma Apriori tingkat-bijaksana, algoritma Eclat berbasis persimpangan "vertikal", dan pohon pola sering dan proyeksi berdasarkan metode FPGrowth. Biasanya proses penambangan menghasilkan terlalu banyak pola yang sulit diinterpretasikan. Dalam Bab 9 kami mempertimbangkan pendekatan untuk merangkum pola yang dimining; ini termasuk maksimal (algoritma GenMax), tertutup (algoritma Charm), dan itemet yang tidak dapat diturunkan. Kami menjelaskan metode yang efektif untuk penambangan urutan yang sering di Bab 10, yang mencakup metode GSP level-bijaksana, algoritma SPADE vertikal, dan pendekatan PrefixSpan berbasis proyeksi. Kami juga menjelaskan bagaimana urutan berturut-turut, juga disebut substring, dapat ditambang jauh lebih efisien melalui metode linear suffix time and space tree Ukkonen. Bergerak melampaui sekuens ke grafik arbitrer, kami menggambarkan algoritma gSpan yang populer dan efisien untuk penambangan subgraph yang sering di Bab 11. Mining grafik melibatkan dua langkah kunci, yaitu pengecekan grafik isomorfisme untuk menghilangkan pola duplikat selama pencacahan pola dan pengecekan isomorfisma subgraf selama perhitungan frekuensi. Operasi ini dapat dilakukan dalam waktu polinomial untuk set dan urutan, tetapi untuk grafik diketahui bahwa isomorfisma subgraph adalah NP-keras, dan dengan demikian tidak ada metode waktu polinomial yang mungkin kecuali P = NP. Metode gSpan mengusulkan kode kanonik baru dan pendekatan sistematis untuk ekstensi subgraph, yang memungkinkannya mendeteksi duplikat secara efisien dan melakukan beberapa pemeriksaan isomorfisma subgraph jauh lebih efisien daripada melakukannya secara individual. Mengingat bahwa metode mining pola menghasilkan banyak hasil keluaran, sangat penting untuk menilai pola yang ditambang. Kami membahas strategi untuk menilai baik pola dan aturan yang sering dapat ditambang dari mereka di Bab 12, menekankan metode untuk pengujian signifikansi. (hal-27-28) 1.5.3 Clustering Clustering is the task of partitioning the points into natural groups called clusters, such that points within a group are very similar, whereas points across clusters are as dissimilar as possible. Depending on the data and desired cluster characteristics, there are different types of clustering paradigms such as representative-based, hierarchical, density-based, graph-based, and spectral clustering. Part III starts with representative-based clustering methods (Chapter 13), which include the K-means and Expectation-Maximization (EM) algorithms. K-means is a greedy algorithm that minimizes the squared error of points from their respective cluster means, and it performs hard clustering, that is, each point is assigned to only one cluster. We also show how kernel K-means can be used for nonlinear clusters. EM generalizes K-means by modeling the data as a mixture of normal distributions, and it finds the cluster parameters (the mean and covariance matrix) by maximizing the likelihood of the data. It is a soft clustering approach, that is, instead of making a hard assignment, it returns the probability that a point belongs to each cluster. In Chapter 14 we consider various agglomerative hierarchical clustering methods, which start from each point in its own cluster, and successively merge (or agglomerate) pairs of clusters until the desired number of clusters have been found. We consider various cluster proximity measures that distinguish the different hierarchical methods. There are some datasets where the points from different clusters may in fact be closer in distance than points from the same cluster; this usually happens when the clusters are nonconvex in shape. Density-based clustering methods described in Chapter 15 use the density or connectedness properties to find such nonconvex clusters. The two main methods are DBSCAN and its generalization DENCLUE, which is based on kernel density estimation. We consider graph clustering methods in Chapter 16, which are typically based on spectral analysis of graph data. Graph clustering can be considered as an optimization problem over a k-way cut in a graph; different objectives can be cast as spectral decomposition of different graph matrices, such as the (normalized) adjacency matrix, Laplacian matrix, and so on, derived from the original graph data or from the kernel matrix. Finally, given the proliferation of different types of clustering methods, it is important to assess the mined clusters as to how good they are in capturing the natural groups in data. In Chapter 17, we describe various clustering validation and evaluation strategies, spanning external and internal measures to compare a clustering with the ground-truth if it is available, or to compare two clusterings. We also highlight methods for clustering stability, that is, the sensitivity of the clustering to data perturbation, and clustering tendency, that is, the clusterability of the data. We also consider methods to choose the parameter k, which is the user-specified value for the number of clusters to discover. (hal-28-29) 1.5.4 Classification The classification task is to predict the label or class for a given unlabeled point. Formally, a classifier is a model or function M that predicts the class label yˆ for a given input example x, that is, yˆ = M(x), where yˆ ∈ {c1,c2,... ,ck} and each ci is a class label (a categorical attribute value). To build the model we require a set of points with their correct class labels, which is called a training set. After learning the model M, we can automatically predict the class for any new point. Many different types of classification models have been proposed such as decision trees, probabilistic classifiers, support vector machines, and so on. Part IV starts with the powerful Bayes classifier, which is an example of the probabilistic classification approach (Chapter 18). It uses the Bayes theorem to predict the class as the one that maximizes the posterior probability P (ci|x). The main task is to estimate the joint probability density function f (x) for each class, which is modeled via a multivariate normal distribution. One limitation of the Bayes approach is the number of parameters to be estimated which scales as O(d2). The naive Bayes classifier makes the simplifying assumption that all attributes are independent, which requires the estimation of only O(d) parameters. It is, however, surprisingly effective for many datasets. In Chapter 19 we consider the popular decision tree classifier, one of whose strengths is that it yields models that are easier to understand compared to other methods. A decision tree recursively partitions the data space into “pure” regions that contain data points from only one class, with relatively few exceptions. Next, in Chapter 20, we consider the task of finding an optimal direction that separates the points from two classes via linear discriminant analysis. It can be considered as a dimensionality reduction method that also takes the class labels into account, unlike PCA, which does not consider the class attribute. We also describe the generalization of linear to kernel discriminant analysis, which allows us to find nonlinear directions via the kernel trick. In Chapter 21 we describe the support vector machine (SVM) approach in detail, which is one of the most effective classifiers for many different problem domains. The goal of SVMs is to find the optimal hyperplane that maximizes the margin between the classes. Via the kernel trick, SVMs can be used to find nonlinear boundaries, which nevertheless correspond to some linear hyperplane in some high-dimensional “nonlinear” space. One of the important tasks in classification is to assess how good the models are. We conclude this part with Chapter 22, which presents the various methodologies for assessing classification models. We define various classification performance measures including ROC analysis. We then describe the bootstrap and cross-validation approaches for classifier evaluation. Finally, we discuss the bias–variance tradeoff in classification, and how ensemble classifiers can help improve the variance or the bias of a classifier.(hal 29-30) 1.5.4 Klasifikasi Tugas klasifikasi adalah untuk memprediksi label atau kelas untuk titik berlabel yang diberikan. Secara formal, classifier adalah model atau fungsi M yang memprediksi label kelas yˆ untuk contoh input yang diberikan x, yaitu, yˆ = M (x), di mana yˆ ∈ {c1, c2, ..., ck} dan masing-masing adalah label kelas (nilai atribut kategoris). Untuk membangun model, kami memerlukan satu set poin dengan label kelas yang benar, yang disebut set pelatihan. Setelah mempelajari model M, kita dapat secara otomatis memprediksi kelas untuk setiap titik baru. Berbagai jenis model klasifikasi telah diusulkan seperti pohon keputusan, pengklasifikasi probabilistik, mesin vektor dukungan, dan sebagainya. Bagian IV dimulai dengan classifier Bayes yang kuat, yang merupakan contoh dari pendekatan klasifikasi probabilistik (Bab 18). Ia menggunakan teorema Bayes untuk memprediksi kelas sebagai kelas yang memaksimalkan probabilitas posterior P (ci | x). Tugas utama adalah memperkirakan fungsi densitas probabilitas gabungan f (x) untuk setiap kelas, yang dimodelkan melalui distribusi normal multivariat. Salah satu batasan dari pendekatan Bayes adalah jumlah parameter yang harus diperkirakan yang skala sebagai O (d2). Pengklasifikasi naif Bayes membuat asumsi penyederhanaan bahwa semua atribut independen, yang memerlukan estimasi hanya parameter O (d). Namun, ini sangat efektif untuk banyak dataset. Dalam Bab 19, kami mempertimbangkan pengelompokan pohon keputusan populer, salah satu kekuatannya adalah menghasilkan model yang lebih mudah dipahami dibandingkan dengan metode lain. Pohon keputusan secara rekursif memisah ruang data menjadi wilayah "murni" yang berisi titik data hanya dari satu kelas, dengan pengecualian yang relatif sedikit. Selanjutnya, dalam Bab 20, kami mempertimbangkan tugas menemukan arah optimal yang memisahkan titiktitik dari dua kelas melalui analisis diskriminan linier. Ini dapat dianggap sebagai metode reduksi dimensi yang juga memperhitungkan label kelas, tidak seperti PCA, yang tidak mempertimbangkan atribut kelas. Kami juga menjelaskan generalisasi analisis diskriminan linear ke kernel, yang memungkinkan kami menemukan arah nonlinier melalui trik kernel. Dalam Bab 21 kami menjelaskan pendekatan mesin dukungan vektor (SVM) secara rinci, yang merupakan salah satu pengklasifikasi paling efektif untuk banyak domain masalah yang berbeda. Tujuan SVM adalah untuk menemukan hyperplane optimal yang memaksimalkan margin antara kelas-kelas. Melalui trik kernel, SVM dapat digunakan untuk menemukan batas-batas nonlinier, yang bagaimanapun sesuai dengan beberapa hyperplane linier di beberapa ruang “nonlinear” dimensi tinggi. Salah satu tugas penting dalam klasifikasi adalah untuk menilai seberapa baik model. Kami menyimpulkan bagian ini dengan Bab 22, yang menyajikan berbagai metodologi untuk menilai model klasifikasi. Kami mendefinisikan berbagai ukuran kinerja klasifikasi termasuk analisis ROC. Kami kemudian menjelaskan pendekatan bootstrap dan validasi silang untuk evaluasi classifier. Akhirnya, kami membahas bias tradeoffvarians dalam klasifikasi, dan bagaimana ensemble classifier dapat membantu meningkatkan varians atau bias dari classifier. (hal 29-30) Decision Tree Classifier Let the training dataset D = {xi,yi}n i=1 consist of n points in a d-dimensional space, with yi being the class label for point xi. We assume that the dimensions or the attributes Xj are numeric or categorical, and that there are k distinct classes, so that yi ∈ {c1,c2,...,ck}. A decision tree classifier is a recursive, partition-based tree model that predicts the class yˆi for each point xi. Let R denote the data space that encompasses the set of input points D. A decision tree uses an axis-parallel hyperplane to split the data space R into two resulting half-spaces or regions, say R1 and R2, which also induces a partition of the input points into D1 and D2, respectively. Each of these regions is recursively split via axis-parallel hyperplanes until the points within an induced partition are relatively pure in terms of their class labels, that is, most of the points belong to the same class. The resulting hierarchy of split decisions constitutes the decision tree model, with the leaf nodes labeled with the majority class among points in those regions. To classify a new test point we have to recursively evaluate which half-space it belongs to until we reach a leaf node in the decision tree, at which point we predict its class as the label of the leaf. (hal 480) Pengelompokan Pohon Keputusan Biarkan dataset pelatihan D = {xi, yi} n i = 1 terdiri dari n poin dalam ruang ddimensi, dengan yi menjadi label kelas untuk titik xi. Kami berasumsi bahwa dimensi atau atribut Xj adalah numerik atau kategoris, dan bahwa ada k kelas yang berbeda, sehingga yi ∈ {c1, c2, ..., ck}. Sebuah classifier pohon keputusan adalah model pohon berbasis partisi dan rekursif yang memprediksi kelas yˆi untuk setiap titik xi. Misalkan R menunjukkan ruang data yang mencakup himpunan titik input D. Pohon keputusan menggunakan hyperplane sumbuparalel untuk membagi ruang data R menjadi dua ruang atau daerah setengah, katakan R1 dan R2, yang juga menginduksi partisi dari titik input masingmasing menjadi D1 dan D2. Masing-masing daerah ini dibagi secara rekursif melalui hyperplanes sumbu-paralel sampai titik-titik dalam partisi yang diinduksi relatif murni dalam hal label kelas mereka, yaitu, sebagian besar titik milik kelas yang sama. Hierarki hasil keputusan yang terpisah merupakan model pohon keputusan, dengan simpul daun diberi label dengan kelas mayoritas di antara titik-titik di wilayah tersebut. Untuk mengklasifikasikan titik uji baru, kita harus mengevaluasi secara rekursif setengah dari ruang miliknya sampai kita mencapai simpul daun di pohon keputusan, di mana kita memprediksi kelasnya sebagai label daun. (hal 480) 19.1 DECISION TREES A decision tree consists of internal nodes that represent the decisions corresponding to the hyperplanes or split points (i.e., which half-space a given point lies in), and leaf nodes that represent regions or partitions of the data space, which are labeled with the majority class. A region is characterized by the subset of data points that lie in that region. (hal 482) 19.1 POHON KEPUTUSAN Pohon keputusan terdiri dari node internal yang mewakili keputusan yang sesuai dengan hyperplanes atau titik perpecahan (yaitu, di mana setengah ruang titik tertentu terletak), dan node daun yang mewakili wilayah atau artisi ruang data, yang diberi label dengan kelas mayoritas. Suatu wilayah dicirikan oleh subset dari titik data yang terletak di wilayah itu. (hal 482) Axis-Parallel Hyperplanes A hyperplane h(x) is defined as the set of all points x that satisfy the following equation h(x): wTx+b = 0 (19.1) Here w ∈Rd is a weight vector that is normal to the hyperplane, and b is the offset of the hyperplane from the origin. A decision tree considers only axisparallel hyperplanes, that is, the weight vector must be parallel to one of the original dimensions or axes Xj. Put differently, the weight vector w is restricted a priori to one of the standard basis vectors {e1,e2,...,ed}, where ei ∈ Rd has a 1 for the jth dimension, and 0 for all other dimensions. If x = (x1,x2,...,xd)T and assuming w = ej, we can rewrite Eq. (19.1) as h(x): ejTx+b = 0, which implies that h(x): xj +b = 0 where the choice of the offset b yields different hyperplanes along dimension Xj. (hal 482) Hyperplanes Paralel Sumbu Hyperplane h (x) didefinisikan sebagai himpunan semua titik x yang memenuhi persamaan berikut h (x): wTx + b = 0 (19.1) Di sini w ∈Rd adalah vektor bobot yang normal untuk hyperplane, dan b adalah offset dari hyperplane dari asalnya. Pohon keputusan hanya mempertimbangkan hyperplanes sumbu-paralel, yaitu vektor bobot harus sejajar dengan salah satu dimensi asli atau sumbu Xj. Dengan kata lain, vektor bobot w dibatasi apriori ke salah satu vektor basis standar {e1, e2, ..., ed}, di mana ei ∈ Rd memiliki 1 untuk dimensi j, dan 0 untuk semua dimensi lainnya. Jika x = (x1, x2, ..., xd) T dan dengan asumsi w = ej, kita dapat menulis ulang Persamaan. (19.1) sebagai h (x): ejTx + b = 0, yang menyiratkan hal itu h (x): xj + b = 0 di mana pilihan offset b menghasilkan hyperplanes yang berbeda sepanjang dimensi Xj. (hal 482) Split Points A hyperplane specifies a decision or split point because it splits the data space R into two half-spaces. All points x such that h(x) ≤ 0 are on the hyperplane or to one side of the hyperplane, whereas all points such that h(x) > 0 are on the other side. The split point associated with an axis-parallel hyperplane can be written as h(x) ≤ 0, which implies that xi +b ≤ 0, or xi ≤ -b. Because xi is some value from dimension Xj and the offset b can be chosen to be any value, the generic form of a split point for a numeric attribute Xj is given as Xj ≤ v where v = -b is some value in the domain of attribute Xj. The decision or split point Xj ≤ v thus splits the input data space R into two regions RY and RN, which denote the set of all possible points that satisfy the decision and those that do not. (hal 482) Poin Terpisah Hyperplane menentukan keputusan atau titik perpecahan karena memecah ruang data R menjadi dua setengah ruang. Semua titik x sedemikian rupa sehingga h (x) ≤ 0 berada di hyperplane atau ke satu sisi hyperplane, sedangkan semua titik sedemikian rupa sehingga h (x)> 0 berada di sisi lain. Titik perpecahan yang terkait dengan hyperplane sumbu-paralel dapat ditulis sebagai h (x) ≤ 0, yang menyiratkan bahwa xi + b ≤ 0, atau xi ≤ -b. Karena xi adalah beberapa nilai dari dimensi Xj dan offset b dapat dipilih menjadi nilai apa pun, bentuk generik dari titik perpecahan untuk atribut numerik Xj diberikan sebagai Xj ≤ v di mana v = -b adalah beberapa nilai dalam domain atribut Xj. Keputusan atau titik perpecahan Xj ≤ v dengan demikian membagi ruang data input R menjadi dua wilayah RY dan RN, yang menunjukkan set semua poin yang mungkin yang memenuhi keputusan dan yang tidak. (hal 482) Data Partition Each split of R into RY and RN also induces a binary partition of the corresponding input data points D. That is, a split point of the form Xj ≤ v induces the data partition DY = {x | x ∈ D,xj ≤ v} DN = {x | x ∈ D,xj > v} where DY is the subset of data points that lie in region RY and DN is the subset of input points that line in RN. (hal-482) Partisi Data Setiap pemisahan R menjadi RY dan RN juga menginduksi partisi biner dari titik data input yang sesuai D. Yaitu, titik split dari bentuk Xj ≤ v menginduksi partisi data DY = {x | x ∈ D, xj ≤ v} DN = {x | x ∈ D, xj> v} di mana DY adalah himpunan bagian dari titik data yang terletak di wilayah RY dan DN adalah himpunan bagian dari input poin yang berbaris di RN. (hal-482) Purity The purity of a region Rj is defined in terms of the mixture of classes for points in the corresponding data partition Dj. Formally, purity is the fraction of points with the majority label in Dj, that is, purity(Dj ) = max i nnj i j (19.2) where nj =|Dj| is the total number of data points in the region Rj, and nj i is the number of points in Dj with class label ci. (hal 483) Kemurnian Kemurnian suatu wilayah Rj didefinisikan dalam hal campuran kelas untuk titik-titik dalam partisi data yang sesuai Dj. Secara formal, kemurnian adalah sebagian kecil dari poin dengan label mayoritas di Dj, yaitu, purity (Dj) = maks i nnj i j (19.2) dimana nj = | Dj | adalah jumlah total titik data di wilayah Rj, dan nj i adalah jumlah titik di Dj dengan label kelas ci. (hal 483) Categorical Attributes In addition to numeric attributes, a decision tree can also handle categorical data. For a categorical attribute Xj, the split points or decisions are of the Xj ∈ V, where V ⊂ dom(Xj), and dom(Xj) denotes the domain for Xj. Intuitively, this split can be considered to be the categorical analog of a hyperplane. It results in two “half-spaces,” one region RY consisting of points x that satisfy the condition xi ∈ V, and the other region RN comprising points that satisfy the condition xi 6∈ V. (hal 484) Atribut Kategorikal Selain atribut numerik, pohon keputusan juga dapat menangani data kategorikal. Untuk atribut kategorikal Xj, poin atau keputusan yang dibagi adalah dari Xj ∈ V, di mana V ⊂ dom (Xj), dan dom (Xj) menunjukkan domain untuk Xj. Secara intuitif, pemisahan ini dapat dianggap sebagai analog kategoris dari sebuah hyperplane. Ini menghasilkan dua "setengah-ruang," satu wilayah RY yang terdiri dari titik x yang memenuhi kondisi xi ∈ V, dan wilayah lain RN yang terdiri dari titik-titik yang memenuhi kondisi xi 6∈ V. (hal 484) Decision Rules One of the advantages of decision trees is that they produce models that are relatively easy to interpret. In particular, a tree can be read as set of decision rules, with each rule’s antecedent comprising the decisions on the internal nodes along a path to a leaf, and its consequent being the label of the leaf node. Further, because the regions are all disjoint and cover the entire space, the set of rules can be interpreted as a set of alternatives or disjunctions. (hal 484) Aturan Keputusan Salah satu keuntungan dari pohon keputusan adalah bahwa mereka menghasilkan model yang relatif mudah ditafsirkan. Secara khusus, sebuah pohon dapat dibaca sebagai seperangkat aturan keputusan, dengan masingmasing aturan tersebut terdiri dari keputusan pada node internal di sepanjang jalan menuju daun, dan konsekuensinya menjadi label simpul daun. Lebih lanjut, karena daerah semuanya terpisah dan menutupi seluruh ruang, seperangkat aturan dapat diartikan sebagai seperangkat alternatif atau disjungsi. (hal 484) 19.2 DECISION TREE ALGORITHM The pseudo-code for decision tree model construction is shown in Algorithm 19.1. It takes as input a training dataset D, and two parameters η and π, where η is the leaf size and π the leaf purity threshold. Different split points are evaluated for each attribute in D. Numeric decisions are of the form Xj ≤ v for some value v in the value range for attribute Xj, and categorical decisions are of the form Xj ∈ V for some subset of values in the domain of Xj. The best split point is chosen to partition the data into two subsets, DY and DN, where DY corresponds to all points x ∈ D that satisfy the split decision, and DN corresponds to all points that do not satisfy the split decision. The decision tree method is then called recursively on DY and DN. A number of stopping conditions can be used to stop the recursive partitioning process. The simplest condition is based on the size of the partition D. If the number of points n in D drops below the user-specified size threshold η, then we stop the partitioning process and make D a leaf. This condition prevents over-fitting the model to the training set, by avoiding to model very small subsets of the data. Size alone is not sufficient because if the partition is already pure then it does not make sense to split it further. Thus, the recursive partitioning is also terminated if the purity of D is above the purity threshold π. Details of how the split points are evaluated and chosen are given next. (hal 484-485) 19.2 ALGORITMA POHON KEPUTUSAN Kode pseudo untuk konstruksi model pohon keputusan ditunjukkan dalam Algoritma 19.1. Dibutuhkan sebagai input dataset pelatihan D, dan dua parameter η dan π, di mana η adalah ukuran daun dan π ambang kemurnian daun. Perbedaan poin dievaluasi untuk setiap atribut dalam D. Keputusan numerik adalah dari bentuk Xj ≤ v untuk beberapa nilai v dalam rentang nilai untuk atribut Xj, dan keputusan kategorikal adalah dari bentuk Xj ∈ V untuk beberapa bagian dari nilai dalam domain dari Xj. Titik pemisahan terbaik dipilih untuk mempartisi data menjadi dua himpunan bagian, DY dan DN, di mana DY terkait dengan semua poin x ∈ D yang memenuhi keputusan pembagian, dan DN sesuai dengan semua poin yang tidak memenuhi keputusan pembagian. Metode pohon keputusan kemudian disebut secara rekursif pada DY dan DN. Sejumlah kondisi penghentian dapat digunakan untuk menghentikan proses partisi rekursif. Kondisi paling sederhana didasarkan pada ukuran partisi D. Jika jumlah titik n dalam D turun di bawah ambang ukuran yang ditentukan pengguna η, maka kami menghentikan proses partisi dan membuat D menjadi daun. Kondisi ini mencegah pemasangan model yang berlebihan ke perangkat pelatihan, dengan menghindari memodelkan subset data yang sangat kecil. Ukuran saja tidak cukup karena jika partisi sudah murni maka tidak masuk akal untuk membaginya lebih lanjut. Dengan demikian, partisi rekursif juga diakhiri jika kemurnian D berada di atas ambang kemurnian π. Rincian tentang bagaimana titik-titik perpecahan dievaluasi dan dipilih diberikan selanjutnya. (hal 484-485) 19.2.1 Split Point Evaluation Measures Given a split point of the form Xj ≤ v or Xj ∈ V for a numeric or categorical attribute, respectively, we need an objective criterion for scoring the split point. Intuitively, we want to select a split point that gives the best separation or discrimination between the different class labels. (hal 485) 19.2.1 Tindakan Evaluasi Titik Pisah Diberikan titik perpecahan dari bentuk Xj ≤ v atau Xj ∈ V untuk atribut numerik atau kategoris, masing-masing, kita memerlukan kriteria objektif untuk mencetak titik perpecahan. Secara intuitif, kami ingin memilih titik pemisahan yang memberikan pemisahan atau diskriminasi terbaik antara label kelas yang berbeda. (hal 485) Entropy Entropy, in general, measures the amount of disorder or uncertainty in a system. In the classification setting, a partition has lower entropy (or low disorder) if it is relatively pure, that is, if most of the points have the same label. On the other hand, a partition has higher entropy (or more disorder) if the class labels are mixed, and there is no majority class as such. (hal 485) Entropi Entropi, secara umum, mengukur jumlah gangguan atau ketidakpastian dalam suatu sistem. Dalam pengaturan klasifikasi, partisi memiliki entropi yang lebih rendah (atau gangguan rendah) jika itu relatif murni, yaitu, jika sebagian besar titik memiliki label yang sama. Di sisi lain, partisi memiliki entropi yang lebih tinggi (atau lebih banyak gangguan) jika label kelas dicampur, dan tidak ada kelas mayoritas seperti itu. (hal 485) Gini Index Another common measure to gauge the purity of a split point is the Gini index, defined as follows: G(D) = 1- k X i=1 P (ci|D)2 (19.6) If the partition is pure, then the probability of the majority class is 1 and the probability of all other classes is 0, and thus, the Gini index is 0. On the other hand, when each class is equally represented, with probability P (ci|D) = 1 k , then the Gini index has value k-k 1. Thus, higher values of the Gini index indicate more disorder, and lower values indicate more order in terms of the class labels. (hal 486) Indeks Gini Ukuran umum lainnya untuk mengukur kemurnian titik pisah adalah indeks Gini, yang didefinisikan sebagai berikut: G (D) = 1- k X i = 1 P (ci | D) 2 (19.6) Jika partisi tersebut murni, maka probabilitas kelas mayoritas adalah 1 dan probabilitas semua kelas lainnya adalah 0, dan dengan demikian, indeks Gini adalah 0. Di sisi lain, ketika setiap kelas sama-sama diwakili, dengan probabilitas P ( ci | D) = 1 k, maka indeks Gini memiliki nilai kk 1. Dengan demikian, nilai yang lebih tinggi dari indeks Gini menunjukkan lebih banyak gangguan, dan nilai yang lebih rendah menunjukkan lebih banyak urutan dalam hal label kelas. (hal 486) 19.2.2 Evaluating Split Points All of the split point evaluation measures, such as entropy [Eq. (19.3)], Giniindex [Eq. (19.6)], and CART [Eq. (19.7)], considered in the preceding section depend on the class probability mass function (PMF) for D, namely, P (ci|D), and the class PMFs for the resulting partitions DY and DN, namely P (ci|DY) and P (ci|DN). Note that we have to compute the class PMFs for all possible split points; scoring each of them independently would result in significant computational overhead. Instead, one can incrementally compute the PMFs as described in the following paragraphs. (hal 487) 19.2.2 Mengevaluasi Poin Berpisah Semua langkah-langkah evaluasi titik split, seperti entropi [Persamaan. (19.3)], Gini-index [Persamaan. (19.6)], dan CART [Persamaan. (19.7)], dipertimbangkan dalam bagian sebelumnya tergantung pada kelas probabilitas fungsi massa (PMF) untuk D, yaitu, P (ci | D), dan kelas PMF untuk partisi yang dihasilkan DY dan DN, yaitu P (ci | DY ) dan P (ci | DN). Perhatikan bahwa kita harus menghitung PMF kelas untuk semua poin split yang mungkin; mencetak masing-masing secara mandiri akan menghasilkan overhead komputasi yang signifikan. Sebagai gantinya, seseorang dapat secara bertahap menghitung PMF seperti yang dijelaskan dalam paragraf berikut. (hal 487) Numeric Attributes If X is a numeric attribute, we have to evaluate split points of the form X≤v. Even if we restrict v to lie within the value range of attribute X, there are still an infinite number of choices for v. One reasonable approach is to consider only the midpoints between two successive distinct values for X in the sample D. This is because split points of the form X ≤ v, for v ∈ [xa,xb), where xa and xb are two successive distinct values of X in D, produce the same partitioning of D into DY and DN, and thus yield the same scores. Because there can be at most n distinct values for X, there are at most n1 midpoint values to consider. (hal 487) Atribut Numerik Jika X adalah atribut numerik, kita harus mengevaluasi titik perpecahan dari formulir X≤v. Bahkan jika kita membatasi v untuk berada dalam rentang nilai atribut X, masih ada jumlah pilihan yang tak terbatas untuk v. Salah satu pendekatan yang masuk akal adalah dengan mempertimbangkan hanya titik tengah antara dua nilai berbeda berturut-turut untuk X dalam sampel D. Ini karena titik perpecahan dari bentuk X ≤ v, untuk v ∈ [xa, xb), di mana xa dan xb adalah dua nilai berbeda berturut-turut dari X dalam D, menghasilkan partisi D yang sama menjadi DY dan DN, dan dengan demikian menghasilkan skor yang sama. Karena paling banyak n nilai berbeda untuk X, ada paling banyak n-1 nilai titik tengah untuk dipertimbangkan. (hal 487) Algorithm 19.2 shows the split point evaluation method for numeric attributes. The for loop on line 4 iterates through all the points and computes the midpoint values v and the number of points Nvi from class ci such that xj ≤ v. The for loop on line 12 enumerates all possible split points of the form X ≤ v, one for each midpoint v, and scores them using the gain criterion [Eq. (19.5)]; the best split point and score are recorded and returned. Any of the other evaluation measures can also be used. However, for Gini index and CART a lower score is better unlike for gain where a higher score is better. In terms of computational complexity, the initial sorting of values of X (line 1) takes time O(nlogn). The cost of computing the midpoints and the classspecific counts Nvi takes time O(nk) (for loop on line 4). The cost of computing the score is also bounded by O(nk), because the total number of midpoints v can be at most n (for loop on line 12). The total cost of evaluating a numeric attribute is therefore O(nlogn+nk). Ignoring k, because it is usually a small constant, the total cost of numeric split point evaluation is O(nlogn). (hal 488) Algoritma 19.2 menunjukkan metode evaluasi titik pisah untuk atribut numerik. Untuk loop pada baris 4 beralih melalui semua titik dan menghitung nilai titik tengah v dan jumlah poin Nvi dari kelas ci sehingga xj ≤ v. Untuk loop pada baris 12 menyebutkan semua kemungkinan titik split dari bentuk X ≤ v, satu untuk setiap titik tengah v, dan skor mereka menggunakan kriteria gain [Persamaan. (19.5)]; titik perpecahan dan skor terbaik dicatat dan dikembalikan. Setiap langkah evaluasi lainnya juga dapat digunakan. Namun, untuk indeks Gini dan CART skor yang lebih rendah lebih baik tidak seperti untuk gain di mana skor yang lebih tinggi lebih baik. Dalam hal kompleksitas komputasi, penyortiran awal nilai-nilai X (baris 1) membutuhkan waktu O (nlogn). Biaya menghitung titik tengah dan jumlah kelas khusus Nvi membutuhkan waktu O (nk) (untuk loop on line 4). Biaya perhitungan skor juga dibatasi oleh O (nk), karena jumlah total titik tengah v dapat paling banyak n (untuk loop pada baris 12). Karenanya, total biaya untuk mengevaluasi atribut numerik adalah O (nlogn + nk). Mengabaikan k, karena biasanya konstanta kecil, total biaya evaluasi titik split numerik adalah O (nlogn). (hal 488) Categorical Attributes If X is a categorical attribute we evaluate split points of the form X ∈ V, where V ⊂ dom(X) and V 6= ∅. In words, all distinct partitions of the set of values of X are considered. Because the split point X ∈ V yields the same partition as X ∈ V, where V = dom(X) \ V is the complement of V, the total number of distinct partitions is given as ⌊m/2⌋ X i=1 mi = O(2m-1) (19.17) where m is the number of values in the domain of X, that is, m = |dom(X)|. The number of possible split points to consider is therefore exponential in m, which can pose problems if m is large. One simplification is to restrict V to be of size one, so that there are only m split points of the form Xj ∈ {v}, where v ∈ dom(Xj). Atribut Kategorikal Jika X adalah atribut kategorikal, kami mengevaluasi titik perpecahan dari bentuk X ∈ V, di mana V ⊂ dom (X) dan V 6 = ∅. Dengan kata lain, semua partisi berbeda dari himpunan nilai X dipertimbangkan. Karena titik perpecahan X ∈ V menghasilkan partisi yang sama dengan X ∈ V, di mana V = dom (X) \ V adalah komplemen dari V, jumlah total partisi yang berbeda diberikan sebagai ⌊m/2⌋ X i=1 mi = O(2m-1) (19.17) di mana m adalah jumlah nilai dalam domain X, yaitu, m = | dom (X) | Karena itu, jumlah titik perpecahan yang mungkin dipertimbangkan adalah eksponensial dalam m, yang dapat menimbulkan masalah jika m besar. Salah satu penyederhanaan adalah untuk membatasi V menjadi ukuran satu, sehingga hanya ada m titik perpecahan dari bentuk Xj ∈ {v}, di mana v ∈ dom (Xj). Algorithm 19.3 shows the split point evaluation method for categorical attributes. The for loop on line 4 iterates through all the points and computes nvi, that is, the number of points having value v ∈ dom(X) and class ci. The for loop on line 7 enumerates all possible split points of the form X ∈ V for V ⊂ dom(X), such that |V| ≤ l, where l is a user specified parameter denoting the maximum cardinality of V. For example, to control the number of split points, we can also restrict V to be a single item, that is, l = 1, so that splits are of the form V ∈ {v}, with v ∈ dom(X). If l = ⌊m/2⌋, we have to consider all possible distinct partitions V. Given a split point X ∈ V, the method scores it using information gain [Eq. (19.5)], although any of the other scoring criteria can also be used. The best split point and score are recorded and returned. In terms of computational complexity the class-specific counts for each value nvi takes O(n) time (for loop on line 4). With m = |dom(X)|, the maximum number of partitions V is O(2m-1), and because each split point can be evaluated in time O(mk), the for loop in line 7 takes time O(mk2m-1). The total cost for categorical attributes is therefore O(n + mk2m-1). If we make the assumption that 2m-1 = O(n), that is, if we bound the maximum size of V to l = O(logn), then the cost of categorical splits is bounded as O(nlogn), ignoring k. (hal 492) Algoritma 19.3 menunjukkan metode evaluasi titik pisah untuk atribut kategorikal. Untuk loop pada baris 4 beralih melalui semua poin dan menghitung nvi, yaitu jumlah poin yang memiliki nilai v ∈ dom (X) dan kelas ci. Untuk loop pada baris 7 menyebutkan semua kemungkinan titik perpecahan dari bentuk X ∈ V untuk V ⊂ dom (X), sedemikian sehingga | V | ≤ l, di mana l adalah parameter yang ditentukan pengguna yang menunjukkan kardinalitas maksimum V. Misalnya, untuk mengontrol jumlah titik perpecahan, kita juga dapat membatasi V menjadi item tunggal, yaitu, l = 1, sehingga pemisahan dari bentuk V ∈ {v}, dengan v ∈ dom (X). Jika l = ⌊m / 2⌋, kita harus mempertimbangkan semua kemungkinan partisi yang berbeda V. Diberikan titik perpecahan X ∈ V, metode skor itu menggunakan gain informasi [Persamaan. (19.5)], meskipun kriteria penilaian lainnya juga dapat digunakan. Titik pemisahan dan skor terbaik dicatat dan dikembalikan. Dalam hal kompleksitas komputasi, penghitungan kelas-spesifik untuk setiap nilai nvi membutuhkan O (n) waktu (untuk loop on line 4). Dengan m = | dom (X) |, jumlah maksimum partisi V adalah O (2m-1), dan karena setiap titik pemisahan dapat dievaluasi dalam waktu O (mk), untuk loop pada baris 7 membutuhkan waktu O (mk2m -1). Karenanya, total biaya untuk atribut kategori adalah O (n + mk2m-1). Jika kita membuat asumsi bahwa 2m-1 = O (n), yaitu, jika kita mengikat ukuran maksimum V ke l = O (logn), maka biaya pemisahan kategorikal dibatasi sebagai O (nlogn), mengabaikan k . (hal 492) 19.2.3 Computational Complexity To analyze the computational complexity of the decision tree method in Algorithm 19.1, we assume that the cost of evaluating all the split points for a numeric or categorical attribute is O(nlog n), where n = |D| is the size of the dataset. Given D, the decision tree algorithm evaluates all d attributes, with cost (dnlogn). The total cost depends on the depth of the decision tree. In the worst case, the tree can have depth n, and thus the total cost is O(dn2 logn). (hal 494495) 19.2.3 Kompleksitas Komputasi Untuk menganalisis kompleksitas komputasi dari metode pohon keputusan dalam Algoritma 19.1, kita mengasumsikan bahwa biaya mengevaluasi semua titik perpecahan untuk atribut numerik atau kategorikal adalah O (nlog n), di mana n = | D | adalah ukuran dataset. Diberikan D, algoritma pohon keputusan mengevaluasi semua atribut d, dengan biaya (dnlogn). Total biaya tergantung pada kedalaman pohon keputusan. Dalam kasus terburuk, pohon dapat memiliki kedalaman n, dan dengan demikian total biaya adalah O (dn2 logn). (hal 494-495)