{
  "id": 100974,
  "title": "The usage of Dropout in GAN's...",
  "url": "/competitions/generative-dog-images/discussion/100974",
  "author_name": "",
  "post_date": "2019-07-22T12:30:04.445889200Z",
  "votes": 2,
  "comment_count": 11,
  "views": 0,
  "content": "<p>In several other discussion on Kaggle some websites with GAN tips, tricks and hacks are discussed. One of the sites with tips is <a href=\"https://github.com/soumith/ganhacks\">ganhacks</a>.</p>\n\n<p>One of the tips is to use a Dropout of 50% in both train and test phases in the Generator.</p>\n\n<p>I've tried a few different types of GAN (GAN, WGAN, DCGAN..) and a couple of things I noticed are that using 50% Dropout usually does not benefit the MiFID score. I get better scores when using a Dropout somewhere between 15 - 30% in the Generator. I'am not sure if this could be related to how the MiFID score works.</p>\n\n<p>Also I notice in a lot of kernels and samples of GAN's on the internet that there does not seem to be a clear line on whether or not to use Dropout in the Discriminator. </p>\n\n<p>I was wondering how other Kagglers are using Dropout in their models and what your experiences are with the amount of Dropout to use?</p>",
  "messages": [
    {
      "id": "581805",
      "postDate": "07/22/2019 12:30:04",
      "content": "<p>In several other discussion on Kaggle some websites with GAN tips, tricks and hacks are discussed. One of the sites with tips is <a href=\"https://github.com/soumith/ganhacks\">ganhacks</a>.</p>\n\n<p>One of the tips is to use a Dropout of 50% in both train and test phases in the Generator.</p>\n\n<p>I've tried a few different types of GAN (GAN, WGAN, DCGAN..) and a couple of things I noticed are that using 50% Dropout usually does not benefit the MiFID score. I get better scores when using a Dropout somewhere between 15 - 30% in the Generator. I'am not sure if this could be related to how the MiFID score works.</p>\n\n<p>Also I notice in a lot of kernels and samples of GAN's on the internet that there does not seem to be a clear line on whether or not to use Dropout in the Discriminator. </p>\n\n<p>I was wondering how other Kagglers are using Dropout in their models and what your experiences are with the amount of Dropout to use?</p>",
      "rawMarkdown": "In several other discussion on Kaggle some websites with GAN tips, tricks and hacks are discussed. One of the sites with tips is [ganhacks](https://github.com/soumith/ganhacks).\n\nOne of the tips is to use a Dropout of 50% in both train and test phases in the Generator.\n\nI've tried a few different types of GAN (GAN, WGAN, DCGAN..) and a couple of things I noticed are that using 50% Dropout usually does not benefit the MiFID score. I get better scores when using a Dropout somewhere between 15 - 30% in the Generator. I'am not sure if this could be related to how the MiFID score works.\n\nAlso I notice in a lot of kernels and samples of GAN's on the internet that there does not seem to be a clear line on whether or not to use Dropout in the Discriminator. \n\nI was wondering how other Kagglers are using Dropout in their models and what your experiences are with the amount of Dropout to use?",
      "votes": null
    },
    {
      "id": "581810",
      "postDate": "07/22/2019 12:35:49",
      "content": "<p>i didnt get any  improvement using dropout(0.5) or dropout (0.3) towards the end layer of generator . However , I could not point towards right direction as there were other changes . Probably i need to try that out .</p>",
      "rawMarkdown": "i didnt get any  improvement using dropout(0.5) or dropout (0.3) towards the end layer of generator . However , I could not point towards right direction as there were other changes . Probably i need to try that out .",
      "votes": null
    },
    {
      "id": "581819",
      "postDate": "07/22/2019 12:49:05",
      "content": "<p>You could try more layers with Dropout or see if a smaller value would provide improvements.\nCould also be you have the best results when using no Dropout..Would be interresting to see what model you would need to achieve that.</p>",
      "rawMarkdown": "You could try more layers with Dropout or see if a smaller value would provide improvements.\nCould also be you have the best results when using no Dropout..Would be interresting to see what model you would need to achieve that.",
      "votes": null
    },
    {
      "id": "581958",
      "postDate": "07/22/2019 15:30:57",
      "content": "<p>I also tried adding dropout but didn't improve the score.</p>",
      "rawMarkdown": "I also tried adding dropout but didn't improve the score.",
      "votes": null
    },
    {
      "id": "581964",
      "postDate": "07/22/2019 15:34:03",
      "content": "<p>dropout didn't improve my score :(  has anyone benefited from using dropout?</p>",
      "rawMarkdown": "dropout didn't improve my score :(  has anyone benefited from using dropout?",
      "votes": null
    },
    {
      "id": "582164",
      "postDate": "07/22/2019 20:34:56",
      "content": "<p>Did you try both Generator and/or Discriminator?</p>",
      "rawMarkdown": "Did you try both Generator and/or Discriminator?",
      "votes": null
    },
    {
      "id": "582174",
      "postDate": "07/22/2019 20:56:07",
      "content": "<p>I have had better success adding <code>tf.keras.layers.GaussianNoise()</code>. Adding this to the Discriminator was required for my CGAN <a href=\"https://www.kaggle.com/cdeotte/dog-breed-cgan\">here</a>. Otherwise the Discriminator became too good too quickly and the Generator couldn't keep up.</p>",
      "rawMarkdown": "I have had better success adding `tf.keras.layers.GaussianNoise()`. Adding this to the Discriminator was required for my CGAN [here][1]. Otherwise the Discriminator became too good too quickly and the Generator couldn't keep up.\n\n[1]: https://www.kaggle.com/cdeotte/dog-breed-cgan",
      "votes": null
    },
    {
      "id": "582187",
      "postDate": "07/22/2019 21:31:26",
      "content": "<p>Interresting. So using GaussianNoise gave better results than using Dropout? I will give that a try tomorrow....curious to see what the difference will be with my current setup. Thanks.</p>",
      "rawMarkdown": "Interresting. So using GaussianNoise gave better results than using Dropout? I will give that a try tomorrow....curious to see what the difference will be with my current setup. Thanks.",
      "votes": null
    },
    {
      "id": "582324",
      "postDate": "07/23/2019 04:10:34",
      "content": "<p>has anyone seen a kernel where gaussian noise is applied in pytorch? :)</p>",
      "rawMarkdown": "has anyone seen a kernel where gaussian noise is applied in pytorch? :)",
      "votes": null
    },
    {
      "id": "582429",
      "postDate": "07/23/2019 07:09:20",
      "content": "<p>I haven't seen a kernel with it but I presume it will be the same as with Keras...swap a Dropout layer with a GaussianNoise layer. I'am not sure if PyTorch already has a GaussianNoise layer as the <a href=\"https://github.com/pytorch/pytorch/issues/2024\">feature request</a> it is still open...the link however points to some custom code so it should be possible.</p>",
      "rawMarkdown": "I haven't seen a kernel with it but I presume it will be the same as with Keras...swap a Dropout layer with a GaussianNoise layer. I'am not sure if PyTorch already has a GaussianNoise layer as the [feature request](https://github.com/pytorch/pytorch/issues/2024) it is still open...the link however points to some custom code so it should be possible.",
      "votes": null
    },
    {
      "id": "582551",
      "postDate": "07/23/2019 10:11:52",
      "content": "<p>No only in the Generator <a href=\"/rsmits\">@rsmits</a> .</p>",
      "rawMarkdown": "No only in the Generator @rsmits .",
      "votes": null
    },
    {
      "id": "582553",
      "postDate": "07/23/2019 10:14:31",
      "content": "<p><a href=\"/rsmits\">@rsmits</a> I see, thanks for the info :)</p>",
      "rawMarkdown": "rsmits I see, thanks for the info :)",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 581810,
      "author_name": "phoenix9032",
      "author_url": "",
      "post_date": "07/22/2019 12:35:49",
      "content": "<p>i didnt get any  improvement using dropout(0.5) or dropout (0.3) towards the end layer of generator . However , I could not point towards right direction as there were other changes . Probably i need to try that out .</p>",
      "votes": null,
      "replies": [
        {
          "id": 581819,
          "author_name": "rsmits",
          "author_url": "",
          "post_date": "07/22/2019 12:49:05",
          "content": "<p>You could try more layers with Dropout or see if a smaller value would provide improvements.\nCould also be you have the best results when using no Dropout..Would be interresting to see what model you would need to achieve that.</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 581958,
      "author_name": "joelhanson",
      "author_url": "",
      "post_date": "07/22/2019 15:30:57",
      "content": "<p>I also tried adding dropout but didn't improve the score.</p>",
      "votes": null,
      "replies": [
        {
          "id": 582164,
          "author_name": "rsmits",
          "author_url": "",
          "post_date": "07/22/2019 20:34:56",
          "content": "<p>Did you try both Generator and/or Discriminator?</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 582551,
          "author_name": "joelhanson",
          "author_url": "",
          "post_date": "07/23/2019 10:11:52",
          "content": "<p>No only in the Generator <a href=\"/rsmits\">@rsmits</a> .</p>",
          "votes": null,
          "replies": []
        }
      ]
    },
    {
      "id": 581964,
      "author_name": "yangsaewon",
      "author_url": "",
      "post_date": "07/22/2019 15:34:03",
      "content": "<p>dropout didn't improve my score :(  has anyone benefited from using dropout?</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 582174,
      "author_name": "cdeotte",
      "author_url": "",
      "post_date": "07/22/2019 20:56:07",
      "content": "<p>I have had better success adding <code>tf.keras.layers.GaussianNoise()</code>. Adding this to the Discriminator was required for my CGAN <a href=\"https://www.kaggle.com/cdeotte/dog-breed-cgan\">here</a>. Otherwise the Discriminator became too good too quickly and the Generator couldn't keep up.</p>",
      "votes": null,
      "replies": [
        {
          "id": 582187,
          "author_name": "rsmits",
          "author_url": "",
          "post_date": "07/22/2019 21:31:26",
          "content": "<p>Interresting. So using GaussianNoise gave better results than using Dropout? I will give that a try tomorrow....curious to see what the difference will be with my current setup. Thanks.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 582324,
          "author_name": "yangsaewon",
          "author_url": "",
          "post_date": "07/23/2019 04:10:34",
          "content": "<p>has anyone seen a kernel where gaussian noise is applied in pytorch? :)</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 582429,
          "author_name": "rsmits",
          "author_url": "",
          "post_date": "07/23/2019 07:09:20",
          "content": "<p>I haven't seen a kernel with it but I presume it will be the same as with Keras...swap a Dropout layer with a GaussianNoise layer. I'am not sure if PyTorch already has a GaussianNoise layer as the <a href=\"https://github.com/pytorch/pytorch/issues/2024\">feature request</a> it is still open...the link however points to some custom code so it should be possible.</p>",
          "votes": null,
          "replies": []
        },
        {
          "id": 582553,
          "author_name": "yangsaewon",
          "author_url": "",
          "post_date": "07/23/2019 10:14:31",
          "content": "<p><a href=\"/rsmits\">@rsmits</a> I see, thanks for the info :)</p>",
          "votes": null,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "581805": "In several other discussion on Kaggle some websites with GAN tips, tricks and hacks are discussed. One of the sites with tips is [ganhacks](https://github.com/soumith/ganhacks).\n\nOne of the tips is to use a Dropout of 50% in both train and test phases in the Generator.\n\nI've tried a few different types of GAN (GAN, WGAN, DCGAN..) and a couple of things I noticed are that using 50% Dropout usually does not benefit the MiFID score. I get better scores when using a Dropout somewhere between 15 - 30% in the Generator. I'am not sure if this could be related to how the MiFID score works.\n\nAlso I notice in a lot of kernels and samples of GAN's on the internet that there does not seem to be a clear line on whether or not to use Dropout in the Discriminator. \n\nI was wondering how other Kagglers are using Dropout in their models and what your experiences are with the amount of Dropout to use?",
    "581810": "i didnt get any  improvement using dropout(0.5) or dropout (0.3) towards the end layer of generator . However , I could not point towards right direction as there were other changes . Probably i need to try that out .",
    "581819": "You could try more layers with Dropout or see if a smaller value would provide improvements.\nCould also be you have the best results when using no Dropout..Would be interresting to see what model you would need to achieve that.",
    "581958": "I also tried adding dropout but didn't improve the score.",
    "581964": "dropout didn't improve my score :(  has anyone benefited from using dropout?",
    "582164": "Did you try both Generator and/or Discriminator?",
    "582174": "I have had better success adding `tf.keras.layers.GaussianNoise()`. Adding this to the Discriminator was required for my CGAN [here][1]. Otherwise the Discriminator became too good too quickly and the Generator couldn't keep up.\n\n[1]: https://www.kaggle.com/cdeotte/dog-breed-cgan",
    "582187": "Interresting. So using GaussianNoise gave better results than using Dropout? I will give that a try tomorrow....curious to see what the difference will be with my current setup. Thanks.",
    "582324": "has anyone seen a kernel where gaussian noise is applied in pytorch? :)",
    "582429": "I haven't seen a kernel with it but I presume it will be the same as with Keras...swap a Dropout layer with a GaussianNoise layer. I'am not sure if PyTorch already has a GaussianNoise layer as the [feature request](https://github.com/pytorch/pytorch/issues/2024) it is still open...the link however points to some custom code so it should be possible.",
    "582551": "No only in the Generator @rsmits .",
    "582553": "rsmits I see, thanks for the info :)"
  },
  "source": "meta"
}