All Products
Search
Document Center

Platform For AI:String similarity

Last Updated:Mar 06, 2026

Perhitungan kemiripan string merupakan operasi dasar dalam pembelajaran mesin yang menilai tingkat kemiripan atau perbedaan antara dua string. Perhitungan ini banyak digunakan di berbagai bidang, seperti pengambilan informasi, pemrosesan bahasa alami, dan bioinformatika, dengan memanfaatkan berbagai algoritma dan metrik—seperti Levenshtein Distance dan Cosine Similarity—untuk mengidentifikasi, mencocokkan, atau mengelompokkan data teks yang mirip.

Deskripsi algoritma

Komponen String Similarity mendukung lima metode perhitungan kemiripan: Levenshtein (Levenshtein Distance), LCS (Longest Common Substring), SSK (String Subsequence Kernel), Cosine, dan Simhash_Hamming. Komponen ini mendukung perhitungan berpasangan.

  • Metode Levenshtein mendukung perhitungan jarak dan kemiripan.

    • Jarak direpresentasikan oleh parameter levenshtein.

    • Kemiripan = 1 - Jarak. Kemiripan direpresentasikan oleh parameter levenshtein_sim.

  • Metode LCS mendukung perhitungan jarak dan kemiripan.

    • Jarak direpresentasikan oleh parameter lcs.

    • Kemiripan = 1 - Jarak. Kemiripan direpresentasikan oleh parameter lcs_sim.

  • Metode SSK mendukung perhitungan kemiripan dan direpresentasikan oleh parameter ssk.

  • Metode Cosine mendukung perhitungan kemiripan dan direpresentasikan oleh parameter cosine.

  • Metode Simhash_Hamming menggunakan algoritma SimHash untuk memetakan teks asli ke fingerprint biner 64-bit, lalu menggunakan Hamming Distance untuk menghitung jumlah bit yang berbeda pada posisi yang sama dalam fingerprint biner tersebut. Metode ini mendukung perhitungan jarak maupun kemiripan.

    • Jarak direpresentasikan oleh parameter simhash_hamming.

    • Kemiripan = 1 - Jarak/64,0. Kemiripan direpresentasikan oleh parameter simhash_hamming_sim.

Konfigurasi Komponen

Metode 1: Gunakan GUI

Tambahkan komponen String Similarity ke alur kerja Designer, lalu konfigurasikan parameter pada panel di sisi kanan.

Jenis parameter

Parameter

Deskripsi

Pengaturan bidang

Columns to append to output table

Kolom yang akan ditambahkan ke tabel output.

First column for similarity calculation

Nilai default adalah nama kolom pertama bertipe STRING dalam tabel.

Second column for similarity calculation

Nilai default adalah nama kolom kedua bertipe STRING dalam tabel.

Similarity column in output table

Nama kolom kemiripan dalam tabel output.

Pengaturan parameter

Similarity calculation method

Metode perhitungan kemiripan. Nilai yang valid:

  • levenshtein

  • levenshtein_sim

  • lcs

  • lcs_sim

  • ssk

  • cosine

  • simhash_hamming

  • simhash_hamming_sim

Nilai default: levenshtein_sim.

Substring length

Parameter ini hanya diperlukan ketika parameter Similarity Calculation Method diatur ke ssk, cosine, simhash_hamming, atau simhash_hamming_sim. Nilai yang valid: (0,100). Nilai default: 2.

Weight of matching string

Parameter ini hanya diperlukan ketika parameter Similarity Calculation Method diatur ke ssk, simhash_hamming, atau simhash_hamming_sim. Nilai yang valid: (0,1). Nilai default: 0.5.

Penyetelan eksekusi

Number of cores for computing

Secara default, ditetapkan oleh sistem.

Memory size per core (MB)

Secara default, dialokasikan secara otomatis.

Metode 2: Gunakan perintah PAI

Anda dapat menggunakan perintah PAI untuk mengonfigurasi komponen String Similarity. Komponen SQL script dapat digunakan untuk memanggil perintah PAI. Untuk informasi selengkapnya, lihat SQL Script.

PAI -name string_similarity
    -project algo_public
    -DinputTableName="pai_test_string_similarity"
    -DoutputTableName="pai_test_string_similarity_output"
    -DinputSelectedColName1="col0"
    -DinputSelectedColName2="col1";

Parameter

Wajib

Nilai default

Deskripsi

inputTableName

Ya

Tidak ada

Nama tabel input.

outputTableName

Ya

Tidak ada

Nama tabel output.

inputSelectedColName1

Tidak

Nama kolom pertama bertipe STRING dalam tabel

Nama kolom pertama untuk perhitungan kemiripan.

inputSelectedColName2

Tidak

Nama kolom kedua bertipe STRING dalam tabel

Kolom kedua untuk perhitungan kemiripan.

inputAppendColNames

Tidak

Tidak ada

Kolom yang akan ditambahkan ke tabel output.

inputTablePartitions

Tidak

Semua partisi

Partisi dari tabel input.

outputColName

Tidak

output

Nama kolom kemiripan dalam tabel output. Nama tidak boleh mengandung karakter khusus. Hanya boleh terdiri atas huruf (a-z, A-Z), angka, dan garis bawah (_). Nama harus dimulai dengan huruf dan panjangnya tidak lebih dari 128 byte.

method

Tidak

levenshtein_sim

Metode perhitungan kemiripan. Nilai yang valid:

  • levenshtein

  • levenshtein_sim

  • lcs

  • lcs_sim

  • ssk

  • cosine

  • simhash_hamming

  • simhash_hamming_sim

lambda

Tidak

0.5

Parameter ini hanya diperlukan ketika parameter Similarity Calculation Method diatur ke ssk. Nilai yang valid: (0,1).

k

Tidak

2

Parameter ini hanya diperlukan ketika parameter Method diatur ke ssk, cosine, simhash_hamming, atau simhash_hamming_sim. Nilai yang valid: (0,100).

lifecycle

Tidak

Tidak ada

Lifecycle dari tabel output. Nilainya harus berupa bilangan bulat positif.

coreNum

Tidak

Sistem secara otomatis mengalokasikan sumber daya.

Jumlah core untuk komputasi.

memSizePerCore

Tidak

Ditentukan sistem

Ukuran memori per core.

Referensi

  • Untuk informasi selengkapnya tentang Designer, lihat Designer overview.

  • Anda juga dapat menggunakan komponen String Similarity-Top N untuk menghitung kemiripan string dan mengambil N catatan data paling mirip. Untuk informasi selengkapnya tentang komponen ini, lihat String Similarity-Top N.