human: 总结监督学习算法KNN。
 bot: KNN算法是一种基于实例的监督学习算法，用于分类和回归问题。它的基本思想是，如果一个样本的k个最近邻居中的大多数属于某个类别，那么该样本很可能属于该类别。KNN算法的步骤包括：1. 计算新实例与训练集中每个实例之间的距离；2. 选择距离最近的k个实例；3. 根据这k个实例的类别进行投票或计算加权平均值来预测新实例的类别。KNN算法的优点是简单易懂，适用于多类别问题和非线性问题。然而，KNN算法的缺点是对于大规模数据集和高维数据效果较差，需要存储全部训练数据。