DL 第九天

1.模型的超参数是什么?它和参数有什么不同?

模型的参数是什么?

模型参数是由训练数据生成的模型值,用于帮助显示数据中数量之间的关系。因此,当我们说找到问题的最佳模型时,应该意味着我们已经在现有的数据集上找到了最适合问题的模型参数。它具有以下几个特征:

  • 用于预测新数据
  • 它显示了我们使用的模型的能力。通常用准确性来表示,我们称之为准确率。

  • 直接从训练数据集学习

  • 通常不需要人工设置

模型参数有多种形式,如神经网络权值、支持向量机中的支持向量、线性回归或逻辑回归算法中的系数。

什么是模型的超参数?

我们经常假设模型超参数看起来像一个模型参数,但它不是真的。实际上这两个概念是完全分开的。如果模型参数是由训练数据集本身建模的,则模型超参数是完全不同的。它完全在模型之外,不依赖于训练数据。它的目的是什么?实际上,他们有以下几个任务:

  • 用于训练过程中,帮助模型找到最合适的参数

  • 它通常是由模型训练的参与者手工挑选的

  • 它可以基于几种启发式策略来定义

对于一个特定的问题,我们完全不知道什么是最好的模型超参数。因此,在现实中,我们需要使用一些技术来估计最佳取值范围(例如 k 近邻模型中的k系数),如网格搜索。这里我想举几个模型超参数的例子:

  • 训练人工神经网络时的学习率

  • 训练支持向量机时的C和sigma参数

  • 最近邻模型中的k系数

2. 如何处理不平衡数据?

通常,实际数据和标准数据集在数据集的属性和数据量方面差异很大(标准数据集不需要调整)。**对于实际的数据集,可能会出现数据不平衡的情况,即类之间的数据不平衡。**可以考虑以下技术:

  1. 选择正确的度量来评估模型:对于不平衡的数据集,使用准确性来评估是一项非常危险的工作。应选择精度、召回率、F1分数、AUC等合适的评价量。
  2. 重新采样训练数据集:除了使用不同的评估标准,人们还可以使用一些技术来获得不同的数据集。从一个不平衡的数据集中创建一个平衡的数据集有两种方法,即欠采样和过采样,具体技术包括重复、bootstrapping 或 hits(综合少数过采样技术)等方法。
  3. 许多不同模型的集成:通过创建更多的数据来概括模型在实践中并不总是可行的。例如,你有两个层,一个拥有 1000 个数据的罕见类,一个包含 10,000 个数据样本的大型类。因此,我们可以考虑一个 10 个模型的训练解决方案,而不是试图从一个罕见的类中找到 9000 个数据样本来进行模型训练。每个模型由 1000 个稀有类和 1000 个大规模类训练而成。然后使用集成技术获得最佳结果。
  4. 重新设计模型 — 损失函数:使用惩罚技术对代价函数中的多数类进行严厉惩罚,帮助模型本身更好地学习稀有类的数据。这使得损失函数的值在类中更全面。

3. 当训练深度学习模型时,Epoch、Batch 和 Iteration 概念是什么意思?

  • Epoch:表示整个数据集的迭代(所有内容都包含在训练模型中)。
  • Batch:是指当我们不能一次将整个数据集放到神经网络中时,我们将数据集分割成几批较小的数据集。
  • Iteration:是运行 epoch 所需的批数。假设有 10,000 个图像作为数据,批处理的大小(batch_size)为 200。然后一个 epoch 将包含 50 个迭代(10,000 除以 200)。

4. 数据生成器的概念是什么?我们什么时候需要使用它?

数据生成器在写代码中很重要,数据生成函数帮助我们直接生成数据,然后送到模型中进行每个 batch 的训练。利用生成函数对训练大数据有很大帮助。因为数据集并不总是需要全部加载到 RAM 中,这是一种内存的浪费,而且如果数据集太大,会导致内存溢出,输入数据的处理时间会变长。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值