神经网络训练的数据集

41

我正在寻找一些相对简单的数据集,用于测试和比较人工神经网络的不同训练方法。 我希望数据不需要太多的预处理即可将其转换为输入格式,包括输入和输出的列表,并进行归一化处理(范围在0-1之间)。感谢提供任何链接。

7个回答

57

https://archive.ics.uci.edu/ml是加州大学欧文分校机器学习数据集的存储库。这是一个非常好的资源,我相信它们都在CSV文件中。


41

为何不试试像sin函数这样简单的东西作为训练数据呢?既然你正在比较训练方法并且并不真正关心你在训练网络的东西,那么它应该能够工作并且很容易生成训练数据。

使用sin(x)来训练网络,其中x是输入,输出是函数的值。在你的情况下,额外的好处是结果的绝对值已经在0-1的范围内。同样适用于其他数学函数。


2
这只是我的个人意见:除了adrianbanks所说的,还有:在MS Excel中,您可以非常容易地生成数据,创建一个列,其中数字范围从-180.0到180.0,以0.1为增量,然后在第二列中添加一个单元格,其值为“=SIN(A1)”,然后也填充该列。将数据导出为CSV或任何您希望的格式。 我还使用x=x^2,x=x^3,x=x^4,x=sqrt(x)函数。 - Peter Bulyaki

14

一些资源包括:

  • sinC 函数。

       +----
       |   sin(x)
       |  -------        when x != 0
       |     x
sinC = |
       |
       |     1           otherwise
       +----
  • 如 @adrianbanks 所说,使用sin(x)函数。

  • 用于测试某些算法的修改的好老 n-奇偶性测试。

  • Iris数据集,semeion手写数字数据集等,任何其他函数以及更多数据集。

  • UCI机器学习存储库:archive.ics.uci.edu/ml/datasets.html

  • 这是另一个具有许多回归数据集的资源:www.dcc.fc.up.pt/~ltorgo//Regression/DataSets.html。您可以从UCI ML存储库中获得许多此类数据集。
  • 您可以从https://www.kaggle.com/获取各种实用数据集。
  • 我认为您不需要对这些数据进行太多预处理。例如,对于分类变量,您可以使用GUI文本编辑器将它们替换为二进制。例如,鲍鱼数据集有一个分类属性,性别,其有三个值“M”表示男,“F”表示女,“I”表示婴儿。您可以在文本编辑器中按Ctrl + R,将所有出现的“M”替换为1,0,0,将所有出现的“F”替换为0,1,0,并将所有出现的“I”替换为0,0,1(考虑到文件是CSV格式)。这将快速替换分类变量。

    如果您使用R,则可以使用RSNNS包附带的normalizeData函数将数据缩放和归一化为0和1。

    如果您在其他环境中,例如octavematlab,则只需投入一些时间编写代码即可。我不知道这些环境中是否有可用的函数,我使用自己的代码来缩放和/或归一化数据。

    当您使用函数时,您的工作会变得更加容易,并且一旦准备好数据,请将修改后的数据保存到文件中。

    记住一件事,训练神经网络的目标不仅是以使其在某个训练集上良好地工作的方式训练网络。主要目标是训练网络,使其在网络尚未直接或间接地看到的新数据中具有最佳误差。


    7

    4

    3

    我在本科时学习了人工神经网络,并将其用于进行光学字符识别(OCR)。我认为这是一个不错的应用案例。

    扫描两页文本,提取字母并形成训练/测试数据集(例如,8x8像素导致64个输入节点),标记数据。训练ANN并使用测试数据集获得分数。更改网络拓扑/参数并调整网络以获得最佳分数。


    0

    您可以在此处找到一些有趣的数据集,涵盖自然语言处理(NLP)、命名实体识别(NER)以及图像分类和边界框等方面: https://dataturks.com/projects/trending


    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接