机器学习笔记 - 一种估算模型训练所需的样本量的方法

一、简述

        高质量和足够多的数据是开发任何机器学习模型的基础。在缺乏对特定系统建模所需的最佳数据量的事先估计的情况下,数据收集最终要么产生太少而无法进行有效培训,要么产生太多导致资源的浪费。

        我经常被问到这个场景需要多少图像,通常我都会根据场景的复杂程度给出一个估计的范围,但是需要多少数据这个问题很难直接回答出一个数量出来,因为需要的数据量既取决于问题的复杂性,也取决于所选算法的复杂性。

        但在许多实际场景中,可用于训练深度学习模型的图像数据量十分有限。如果我们能够相对准确的估算出所需的样本数量,将会节省许多人力、物力成本。

        实际上有不少研究人员提出了很多估计的方法,用于估计达到最佳模型性能所需的图像数量,这里我们了解其中一种。

二、平衡子采样

        这里使用平衡子采样方案来确定我们模型的最佳样本量。这是通过选择由Y个图像组成的随机子样本并使用该子样本训练模型来完成的。然后在一个独立的测试集上对模型进行评估。该过程对每个子样本重复N次,并进行替换,以构建观测性能的平均值和置信区间。

1、导入包

import matplotlib.pyplot as plt
import numpy as np
import tensorflow as tf
from tensorflow import keras
import tensorflow_datasets as tfds
from tensorflow.keras import layers

# Define seed and fixed variables
seed = 42
tf.random.set_seed(seed)
np.random.seed(seed)
AUTO = tf.data.AUTOTUNE

2、加载数据集

# Spe

猜你喜欢

转载自blog.csdn.net/bashendixie5/article/details/131181148