机器学习笔记1:KNN算法
K近邻法(k-nearest neighbor) 是一种基本的分类与回归法
主要思想:假定给定一个训练数据集,其中实例标签已定(即输入输出都明确),当输入新的实例时,可以根据其最近的k个训练实例的标签,预测新的实例对应的标注信息。
- 分类问题:对新的实例,根据与之相邻的k个训练实例的类别,通过多数表决等方式进行预测
from sklearn.neighbors import KNeighborsClassifier
# 模型训练
k = 5
clf = KNeighborsClassifier(n_neighbors = k)
clf.fit(X, y)
"""
KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',
metric_params=None, n_jobs=None, n_neighbors=5, p=2,
weights='uniform')
"""
# 进行预测
X_sample = np.array([[0, 2]])
y_sample = clf.predict(X_sample)
neighbors = clf.kneighbors(X_sample, return_d