我正在通过《Introduction to Machine Learning with Python: A Guide for Data Scientists》这本书自学机器学习,目前正在学习k-Nearest Neighbors部分。作者提到,由于“预测速度慢且无法处理多个特征”,这种算法在现实生活中很少使用。然而,许多文章中提到k-Nearest Neighbors是数据科学家最常用的算法之一。那么,有人可以在这里为我解释一下吗?
回答:
k最近邻算法在机器学习中有很多应用,这是因为k最近邻解决的问题本质。换句话说,k最近邻的问题是基础性的,并且在许多解决方案中都有应用。例如,在数据表示如tSNE中,运行算法需要根据预定义的困惑度计算每个点的k最近邻。
您还可以在这里找到kNN的更多应用这里,以及在这篇文章的最后一页找到其在行业中的应用。
KNN算法是文本分类或文本挖掘中最受欢迎的算法之一。
另一个有趣的应用是评估森林清单和估计森林变量。在这些应用中,使用卫星图像,旨在用少数离散类别映射土地覆盖和土地使用。k-NN方法在农业中的其他应用包括气候预测和估计土壤水参数。
KNN在金融中的一些其他应用如下所述:
- 股票市场预测:根据公司绩效指标和经济数据预测股票价格。
- 货币汇率
- 银行破产
- 理解和管理金融风险
- 期货交易
- 信用评级
- 贷款管理
- 银行客户画像
- 洗钱分析
医学
- 预测因心脏病发作而住院的患者是否会再次心脏病发作。预测将基于该患者的 demographic、饮食和临床测量数据。
- 根据糖尿病患者的血液红外吸收光谱,估计其血液中的葡萄糖含量。
- 基于临床和人口统计变量,识别前列腺癌的风险因素。
KNN算法还被用于分析微阵列基因表达数据,其中KNN算法与遗传算法结合使用,后者用作搜索工具。其他应用包括预测蛋白质分子中的溶剂可达性、检测计算机系统中的入侵,以及管理移动对象数据库,例如具有无线连接的计算机。