caliban wrote:Sorry to be obstinate--but I have learned a lot about the math of neural networks, and they are waayy oversold. There is nothing miraculous about them. They are nothing more than a robust way to draw a boundary around irregular volumes. It's kind of hard to explain. But one major issue is: neural nets do very poorly on generalization.
I was using it as a general example, which is why I said "sort of thing." Trust me, the military is using all manner of new tech for targeting and weapon systems, including the things you mention below. We don't disagree about NNs in particular.
Nope, sorry to disagree here, but the real future is in modularity and "agents" (which admittedly may very well be constructed from neural nets). There is tons and tons of evidence for this. Marvin Minsky made an early argument for this in "The Society of Mind." A lot of evidence from linquistics--see Steven Pinker for example--also points in this direction.
You're talking to someone who gave a presentation on separation of concerns to a room of people the other week, so I won't disagree about modularity at all. Monoliths are stupid on many levels - they can't scale past a certain level of complexity/sophistication without falling in on themselves, but also programmers cannot understand them within a few revs anyway. NNs on a large scale are specialized monoliths of a sort.
Agents may or may not be interesting - too many cheesy applications that do nothing more than filter on metadata are called agents, and those are about as interesting as mailbox rules for email. Event driven agents on multicast content busses with write access are more interesting - then you can get more complex interplay between services. This overall concept is often referred to as a Service Oriented Architecture (put lots of structure into your data and share it between discrete services (programs) over a very capable content and context aware bus. Has all kinds of benefits IMHO and architecting them is what I do for a living.
Neural nets are a fancy fad--good for fitting highly non-linear, even discontinous data. But not much more.
Generally I agree, but would caveat that they are pretty good at pattern recognition in just about any data set or stream if it's big enough. Not that an expert system wouldn't solve the same problem in a more consistent way in 90% of cases...
But I like where you were going. Managers and pundits love to make broad claims and engineers like it when the bits get flipped the right way, so I propose:
$FOO are a fancy fad -- good for $BAR but not much more.
$FOO == Very expensive thing IBM is selling at the moment as a silver bullet for some vast problem space that can only be fixed by applying expensive engineering talent.
$BAR == The problem the engineer who built the first one meant to solve.
This also applies to SOA:
"SOAs are a fancy fad -- good for connecting applications that can leverage them fully and have intrinsic value, but not much more."
In a SOA, a NN may be just one of many services working on the same data at the same time. It may be useful for something in particular or it may not. You may have a meta-service applying judgements to output from an expert system and a NN before deciding what to pass along to a user.
Consistency is the last refuge of the unimaginative.