Python 我应该如何处理300类分类机器学习问题?

Python 我应该如何处理300类分类机器学习问题?,python,machine-learning,keras,deep-learning,Python,Machine Learning,Keras,Deep Learning,我正在尝试制作一个多类分类应用程序,但我的数据集有300个类,是否可以用普通PC使用所有这些类来训练我的模型?很难回答这个问题。模型的训练时间取决于许多因素。最好对模型进行一定时间的训练,并评估性能。您可以利用拟合学习曲线,该曲线可以提供培训需要多少数据点才能达到特定绩效的估计。之后,您可以将所需数量的数据点链接到计算时间 这里有一篇文章提供了一种拟合学习曲线的算法:。当然可以。如果您有足够的时间,您甚至可以使用1000个或更多类别来培训imagenet!;) 你只需要考虑你想要哪个损失函数(分

我正在尝试制作一个多类分类应用程序,但我的数据集有300个类,是否可以用普通PC使用所有这些类来训练我的模型?

很难回答这个问题。模型的训练时间取决于许多因素。最好对模型进行一定时间的训练,并评估性能。您可以利用拟合学习曲线,该曲线可以提供培训需要多少数据点才能达到特定绩效的估计。之后,您可以将所需数量的数据点链接到计算时间


这里有一篇文章提供了一种拟合学习曲线的算法:。

当然可以。如果您有足够的时间,您甚至可以使用1000个或更多类别来培训imagenet!;)

你只需要考虑你想要哪个损失函数(分类交叉熵,稀疏分类交叉熵,或者如果你想单独惩罚每个输出节点的话,甚至是二进制的),除此之外,10、100或1000个类之间并没有太大的区别

当然,您必须增加您的模型大小以容纳更多的类,所以RAM可能是一个问题,但是您始终可以减少批处理大小。如果您使用的是图像和convnet,而您的模型仍然太大,请尝试对图像进行下采样,使用池层或更大的步长


如果你的电脑太旧太慢,你也可以试试谷歌Colab,它提供免费的GPU,甚至在线TPU

您需要多少样本和变量?这个问题太笼统了!