机器学习就是从数据中提取信息的方集合
概念问题

  1. 偏差与方差之间的权衡
    偏差(bias)(模型拟合数据的程度):由于ML算法中的假设不正确或或过于简单而导致的误差。度量了学习算法的期望预测与真实结果的偏离程度, 即刻画了学习算法本身的拟合能力
    方差(variable)(模型基于输入的变化量):由于ML算法的复杂性而导致的错误,从而对训练数据的高水平变化和过度拟合产生敏感性。度量了同样大小的训练集的变动所导致的学习性能的变化, 即刻画了数据扰动所造成的影响
    换句话说,简单的模型是稳定的(低方差),但有很大的偏差,但代表了模型的真实性(低偏差);复杂的模型容易过拟合,但表达了模型的真实性。
    误差的最佳减少要权衡偏差和方差,以避免高方差和高偏差
  • 过度拟合:低偏差、高方差--当学习器把训练样本学的“太好”了的时候,很可能已经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降。
    原因:训练数据中噪音干扰过大,使得学习器认为部分噪音是特征从而扰乱学习规则;建模样本选取有误,例如训练数据太少,抽样方法错误,样本label错误等,导致样本不能代表整体;模型不合理,或假设成立的条件与实际不符;特征维度/参数太多,导致模型复杂度太高。
  • 欠拟合:高偏差、低方差--指对训练样本的一般性质尚未学好。在训练集及测试集上的表现都不好。
    原因:模型复杂度过低;特征量过少。
  1. 贝叶斯定理
    提供先验知识事件的后验概率。用于模型拟合到训练数据集的概率框架中,并用于建立分类预测建模问题(朴素贝叶斯,贝叶斯最优分类器)

  2. 深度学习框架:Tensorflow、Pytouch、PaddlePaddle

  3. 数据集:有特征值和目标值构成的集合
    MNIST:大型手写数字数据库
    ImageNet:图像识别最大的数据库
    PASCAL VOC:视觉对象的分类识别和检测的一个基准测试,提供了检测算法和学习性能的标准图形注释数据集和标准的评估系统
    COCO:图像识别、分割和加字幕注释的数据集

  4. 特征工程包括什么?
    特征抽取、特征预处理、特征降维
    特征提取:将任意数据转化为可用与机器学习的数字特征。例如:字典型特征提取、文本型特征提取
    特征预处理:预先处理,包括归一化标准化、异常样本清洗、样本数据不平衡问题处理
    特征降维:降低的对象是多维数组。降低的是特征的 个数,得到一组“不相关”的主变量的过程

  5. 分类、回归、聚类】降维的代表性算法:

    • 分类:朴素贝叶斯、逻辑回归、决策树、K近邻算法、支持向量机算法
    • 回归:线性回归、直线拟合、逻辑回归、logistic函数拟合
    • 聚类:K-means算法
    • 降维:主成分分析
  6. 人工智能应用:机器人领语、语言识别领域、图像识别领域、专家系统

  7. 卷积神经网络

  8. 为什么Dropout有效?
    防止参数过分依赖训练数据,增加参数对数据集的泛化能力
    Dropout指的是让部分神经元失效或者状态抑制。在训练阶段,以概率p主动临时性的忽略掉部分隐藏节点。好处是在较大程度上减少网络的大小(解决耗时的问题),而且多个这样的抑制不同隐藏神经元的网络组合可以解决过拟合的问题。

  9. 典型的优化算法

  • 遗传算法
  • 模拟退火算法
  • 蚁群算法
  • 粒子群算法
  1. 强化学习:用于描述和解决智能体在于环境的交互过程中通过学习策略以达到汇报最大化或实现特定目标的问题;有机体如何在环境给予的奖励或刺激下,逐步形成对刺激的预期,产生能获得最大收益的习惯性行为。

  2. 迁移学习:把已训练好的模型(预训练模型)参数迁移到新的模型来帮助新模型训练。

    • Transfer Learning:冻结预训练模型的额全部卷积层,只训练自己定制的全连接层
    • Extract Feature Vector:先计算出预训练模型的卷积层对所有训练和测试数据的特征向量,然后抛开预训练模型,只训练自己定制的简配版简配版全连接网络
    • Fun-tuning:冻结预训练模型的部分卷积层,甚至不冻结任何网络层,训练剩下的额卷积层和全连接层
  3. 常见的评价指标

  • 分类:精确度、召回率、准确率、F值、ROC-AUC、混淆矩阵、PRC
  • 回归:RMSE(平方根误差)、MAE(平均绝对误差)、MSE(平均平方误差)
  • 聚类:兰德指数、互消息、轮廓指数
  1. batch的大小对训练的影响
  • batch_size决定了下降的方向
  • 合理范围内增大,提高内存利用率及大矩阵乘法的并行化效率;跑完一次epoch所需的迭代次数减少,处理速度更快;越大,下降方向越准,引起的训练震荡越小
  • 盲目增大,内存容量可能撑不住;迭代次数减少,精度下降,对参数的修正也更慢;增大到一定程度,其确定的下降方向基本不再变化
  • 设的小一些,收敛的慢,可能准确率来回震荡,需把基础学习速率降低一些,但可使实际使用精度较高
  1. 生成模型和判别模型的区别
    生成模型会学习数据的分布;判别模型学习的是不同数据之间的区别,不学习数据内部特点。
    生成模型求解:联合分布--求解类别先验概率和类别条件概率
    判别模型求解:条件分布--模型参数后验概率最大--(拟然函数/cdot参数先验)最大--最大拟然
    生成方法:混合高斯模型、朴素贝叶斯法和隐形马尔可夫模型等
    判别方法:SVM、LR

  2. gan(对抗生成网络)
    假设我们有两个网络,G(Generator)和D(Discriminator)
    G是一个生成图片的网络,它接收一个随机的噪声z,通过这个噪声生成图片,记作G(z)
    D是判别网络,判一张图片是不是真实的。输入参数是x,输出D(x)代表真实图片的概率。
    动态博弈过程:最理想情况下,最终G可以生成以假乱真的图片G(z),而D(G(z))=1
    得到一个生成式的模型G,用来生成图片

  3. 监督学习与无监督学习
    监督学习,其基本思想是,我们数据集中的每个样本都有相应的“正确答案”,再根据这些样本作出预测,

  • 回归问题,即通过回归来推出一个连续的输出
  • 分类问题,其目标是推出一组离散的结果
    无监督学习中没有任何的标签或者是有相同的标签。已知数据集,却不知如何处理,也未告知每个数据点是什么。别的都不知道,就是一个数据集
  • 聚类算法