Machine Learning: Learning from the Masters

Machine Learning: Learning from the Masters

Some stories are timeless and the same holds true for certain technical articles. Re-reading this paper by Pedro Domingos (‘A few useful things to know about Machine Learning’) will add a lot of value to both advanced analytical professionals and others breaking into the field. I am bringing specific attention to one of the messages (out of 13) in that paper & I hope this whets the reader’s appetite to read the paper in its entirety.

In the author’s own words on input data for models (with my emphasis in bold):

8. FEATURE ENGINEERING IS THE KEY

At the end of the day, some machine learning projects succeed and some fail. What makes the difference? Easily the most important factor is the features used. If you have many independent features that each correlate well with the class, learning is easy. On the other hand, if the class is a very complex function of the features, you may not be able to learn it. Often, the raw data is not in a form that is amenable to learning, but you can construct features from it that are. This is typically where most of the effort in a machine learning project goes. It is often also one of the most interesting parts, where intuition, creativity and “black art” are as important as the technical stuff.

First-timers are often surprised by how little time in a machine learning project is spent actually doing machine learning. But it makes sense if you consider how time-consuming it is to gather data, integrate it, clean it and pre-process it, and how much trial and error can go into feature design. Also, machine learning is not a one-shot process of building a data set and running a learner, but rather an iterative process of running the learner, analyzing the results, modifying the data and/or the learner, and repeating. Learning is often the quickest part of this, but that’s because we’ve already mastered it pretty well! Feature engineering is more difficult because it’s domain-specific, while learners can be largely general-purpose. However, there is no sharp frontier between the two, and this is another reason the most useful learners are those that facilitate incorporating knowledge.

Of course, one of the holy grails of machine learning is to automate more and more of the feature engineering process. One way this is often done today is by automatically generating large numbers of candidate features and selecting the best by (say) their information gain with respect to the class. But bear in mind that features that look irrelevant in isolation may be relevant in combination. For example, if the class is an XOR of k input features, each of them by itself carries no information about the class. (If you want to annoy machine learners, bring up XOR.) On the other hand, running a learner with a very large number of features to find out which ones are useful in combination may be too time-consuming, or cause overfitting. So, there is ultimately no replacement for the smarts you put into feature engineering.

Vadym Zotov

Commercial Director at Devox

1 年

Ganesh, thanks for sharing!

回复

Good article Ganesh. Would be interested to know more about some real life scenarios that you are currently handling. Machine Learning seems to be the catch phrase these days but I guess what people fail to recognise that it is not the data analytics but the underlying business case that creates the value proposition. In my simple mind, for a successful AI solution we will need two key ingredients - the repeat nature of the process and a large data volume with historical patterns- any other thoughts?

回复

要查看或添加评论,请登录

Ganesh Krishnamurthy的更多文章

  • Myths about Machine Learning

    Myths about Machine Learning

    I saw this content written by one of my instructors on Udemy - Mike West. Mike's course on Deep Learning titled…

    1 条评论
  • Problem Solving vs Parameter Tuning

    Problem Solving vs Parameter Tuning

    When building machine learning models, it is very tempting to spend a lot of time optimizing the models by…

  • (Beware of) Procrustean solutions in data science

    (Beware of) Procrustean solutions in data science

    From Wikipedia: A Procrustean solution is the undesirable practice of tailoring data to fit its container or some other…

社区洞察

其他会员也浏览了