AI 机器学习计算艺术之道:典型面试题与算法编程题解析
1. 什么是 K-近邻算法?如何实现?
题目: 请简述 K-近邻算法(K-Nearest Neighbors,K-NN)的概念,并给出一个简单的实现示例。
答案: K-近邻算法是一种基于实例的学习算法,通过计算测试实例与训练集中各实例的相似度,选取 K 个最近的邻居,并基于这些邻居的标签进行投票,最终预测测试实例的类别。
实现示例:
from collections import Counter
from math import sqrt
import numpy as np
def euclidean_distance(a, b):
return sqrt(sum([(x - y) ** 2 for x, y in zip(a, b)]))
def k_nearest_neighbors(X_train, y_train, X_test, k):
neighbors = []
for i in range(len(X_train)):
distance =