Answers.Body: <blockquote>
    <p>manual feature engineering started becoming obsolete</p>
  </blockquote>
  
  <p>That is wrong.</p>
  
  <blockquote>
    <p>Any suggestion on when to use manual feature engineering, feature learning or a combination of the two?</p>
  </blockquote>
  
  <p>Deep learning is awesome for natural signals like images, audio or large amounts of unstructured text (e.g. arbitrary crawled websites)</p>
  
  <p>There are some basic steps that make almost always sense. For example, for image recognition, it is the normalization from pixel color features in the range <span class="math-container">$\{0, 1, \dots, 255 \}$</span> to features in <span class="math-container">$[0, 1]$</span>. </p>
  
  <p>And then there are a lot of use cases where you have structured, CSV-like data. For those, every single case I had so far was improved by feature engineering. Most of the time you actually don't have a choice here as well: how would you feed in a date time object into a neural network?</p>
  
  <p>Now, where does feature engineering make sense in image recognition?</p>
  
  <ul>
  <li><p>Resource limitations: neural networks often take a lot of resources. For example, viola-jones face detection is very resource friendly in contrast. But there are developments like the mobile net to relax that issue.</p></li>
  <li><p>Prior knowledge: for more special image data like CT scans you might observe super simple operations that almost give you the target. This might make it simpler to interpret the results at the end and, again, it helps to keep resource usage low.</p></li>
  </ul>
  
  <p>One other field where I suspect that manual feature engineering could help is adversarial attacks. But for this I'm not 100% sure.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-20T08:54:27.310Z
Answers.Text: Thanks for your answer. I agree with the overall philosophy but what I am looking at is an objective method to know if at all feature engineering should be used with automated feature learning.
Answers.UserDisplayName: Ruchit Dalwadi
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-20T10:08:19.327Z
Answers.Text: Selecting features and the operation on it heavily influences training. There is no golden hammer which is good in all contexts. Even if you restrict the context, it is super likely that there is a smaller / more specific problem set where the best thing to do is different. If this property applies, then there cannot be an objective best method. If there cannot be an objective best method, the choice of method is not objective. So my answer to your comment is: "There is no such thing."
Answers.UserDisplayName: Martin Thoma
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-21T11:35:32.220Z
Answers.Text: Great. Got your point :)
Answers.UserDisplayName: Ruchit Dalwadi
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-18T11:27:03.863Z
Answers.LastActivityDate: 2019-07-06T13:10:03.203Z
Answers.LastEditDate: 2019-07-06T13:10:03.203Z
Answers.UserDisplayName: Martin Thoma
Body: <p>With the advancement of deep learning and a few others automated features learning techniques, manual feature engineering started becoming obsolete. </p>
  
  <p>Any suggestion on when to use manual feature engineering, feature learning or a combination of the two?</p>
  
Tags: <machine-learning><comparison><feature-selection><data-preprocessing><representation-learning>
Title: When should I use feature learning as opposed to feature engineering?
UserDisplayName: Ruchit Dalwadi
ThreadText: # When should I use feature learning as opposed to feature engineering?
  
  (Asked by: username_0 on 2018-11-17)
  
  With the advancement of deep learning and a few others automated features learning techniques, manual feature engineering started becoming obsolete.
  
  Any suggestion on when to use manual feature engineering, feature learning or a combination of the two?
  
  **Tags:** machine-learning, comparison, feature-selection, data-preprocessing, representation-learning
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2018-11-18. Score: 2 | Accepted answer
  
  > manual feature engineering started becoming obsolete
  
  That is wrong.
  
  > Any suggestion on when to use manual feature engineering, feature learning or a combination of the two?
  
  Deep learning is awesome for natural signals like images, audio or large amounts of unstructured text (e.g. arbitrary crawled websites)
  
  There are some basic steps that make almost always sense. For example, for image recognition, it is the normalization from pixel color features in the range $\{0, 1, \dots, 255 \}$ to features in $[0, 1]$.
  
  And then there are a lot of use cases where you have structured, CSV-like data. For those, every single case I had so far was improved by feature engineering. Most of the time you actually don't have a choice here as well: how would you feed in a date time object into a neural network?
  
  Now, where does feature engineering make sense in image recognition?
  
  * Resource limitations: neural networks often take a lot of resources. For example, viola-jones face detection is very resource friendly in contrast. But there are developments like the mobile net to relax that issue.
  * Prior knowledge: for more special image data like CT scans you might observe super simple operations that almost give you the target. This might make it simpler to interpret the results at the end and, again, it helps to keep resource usage low.
  
  One other field where I suspect that manual feature engineering could help is adversarial attacks. But for this I'm not 100% sure.
  
  > **Comments:**
  > **username_0**: Thanks for your answer. I agree with the overall philosophy but what I am looking at is an objective method to know if at all feature engineering should be used with automated feature learning.  
  > **username_1**: Selecting features and the operation on it heavily influences training. There is no golden hammer which is good in all contexts. Even if you restrict the context, it is super likely that there is a smaller / more specific problem set where the best thing to do is different. If this property applies, then there cannot be an objective best method. If there cannot be an objective best method, the choice of method is not objective. So my answer to your comment is: "There is no such thing."  
  > **username_0**: Great. Got your point :)  
  
  ---
  
  