Solved – What ever happened to Fuzzy Logic

fuzzyfuzzy-c-means-clustering

Fuzzy logic seemed like an active area of research in machine learning and data mining back when I was in grad school (early 2000s). Fuzzy inference systems, fuzzy c-means, fuzzy versions of the various neural network and support vector machine architectures were all being taught in grad courses and discussed in conferences.

Since I've started paying attention to ML again (~2013), Fuzzy Logic seems to have dropped off the map completely and its absence from the current ML landscape is conspicuous given all the AI hype.

Was this a case of a topic simply falling out of fashion, or was there a specific limitation of fuzzy logic and fuzzy inference that led to the topic being abandoned by researchers?


To clarify, based on jbowman's comment: Was there some event or finding that caused FL to go out of fashion, similar for example to neural networks in the 60s, when they went out of fashion because it was proved that they couldn't solve XOR? Or were Fuzzy Systems outperformed by a competing paradigm?

Best Answer

My reply is technically more relevant to fuzzy sets rather than fuzzy logic, but the two concepts are practically inseparable. I delved into the academic journal articles on fuzzy logic a couple of years ago in order to write a tutorial series on implementing fuzzy sets in SQL Server. Although I can hardly be considered an expert, I'm fairly familiar with the literature and use the techniques regularly to solve practical problems. The strong impression I gleaned from the published research is that the practical potential of fuzzy sets is still untapped, mainly due to a deluge of research on dozens of other families of techniques that can solve complementary sets of questions.

The Crowded Marketplace of Ideas in Data Science/Machine Learning etc.

There's been such rapid progress in Support Vector Machines, neural nets, random forests, etc. that it's impossible for specialists, analysts, data scientists, programmers or consumers of their products to keep up with it all. In my series of blog posts I speak at length on how the development of algorithms for fuzzy sets and logical are generally 20+ years ahead of the available software, but the same can be said of many related fields; I read intensively on neural nets and can think of scores of worthwhile neural architectures that were developed decades ago but never put widely into practice, let alone coded in easily available software. That being said, fuzzy logic and sets are at an odd disadvantage in this crowded marketplace of ideas, mainly because of their moniker, which was controversial back when Lofti A. Zadeh coined it. The point of fuzzy techniques is simply to approximate certain classes of discretely valued data on continuous scales, but terms like "approximate continuous-valued logic" and “graded sets” aren't exactly eye-catching. Zadeh admitted that he used the term "fuzzy" in part because it was attention-getting, but looking back, it may have subtly garnered the wrong kind of attention.

How the Term "Fuzz" Backfires

To a data scientist, analyst or programmer, it's a term that may evoke a vibe of "cool tech"; to those interested in AI/data mining/etc. etc. only insofar as it can solve business problems, "fuzzy" sounds like an impractical hassle. To a corporate manager, doctor involved into medical research, or any other consumer not in the know, it may evoke images of stuffed animals, 70s cop shows or something out of George Carlin's fridge. There has always been a tension in industry between the two groups, with the latter often reining in the former from writing code and performing research merely for the sake of intellectual curiosity rather than profit; unless the first group can explain why these fuzzy techniques are profitable then the wariness of the first will prevent their adoption.

Uncertainty Management & the Family of Fuzzy Set Applications

The point of fuzzy set techniques are to remove fuzz that is already inherent in the data, in the form of imprecise discrete values that can be modeled better on approximated continuous scales, contrary to the widespread misperception that "fuzz" is something you add in, like a special topping on a pizza. That distinction may be simple but it encompasses a wide variety of potential applications, ranging from natural language processing to Decision Theory to control of nonlinear systems. Probability hasn't absorbed fuzzy logic as Cliff AB suggested primarily because it is just a small subset of the interpretations that can be attached to fuzzy values. Fuzzy membership functions are fairly simple in that they just grade how much a record belongs to a particular set by assigning one or more continuous values, usually on a scale of 0 to 1 (although for some applications I've found that -1 to 1 can be more useful). The meaning we assign to those numbers is up to us, because they can signify anything we want, such as Bayesian degrees of belief, confidence in a particular decision, possibility distributions, neural net activations, scaled variance, correlation, etc. etc., not just PDF, EDF or CDF values. I go into much greater detail in my blog series and at this CV post, much of which was derived by working through my favorite fuzzy resource, George J. Klir, and Bo Yuan's Fuzzy Sets and Fuzzy Logic: Theory and Applications (1995). They go into much greater detail into how to derive entire programs of “Uncertainty Management” from fuzzy sets.

If fuzzy logic and sets were a consumer product, we could say that it's failed to date due to lack of marketing and product evangelization, plus a paradoxical choice of a brand name. While researching this I can't recall running into a single academic journal article that tried to debunk any of these applications in a manner akin to Minksy and Papert's infamous article on perceptrons. There's just a lot of competition in the marketplace of ideas these days for the attention of developers, theorists, data scientists and the like for products that are applicable to similar sets of problems, which is a positive side effect of rapid technical progress. The downside is that there's a lot of low-hanging fruit here that's going unpicked, especially in the realm of data modeling where they're most applicable. As a matter of fact, I recently used them to solve a particularly puzzling language modeling problem and was applying them to a similar one when I took a break to check CV and found this post.

Related Question