Lompat ke isi

Kemiripan kosinus: Perbedaan antara revisi

Ensiklopedia Pengetahuan Universitas Islam Sultan Agung
Maintenance script (bicara | kontrib)
Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 29364848; atribusi sumber disertakan.
 
Maintenance script (bicara | kontrib)
Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi
 
Baris 1: Baris 1:
Dalam [[analisis data]], '''kemiripan kosinus''' atau '''kesamaan kosinus''' (bahasa Inggris: ''cosine similarity'') adalah [[ukuran kemiripan]] antara dua vektor tak-nol yang didefinisikan dalam [[ruang hasil kali dalam]]. Kemiripan kosinus adalah nilai [[kosinus]] dari sudut di antara kedua vektor tersebut; yaitu, [[Perkalian titik|hasil kali titik]] dari vektor-vektor tersebut dibagi dengan hasil kali panjang (besaran) mereka. Oleh karena itu, kemiripan kosinus tidak bergantung pada besaran vektor, melainkan hanya pada sudutnya. Kemiripan kosinus selalu berada pada interval <math>[-1, +1].</math> Misalnya, dua [[Kesebandingan (matematika)|vektor sebanding]] (proporsional) memiliki kemiripan kosinus +1, dua [[Vektor ortogonal|vektor tegak lurus]] (ortogonal) memiliki kemiripan 0, dan dua vektor yang [[Invers aditif|berlawanan]] (''opposite'') memiliki kemiripan −1. Dalam beberapa konteks, nilai komponen vektor tidak dapat bernilai negatif, yang mana dalam hal ini kemiripan kosinus dibatasi pada interval <math>[0,1]</math>.
Dalam [[analisis data]], '''kemiripan kosinus''' atau '''kesamaan kosinus''' (bahasa Inggris: ''cosine similarity'') adalah [[ukuran kemiripan]] antara dua vektor tak-nol yang didefinisikan dalam [[ruang hasil kali dalam]]. Kemiripan kosinus adalah nilai [[kosinus]] dari sudut di antara kedua vektor tersebut; yaitu, [[Perkalian titik|hasil kali titik]] dari vektor-vektor tersebut dibagi dengan hasil kali panjang (besaran) mereka. Oleh karena itu, kemiripan kosinus tidak bergantung pada besaran vektor, melainkan hanya pada sudutnya. Kemiripan kosinus selalu berada pada interval <math>[-1, +1].</math> Misalnya, dua [[Kesebandingan (matematika)|vektor sebanding]] (proporsional) memiliki kemiripan kosinus +1, dua [[Vektor ortogonal|vektor tegak lurus]] (ortogonal) memiliki kemiripan 0, dan dua vektor yang [[Invers aditif|berlawanan]] (''opposite'') memiliki kemiripan −1. Dalam beberapa konteks, nilai komponen vektor tidak dapat bernilai negatif, yang mana dalam hal ini kemiripan kosinus dibatasi pada interval <math>[0,1]</math>.


Sebagai contoh, dalam bidang [[temu balik informasi]] dan [[penambangan teks]], setiap kata diberi koordinat yang berbeda dan sebuah dokumen direpresentasikan oleh vektor dari jumlah kemunculan setiap kata dalam dokumen tersebut. Kemiripan kosinus kemudian memberikan ukuran yang berguna mengenai seberapa mirip dua dokumen kemungkinan besarnya, dalam hal materi subjeknya, dan tidak bergantung pada panjang dokumen tersebut.
Sebagai contoh, dalam bidang [[temu balik informasi]] dan [[penambangan teks]], setiap kata diberi koordinat yang berbeda dan sebuah dokumen direpresentasikan oleh vektor dari jumlah kemunculan setiap kata dalam dokumen tersebut. Kemiripan kosinus kemudian memberikan ukuran yang berguna mengenai seberapa mirip dua dokumen kemungkinan besarnya, dalam hal materi subjeknya, dan tidak bergantung pada panjang dokumen tersebut.<ref>Singhal, Amit (2001). "[https://www.cs.columbia.edu/~gravano/Qual/Papers/singhal.pdf Modern Information Retrieval: A Brief Overview]". ''Bulletin of the IEEE Computer Society Technical Committee on Data Engineering'' 24 (4): 35–43.</ref>


Teknik ini juga digunakan untuk mengukur kohesi (kerekatan, kepaduan) di dalam kluster pada bidang [[penambangan data]].
Teknik ini juga digunakan untuk mengukur kohesi (kerekatan, kepaduan) di dalam kluster pada bidang [[penambangan data]].<ref>P.-N. Tan, M. Steinbach & V. Kumar, ''Introduction to Data Mining'', Addison-Wesley (2005), , bab 8; hlm. 500.</ref>


Salah satu keuntungan dari kemiripan kosinus adalah [[Kompleksitas komputasi|kompleksitasnya yang rendah]], terutama untuk [[Matriks rongga|vektor rongga]] (''sparse vector''): hanya koordinat tak-nol yang perlu dipertimbangkan.
Salah satu keuntungan dari kemiripan kosinus adalah [[Kompleksitas komputasi|kompleksitasnya yang rendah]], terutama untuk [[Matriks rongga|vektor rongga]] (''sparse vector''): hanya koordinat tak-nol yang perlu dipertimbangkan.


Nama lain untuk kemiripan kosinus meliputi '''kemiripan Orchini''' dan '''koefisien kekongruenan (kesesuaian/keselarasan) Tucker'''; '''kemiripan Otsuka–Ochiai''' (lihat di bawah) adalah kemiripan kosinus yang diterapkan pada [[data biner]].
Nama lain untuk kemiripan kosinus meliputi '''kemiripan Orchini''' dan '''koefisien kekongruenan (kesesuaian/keselarasan) Tucker'''; '''kemiripan Otsuka–Ochiai''' (lihat di bawah) adalah kemiripan kosinus yang diterapkan pada [[data biner]].<ref>[https://rdrr.io/bioc/GSgalgoR/man/cosine_similarity.html cosine_similarity: Function for calculating the cosine similarity]. ''rDrr.io''.</ref>


== Definisi ==
== Definisi ==
Kosinus dari dua vektor tak-nol dapat diturunkan dengan menggunakan rumus [[Vektor Euklides|hasil kali titik Euklides]] (spasial):
Kosinus dari dua vektor tak-nol dapat diturunkan dengan menggunakan rumus [[Vektor Euklides|hasil kali titik Euklides]] (spasial):


Baris 26: Baris 25:
Untuk [[Pencarian string samar|pencocokan teks]], vektor atribut ''A'' dan ''B'' biasanya adalah vektor [[Tf–idf|frekuensi istilah]] (''term frequency'', TF) dari dokumen-dokumen tersebut. Kemiripan kosinus dapat dilihat sebagai metode [[Normalisasi (statistik)|normalisasi]] panjang dokumen selama perbandingan. Dalam kasus [[temu balik informasi]], kemiripan kosinus dari dua dokumen akan berkisar dari <math>0 \to 1</math>, karena frekuensi istilah (''term frequency'') tidak mungkin negatif. Hal ini tetap berlaku saat menggunakan bobot [[Tf–idf|TF-IDF]]. Sudut antara dua vektor frekuensi istilah (''term frequencies'') tidak mungkin lebih besar dari 90°.
Untuk [[Pencarian string samar|pencocokan teks]], vektor atribut ''A'' dan ''B'' biasanya adalah vektor [[Tf–idf|frekuensi istilah]] (''term frequency'', TF) dari dokumen-dokumen tersebut. Kemiripan kosinus dapat dilihat sebagai metode [[Normalisasi (statistik)|normalisasi]] panjang dokumen selama perbandingan. Dalam kasus [[temu balik informasi]], kemiripan kosinus dari dua dokumen akan berkisar dari <math>0 \to 1</math>, karena frekuensi istilah (''term frequency'') tidak mungkin negatif. Hal ini tetap berlaku saat menggunakan bobot [[Tf–idf|TF-IDF]]. Sudut antara dua vektor frekuensi istilah (''term frequencies'') tidak mungkin lebih besar dari 90°.


Jika vektor atribut dinormalkan dengan mengurangkan rata-rata vektornya (misalnya, <math>A - \bar{A}</math>), ukuran tersebut disebut kemiripan kosinus terpusat dan ekuivalen dengan [[Koefisien korelasi Pearson]]. Untuk contoh pemusatan (''centering''),
Jika vektor atribut dinormalkan dengan mengurangkan rata-rata vektornya (misalnya, <math>A - \bar{A}</math>), ukuran tersebut disebut kemiripan kosinus terpusat dan ekuivalen dengan [[Koefisien korelasi Pearson]]. Untuk contoh pemusatan (''centering''),  
:<math>
:<math>
\text{jika}\, A = [A_1, A_2]^T, \text{ maka } \bar{A} = \left[\frac{(A_1+A_2)}{2},\frac{(A_1+A_2)}{2}\right]^T,
\text{jika}\, A = [A_1, A_2]^T, \text{ maka } \bar{A} = \left[\frac{(A_1+A_2)}{2},\frac{(A_1+A_2)}{2}\right]^T,
Baris 43: Baris 42:
</math>
</math>


Meskipun demikian, '''jarak kosinus''' sering didefinisikan tanpa akar kuadrat atau faktor dari 2:
Meskipun demikian, '''jarak kosinus'''<ref>Wolfram Research (2007). [https://reference.wolfram.com/language/ref/CosineDistance.html CosineDistance – Wolfram Language & System Documentation Center]. ''wolfram.com''.</ref> sering didefinisikan tanpa akar kuadrat atau faktor dari 2:
: <math> \text{jarak kosinus} = D_C(A,B) := 1 - S_C(A,B)\,.</math>
: <math> \text{jarak kosinus} = D_C(A,B) := 1 - S_C(A,B)\,.</math>


Baris 49: Baris 48:


=== Jarak sudut dan kemiripan ===
=== Jarak sudut dan kemiripan ===
 
Sudut ternormalisasi, yang disebut sebagai '''jarak sudut''', antara sembarang dua vektor <math>A</math> dan <math>B</math> adalah metrik jarak formal dan dapat dihitung dari kemiripan kosinus.<ref>[https://www.itl.nist.gov/div898/software/dataplot/refman2/auxillar/cosdist.htm COSINE DISTANCE, COSINE SIMILARITY, ANGULAR COSINE DISTANCE, ANGULAR COSINE SIMILARITY]. ''www.itl.nist.gov''.</ref> Komplemen dari metrik jarak sudut ini kemudian dapat digunakan untuk mendefinisikan fungsi '''kemiripan sudut''' yang dibatasi antara nilai 0 hingga 1, inklusif (terhitung).
Sudut ternormalisasi, yang disebut sebagai '''jarak sudut''', antara sembarang dua vektor <math>A</math> dan <math>B</math> adalah metrik jarak formal dan dapat dihitung dari kemiripan kosinus. Komplemen dari metrik jarak sudut ini kemudian dapat digunakan untuk mendefinisikan fungsi '''kemiripan sudut''' yang dibatasi antara nilai 0 hingga 1, inklusif (terhitung).


Ketika elemen vektor dapat bernilai positif atau negatif:
Ketika elemen vektor dapat bernilai positif atau negatif:
Baris 66: Baris 64:


=== Jarak Euklides ternormalisasi-L<sub>2</sub> ===
=== Jarak Euklides ternormalisasi-L<sub>2</sub> ===
Proksi (pengganti, pendekatan, atau alternatif) efektif lainnya untuk jarak kosinus dapat diperoleh dengan [[Norma (matematika)|normalisasi <math>L_2</math>]] dari vektor-vektor tersebut, diikuti dengan penerapan [[jarak Euklides]] normal. Menggunakan teknik ini, setiap suku dalam masing-masing vektor pertama-tama dibagi dengan besaran vektor tersebut, menghasilkan vektor dengan panjang satuan. Kemudian, jarak Euklides pada titik-titik ujung dari sembarang dua vektor akan menjadi metrik yang tepat yang memberikan urutan yang sama dengan jarak kosinus (sebuah [[Fungsi monoton|transformasi monotonik]] dari jarak Euklides; lihat [[#Sifat|di bawah]]) untuk perbandingan vektor apa pun, dan lebih jauh lagi menghindari operasi trigonometri yang berpotensi mahal, yang diperlukan untuk menghasilkan metrik yang tepat. Setelah normalisasi dilakukan, ruang vektor ini dapat digunakan dengan berbagai teknik yang tersedia secara lengkap untuk sembarang ruang Euklides, terutama teknik standar [[reduksi dimensi]]. Bentuk jarak ternormalisasi ini sering digunakan di dalam banyak algoritma [[pemelajaran dalam]] (''deep learning'').
Proksi (pengganti, pendekatan, atau alternatif) efektif lainnya untuk jarak kosinus dapat diperoleh dengan [[Norma (matematika)|normalisasi <math>L_2</math>]] dari vektor-vektor tersebut, diikuti dengan penerapan [[jarak Euklides]] normal. Menggunakan teknik ini, setiap suku dalam masing-masing vektor pertama-tama dibagi dengan besaran vektor tersebut, menghasilkan vektor dengan panjang satuan. Kemudian, jarak Euklides pada titik-titik ujung dari sembarang dua vektor akan menjadi metrik yang tepat yang memberikan urutan yang sama dengan jarak kosinus (sebuah [[Fungsi monoton|transformasi monotonik]] dari jarak Euklides; lihat [[#Sifat|di bawah]]) untuk perbandingan vektor apa pun, dan lebih jauh lagi menghindari operasi trigonometri yang berpotensi mahal, yang diperlukan untuk menghasilkan metrik yang tepat. Setelah normalisasi dilakukan, ruang vektor ini dapat digunakan dengan berbagai teknik yang tersedia secara lengkap untuk sembarang ruang Euklides, terutama teknik standar [[reduksi dimensi]]. Bentuk jarak ternormalisasi ini sering digunakan di dalam banyak algoritma [[pemelajaran dalam]] (''deep learning'').


=== Koefisien Otsuka–Ochiai ===
=== Koefisien Otsuka–Ochiai ===
Dalam bidang biologi, terdapat konsep serupa yang dikenal sebagai koefisien Otsuka–Ochiai yang dinamai dari [[Yanosuke Otsuka]] (juga dieja sebagai Ōtsuka, Ootsuka, atau Otuka, ) dan Akira Ochiai (), juga dikenal sebagai koefisien Ochiai–Barkman atau koefisien Ochiai, yang dapat direpresentasikan sebagai:
Dalam bidang biologi, terdapat konsep serupa yang dikenal sebagai koefisien Otsuka–Ochiai yang dinamai dari [[Yanosuke Otsuka]] (juga dieja sebagai Ōtsuka, Ootsuka, atau Otuka,<ref>Omori, Masae. [https://www.jstage.jst.go.jp/article/agcjchikyukagaku/58/4/58_KJ00004410060/_pdf/-char/en Geological idea of Yanosuke Otuka, who built the foundation of neotectonics (geoscientist)]. ''Earth Science''. 2004. Vol. 58 (4). hlm. 256–259. doi:10.15080/agcjchikyukagaku.58.4_256.</ref> )<ref>Otsuka, Yanosuke. ''The faunal character of the Japanese Pleistocene marine Mollusca, as evidence of the climate having become colder during the Pleistocene in Japan''. ''Bulletin of the Biogeographical Society of Japan''. 1936. Vol. 6 (16). hlm. 165–170.</ref> dan Akira Ochiai (),<ref>Ochiai, Akira. [https://www.jstage.jst.go.jp/article/suisan1932/22/9/22_9_526/_pdf/-char/en Zoogeographical studies on the soleoid fishes found in Japan and its neighhouring regions-II]. ''Bulletin of the Japanese Society of Scientific Fisheries''. 1957. Vol. 22 (9). hlm. 526–530. doi:10.2331/suisan.22.526.</ref> juga dikenal sebagai koefisien Ochiai–Barkman<ref>Barkman, Jan J. ''Phytosociology and Ecology of Cryptogamic Epiphytes: Including a Taxonomic Survey and Description of Their Vegetation Units in Europe''. Van Gorcum. 1958.</ref> atau koefisien Ochiai,<ref>H. Charles Romesburg. ''Cluster Analysis for Researchers''. Lifetime Learning Publications. 1984. hlm. 149.</ref> yang dapat direpresentasikan sebagai:
:<math>K =\frac{\sqrt}</math>
:<math>K =\frac{|A \cap B|}{\sqrt{|A| \times |B|}}</math>
Di sini, <math>A</math> dan <math>B</math> adalah [[Himpunan (matematika)|himpunan]], dan <math>|A|</math> adalah jumlah elemen dalam <math>A</math>. Jika himpunan direpresentasikan sebagai vektor bit, koefisien Otsuka–Ochiai terlihat memiliki persamaan dengan kemiripan kosinus. Skor ini identik dengan skor yang diperkenalkan oleh [[Godfrey Thomson]].
Di sini, <math>A</math> dan <math>B</math> adalah [[Himpunan (matematika)|himpunan]], dan <math>|A|</math> adalah jumlah elemen dalam <math>A</math>. Jika himpunan direpresentasikan sebagai vektor bit, koefisien Otsuka–Ochiai terlihat memiliki persamaan dengan kemiripan kosinus. Skor ini identik dengan skor yang diperkenalkan oleh [[Godfrey Thomson]].<ref>Thomson, Godfrey. [https://scholar.archive.org/work/msfq2wsrnvdfxdhbg65o62fnny/access/ia_file/crossref-pre-1923-scholarly-works/10.1111%252Fj.1949-8594.1922.tb02236.x.zip/10.1111%252Fj.2044-8295.1916.tb00133.x.pdf A hierarchy without a general factor]. ''British Journal of Psychology''. 1916. Vol. 8. hlm. 271–281.</ref>


Dalam sebuah buku baru-baru ini, koefisien tersebut secara tentatif salah diatributkan kepada peneliti Jepang lain dengan nama keluarga Otsuka. Kebingungan ini muncul karena pada tahun 1957, Akira Ochiai mengatributkan koefisien ini hanya kepada Otsuka (tanpa menyebut nama depan) dengan mengutip sebuah artikel dari Ikuso Hamai (), yang pada gilirannya mengutip artikel asli tahun 1936 oleh Yanosuke Otsuka.
Dalam sebuah buku baru-baru ini,<ref>Richard J. Howarth. ''Dictionary of Mathematical Geosciences: With Historical Notes''. Springer. 2017. hlm. 421. doi:10.1007/978-3-319-57315-1. ISBN 978-3-319-57314-4.</ref> koefisien tersebut secara tentatif salah diatributkan kepada peneliti Jepang lain dengan nama keluarga Otsuka. Kebingungan ini muncul karena pada tahun 1957, Akira Ochiai mengatributkan koefisien ini hanya kepada Otsuka (tanpa menyebut nama depan)<ref>Ochiai, Akira. [https://www.jstage.jst.go.jp/article/suisan1932/22/9/22_9_526/_pdf/-char/en Zoogeographical studies on the soleoid fishes found in Japan and its neighhouring regions-II]. ''Bulletin of the Japanese Society of Scientific Fisheries''. 1957. Vol. 22 (9). hlm. 526–530. doi:10.2331/suisan.22.526.</ref> dengan mengutip sebuah artikel dari Ikuso Hamai (),<ref>Hamai, Ikuso. [https://www.jstage.jst.go.jp/article/seitai/5/1/5_KJ00002869450/_pdf/-char/en Stratification of community by means of "community coefficient" (continued)]. ''Japanese Journal of Ecology''. 1955. Vol. 5 (1). hlm. 41–45. doi:10.18960/seitai.5.1_41.</ref> yang pada gilirannya mengutip artikel asli tahun 1936 oleh Yanosuke Otsuka.<ref>Otsuka, Yanosuke. ''The faunal character of the Japanese Pleistocene marine Mollusca, as evidence of the climate having become colder during the Pleistocene in Japan''. ''Bulletin of the Biogeographical Society of Japan''. 1936. Vol. 6 (16). hlm. 165–170.</ref>


== Sifat ==
== Sifat ==
Sifat yang paling menonjol dari kemiripan kosinus adalah ia mencerminkan perbandingan relatif, dan bukan absolut, dari dimensi vektor individu. Untuk sembarang konstanta positif <math>a</math> dan vektor <math>V</math>, vektor <math>V</math> dan <math>aV</math> sangatlah mirip secara maksimal. Oleh karena itu, ukuran ini paling tepat digunakan untuk data yang frekuensinya lebih penting daripada nilai absolutnya; terutama, frekuensi istilah (''term frequency'') dalam dokumen.
Sifat yang paling menonjol dari kemiripan kosinus adalah ia mencerminkan perbandingan relatif, dan bukan absolut, dari dimensi vektor individu. Untuk sembarang konstanta positif <math>a</math> dan vektor <math>V</math>, vektor <math>V</math> dan <math>aV</math> sangatlah mirip secara maksimal. Oleh karena itu, ukuran ini paling tepat digunakan untuk data yang frekuensinya lebih penting daripada nilai absolutnya; terutama, frekuensi istilah (''term frequency'') dalam dokumen.
Namun, metrik yang lebih baru, yang didasarkan pada [[teori informasi]], seperti [[Divergensi Jensen–Shannon|Jensen–Shannon]], SED, dan divergensi segitiga, telah terbukti memiliki semantik yang lebih baik setidaknya di dalam beberapa konteks.
Namun, metrik yang lebih baru, yang didasarkan pada [[teori informasi]], seperti [[Divergensi Jensen–Shannon|Jensen–Shannon]], SED, dan divergensi segitiga, telah terbukti memiliki semantik yang lebih baik setidaknya di dalam beberapa konteks.<ref>Richard Connor. [https://link.springer.com/chapter/10.1007/978-3-319-46759-7_16 A Tale of Four Metrics]. Springer. 2016. doi:10.1007/978-3-319-46759-7_16.</ref>


Kemiripan kosinus berkaitan dengan jarak Euklides sebagai berikut. Nyatakan jarak Euklides dengan notasi lazim <math>\|A - B\|</math>, dan perhatikan bahwa
Kemiripan kosinus berkaitan dengan jarak Euklides sebagai berikut. Nyatakan jarak Euklides dengan notasi lazim <math>\|A - B\|</math>, dan perhatikan bahwa
Baris 95: Baris 91:
Jarak Euklides ini disebut ''jarak tali busur'' (karena ini adalah panjang tali busur pada lingkaran satuan) dan merupakan jarak Euklides di antara vektor-vektor yang dinormalisasi menjadi jumlah satuan dari nilai-nilai kuadrat di dalamnya.
Jarak Euklides ini disebut ''jarak tali busur'' (karena ini adalah panjang tali busur pada lingkaran satuan) dan merupakan jarak Euklides di antara vektor-vektor yang dinormalisasi menjadi jumlah satuan dari nilai-nilai kuadrat di dalamnya.


'''Distribusi nol (''null distribution''):''' Untuk data yang bisa bernilai negatif maupun positif, [[distribusi nol]] untuk kemiripan kosinus adalah distribusi dari hasil kali titik antara dua [[vektor satuan]] acak yang saling bebas. Distribusi ini memiliki [[Nilai harapan|rata-rata]] (mean) nol dan [[variansi]] sebesar <math>1/n</math> (di mana <math>n</math> adalah jumlah dimensi), dan meskipun distribusinya dibatasi antara −1 dan +1, seiring membesarnya <math>n</math>, distribusi ini akan semakin mendekati [[distribusi normal]]. Pada jenis data lain seperti [[aliran bit]] (''bitstream''), yang hanya mengambil nilai 0 atau 1, distribusi nol-nya mengambil bentuk yang berbeda dan mungkin memiliki rata-rata bukan nol.
'''Distribusi nol (''null distribution''):''' Untuk data yang bisa bernilai negatif maupun positif, [[distribusi nol]] untuk kemiripan kosinus adalah distribusi dari hasil kali titik antara dua [[vektor satuan]] acak yang saling bebas. Distribusi ini memiliki [[Nilai harapan|rata-rata]] (mean) nol dan [[variansi]] sebesar <math>1/n</math> (di mana <math>n</math> adalah jumlah dimensi), dan meskipun distribusinya dibatasi antara −1 dan +1, seiring membesarnya <math>n</math>, distribusi ini akan semakin mendekati [[distribusi normal]].<ref>Spruill, Marcus C. ''Asymptotic distribution of coordinates on high dimensional spheres''. ''Electronic Communications in Probability''. 2007. Vol. 12. hlm. 234–247. doi:10.1214/ECP.v12-1294.</ref><ref>[https://stats.stackexchange.com/q/85916 Distribution of dot products between two random unit vectors in RD]. ''CrossValidated''.</ref> Pada jenis data lain seperti [[aliran bit]] (''bitstream''), yang hanya mengambil nilai 0 atau 1, distribusi nol-nya mengambil bentuk yang berbeda dan mungkin memiliki rata-rata bukan nol.<ref>Graham L. Giller. ''The Statistical Properties of Random Bitstreams and the Sampling Distribution of Cosine Similarity''. ''Giller Investments Research Notes''. 2012. doi:10.2139/ssrn.2167044.</ref>


== Ketaksamaan segitiga untuk kemiripan kosinus ==
== Ketaksamaan segitiga untuk kemiripan kosinus ==
Baris 106: Baris 102:
:<math>\cos(A,B) \geq \cos(A,C) \cdot \cos(C,B) - \sqrt{\left(1-\cos(A,C)^2\right)\cdot\left(1-\cos(C,B)^2\right)}.</math>
:<math>\cos(A,B) \geq \cos(A,C) \cdot \cos(C,B) - \sqrt{\left(1-\cos(A,C)^2\right)\cdot\left(1-\cos(C,B)^2\right)}.</math>


Bentuk ketaksamaan segitiga ini dapat digunakan untuk memberikan batasan pada kemiripan minimum dan maksimum antara dua objek A dan B jika kemiripan terhadap objek referensi C telah diketahui. Pendekatan ini digunakan, misalnya, dalam pengindeksan data metrik, tetapi juga telah digunakan untuk mempercepat ''[[Pengklasteran k rata-rata|k-means clustering]]'' sferis (berbentuk seperti bola) dengan cara yang sama seperti ketaksamaan segitiga Euklides yang telah digunakan untuk mempercepat ''k-means'' reguler.
Bentuk ketaksamaan segitiga ini dapat digunakan untuk memberikan batasan pada kemiripan minimum dan maksimum antara dua objek A dan B jika kemiripan terhadap objek referensi C telah diketahui. Pendekatan ini digunakan, misalnya, dalam pengindeksan data metrik, tetapi juga telah digunakan untuk mempercepat ''[[Pengklasteran k rata-rata|k-means clustering]]'' sferis (berbentuk seperti bola)<ref>Erich Schubert. [https://link.springer.com/chapter/10.1007%2F978-3-030-89657-7_17 Similarity Search and Applications]. Springer International Publishing. 2021. Vol. 13058. hlm. 217–231. doi:10.1007/978-3-030-89657-7_17. ISBN 978-3-030-89657-7.</ref> dengan cara yang sama seperti ketaksamaan segitiga Euklides yang telah digunakan untuk mempercepat ''k-means'' reguler.


== Ukuran kosinus lunak ==
== Ukuran kosinus lunak ==
Kosinus lunak atau (kemiripan "lunak") di antara dua vektor mempertimbangkan kemiripan di antara pasangan fitur. Kemiripan kosinus tradisional menganggap fitur-fitur [[model ruang vektor]] (''vector space model'', VSM) bersifat independen atau sepenuhnya berbeda, sedangkan ukuran kosinus lunak mengusulkan untuk turut mempertimbangkan kemiripan fitur dalam VSM, yang pada akhirnya membantu menggeneralisasikan konsep kosinus (dan kosinus lunak) serta gagasan mengenai kemiripan (lunak).
Kosinus lunak atau (kemiripan "lunak") di antara dua vektor mempertimbangkan kemiripan di antara pasangan fitur.<ref>Grigori Sidorov. [http://cys.cic.ipn.mx/ojs/index.php/CyS/article/view/2043 Soft Similarity and Soft Cosine Measure: Similarity of Features in Vector Space Model]. ''Computación y Sistemas''. 29 September 2014. Vol. 18 (3). hlm. 491–504. doi:10.13053/CyS-18-3-2043.</ref> Kemiripan kosinus tradisional menganggap fitur-fitur [[model ruang vektor]] (''vector space model'', VSM) bersifat independen atau sepenuhnya berbeda, sedangkan ukuran kosinus lunak mengusulkan untuk turut mempertimbangkan kemiripan fitur dalam VSM, yang pada akhirnya membantu menggeneralisasikan konsep kosinus (dan kosinus lunak) serta gagasan mengenai kemiripan (lunak).


Sebagai contoh, dalam bidang [[pengolahan bahasa alami]] (PBA), kemiripan antarfitur cukup intuitif. Fitur-fitur seperti kata, [[N-gram|''n''-gram]], atau ''n''-gram sintaksis bisa jadi sangat mirip, meskipun secara formal dianggap sebagai fitur yang berbeda di dalam VSM. Misalnya, kata "bermain" dan "permainan" merupakan kata yang berbeda sehingga dipetakan ke titik yang berbeda di VSM; padahal keduanya saling terhubung secara semantik. Dalam kasus ''n''-gram atau ''n''-gram sintaksis, [[jarak Levenshtein]] dapat diaplikasikan (bahkan, jarak Levenshtein juga dapat diaplikasikan pada kata-kata tunggal).
Sebagai contoh, dalam bidang [[pengolahan bahasa alami]] (PBA), kemiripan antarfitur cukup intuitif. Fitur-fitur seperti kata, [[N-gram|''n''-gram]], atau ''n''-gram sintaksis bisa jadi sangat mirip,<ref>Grigori Sidorov. ''Advances in Computational Intelligence''. LNAI 7630. 2013. Vol. 7630. hlm. 1–11. doi:10.1007/978-3-642-37798-3_1. ISBN 978-3-642-37798-3.</ref> meskipun secara formal dianggap sebagai fitur yang berbeda di dalam VSM. Misalnya, kata "bermain" dan "permainan" merupakan kata yang berbeda sehingga dipetakan ke titik yang berbeda di VSM; padahal keduanya saling terhubung secara semantik. Dalam kasus ''n''-gram atau ''n''-gram sintaksis, [[jarak Levenshtein]] dapat diaplikasikan (bahkan, jarak Levenshtein juga dapat diaplikasikan pada kata-kata tunggal).


Untuk menghitung kosinus lunak, matriks  digunakan untuk mengindikasikan kemiripan antarfitur. Ini dapat dihitung lewat jarak Levenshtein, kemiripan [[WordNet]], atau [[ukuran kemiripan]] lainnya. Kemudian, kita hanya perlu mengalikannya dengan matriks ini.
Untuk menghitung kosinus lunak, matriks  digunakan untuk mengindikasikan kemiripan antarfitur. Ini dapat dihitung lewat jarak Levenshtein, kemiripan [[WordNet]], atau [[ukuran kemiripan]] lainnya. Kemudian, kita hanya perlu mengalikannya dengan matriks ini.
Baris 127: Baris 123:
Jika tidak ada kemiripan di antara fitur (,  untuk ), persamaan tersebut akan setara dengan rumus kemiripan kosinus konvensional.
Jika tidak ada kemiripan di antara fitur (,  untuk ), persamaan tersebut akan setara dengan rumus kemiripan kosinus konvensional.


[[Kompleksitas waktu]] dari ukuran ini bersifat kuadratik, yang membuatnya dapat diterapkan pada berbagai tugas di dunia nyata. Perlu dicatat bahwa kompleksitas ini dapat dikurangi menjadi subkuadratik. Implementasi efisien dari kemiripan kosinus lunak semacam ini sudah disertakan di dalam pustaka sumber terbuka (''open-source'') [[Gensim]].
[[Kompleksitas waktu]] dari ukuran ini bersifat kuadratik, yang membuatnya dapat diterapkan pada berbagai tugas di dunia nyata. Perlu dicatat bahwa kompleksitas ini dapat dikurangi menjadi subkuadratik.<ref>Vít Novotný. ''Implementation Notes for the Soft Cosine Measure''. Association for Computing Machinery. 2018. hlm. 1639–1642. doi:10.1145/3269206.3269317. ISBN 978-1-4503-6014-2.</ref> Implementasi efisien dari kemiripan kosinus lunak semacam ini sudah disertakan di dalam pustaka sumber terbuka (''open-source'') [[Gensim]].


== Lihat pula ==
== Lihat pula ==
Baris 136: Baris 132:
* [[SimRank]]
* [[SimRank]]
* [[Temu balik informasi]]
* [[Temu balik informasi]]
== Referensi ==


== Pranala luar ==
== Pranala luar ==
Baris 144: Baris 137:
* [http://blog.christianperone.com/?p=2497 A tutorial on cosine similarity using Python]
* [http://blog.christianperone.com/?p=2497 A tutorial on cosine similarity using Python]


 
== Referensi ==
<references />


== Sumber dan atribusi ==
== Sumber dan atribusi ==


Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Kemiripan+kosinus&oldid=29364848 Wikipedia bahasa Indonesia], revisi 29364848 (2026-06-19T21:47:12Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=Kemiripan+kosinus&oldid=29364848 Wikipedia bahasa Indonesia], revisi 29364848 (2026-06-19T21:47:12Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.
<!-- WIKI_UNISSULA_PRESENTATION_V4 -->

Revisi terkini sejak 23 Agustus 2026 13.56

Dalam analisis data, kemiripan kosinus atau kesamaan kosinus (bahasa Inggris: cosine similarity) adalah ukuran kemiripan antara dua vektor tak-nol yang didefinisikan dalam ruang hasil kali dalam. Kemiripan kosinus adalah nilai kosinus dari sudut di antara kedua vektor tersebut; yaitu, hasil kali titik dari vektor-vektor tersebut dibagi dengan hasil kali panjang (besaran) mereka. Oleh karena itu, kemiripan kosinus tidak bergantung pada besaran vektor, melainkan hanya pada sudutnya. Kemiripan kosinus selalu berada pada interval [1,+1]. Misalnya, dua vektor sebanding (proporsional) memiliki kemiripan kosinus +1, dua vektor tegak lurus (ortogonal) memiliki kemiripan 0, dan dua vektor yang berlawanan (opposite) memiliki kemiripan −1. Dalam beberapa konteks, nilai komponen vektor tidak dapat bernilai negatif, yang mana dalam hal ini kemiripan kosinus dibatasi pada interval [0,1].

Sebagai contoh, dalam bidang temu balik informasi dan penambangan teks, setiap kata diberi koordinat yang berbeda dan sebuah dokumen direpresentasikan oleh vektor dari jumlah kemunculan setiap kata dalam dokumen tersebut. Kemiripan kosinus kemudian memberikan ukuran yang berguna mengenai seberapa mirip dua dokumen kemungkinan besarnya, dalam hal materi subjeknya, dan tidak bergantung pada panjang dokumen tersebut.[1]

Teknik ini juga digunakan untuk mengukur kohesi (kerekatan, kepaduan) di dalam kluster pada bidang penambangan data.[2]

Salah satu keuntungan dari kemiripan kosinus adalah kompleksitasnya yang rendah, terutama untuk vektor rongga (sparse vector): hanya koordinat tak-nol yang perlu dipertimbangkan.

Nama lain untuk kemiripan kosinus meliputi kemiripan Orchini dan koefisien kekongruenan (kesesuaian/keselarasan) Tucker; kemiripan Otsuka–Ochiai (lihat di bawah) adalah kemiripan kosinus yang diterapkan pada data biner.[3]

Definisi

Kosinus dari dua vektor tak-nol dapat diturunkan dengan menggunakan rumus hasil kali titik Euklides (spasial):

𝐀𝐁=𝐀𝐁cosθ

Diberikan dua vektor atribut berdimensi-n, A dan B, kemiripan kosinus, , direpresentasikan menggunakan hasil kali titik dan besaran sebagai

kemiripan kosinus=SC(A,B):=cos(θ)=𝐀𝐁𝐀𝐁=i=1nAiBii=1nAi2i=1nBi2,

di mana Ai dan Bi masing-masing adalah komponen ke-i dari vektor 𝐀 dan 𝐁.

Nilai kemiripan yang dihasilkan berkisar dari −1 yang berarti berlawanan secara persis, hingga +1 yang berarti persis sama, dengan 0 menunjukkan ortogonalitas (ketegaklurusan) atau dekorelasi, sedangkan nilai di antaranya menunjukkan kemiripan atau ketidakmiripan menengah (intermediate).

Untuk pencocokan teks, vektor atribut A dan B biasanya adalah vektor frekuensi istilah (term frequency, TF) dari dokumen-dokumen tersebut. Kemiripan kosinus dapat dilihat sebagai metode normalisasi panjang dokumen selama perbandingan. Dalam kasus temu balik informasi, kemiripan kosinus dari dua dokumen akan berkisar dari 01, karena frekuensi istilah (term frequency) tidak mungkin negatif. Hal ini tetap berlaku saat menggunakan bobot TF-IDF. Sudut antara dua vektor frekuensi istilah (term frequencies) tidak mungkin lebih besar dari 90°.

Jika vektor atribut dinormalkan dengan mengurangkan rata-rata vektornya (misalnya, AA¯), ukuran tersebut disebut kemiripan kosinus terpusat dan ekuivalen dengan Koefisien korelasi Pearson. Untuk contoh pemusatan (centering),

jikaA=[A1,A2]T, maka A¯=[(A1+A2)2,(A1+A2)2]T,
 sehingga AA¯=[(A1A2)2,(A1+A2)2]T.

Jarak kosinus

Ketika jarak antara dua vektor dengan panjang satuan didefinisikan sebagai panjang selisih vektor mereka, maka dist(𝐀,𝐁)=(𝐀𝐁)(𝐀𝐁)=𝐀𝐀2(𝐀𝐁)+𝐁𝐁=2(1SC(𝐀,𝐁)).

Meskipun demikian, jarak kosinus[4] sering didefinisikan tanpa akar kuadrat atau faktor dari 2:

jarak kosinus=DC(A,B):=1SC(A,B).

Penting untuk dicatat bahwa, karena sebanding dengan kuadrat jarak Euklides, jarak kosinus bukanlah metrik jarak yang sesungguhnya; jarak ini tidak menunjukkan sifat ketaksamaan segitiga — atau, secara lebih formal, ketaksamaan Schwarz — dan melanggar aksioma kebetulan (coincidence axiom). Untuk memperbaiki sifat ketaksamaan segitiga sembari mempertahankan urutan yang sama, seseorang dapat mengubahnya ke jarak Euklides 2(1SC(A,B)) atau jarak sudut . Sebagai alternatif, ketaksamaan segitiga yang berlaku untuk jarak sudut dapat dinyatakan secara langsung dalam bentuk kosinus; lihat di bawah.

Jarak sudut dan kemiripan

Sudut ternormalisasi, yang disebut sebagai jarak sudut, antara sembarang dua vektor A dan B adalah metrik jarak formal dan dapat dihitung dari kemiripan kosinus.[5] Komplemen dari metrik jarak sudut ini kemudian dapat digunakan untuk mendefinisikan fungsi kemiripan sudut yang dibatasi antara nilai 0 hingga 1, inklusif (terhitung).

Ketika elemen vektor dapat bernilai positif atau negatif:

jarak sudut=Dθ:=arccos(kemiripan kosinus)π=θπ
kemiripan sudut=Sθ:=1jarak sudut=1θπ

Atau, jika elemen vektor selalu bernilai positif:

jarak sudut=Dθ:=2arccos(kemiripan kosinus)π=2θπ
kemiripan sudut=Sθ:=1jarak sudut=12θπ

Sayangnya, penghitungan fungsi kosinus invers () berjalan lambat, sehingga penggunaan jarak sudut secara komputasi akan lebih mahal dibandingkan menggunakan jarak kosinus (yang bukan metrik) yang lebih umum di atas.

Jarak Euklides ternormalisasi-L2

Proksi (pengganti, pendekatan, atau alternatif) efektif lainnya untuk jarak kosinus dapat diperoleh dengan normalisasi L2 dari vektor-vektor tersebut, diikuti dengan penerapan jarak Euklides normal. Menggunakan teknik ini, setiap suku dalam masing-masing vektor pertama-tama dibagi dengan besaran vektor tersebut, menghasilkan vektor dengan panjang satuan. Kemudian, jarak Euklides pada titik-titik ujung dari sembarang dua vektor akan menjadi metrik yang tepat yang memberikan urutan yang sama dengan jarak kosinus (sebuah transformasi monotonik dari jarak Euklides; lihat di bawah) untuk perbandingan vektor apa pun, dan lebih jauh lagi menghindari operasi trigonometri yang berpotensi mahal, yang diperlukan untuk menghasilkan metrik yang tepat. Setelah normalisasi dilakukan, ruang vektor ini dapat digunakan dengan berbagai teknik yang tersedia secara lengkap untuk sembarang ruang Euklides, terutama teknik standar reduksi dimensi. Bentuk jarak ternormalisasi ini sering digunakan di dalam banyak algoritma pemelajaran dalam (deep learning).

Koefisien Otsuka–Ochiai

Dalam bidang biologi, terdapat konsep serupa yang dikenal sebagai koefisien Otsuka–Ochiai yang dinamai dari Yanosuke Otsuka (juga dieja sebagai Ōtsuka, Ootsuka, atau Otuka,[6] )[7] dan Akira Ochiai (),[8] juga dikenal sebagai koefisien Ochiai–Barkman[9] atau koefisien Ochiai,[10] yang dapat direpresentasikan sebagai:

K=|AB||A|×|B|

Di sini, A dan B adalah himpunan, dan |A| adalah jumlah elemen dalam A. Jika himpunan direpresentasikan sebagai vektor bit, koefisien Otsuka–Ochiai terlihat memiliki persamaan dengan kemiripan kosinus. Skor ini identik dengan skor yang diperkenalkan oleh Godfrey Thomson.[11]

Dalam sebuah buku baru-baru ini,[12] koefisien tersebut secara tentatif salah diatributkan kepada peneliti Jepang lain dengan nama keluarga Otsuka. Kebingungan ini muncul karena pada tahun 1957, Akira Ochiai mengatributkan koefisien ini hanya kepada Otsuka (tanpa menyebut nama depan)[13] dengan mengutip sebuah artikel dari Ikuso Hamai (),[14] yang pada gilirannya mengutip artikel asli tahun 1936 oleh Yanosuke Otsuka.[15]

Sifat

Sifat yang paling menonjol dari kemiripan kosinus adalah ia mencerminkan perbandingan relatif, dan bukan absolut, dari dimensi vektor individu. Untuk sembarang konstanta positif a dan vektor V, vektor V dan aV sangatlah mirip secara maksimal. Oleh karena itu, ukuran ini paling tepat digunakan untuk data yang frekuensinya lebih penting daripada nilai absolutnya; terutama, frekuensi istilah (term frequency) dalam dokumen. Namun, metrik yang lebih baru, yang didasarkan pada teori informasi, seperti Jensen–Shannon, SED, dan divergensi segitiga, telah terbukti memiliki semantik yang lebih baik setidaknya di dalam beberapa konteks.[16]

Kemiripan kosinus berkaitan dengan jarak Euklides sebagai berikut. Nyatakan jarak Euklides dengan notasi lazim AB, dan perhatikan bahwa

AB2=(AB)(AB)=A2+B22(AB)  (identitas polarisasi)

melalui ekspansi (perluasan). Saat dan dinormalisasi menjadi panjang satuan, A2=B2=1 sehingga bentuk matematis ini sama dengan

2(1cos(A,B)).

Secara ringkas, jarak kosinus dapat dinyatakan di dalam bentuk jarak Euklides sebagai

DC(A,B)=AB22ketikaA2=B2=1.

Jarak Euklides ini disebut jarak tali busur (karena ini adalah panjang tali busur pada lingkaran satuan) dan merupakan jarak Euklides di antara vektor-vektor yang dinormalisasi menjadi jumlah satuan dari nilai-nilai kuadrat di dalamnya.

Distribusi nol (null distribution): Untuk data yang bisa bernilai negatif maupun positif, distribusi nol untuk kemiripan kosinus adalah distribusi dari hasil kali titik antara dua vektor satuan acak yang saling bebas. Distribusi ini memiliki rata-rata (mean) nol dan variansi sebesar 1/n (di mana n adalah jumlah dimensi), dan meskipun distribusinya dibatasi antara −1 dan +1, seiring membesarnya n, distribusi ini akan semakin mendekati distribusi normal.[17][18] Pada jenis data lain seperti aliran bit (bitstream), yang hanya mengambil nilai 0 atau 1, distribusi nol-nya mengambil bentuk yang berbeda dan mungkin memiliki rata-rata bukan nol.[19]

Ketaksamaan segitiga untuk kemiripan kosinus

Ketaksamaan segitiga biasa untuk berbagai sudut (yaitu, panjang busur pada sebuah bola berdimensi tinggi (hypersphere) satuan) memberikan kita perumusan bahwa

|ACCB|ABAC+CB.

Oleh karena fungsi kosinus menurun seiring dengan meningkatnya sudut dalam rentang radian , arah ketaksamaan ini menjadi terbalik saat kita mengambil nilai kosinus dari masing-masing nilai tersebut:

cos(ACCB)cos(AB)cos(AC+CB).

Dengan menggunakan rumus penambahan dan pengurangan kosinus, kedua ketaksamaan ini dapat ditulis dalam bentuk kosinus aslinya,

cos(A,C)cos(C,B)+(1cos(A,C)2)(1cos(C,B)2)cos(A,B),
cos(A,B)cos(A,C)cos(C,B)(1cos(A,C)2)(1cos(C,B)2).

Bentuk ketaksamaan segitiga ini dapat digunakan untuk memberikan batasan pada kemiripan minimum dan maksimum antara dua objek A dan B jika kemiripan terhadap objek referensi C telah diketahui. Pendekatan ini digunakan, misalnya, dalam pengindeksan data metrik, tetapi juga telah digunakan untuk mempercepat k-means clustering sferis (berbentuk seperti bola)[20] dengan cara yang sama seperti ketaksamaan segitiga Euklides yang telah digunakan untuk mempercepat k-means reguler.

Ukuran kosinus lunak

Kosinus lunak atau (kemiripan "lunak") di antara dua vektor mempertimbangkan kemiripan di antara pasangan fitur.[21] Kemiripan kosinus tradisional menganggap fitur-fitur model ruang vektor (vector space model, VSM) bersifat independen atau sepenuhnya berbeda, sedangkan ukuran kosinus lunak mengusulkan untuk turut mempertimbangkan kemiripan fitur dalam VSM, yang pada akhirnya membantu menggeneralisasikan konsep kosinus (dan kosinus lunak) serta gagasan mengenai kemiripan (lunak).

Sebagai contoh, dalam bidang pengolahan bahasa alami (PBA), kemiripan antarfitur cukup intuitif. Fitur-fitur seperti kata, n-gram, atau n-gram sintaksis bisa jadi sangat mirip,[22] meskipun secara formal dianggap sebagai fitur yang berbeda di dalam VSM. Misalnya, kata "bermain" dan "permainan" merupakan kata yang berbeda sehingga dipetakan ke titik yang berbeda di VSM; padahal keduanya saling terhubung secara semantik. Dalam kasus n-gram atau n-gram sintaksis, jarak Levenshtein dapat diaplikasikan (bahkan, jarak Levenshtein juga dapat diaplikasikan pada kata-kata tunggal).

Untuk menghitung kosinus lunak, matriks digunakan untuk mengindikasikan kemiripan antarfitur. Ini dapat dihitung lewat jarak Levenshtein, kemiripan WordNet, atau ukuran kemiripan lainnya. Kemudian, kita hanya perlu mengalikannya dengan matriks ini.

Diberikan dua vektor berdimensi-, yakni a dan b, kemiripan kosinus lunaknya dihitung sebagai berikut:

soft_cosine1(a,b)=i,jNsijaibji,jNsijaiaji,jNsijbibj,

di mana .

Jika tidak ada kemiripan di antara fitur (, untuk ), persamaan tersebut akan setara dengan rumus kemiripan kosinus konvensional.

Kompleksitas waktu dari ukuran ini bersifat kuadratik, yang membuatnya dapat diterapkan pada berbagai tugas di dunia nyata. Perlu dicatat bahwa kompleksitas ini dapat dikurangi menjadi subkuadratik.[23] Implementasi efisien dari kemiripan kosinus lunak semacam ini sudah disertakan di dalam pustaka sumber terbuka (open-source) Gensim.

Lihat pula

Pranala luar

Referensi

  1. Singhal, Amit (2001). "Modern Information Retrieval: A Brief Overview". Bulletin of the IEEE Computer Society Technical Committee on Data Engineering 24 (4): 35–43.
  2. P.-N. Tan, M. Steinbach & V. Kumar, Introduction to Data Mining, Addison-Wesley (2005), , bab 8; hlm. 500.
  3. cosine_similarity: Function for calculating the cosine similarity. rDrr.io.
  4. Wolfram Research (2007). CosineDistance – Wolfram Language & System Documentation Center. wolfram.com.
  5. COSINE DISTANCE, COSINE SIMILARITY, ANGULAR COSINE DISTANCE, ANGULAR COSINE SIMILARITY. www.itl.nist.gov.
  6. Omori, Masae. Geological idea of Yanosuke Otuka, who built the foundation of neotectonics (geoscientist). Earth Science. 2004. Vol. 58 (4). hlm. 256–259. doi:10.15080/agcjchikyukagaku.58.4_256.
  7. Otsuka, Yanosuke. The faunal character of the Japanese Pleistocene marine Mollusca, as evidence of the climate having become colder during the Pleistocene in Japan. Bulletin of the Biogeographical Society of Japan. 1936. Vol. 6 (16). hlm. 165–170.
  8. Ochiai, Akira. Zoogeographical studies on the soleoid fishes found in Japan and its neighhouring regions-II. Bulletin of the Japanese Society of Scientific Fisheries. 1957. Vol. 22 (9). hlm. 526–530. doi:10.2331/suisan.22.526.
  9. Barkman, Jan J. Phytosociology and Ecology of Cryptogamic Epiphytes: Including a Taxonomic Survey and Description of Their Vegetation Units in Europe. Van Gorcum. 1958.
  10. H. Charles Romesburg. Cluster Analysis for Researchers. Lifetime Learning Publications. 1984. hlm. 149.
  11. Thomson, Godfrey. A hierarchy without a general factor. British Journal of Psychology. 1916. Vol. 8. hlm. 271–281.
  12. Richard J. Howarth. Dictionary of Mathematical Geosciences: With Historical Notes. Springer. 2017. hlm. 421. doi:10.1007/978-3-319-57315-1. ISBN 978-3-319-57314-4.
  13. Ochiai, Akira. Zoogeographical studies on the soleoid fishes found in Japan and its neighhouring regions-II. Bulletin of the Japanese Society of Scientific Fisheries. 1957. Vol. 22 (9). hlm. 526–530. doi:10.2331/suisan.22.526.
  14. Hamai, Ikuso. Stratification of community by means of "community coefficient" (continued). Japanese Journal of Ecology. 1955. Vol. 5 (1). hlm. 41–45. doi:10.18960/seitai.5.1_41.
  15. Otsuka, Yanosuke. The faunal character of the Japanese Pleistocene marine Mollusca, as evidence of the climate having become colder during the Pleistocene in Japan. Bulletin of the Biogeographical Society of Japan. 1936. Vol. 6 (16). hlm. 165–170.
  16. Richard Connor. A Tale of Four Metrics. Springer. 2016. doi:10.1007/978-3-319-46759-7_16.
  17. Spruill, Marcus C. Asymptotic distribution of coordinates on high dimensional spheres. Electronic Communications in Probability. 2007. Vol. 12. hlm. 234–247. doi:10.1214/ECP.v12-1294.
  18. Distribution of dot products between two random unit vectors in RD. CrossValidated.
  19. Graham L. Giller. The Statistical Properties of Random Bitstreams and the Sampling Distribution of Cosine Similarity. Giller Investments Research Notes. 2012. doi:10.2139/ssrn.2167044.
  20. Erich Schubert. Similarity Search and Applications. Springer International Publishing. 2021. Vol. 13058. hlm. 217–231. doi:10.1007/978-3-030-89657-7_17. ISBN 978-3-030-89657-7.
  21. Grigori Sidorov. Soft Similarity and Soft Cosine Measure: Similarity of Features in Vector Space Model. Computación y Sistemas. 29 September 2014. Vol. 18 (3). hlm. 491–504. doi:10.13053/CyS-18-3-2043.
  22. Grigori Sidorov. Advances in Computational Intelligence. LNAI 7630. 2013. Vol. 7630. hlm. 1–11. doi:10.1007/978-3-642-37798-3_1. ISBN 978-3-642-37798-3.
  23. Vít Novotný. Implementation Notes for the Soft Cosine Measure. Association for Computing Machinery. 2018. hlm. 1639–1642. doi:10.1145/3269206.3269317. ISBN 978-1-4503-6014-2.

Sumber dan atribusi

Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 29364848 (2026-06-19T21:47:12Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.