{
  "id": 4677,
  "title": "No one say how to do it?",
  "url": "/competitions/challenges-in-representation-learning-multi-modal-learning/discussion/4677",
  "author_name": "",
  "post_date": "2013-05-25T14:14:25.853Z",
  "votes": null,
  "comment_count": 5,
  "views": 4520,
  "content": "<p>For I don't have enough time to design model in this job, I have no experience.</p>\r\n<p>Is there anyone share his/her method?</p>\r\n<p>BTW. Hi Ian, I am still curious about your mlp benchmark.</p>\r\n<p>What is the first layer really doing and how the third RBM layer transfer gradient to the lower layer?</p>",
  "messages": [
    {
      "id": "24806",
      "postDate": "05/25/2013 14:14:25",
      "content": "<p>For I don't have enough time to design model in this job, I have no experience.</p>\r\n<p>Is there anyone share his/her method?</p>\r\n<p>BTW. Hi Ian, I am still curious about your mlp benchmark.</p>\r\n<p>What is the first layer really doing and how the third RBM layer transfer gradient to the lower layer?</p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "24807",
      "postDate": "05/25/2013 15:28:43",
      "content": "<p>I personally took advantage of the part of the data description that says, &quot;The incorrect description is always the correct description of one other test image.&quot;</p>\r\n<p>For each picture I used the MLP model to come up with a&nbsp;score for whether&nbsp;word list #1 was the correct list.&nbsp; Then I also factored in the score for word list #1 on it's&nbsp;*other* picture and word list #0's *other* picture (actually used 1.0-score for #0).&nbsp;\r\n I simply averaged these three to get a new score.&nbsp;&nbsp; This process can be repeated over and over.&nbsp; I repeated 500 times.&nbsp; This gave a score of 1.0 for the public test set.&nbsp; Unfortunately for me, it only gave .99158 for the private test set.</p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "24812",
      "postDate": "05/25/2013 17:03:39",
      "content": "<p>I did the same thing that BreakfastPirate did. I guess every contestant with the score over 90% used this characteristics of the dataset. ;)</p>\r\n<p>For example, if pic_1 is words_1_0, then words_1_1 must be the correct answer on the other pic. for example, words_1_1 == words_243_1. Then words_243_1 is the correct answer for pic_243. then words_243_0 must be correct answer for another picture. You can\r\n follow this process over and over to find these &quot;chains&quot;. if you get the first answer to the chain wrong, you get the rest of the chain wrong. if you get one right, you get the rest of them right (for free!).&nbsp;</p>\r\n<p>In the public set, there are 8 chains.</p>\r\n<p>In the private set, there are 7 chains. this puts the answer space size to 2^7. &nbsp;</p>\r\n<p>If you get the 2 largest chains correctly (also easiest due to the large size), it already puts you up in the 99%.</p>\r\n<p>For each picture, color cues were the easiest to use.&nbsp;</p>\r\n<p>The score for each pic, I used either 0 or 1, not partials, since &quot;chaining&quot; makes it very easy/competitive that you dont need to hedge your bets.</p>\r\n<p></p>\r\n<p></p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "24816",
      "postDate": "05/25/2013 18:52:20",
      "content": "<p>I noticed this&nbsp;<span>leakage, but didn't explore it.</span></p>\r\n<p><span>My approach is simple and fast. No training involved.</span></p>\r\n<p><span>For 0/1 label (word) list, find 8-NN in the training set. Then compare the average of distances from the image to 0's NNs and 1's NNs (color moments on 3x3 blocks). I'm happy to see it beats MLP benchmark.</span></p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "24818",
      "postDate": "05/25/2013 19:54:22",
      "content": "<p>Congrats to the winners!</p>\r\n<p>My approach involved constructing a weighted bipartite graph between all images and tag descriptions, then running the Hungarian algorithm to obtain a perfect matching. I used the TagProp algorithm to obtain probabilities for tags given an image, followed\r\n by a weighted average to compute the corresponding edge weight in the graph.</p>\r\n<p></p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "25023",
      "postDate": "06/01/2013 08:15:40",
      "content": "<p>Thanks the organizers.&nbsp;I also utilized the strategy to get to 1.0. I&nbsp;obtain the&nbsp;AUC with 0.87533 without the trick. My&nbsp;implementation code is available&nbsp;at https://github.com/FangxiangFeng/deepnet, which is based&nbsp;on Nitish Srivastava's DeepNet library.</p>",
      "rawMarkdown": "",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 24807,
      "author_name": "breakfastpirate",
      "author_url": "",
      "post_date": "05/25/2013 15:28:43",
      "content": "<p>I personally took advantage of the part of the data description that says, &quot;The incorrect description is always the correct description of one other test image.&quot;</p>\r\n<p>For each picture I used the MLP model to come up with a&nbsp;score for whether&nbsp;word list #1 was the correct list.&nbsp; Then I also factored in the score for word list #1 on it's&nbsp;*other* picture and word list #0's *other* picture (actually used 1.0-score for #0).&nbsp;\r\n I simply averaged these three to get a new score.&nbsp;&nbsp; This process can be repeated over and over.&nbsp; I repeated 500 times.&nbsp; This gave a score of 1.0 for the public test set.&nbsp; Unfortunately for me, it only gave .99158 for the private test set.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 24812,
      "author_name": "sigint",
      "author_url": "",
      "post_date": "05/25/2013 17:03:39",
      "content": "<p>I did the same thing that BreakfastPirate did. I guess every contestant with the score over 90% used this characteristics of the dataset. ;)</p>\r\n<p>For example, if pic_1 is words_1_0, then words_1_1 must be the correct answer on the other pic. for example, words_1_1 == words_243_1. Then words_243_1 is the correct answer for pic_243. then words_243_0 must be correct answer for another picture. You can\r\n follow this process over and over to find these &quot;chains&quot;. if you get the first answer to the chain wrong, you get the rest of the chain wrong. if you get one right, you get the rest of them right (for free!).&nbsp;</p>\r\n<p>In the public set, there are 8 chains.</p>\r\n<p>In the private set, there are 7 chains. this puts the answer space size to 2^7. &nbsp;</p>\r\n<p>If you get the 2 largest chains correctly (also easiest due to the large size), it already puts you up in the 99%.</p>\r\n<p>For each picture, color cues were the easiest to use.&nbsp;</p>\r\n<p>The score for each pic, I used either 0 or 1, not partials, since &quot;chaining&quot; makes it very easy/competitive that you dont need to hedge your bets.</p>\r\n<p></p>\r\n<p></p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 24816,
      "author_name": "waynezhang",
      "author_url": "",
      "post_date": "05/25/2013 18:52:20",
      "content": "<p>I noticed this&nbsp;<span>leakage, but didn't explore it.</span></p>\r\n<p><span>My approach is simple and fast. No training involved.</span></p>\r\n<p><span>For 0/1 label (word) list, find 8-NN in the training set. Then compare the average of distances from the image to 0's NNs and 1's NNs (color moments on 3x3 blocks). I'm happy to see it beats MLP benchmark.</span></p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 24818,
      "author_name": "ryankiros",
      "author_url": "",
      "post_date": "05/25/2013 19:54:22",
      "content": "<p>Congrats to the winners!</p>\r\n<p>My approach involved constructing a weighted bipartite graph between all images and tag descriptions, then running the Hungarian algorithm to obtain a perfect matching. I used the TagProp algorithm to obtain probabilities for tags given an image, followed\r\n by a weighted average to compute the corresponding edge weight in the graph.</p>\r\n<p></p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 25023,
      "author_name": "deepfashion",
      "author_url": "",
      "post_date": "06/01/2013 08:15:40",
      "content": "<p>Thanks the organizers.&nbsp;I also utilized the strategy to get to 1.0. I&nbsp;obtain the&nbsp;AUC with 0.87533 without the trick. My&nbsp;implementation code is available&nbsp;at https://github.com/FangxiangFeng/deepnet, which is based&nbsp;on Nitish Srivastava's DeepNet library.</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "24806": "",
    "24807": "",
    "24812": "",
    "24816": "",
    "24818": "",
    "25023": ""
  },
  "source": "meta"
}