Hacker News new | past | comments | ask | show | jobs | submit login

>> Don't miss the forest for the trees!

I'm sorry, I think you took my comment in the wrong way. I didn't mean it as some kind of put down. I wished to explain how this kind of thing works.

In the same spirit, of a friendly sharing of knowledge, I would also now explain that what you are proposing, "buildig a car out of lego", or in general assembling structure out of modular components, is not what neural nets do best. Neural nets are best at mapping between sets of objects. Typically, one set represents some entities we are interested to categorise and the other set represents the categories to which we want to assign the entities in the first set. To "build a car out of lego" you would need a different type of AI, like a program synthesis algorithm, or an Inductive Programming algorithm (machine learning algorithms that learn programs from examples; and which I study). In such a setting, your "lego" would be functions or sub-programs and your "car" would be a program created by combinations of the given sub-programs.

Also, neural nets, especially more modern ones of the "deep learning" variety are not limited to boolean features ("data containing Boolean true/false values") and can instead be trained on arbitrary real-valued data. What is often done when training language models is to encode training data in a "one-hot encoding" manner, in which the "features" are very long boolean vectors, with one element for each word or character in the raw text and with a "0" representing "no occurrence" and a "1" "occurrence", of a particular character or word. This is not the case for other types of data, e.g. in machine vision the feature values are raw pixel data, in time series regression they're arbitrary precision real numbers etc.

I confess that I'm not sure how the data looks for neural nets trained to predict chemical structures. It's possible they're one-hot encoded vectors, like for text.

No doubt you can train a neural net classifier to make yes/no decisions about possible items on a menu, but my guess is that a system of this kind would look at customer preferences primarily, rather than the chemical composition of food items. After all, the chemical composition of a dish will vary a lot more than the preference of a particular individual, or group of individuals, for that dish. By which I mean, if I like spaghetti carbonara, I will probably like it regardless of its exact chemical composition, but I won't like it. e.g. if it lacks pancetta. My guess is that the relevant elements of the dish are in the scale of cooking ingredients, rather than the scale of molecules. So a system like the one you describe would be better off taking into account the composition of a dish on that scale.

On the other hand, if you wanted to assemble a menu with finished dishes from a list of ingredients and examples of recipes, then you would need a system like the ones I describe above, in the program synthesis or (preferrably) Inductive Programming category. Or of course you could write a program encoding the rules you have in mind by hand. This is not a task where AI is absolutely necessary, I feel.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: