本文简要介绍python语言中 sklearn.neighbors.KNeighborsClassifier
的用法。
用法:
class sklearn.neighbors.KNeighborsClassifier(n_neighbors=5, *, weights='uniform', algorithm='auto', leaf_size=30, p=2, metric='minkowski', metric_params=None, n_jobs=None)
实现k-nearest 邻居投票的分类器。
在用户指南中阅读更多信息。
- n_neighbors:整数,默认=5
kneighbors
查询默认使用的邻居数量。- weights:{‘uniform’, ‘distance’} 或可调用,默认='uniform'
预测中使用的权重函数。可能的值:
- ‘uniform’:统一权重。每个邻域中的所有点的权重相等。
- ‘distance’:权重点按距离的倒数计算。在这种情况下,查询点的较近的邻居将比较远的邻居具有更大的影响。
- [callable]:一个用户定义的函数,它接受一个距离数组,并返回一个包含权重的相同形状的数组。
- algorithm:{‘auto’, ‘ball_tree’,‘kd_tree’, ‘brute’},默认='自动'
用于计算最近邻的算法:
注意:拟合稀疏输入将使用蛮力覆盖此参数的设置。
- leaf_size:整数,默认=30
叶大小传递给BallTree 或 KDTree。这会影响构建和查询的速度,以及存储树所需的内存。最佳值取决于问题的性质。
- p:整数,默认=2
Minkowski 度量的功率参数。当 p = 1 时,这相当于使用 manhattan_distance (l1),而对于 p = 2,则使用 euclidean_distance (l2)。对于任意 p,使用 minkowski_distance (l_p)。
- metric:str 或可调用,默认='minkowski'
用于树的距离度量。默认度量是 minkowski,并且 p=2 等效于标准欧几里得度量。有关可用指标的列表,请参阅
DistanceMetric
的文档。如果 metric 是 “precomputed”,则 X 被假定为一个距离矩阵,并且在拟合期间必须是正方形。 X 可能是一个稀疏图,在这种情况下,只有“nonzero” 元素可以被认为是邻居。- metric_params:字典,默认=无
度量函数的附加关键字参数。
- n_jobs:整数,默认=无
运行邻居搜索的并行作业数。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有处理器。有关更多详细信息,请参阅术语表。不影响fit
方法。
- classes_:形状数组 (n_classes,)
分类器已知的类标签
- effective_metric_:str 或 callble
使用的距离度量。它将与
metric
参数或其同义词相同,例如‘euclidean’ 如果metric
参数设置为 ‘minkowski’ 并且p
参数设置为 2。- effective_metric_params_:dict
度量函数的附加关键字参数。大多数指标与
metric_params
参数相同,但如果effective_metric_
属性设置为‘minkowski’,也可能包含p
参数值。- n_features_in_:int
拟合期间看到的特征数。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。- n_samples_fit_:int
拟合数据中的样本数。
- outputs_2d_:bool
当
y
的形状在拟合期间为 (n_samples, ) 或 (n_samples, 1) 时为 False,否则为 True。
参数:
属性:
注意:
有关选择
algorithm
和leaf_size
的讨论,请参阅在线文档中的最近邻居。警告
关于最近邻算法,如果发现两个邻域
k+1
和k
具有相同的距离但不同的标签,则结果将取决于训练数据的排序。https://en.wikipedia.org/wiki/K-nearest_neighbor_algorithm
例子:
>>> X = [[0], [1], [2], [3]] >>> y = [0, 0, 1, 1] >>> from sklearn.neighbors import KNeighborsClassifier >>> neigh = KNeighborsClassifier(n_neighbors=3) >>> neigh.fit(X, y) KNeighborsClassifier(...) >>> print(neigh.predict([[1.1]])) [0] >>> print(neigh.predict_proba([[0.9]])) [[0.666... 0.333...]]
相关用法
- Python sklearn KNeighborsClassifier.kneighbors用法及代码示例
- Python sklearn KNeighborsClassifier.kneighbors_graph用法及代码示例
- Python sklearn KNeighborsTransformer用法及代码示例
- Python sklearn KNeighborsRegressor用法及代码示例
- Python sklearn KNeighborsRegressor.kneighbors用法及代码示例
- Python sklearn KNeighborsRegressor.kneighbors_graph用法及代码示例
- Python sklearn KNeighborsTransformer.kneighbors_graph用法及代码示例
- Python sklearn KNeighborsTransformer.kneighbors用法及代码示例
- Python sklearn KNNImputer用法及代码示例
- Python sklearn KBinsDiscretizer用法及代码示例
- Python sklearn KDTree用法及代码示例
- Python sklearn KernelPCA用法及代码示例
- Python sklearn KernelDensity用法及代码示例
- Python sklearn KernelRidge用法及代码示例
- Python sklearn KMeans用法及代码示例
- Python sklearn KernelCenterer用法及代码示例
- Python sklearn KFold用法及代码示例
- Python sklearn jaccard_score用法及代码示例
- Python sklearn WhiteKernel用法及代码示例
- Python sklearn CalibrationDisplay.from_predictions用法及代码示例
- Python sklearn VotingRegressor用法及代码示例
- Python sklearn gen_batches用法及代码示例
- Python sklearn ExpSineSquared用法及代码示例
- Python sklearn MDS用法及代码示例
- Python sklearn adjusted_rand_score用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.neighbors.KNeighborsClassifier。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。