1,knn计算的是什么和什么的距离,距离有几种,分别怎么计算
答:knn算法又叫k近邻算法,计算的是测试样本和训练样本的距离。是基于某种距离度量,找出训练集中与测试样本最靠近的k个训练样本。可以在分类任务中使用投票(k个样本中出现最多的类别作为预测结果),在回归任务中使用平均(k个样本的实值输出的平均值)。在KNN算法中,常用的距离有三种,分别为曼哈顿距离、欧式距离和明可夫斯基距离。详见:https://blog.csdn.net/sanqima/article/details/51276640
其他的数学距离:https://blog.csdn.net/wenbingoon/article/details/17251185
10种机器学习算法及python代码:https://www.cnblogs.com/sthu/p/8690723.html
2,什么是信息增益率,怎么计算
答:1)信息量:代表随机事件X为的概率, 概率越小,信息量越大
2)信息熵:随机变量X的熵:
3)信息增益:c是类别的标识,取值情况是c1,c2,⋯,cnc1,c2,⋯,cn,n为类别的总数。特征X的信息增益:
其中,为分类系统的熵;
为特征X被固定时的条件熵。
4)信息增益率(信息增益比):
注:在决策树算法中,ID3使用信息增益,c4.5使用信息增益比。详见:https://blog.csdn.net/bitcarmanlee/article/details/51488204
3,常见的深度学习算法及介绍
答:深度学习是机器学习的一个分支,深度学习是机器学习中的具有深层结构的神经网络算法,即机器学习>神经网络算法>深度神经网络(深度学习)。
Caffe:是一种常用的深度学习框架
SGD:随机梯度下降,是一种梯度下降优化算法,梯度下降是优化神经网络最常用的算法
SGD,BGD,MBGD,EASGD,Momentum,AdaGrad等各种梯度下降优化算法:https://cloud.tencent.com/developer/article/1012229
4,RNN,CNN
CNN(Convolution Neural Networks)卷积神经网络
RNN(Recurrent neural network) 递归神经网络,递归神经网络(RNN)是两种人工神经网络的总称。一种是时间递归神经网络(recurrent neural network),又名循环神经网络,另一种是结构递归神经网络(recursive neural network)。
各种深度学习算法介绍:
1)https://github.com/KeKe-Li/tutorial
2)https://blog.csdn.net/abc200941410128/article/details/79269386
3)面试常问的深度学习(DNN、CNN、RNN)的相关问题:https://blog.csdn.net/xwd18280820053/article/details/76026523
5,对python的一个dict变量,按照其value进行排序
1)lambda表达式:lambda x:y
x表示输出参数,y表示lambda 函数的返回值
2)sorted函数:help(sorted)
sorted(iterable, /, *, key=None, reverse=False):对可迭代的对象进行排序,返回一个排序后的列表
有两个可选参数:1)key可以是一个函数,用来对每一个可迭代的元素抽象一个比较方法,默认为None,直接比较元素
2)reverse 是一个布尔值,使用True表示
逆序
注:sorted()函数排序结果稳定。
3)代码:
d = {'a':1,'b':5,'c':3}
# 方法一:lambda表达式简单搞定
e = sorted(d.items(),key=lambda item:item[1]) # item[0]指的dict的key,item[1]指的dict的value
# 这里key参数对应的lambda表达式的意思则是选取元组中的第二个元素作为比较参数
# 排序结果是一个元组组成的列表[(key, value),(key, value), ...],
dict(e) # 这一句将这个列表重新转换为原来的字典。
# 方法二:字典推导式重新组装字典
b = {i:j for j,i in d.items()}
b = sorted(b.items())
dict(b)
注:
python3的dic.keys()返回的是dic_keys类型,dic.values返回的是dic_values类型,dic.items()返回的是dic_items类型,都可以转化为列表类型,加list()即可:list(dic_keys()), list(dic_values()), list(dic_items())