| Input: semantic s = {s1, s2, …, s|s|}, cluster number k = {k1, k2, …, k|k|} | | Output: {c1, c2, …, c|k|} | (1) | repeat | (2) | x ← 1 | (3) | //initial setting | | cx = {cx;1, …, cx;|o|} = {{s1}, …, {s|s|}} | (4) | repeat | (5) | //initial cluster merging | | (cα, cβ) = | | =, | (6) | New_c = cα ∪ cβ | (7) | cx = (cx\{cα, cβ}) ∪ {New_c} | (8) | until |cx| ≥ kx | (9) | x ← x + 1 | (10) | until x > |k| | (11) | return {c1, c2, …, c|k|} |
|