Sobes.tech
Middle — Senior

DBSCAN эмне жана ал кандайча чыгыштарды табууга жардам берет?

sobes.tech AI

AIден жооп

DBSCAN (Тығыздыкка негизделген кеңдиктик топтоо жана шу) — маалымат чекиттерин тыгыздыкка негизделген топтоо алгоритми. Ал топторду жогорку тыгыздыктагы чекиттердин аймактары катары аныктайт жана топко кирбеген чекиттерди чыгыш (шу) катары белгилейт.

Алгоритм эки негизги параметрди колдонуп:

  • eps — чекиттин айланасындагы радиус;
  • minPts — eps айланасындагы минималдуу чекиттер саны, топ түзүү үчүн.

Эгер eps айланасындагы чекитте minPtsден аз көршү болсо, ал чыгыш деп эсептелет. Ошентип, DBSCAN автоматтык түрдө чыгыштарды аныктап, сирек же изоляцияланган чекиттерди тыгыз маалымат топторунан автоматтык түрдө бөлүп чыгууга жардам берет, алдын ала топтордун санын белгилөөгө муктаж эмес.

Pythonдо scikit-learn китепканасы менен колдонуу мисалы:

from sklearn.cluster import DBSCAN
import numpy as np

X = np.array([[1, 2], [2, 2], [2, 3], [8, 7], [8, 8], [25, 80]])

clustering = DBSCAN(eps=3, min_samples=2).fit(X)
print(clustering.labels_)
# Натыйжа: топ белгилери, -1 чыгышты көрсөтөт