机器学习算法工程师的经典面试问题

如何确定聚类算法的类别数 k

  • (1)根据数据的来源使用领域相关的以及一些先验的知识来进行估计——说了等于没有说啊

  • (2)降维到二维平面上,然后如果数据形状比较好的话,也许可以直观地看出类别的大致数目。

  • (3)通过谱分析,找相邻特征值 gap 较大的地方——这个方法我只了解个大概,而且我觉得“较大”这样的词也让它变得不能自动化了。

  • (4)层次聚类则避免了类别数目的确定问题,其在做Clustering的时候不需要知道类别数;

在计算样本距离时如何处理非数值型特征(类别型)

  • (1)scikit-learn的相关 api 对这些特征进行转换

  • (2)定义适当的距离度量函数,比如 Simple Matching Distance、Mixed Distance,见 距离的度量(Dissimilarity Measure)

你可能感兴趣的:(机器学习算法工程师的经典面试问题)