{
  "id": 11214,
  "title": "Do neural network suitable here?",
  "url": "/competitions/avazu-ctr-prediction/discussion/11214",
  "author_name": "",
  "post_date": "2014-12-12T05:00:19.480Z",
  "votes": 1,
  "comment_count": 5,
  "views": 3130,
  "content": "<p>I tried neural network. Seems neural network is totally useless here. May be I have something wrong in network parameters. Can anybody give me direction? &nbsp;</p>",
  "messages": [
    {
      "id": "60073",
      "postDate": "12/12/2014 05:00:19",
      "content": "<p>I tried neural network. Seems neural network is totally useless here. May be I have something wrong in network parameters. Can anybody give me direction? &nbsp;</p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "60082",
      "postDate": "12/12/2014 07:27:45",
      "content": "<p>Shameless boast of my own work in a similar competition.</p>\n<p><a href=\"http://www.kaggle.com/c/criteo-display-ad-challenge/forums/t/10534/required-model-documentation-and-code/55683#post55683\">http://www.kaggle.com/c/criteo-display-ad-challenge/forums/t/10534/required-model-documentation-and-code/55683#post55683</a><br><br>However.. the data in this competition is a bit &quot;simpler&quot; in the sense that everything can naturally be treated as a categorical. But we'll see in the end how everything turns out.<br><br><br></p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "60098",
      "postDate": "12/12/2014 13:28:53",
      "content": "<p>Hi Julian, I'd like to implement your neural network with torch or theano, which do you think is better?</p>\n<p>And I don't have a gpu for now. Will it be a huge slowdown?</p>\n<p>Thank you very much!</p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "60106",
      "postDate": "12/12/2014 15:41:24",
      "content": "<p>[quote=rcarson;60098]</p>\n<p>Hi Julian, I'd like to implement your neural network with torch or theano, which do you think is better?</p>\n<p>And I don't have a gpu for now. Will it be a huge slowdown?</p>\n<p>Thank you very much!</p>\n<p>[/quote]</p>\n\n<p>I am a beginner of machine learning. I use a C package called FANN. May something wrong in argument. The result seems very bad.</p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "60110",
      "postDate": "12/12/2014 16:49:03",
      "content": "<p>First of all.. Everything in this post is just my experience with NN's. I might be dead wrong about some things. If so.. please&nbsp;post!</p>\n<p>@Zhang Junhyan<br>Be sure to have L1 regularization or to recode/rare unseen variables in the train and test set.<br>If you don't do this the randomly initialized weights are not adjusted during training and you will get strange results when predicting. That was the most important thing for these CTR problems with many new/rare values.&nbsp;<br><br>If you are a beginner I'd start with the &quot;beat the benchmark&quot; scripts.. They are much more rewarding. Once you get some results with those you can try a NN and compare. (or even better.. blend!)</p>\n<p>@Rcarson..<br>You see my profile pic ? No hair.. That's because I tried them all.. j/k :)<br>Just my opinion in terms of &quot;runnability&quot;.<br><br>1. Caffe. I think this one is the &quot;biggest&quot; and I believe it has python support.<br>2. Theano. Python is great.. Getting it running was pretty hard.<br>3. Torch. Lua scripting is not mainstream and tutorials are confusing due to the many versions.<br><br>I've seen all of them do good in competitions.<br>Problem is that most of them are focused on vision. For this competition it's almost necessary to support sparsity at the input layer. I don't know which one has this feature.<br><br>Having a GPU does not hurt but in this case (taking advantage of sparse input) it *might* be barable on CPU.<br><br>@Last.<br>I don't want to be like a &quot;pied piper&quot; leading you&nbsp;to terrible pains with NN's :)<br>For this comp. you basically have binary input.</p>\n<p>X*Y features can be&nbsp;found manually. That perhaps leaves some binary relations to be found for the NN.&nbsp;Let's say X AND Y AND NOT Z. If they are present and hard to find a NN might give you a little edge. However.. the NN is not guaranteed to find these features.&nbsp;<br><br>With criteo the data was more diverse since you also had numeric data.<br>So there were more hard to find features and perhaps that was my luck in that competition.<br>As for now.. I just don't know yet if NN's will give an extra edge.</p>",
      "rawMarkdown": "",
      "votes": null
    },
    {
      "id": "60111",
      "postDate": "12/12/2014 17:18:28",
      "content": "<p>So far I've found that even a very simple NN (input layer as small as 80) training on only a single day of data with backprop performs moderately on CV: ~0.41. Definitely not competition winning at that level of complexity, but not so terrible either.</p>",
      "rawMarkdown": "",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 60082,
      "author_name": "juliandewit",
      "author_url": "",
      "post_date": "12/12/2014 07:27:45",
      "content": "<p>Shameless boast of my own work in a similar competition.</p>\n<p><a href=\"http://www.kaggle.com/c/criteo-display-ad-challenge/forums/t/10534/required-model-documentation-and-code/55683#post55683\">http://www.kaggle.com/c/criteo-display-ad-challenge/forums/t/10534/required-model-documentation-and-code/55683#post55683</a><br><br>However.. the data in this competition is a bit &quot;simpler&quot; in the sense that everything can naturally be treated as a categorical. But we'll see in the end how everything turns out.<br><br><br></p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 60098,
      "author_name": "jiweiliu",
      "author_url": "",
      "post_date": "12/12/2014 13:28:53",
      "content": "<p>Hi Julian, I'd like to implement your neural network with torch or theano, which do you think is better?</p>\n<p>And I don't have a gpu for now. Will it be a huge slowdown?</p>\n<p>Thank you very much!</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 60106,
      "author_name": "zhangjunyan",
      "author_url": "",
      "post_date": "12/12/2014 15:41:24",
      "content": "<p>[quote=rcarson;60098]</p>\n<p>Hi Julian, I'd like to implement your neural network with torch or theano, which do you think is better?</p>\n<p>And I don't have a gpu for now. Will it be a huge slowdown?</p>\n<p>Thank you very much!</p>\n<p>[/quote]</p>\n\n<p>I am a beginner of machine learning. I use a C package called FANN. May something wrong in argument. The result seems very bad.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 60110,
      "author_name": "juliandewit",
      "author_url": "",
      "post_date": "12/12/2014 16:49:03",
      "content": "<p>First of all.. Everything in this post is just my experience with NN's. I might be dead wrong about some things. If so.. please&nbsp;post!</p>\n<p>@Zhang Junhyan<br>Be sure to have L1 regularization or to recode/rare unseen variables in the train and test set.<br>If you don't do this the randomly initialized weights are not adjusted during training and you will get strange results when predicting. That was the most important thing for these CTR problems with many new/rare values.&nbsp;<br><br>If you are a beginner I'd start with the &quot;beat the benchmark&quot; scripts.. They are much more rewarding. Once you get some results with those you can try a NN and compare. (or even better.. blend!)</p>\n<p>@Rcarson..<br>You see my profile pic ? No hair.. That's because I tried them all.. j/k :)<br>Just my opinion in terms of &quot;runnability&quot;.<br><br>1. Caffe. I think this one is the &quot;biggest&quot; and I believe it has python support.<br>2. Theano. Python is great.. Getting it running was pretty hard.<br>3. Torch. Lua scripting is not mainstream and tutorials are confusing due to the many versions.<br><br>I've seen all of them do good in competitions.<br>Problem is that most of them are focused on vision. For this competition it's almost necessary to support sparsity at the input layer. I don't know which one has this feature.<br><br>Having a GPU does not hurt but in this case (taking advantage of sparse input) it *might* be barable on CPU.<br><br>@Last.<br>I don't want to be like a &quot;pied piper&quot; leading you&nbsp;to terrible pains with NN's :)<br>For this comp. you basically have binary input.</p>\n<p>X*Y features can be&nbsp;found manually. That perhaps leaves some binary relations to be found for the NN.&nbsp;Let's say X AND Y AND NOT Z. If they are present and hard to find a NN might give you a little edge. However.. the NN is not guaranteed to find these features.&nbsp;<br><br>With criteo the data was more diverse since you also had numeric data.<br>So there were more hard to find features and perhaps that was my luck in that competition.<br>As for now.. I just don't know yet if NN's will give an extra edge.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 60111,
      "author_name": "liamhuber",
      "author_url": "",
      "post_date": "12/12/2014 17:18:28",
      "content": "<p>So far I've found that even a very simple NN (input layer as small as 80) training on only a single day of data with backprop performs moderately on CV: ~0.41. Definitely not competition winning at that level of complexity, but not so terrible either.</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "60073": "",
    "60082": "",
    "60098": "",
    "60106": "",
    "60110": "",
    "60111": ""
  },
  "source": "meta"
}