I'm currently trying to learn a bit about neural nets (did Andrew Ng's Coursera course) but have a question I haven't been able to find a good "rule of thumb" answer to.
Lets say I have the classic data set of house prices, and for input data I have a bunch of data like floor plan area, number of bedrooms, number of bathrooms, age of the house.
Now, it makes sense that floor plan area would be directly correlated to predicted price (more square metres, higher price). But it is theoretically possible that the age of the house does not have a linear relationship. Instead, new build properties have a higher price because they're new and shiny, very old properties have a higher price because they're "classic" or "have character", but properties in between have a lower price (this is entirely hypothetical, just to illustrate my point). In this scenario, I'm guessing treating age as a continuous value isn't going to be able to model this (or can it?), and instead I should come up with three new buckets, "is new", "is old", "is middle" or whatever and set the appropriate bucket to 1 and the others to 0. But this would mean I'm applying my own biased notion of what constitutes new or old, and the neural net could miss out on some other relationship that I haven't spotted to do with age.
My question is, how do you know when you should create these buckets instead of using the value as continuous, and if creating buckets, how do you know how many buckets to create and which rows should go into each bucket? Or is it just trial and error, and you have to train the net with and without buckets, and with buckets of varying sizes and limits until you find the best fit?
Apologies for the long question, hopefully it makes sense!