Category: Machine Learning

  • Summary: AI Machine Learning Big Data Math Optimization

    This is a summary with links to my posts about Big Data and the fancy algorithms and math that are variously called Artificial Intelligence, Cognitive Computing, Machine Learning, Big Data Analytics, math optimization, etc. I have worked as an insider in these fields for over fifty years.

    Huge amounts of time and money are spent on these things, but getting practical, real-world results is not so easy. You can make things worse.

    https://blackliszt.com/2023/03/making-things-worse-with-ai.html

    How do you make things better? It starts with data.

    https://blackliszt.com/2018/03/getting-results-from-ml-and-ai-1.html

    Everyone knows that data is important. There’s even a field called Big Data.

    What people call Big Data often isn’t nearly as big as people think.

    https://blackliszt.com/2013/02/big-data-some-little-observations.html

    Do the arithmetic!

    https://blackliszt.com/2012/04/im-tired-of-hearing-about-big-data.html

    For all the talk about Big Data, it’s clear that making sure that the data is accurate and complete is too much to ask.

    https://blackliszt.com/2019/03/nobody-cares-about-data.html

    Among other things, the status hierarchy in Data Science makes it clear that anyone with ambition needs to get as far away from the actual data as possible.

    https://blackliszt.com/2019/03/the-hierarchy-of-software-skills-data-science.html

    Without data integrity, your analytics is screwed. It’s worse when the data is about your health. The integrity of data in healthcare electronic medical records is a major issue.

    https://blackliszt.com/2016/06/healthcare-innovation-emrs-and-data-quality.html

    Even simple insurance provider network data is too often wrong, putting yet more obstacles between patients and the services they need.

    https://blackliszt.com/2017/01/my-cat-taught-me-about-the-state-of-healthcare-provider-data.html

    Even if all the data were perfect, no one seems to ask why exactly is big data better?

    https://blackliszt.com/2015/07/fatal-flaws-of-big-data.html

    Is Big Data delivering results? Here’s what happened with Big data and Hadoop at Yahoo.

    https://blackliszt.com/2019/01/using-advanced-software-techniques-in-business.html

    With all the money going to Big Data, people are ignoring the massive benefits of leveraging little data.

    https://blackliszt.com/2016/08/little-data-vs-big-data.html

    The few people who study computer history have noticed that Big Data is remarkably similar to what used to be called EDW, Enterprise Data Warehouse.

    https://blackliszt.com/2015/10/big-data-and-data-warehouses.html

    Same thing with a new name. Hmm. Could it possibly be that Big Data is just a fashion trend?

    https://blackliszt.com/2013/02/the-big-data-technology-fashion.html

    https://blackliszt.com/2015/03/big-data-the-driving-force-in-computing.html

    At least for insiders, there's lots of humor to be found in data. There's even a book of the fun highlights.

    https://blackliszt.com/2022/01/data-humor-book-by-rupa-mahanti.html

    After data, you move to the amazing variety of techniques available, each of which has specific areas of applicability.

    https://blackliszt.com/2018/04/getting-results-from-ml-and-ai-2.html

    Even a narrow-sounding field like Machine Learning has incredible variety and lots of things you need to do until the algorithm can be effective.

    https://blackliszt.com/2017/02/learning-machine-and-human.html

    The simple concept of closed loop is essential to getting and keeping good results, but isn’t applied as often as it should be.

    https://blackliszt.com/2018/04/getting-results-from-ml-and-ai-3-closed-loop.html

    The application of the principles to healthcare has proven to be challenging, with high-profile failures. But there are successes.

    https://blackliszt.com/2018/08/getting-results-from-ml-and-ai-4-healthcare-examples.html

    I've discussed the application of the principles to fintech, with a focus on anti-fraud. The current leader in the field displaced the incumbent who was using neural network technology. Here is the background on HNC, which crowed about how it used neural networks to catch credit card fraud. Which it did. Sorta.

    https://blackliszt.com/2016/06/how-blockchain-will-deliver-value.html

    Here's the story of how the absolute winner of credit card fraud detection was displaced by a superior algorithm and concentrated on more relevant data.

    https://blackliszt.com/2019/12/getting-results-from-ml-and-ai-5-fintech-fraud.html

    Natural language AI has proved notoriously hard to make practical. Here’s an example of how it’s been done in fintech customer support.

    https://blackliszt.com/2019/12/getting-results-from-ml-and-ai-6-fintech-chatbot.html

    All too often, AI research is conducted in isolation. There is a great deal to do to assure that any results that are achieved can be integrated into production systems.

    https://blackliszt.com/2022/06/how-to-integrate-ai-and-ml-with-production-software.html

    Given all the issues in making AI work in practical reality, how likely is it that generative AI, the hot fashion in 2024, is likely to decimate the job market?

    https://blackliszt.com/2024/07/how-many-jobs-will-ai-eliminate.html

    As is true in most fields, in healthcare the money and attention tends to go to expensive, fancy methods requiring PhD’s instead of simple things that actually work.

    https://blackliszt.com/2015/07/cognitive-computing-and-healthcare.html

    https://blackliszt.com/2016/09/healthcare-innovation-from-washing-hands-to-ai.html

    https://blackliszt.com/2016/05/healthcare-innovation-can-big-data-and-cognitive-computing-deliver-it.html

    You don’t need AI or cognitive computing to discover or promulgate the new discoveries that humans make.

    https://blackliszt.com/2015/08/human-implemented-cognitive-computing-healthcare.html

    There are no technical obstacles to having computers do what doctors do. There is a clear path to getting it done. But the people in charge can't or won't make it happen.

    https://blackliszt.com/2025/01/ai-can-automate-what-doctors-do.html

    There are barriers to medical innovation, but there are terrible risks.

    https://blackliszt.com/2025/02/can-ai-improve-medical-diagnosis.html

    And then there's generative AI, which spews out expert-sounding language like a doctor. Is it better?

    https://blackliszt.com/2025/07/will-ai-give-better-healthcare-advice.html

    https://blackliszt.com/2025/07/chatgpt-covid-vaccine.html

    There are many ways to spend lots of time and not get practical results.

    https://blackliszt.com/2019/03/the-hierarchy-of-software-skills-data-science.html

    Even when an optimization technique is perfected and proven in practice at scale, it can take decades for it to be used in other relevant fields.

    https://blackliszt.com/2019/08/the-slow-spread-of-linear-programming-illustrates-how-in-old-vation-in-software-evolution-works.html

    Impressive analytics performed by recognized experts are subject to getting the results the Expert wants.

    https://blackliszt.com/2017/04/big-datas-big-face-plant.html

    Corruption of data or process can lead to bad results anywhere.

    https://blackliszt.com/2019/10/surprising-bugs-at-amazon-shows-how-ai-can-lead-to-disaster.html

    For cynical definitions in the tradition of Ambrose Bierce of Big Data, Machine Learning, Deep Learning, Cognitive Computing and AI, see these.

    https://blackliszt.com/2017/01/devils-dictionary-for-21st-century-computing.html

    https://blackliszt.com/2017/01/devils-dictionary-for-21st-century-computing-2.html

    https://blackliszt.com/2017/03/devils-dictionary-for-21st-century-computing-3.html

     

  • Getting Results from ML and AI 5: Fintech Fraud

    While the success patterns laid out in the prior posts in this series may seem clear in the abstract, applying them in practice can be hard, because nearly everyone who thinks or talks about AI (these sets over overlap very little, sadly) takes a different approach.

    https://blackliszt.com/2018/03/getting-results-from-ml-and-ai-1.html

    https://blackliszt.com/2018/04/getting-results-from-ml-and-ai-2.html

    https://blackliszt.com/2018/04/getting-results-from-ml-and-ai-3-closed-loop.html

    I previously discussed the application of the principles to healthcare, with specific examples: https://blackliszt.com/2018/08/getting-results-from-ml-and-ai-4-healthcare-examples.html

    In this post, I'll show how things can play out with a stellar example in fintech anti-fraud.

    The Use of ML in Fraud Detection

    Credit card fraud is a difficult, ever-evolving problem, not unlike cyber-security in general. In most cases, real money is involved, billions of dollars of it — over $20 Billion world-wide as of a few years ago!

    Robert Hecht-Nielsen was a pioneer in machine learning in the 1980's. He started HNC software to apply ML to a variety of problems. He was particularly fond of Neural Networks. After a few years of not doing well, he encountered a visionary executive of Household Finance, a large company that provided credit, including cards, to sub-prime customers. The HFC executive convinced Hecht-Nielsen to concentrate on card fraud, which was a large and growing problem for the card industry in general, and HFC in particular.

    With HFC's support, HNC built the first effective card fraud detection system. It centered around humans analyzing recent instances of card fraud, building a detector for each particular kind, and training neural nets to combine all the detectors to be applied to each new transaction as it came through.

    Since the model's effectiveness depended on having an ever-growing library of fraud detectors, HFC supported HNC creating a network model, in which each participating card issuer would contribute the details of each new case of fraud it encountered. HNC analysts would add detectors, train new models and give updated fraud detecting models to each participating company. It quickly became the industry standard, since all the participants benefited from the experience of all the members. HNC went public in the mid-1990's and later merged with FICO.

    Enter Feedzai

    How could any new entrant possibly compete against the data monopoly and neural networks of FICO/HNC? Somebody new wouldn't have access to the incredible database of card fraud. Feedzai, backed by Oak HC/FT, had some things that were more important.

    First of all, it helped that the Feedzai founders were broadly expert in machine learning and other analytic methods. It took them a while to focus on "just" card fraud. Being a general expert and then deciding to focus on a narrow problem is just like HNC, and is a general success pattern. But HNC got frozen and dabbled in many other domains, failing to continue to innovate in their core product.

    Once Feedzai got engaged with a card issuer, they noticed that the FICO solution was so slow that it couldn't detect whether an authorization was fraudulent in real time — only after it was already approved. Result: every fraudster got at least one free! Beating FICO would require real-time analytics. Next, Feedzai noticed that FICO was trying to see if each transaction was BAD, and that seeing if each transaction was NOT GOOD was just as good — even better, since you don't care how inventive the bad guys are, just that they're not acting like the real cardholder would act. That meant you could train your models on a single card issuer's customer base, ignoring the rest of the world. Cool! Finally, that meant you could use modern, transparent ML algorithms, and dispense entirely with the time-consuming and error-prone FICO method of modeling each type of fraud. And that meant that your first couple of appropriately skeptical customers could try you out, side-by-side, against the incumbent FICO, and see who won the catch-the-fraud race. Hooray, Feedzai won!

    It's important to note that Feedzai also won because they did all the foundational steps described in the earlier posts in this series correctly, including the all-important know-your-data and closed-loop steps.

    FICO/HNC moved on from their success in card fraud, thinking they had an absolute lock on the market — which they did, for many years, but only because someone like Feedzai didn't go after them sooner. Feedzai isn't making the FICO/HNC mistake; they are continuing to build on their lead, both deepening and extending it. It's a big subject, but here are a couple of the highlights:

    • Feedzai has built a tool that does much of the work highly skilled engineers used to have to do when supporting a new client. The original tool detects fraud; the new tool automates building a fraud detection tool. The speed and quality that results is unprecedented.
    • While rarely discussed, every practical detection system has a set of human-created rules. Feedzai is the first company to automate the evaluation of the rules, and decide which should be changed or dropped. This is huge.
    • Feedzai is now, step by step, introducing their technology to adjacent areas such as AML. The incentives created by the heavy regulation in AML are perverse, and has led to bloated costs in banks with no real improvement in AML detection. Feedzai's novel approach is actually making headway in spite of the regulations, and not just doing normal reg-tech automation.

    Conclusion

    Being an excellent generalist is often a good way to become a superb specialist. But it's rare to find a group of people who are truly up to snuff in the abstruse technologies of AI/ML, but also able to dive into the ugly details of data and real-life cases to make a system that beats the real-world incumbents. As we know from FICO/HNC and many other cases, the pattern is then to declare victory and move on. Feedzai is an object lesson in how to go deeper and deeper, continuing to innovate and automate. They are an excellent example of the principles described in the earlier posts in this series.

  • Getting Results from ML and AI 4: Healthcare Examples

    While the success patterns laid out in the prior posts in this series may seem clear in the abstract, applying them in practice can be hard, because nearly everyone who thinks or talks about AI (these sets over overlap very little, sadly) takes a different approach.

    https://blackliszt.com/2018/03/getting-results-from-ml-and-ai-1.html

    https://blackliszt.com/2018/04/getting-results-from-ml-and-ai-2.html

    https://blackliszt.com/2018/04/getting-results-from-ml-and-ai-3-closed-loop.html

    So here are a couple examples in healthcare to illustrate the principles.

    The spectrum of problems

    One useful way of understanding the winning patterns in AI is to understand the range of problems to which it may be applied. It's not difficult to arrange the problems as a spectrum. While there are many ways to characterize the spectrum — here's a prior attempt of mine to characterize the spectrum in healthcare — perhaps it's easiest to understand it in terms of the typical salary of the person whose work is being replaced or augmented by the AI technology.

    At one end of the spectrum are low-paid people performing relatively mundane, repetitive tasks. These people have relatively little education and minimal certifications compared to those higher on the spectrum. Think back-office clerical staff.

    At the other end of the spectrum are highly paid, educated and certified people performing what are understood to be highly skilled and consequential tasks. Think doctors.

    The very name "artificial intelligence" tells you at which end of the spectrum AI is normally applied. The popular image, supported by the marketing of the relevant vendors, is that AI is amazingly smart, smarter than the smartest person in the room, just like the way that IBM's Deep Blue (predecessor of Watson) beat the human world champion playing "Jeopardy," and beat the then-reigning world champion playing chess.

    To put it plainly, while these achievements of Deep Blue were amazing, they were victories playing games. They were not victories "playing" in the real world. Games are 100% artificial. The data is 100% clear and unambiguous. There are no giant seas of uncertainty, ignorance or unknowability — unlike the real world, which is chock full of them. Nonetheless, IBM and whole piles of people who self-identify as being "smart," and are widely perceived as being smart, jumped on the "AI does what smart people do" bandwagon.

    This was and is incredibly stupid and 100% bone-headed wrong. Not only is it bone-headed in terms of intelligent application of AI, it violates simple common sense. If you knew a talented high school kid who played a mean game of chess, would you drop them into a hospital and give them a white coat? Even after the kid claimed to have read and understood all the medical literature?

    The smart thing to do is to apply AI to tasks that are relatively simple for humans, at the "low" end of the spectrum, and see if you can get a win. If you can make it work, by all means graduate to the next more complicated thing. It turns out that replacing/augmenting human tasks that are mundane, "simple" and repetitive is amazingly challenging! Yes, even for super-advanced AI!

    IBM Watson in healthcare

    I know I've made some strong statements here. It's little old me vs. a multi-billion dollar effort by that world-wide leader in AI technology, IBM. Who's going to win that one? Turns out, it's easy. See this, for example. 11

    IBM claims to get many billions of dollars in revenue from Watson. But everything about getting it to do what doctors can do has proven to be vastly more challenging than anyone thought, and its advice rarely makes any difference, even when it's not wrong. And this, after years of work by top doctors at top institutions doing their best to help IBM "train" it!

    Here is a summary of the situation: 12

    Let's note: the Watson effort is built on the most famous "smart computer" technology ever, funded to the tune of billions of dollars, with technology acquisitions and expert help from all corners. The "disappointing" outcomes are not the result of having picked the wrong algorithm or something easily fixed. The failures are a direct result of not following the success patterns described in the earlier posts of this series, combined with applying AI to the wrong end of the job-complexity spectrum described earlier in this post.

    Olive in healthcare

    If IBM can't manage to pull off a win in healthcare, after years of applying the most advanced AI and spending billions of dollars with the best help that money can buy, I guess it's impossible, right?

    Wrong. IBM made a fatal strategic mistake. They used AI to attack the hardest problem of all, at the wrong end of the complexity spectrum. Has anyone done this the right way? Applied modern AI and related automation technology to the right end of the complexity spectrum? Yes! Olive has!

    Olive is making a positive difference today (please note the use of the present tense here) in many hospital systems by reducing costs, reducing error rates and getting patient information where it needs to go more quickly and efficiently, saving time and aggravation of medical workers along the way. The money and time it saves in the back office may not seem glamorous or "leading edge," but every minute and dollar it saves is time and money that can go to making patients healthier, instead of disappearing down the "overhead" sink-hole.

    Getting a pre-auth for a key procedure so it can be performed. Submitting all the right information so a claim can be paid. Getting information to pharmacies so patients can get the life-saving drugs they need. Getting all the information from incompatible, hard-to-navigate EMR's so doctors have all the information they need to give patients the most appropriate care. These absolutely essential tasks are largely performed in windowless rooms far removed from patient settings by people who work hard at largely thankless jobs that aren't well-paid — but are absolutely essential to providing care to patients. And they're harder than they look! Anyone who's spend any time with a modern EMR can't help but think of the endless meetings attended by skilled professionals at the software vendor trying to find yet new ways to confuse and confound the users. And anyone who has dealt with getting insurance companies the information they demand can't help but think of a cranky three-year-old who lost emotional maturity when he grew up. Bottom line: this stuff is hard!

    Olive gets it done, using an exotic collection of works-today technology, silently learning from the people who do the work today. And gets it done without having to upgrade or replace existing computer systems. Amazing.

    The founders at Olive are doing AI the right way, attacking the right end of the complexity spectrum. They follow most of the rest of the success patterns laid out in the prior posts of this series, above all attention to data and detail, working from the bottom up in terms of algorithmic complexity, and using closed loop. It's a hard problem, and it was hard work to get it done. But they did it, without the massive armada IBM fruitlessly assembled.

    Disclosure: Olive is an investment of Oak HC/FT, the venture firm at which I'm tech partner.

     

  • Getting Results from ML and AI: 3, Closed Loop

    Getting practical, real-world results with ML and AI involves more than getting data, doing calculations, and building models. You can do everything else right, but if you don’t get this last step right, you’ll join the rapidly growing ranks of people who may have tried hard, but ended up accomplishing little in real-world terms.

    The first part of this series laid out the issues and concentrated on the indispensable foundation of success, the data. The second part of this series dove into the analytic methods that can be used to generate value, with some advice about how to sequence the methods used.

    In this post, we’ll concentrate on the relationship between the real world and the back office analytical work. What we’ll find is that an integrated, collaborative, closed-loop relationship between measuring, calculating and real world application is the path to success.

    Loops, open and closed

    Whether you run an operation closed loop or open loop is one of those absolutely key concepts, highly correlated with success, that is rarely discussed. Generation after generation discovers it by itself, or not, nearly always without fanfare. Who talks about the key role played by the invention of the governor in 1788 by James Watt – the invention that made his steam engine practical? In that case, the governor was the newly-minted part of a steam engine that kept the pressure of the steam reasonably constant. With a governor, steam engines no longer blew up, as they regularly did before its use.

    Centrifugal_governor

    It’s important to understand that the reason a governor works is that it’s an integral part of the steam engine. Steam goes into the governor, which then controls the throttle valve of the engine, slowing it down when it’s getting dangerously hot. This is closed-loop.

    In more modern terms, running open loop means going on and on down a path without real-world feedback and testing of your work as it is being developed. It’s a little like trying to walk to a goal post at the opposite end of a football field with your eyes closed, using a carefully planned sequence of steps and turns. That’s open-loop, which essentially mean no feedback. But shockingly enough, a huge fraction of highly technical efforts in software and analytics operate in just this way!  The people in charge insist they’re experienced, they’ve got a thoroughly vetted plan, and everyone should let them alone to get their work done.

    There are many similarities between war-time software and running closed loop for analytics. Driving towards a goal, letting nothing get in the way. Optimizing for speed, not expectations. Leaping to a place that's better than today, and then cycling improvements.

    The easiest way to see the difference is thinking about the previous posts in this series. Have you spent lots of time with data, and applied simple calculations to it? If not, you should. Once you have, … you should put your new understanding into practice! It may not be the very best solution that’s possible, but if it’s marginally better than what’s in place today, you should roll it out at least in a limited way and see how the world reacts to it. You’ll learn stuff! You may end up learning there are more variables you need to account for, different ways it needs to be applied, all sorts of things! In other words, don’t sit on the beach by the water for months – wade right in and see what it’s like. That’s when you’ll really start learning.

    The World Responds and Changes

    The key concept to understanding why running closed loop is so important is that the “world” is an incredibly complex, ever-changing set of actors. When you do something – almost anything – the world changes in response to what you did, if only in a small way. You have to run closed loop to respond appropriately as the world responds to your actions.

    Oh, you may say, I’m just the genius in the back room who’s an expert in this or that branch of ML. I’m not acting on the world. I just need the time and support to get my amazing modeling work done.

    That may be true. And that’s the problem! The whole point of doing ML/AI/etc. is to change something in the world –  and it’s guaranteed that the world will change in response! Accounting for the responsive changes is just as important as whatever it is you first put out there. Even worse, the world constantly changes independent of anything you may do. So the solution you modeled for may not be valid, given the changes that happened.

    Think about the carefully planned walk on the football field to the goal posts I described above, and how hard it would be to accomplish with your eyes closed, i.e., with no feedback. Now think about the same situation, except there's an opposing team on the field! You carefully study everything about the opposing team. You know who they are and where they are. Then the play starts and you start to execute your exquisitely planned march to the goal posts. Here's the trouble: opposing team members see what you're doing, and they change their positions! They move! Even worse, they run towards you and try to tackle you. And you are helpless, because you are carefully executing your wonderful plan with your eyes closed, unable to react to the other team's movements. Is that stupid or what? It's not just stupid, it's inconceivably stupid. That's why I spelled it out, because that's exactly how most ML and other analytics efforts are carried out. Open loop. Assuming that the world does not change in response to what you do.

    Of course, the world is unlikely to be quite as single-minded and determined as members of an opposing football team. But you'd be surprised! You're making changes in the real world. Whatever you do, there are probably losers. Losers who won't be happy, and will change their behaviors so they become winners again. Or simply fail to act in the predicted ways.

    Conclusion

    Running closed-loop is absolutely indispensable to achieving success. Put something simple in the real world and then cycle, making it better and better, using increasingly sophisticated techniques. Whatever your final crowning technique is, whether it's ML, AI or something else, success will be yours, and you'll enjoy it all along, without the risk, anxiety and likely failures of the usual highly planned methods.

  • Getting Results from ML and AI: 2

    Getting practical, real-world results with ML and AI isn’t just a matter of hiring some people with the right credentials and throwing them at the project. Most such efforts start with fanfare but then fade into failure, usually quietly. The first part of this series laid out the issues, described the path to success, and concentrated on the indispensable foundation of success, the data. Data that has to be collected, corrected, enhanced and augmented – a time-consuming process that has no “advanced algorithm” glory, but MUST be done, and done well.

    In this post, we’ll concentrate on the analytic methods that a successful project uses to generate value from the data so arduously collected and corrected.

    A Little Background

    I say I’m focused here on ML and AI. I just said that because it’s what everyone is talking about. What I’m really focused on is algorithms for understanding and getting value out of data. So I lied. Even worse, I’m not sorry – because just thinking that what’s important is to use the latest ML and AI techniques is central to the failure of most such efforts to deliver value.

    I guess I can get over my programmer-ish prissiness that things are getting new names. What I refuse to get over is that lots of important, really valuable techniques are usually left out of the grab-bag of “ML and AI.” I won’t be comprehensive, but I think a glance at the landscape might help here.

    There are a couple different ways to understand useful algorithms and how they came to be. Roughly, they are:

    • Follow the algorithm, taking a fuzzy lens for the naming and details
    • Follow the academic departments that “own” the algorithm
    • Follow the problems the algorithm has proven to be good for

    These ways overlap, but provide useful angles for understanding the algorithms and where to find them.

    Let’s illustrate this with an amazing, powerful algorithm that is usually sadly ignored by people who are into ML and AI. It’s most often called linear programming (LP).Those who are into it think of it as being one of a category of algorithms called mathematical programming. More broadly, it’s normally “owned” by academic departments of operations research (OR). OR studies repeating operations like responding to repairs for appliances or controlling the output of oil refineries when prices and costs vary and optimizes the results. It’s been used for decades for this purpose in many industries, and is being rolled out today to schedule infusion centers and operating rooms in hospitals.  

    This isn’t the place to spell it all out, but knowledge of amazing algorithms like LP is scattered over departments of Engineering, Computer Science, Math, Operations Research, Statistics, AI and others. The point is simple: the world of useful algorithms and modeling techniques is vastly greater than ML and AI.

    The Natural Sequence

    There are dozens and dozens of methods that can be used to analyze and extract value from data, which after all is the point of ML and AI (and, by implication, all the other great algorithms). As I described in the prior post, there is a natural progression or sequence of methods, which roughly follows their order of discovery and/or widespread use. Success usually comes from using the methods in the rough order of their invention as you climb the mountain of understanding from simple and obvious (in retrospect) results to increasingly non-obvious and subtle results.

    I often see the following reaction to this concept, rarely articulated but often acted upon: “Why would I want to waste everyone’s time playing around with obsolete, outdated methods, when I’m an expert in the use of the most modern ML and/or AI techniques? I’m sure that my favorite ML technique … blah, blather, gobbledygook … will yield great results with this problem. Why should I be forced to use an ancient, rusting steam engine when I’m an expert in the latest rocket-powered techniques, ones that will zoom to great answers quickly?!”

    The unspoken assumption behind this modern-sounding plea is that analytical techniques, ranging from simple statistics and extending to the latest ML, are like computers or powered vehicles. With those things, the latest versions are usually WAY better than prior versions. You would indeed be wasting everyone’s time and money if you insisted on using a personal computer from the 1980’s when modern computers are many thousands of times better and faster.

    The trouble with this line of thinking is simple: the metaphor is inapplicable. It’s wrong! Analytic techniques are NOT like computers; they are like math, in which algebra does not make simple math obsolete – algebra assumes simple math and is built on it. Calculus does not make algebra obsolete – calculus assumes algebra and is built on it! And so on. Each step in the sequence is a refinement that is built on top of the earlier one. No one says, now that I know calculus, I refuse to do algebra because it’s old and obsolete. See this for more on this subject.

    So it does make sense to quickly apply simple methods to the data to get simple answers, and at the same time vet your data. No time is wasted doing this. On the other hand, if you jump straight to someone’s favorite ML technique, not only is it likely that inaccurate and incomplete data will render the results useless … you won’t even know anything is wrong! Because most ML techniques do nothing to reveal problematic data to the researcher, while simpler methods often do!

    Fundamental Analytical Concepts: Calculate it methods

    The simplest and most useful methods are ones in which you simply calculate the answer. There’s no modeling, no training, no uncertainty. These methods are highly useful for both understanding and correcting the data you’ve got. The basic methods of statistics like regression apply here, and so do the methods of data organization and presentation usually called OLAP, BI and dimensional analysis. The tools associated with a star schema in a DBMS apply here, which are roughly the same as pivot tables in Excel.

    Graphing and visualization tools are important companions to these methods; they help you really understand the numbers and see to what extent they make common sense and match reality. For example, you can see to what extent a doctor’s years of experience correlate with ordering tests or issuing prescriptions of a certain kind; or simply identify the doctors whose actions stand out from the rest. There could be a good reason why they stand out; wouldn’t you like to find out why? Maybe the doctor should be emulated by others, or maybe the doctor should be corrected; either way, you should figure it out.

    Until you’ve pursuing all lines of thinking based on these simpler methods, it’s premature to move on.

    Fundamental Analytical Concepts: Solve/Optimize it methods

    These are, IMHO, the gold standard of algorithmic improvement. When applicable, they tell you how to reach a provably optimal result! No training. It takes experience and judgment to apply the generic algorithms to a particular problem set, and sometimes the problem needs to be adjusted. But the results are stellar.

    First, you create an equation that measures what you’re trying to optimize. Is it fastest time? Lowest cost? Least waste? Some combination? Whatever it is, that’s what you’ll maximize or minimize as the case may be.

    Next, you determine the constraints. You only have so many operating rooms? This kind of machine failure requires a repairman with that kind of skills?  Then you put in the inputs and solve. While I’m leaving out lots of detail, that’s the basic idea.

    These methods, usually of the OR kind, have been applied with great success for decades. In certain fields and industries, they are part of the standard operating procedure – it would be unprofessional to fail to apply them. And you would rapidly lose to the competition.

    Fundamental Analytical Concepts: Train it methods

    The training methods all require sample data sets on which to “train” the model. Selecting and controlling the data set is key, as is avoiding over-training, in which the trained model can’t generalize what it’s been trained on, and thus loses most of its utility.

    Fundamental Analytical Concepts: Train it methods: white box

    What characterizes these methods is something incredibly important: what the model does can generally be explained in human-understandable terms, i.e., it’s “white box.” This has huge value, if only to gain acceptance for what the model does – but it may also bring up problems with data that can lead to further improvements.

    There are lots of ML algorithms that are in this category. All the decision tree methods are here, among them the very important random forest method, along with methods that arose within the field of statistics such as CART.

    0

    Fundamental Analytical Concepts: Train it methods: black box

    These methods can produce amazing results, and should be used whenever necessary, i.e., whenever earlier methods in the sequence can’t be used. The fact that the model is “black box” means that it’s difficult if not impossible to understand how the model makes its decisions in human terms – even for an expert.

    These methods include neural networks in all forms, including all the variations of “deep learning.”

    Fundamental Analytical Concepts: Rules

    Finally, I add the indispensable attribute of success in many practical systems: human-coded rules. These can be inserted at any point in processing, as early as enhancing the data before any methods work on it, and as late as modifying the results of final processing. While not often explicitly discussed, few practitioners with successful track records avoid the use of rules altogether. They may not be pretty or fancy or elegant – but they work, darn it.

    00

    More elaborate than sets of rules is the technique in AI of expert systems. This is a whole big subject of its own. Generally speaking, if you can get useful results from one of the sequence of methods up to and including white box training systems, you should do so. But important categories of problems can only be solved using expert systems, which ideally should be as white box as possible.

    Conclusion

    There is a broad range of analytic techniques that can be applied to a given problem. There is an optimal sequence for understanding the data and the problem. Going from one step in the sequence to the next, when done correctly, isn’t abandoning a method for something better, but first picking the low-hanging fruit and then moving on to catch tougher stuff. Prejudging the best technique to use before really getting your hands dirty is a mistake. Being a specialist in a particular method, e.g. “deep learning,” and confining your activities to that method alone can get you hired, paid and busy, but may lead to no useful results, or results far less useful than they could be.

  • Getting Results from ML and AI: 1

    We hear quite a bit these days about ML (machine learning) and AI (Artificial Intelligence), as the drumbeats of Big Data and Analytics fade away. You’ve got to be using these things to get great results and transform your business! You’d better round out the staff of Data Scientists you hired last year, and add appropriate numbers of ML and AI experts to the mix. Otherwise, you’re hopelessly behind the times, and you’ll eat the dust generated by the winners!

    Most efforts to apply these technologies fail. Not loudly, of course – no one admits failure. But after enough time passes with exciting results being right around the next corner, people stop talking about catching a glimpse of light from the end of the tunnel, and accept the fact that they’re digging a tunnel deeper and deeper, a tunnel to nowhere.

    Is there a way to get amazing value out of these exotic technologies? Yes. Decades of solid results show the way.

    Typical Failure Patterns

    In real-life cases, what happens all too often is that “data scientists” are called in to apply their magic. They take the available data and apply their favorite techniques. They may not produce results that are promising. If the results are promising, there is trouble applying them to the real-life situation. Or if they can somehow be applied, they don’t work or produced the promised results.

    The failures are the direct result of taking a naïve approach to applying these kinds of techniques in the real world. There are proven methods for attaining good results, but those methods are rarely discussed, for reasons I don’t understand. If they’re discussed, they’re lightly brushed over – instead of being given center stage as they deserve. Following are the ways to be successful with ML and AI.

    Build from the bottom up

    No one tries to sell a house based on how solid its foundation is; but a house with a crappy foundation will collapse. No one brags about their arithmetic skills when trying to get a job as an ML expert; but if you can’t add, how can you do ML? There is a clear sequence of learning ML and AI. You start with learning how to count; if you don’t know the numbers, you know nothing. Then you learn basic manipulation of numbers, like addition and multiplication. Then it’s on to algebra and the following stages. You don’t try to learn exotic techniques until you’ve mastered the more basic ones on which they’re based, and on which they depend. These are things that are nearly universally accepted.

    What’s not so common is applying the same sequence when analyzing any particular problem. The foundation of the sequence, the first step, is the numbers, the data. All too often, the data is incorrect and incomplete. If the data is bad, the results will be worthless.

    I’ve never found anyone who disputes this, once the issue is raised. But I also rarely find people who act on it, and take it seriously. Why? Among other reasons, it's a multi-trillion dollar issue.
    00

    I have worked with some of the most advanced people in the field, including someone who’s been the chairman of one of the top academic departments in the field. This person and his methods have been behind a few of the most widely used success stories. Here’s his “secret” for when he dives into a new problem: he loads the data into Excel and looks at it, first line-by-line, and then using functions and visualizations. Yes, I know, Excel is something accountants use and try to avoid. But it’s ideal for fast, visual analysis of data sets, and has some of the most advanced algorithms available as add-in libraries. Why would you start programming in Python when you can move quickly mostly without programming using a tool?

    The important thing isn’t the tool. The important thing is the activity – look at the data. Seriously look at it! Don’t just scan and move on. Understand it! What you’ll almost always find is that there are errors. Mistakes. Important stuff that’s missing. Graph it and look for basic correlations, and see if it makes sense. Make sure a true subject-matter expert is by your side.

    Then the fun begins. You have to fix the data. It’s the foundation of everything else. Without a solid foundation, nothing of value can be built on it.

    It’s also important to understand that this isn’t something mechanical, like spell-checking. What you often find is that really crucial data is missing, or that real important data can be added. This simple-sounding fact can be a project-maker. I have been involved with several projects in which the mundane-sounding effort of adding more relevant data has been the difference between failure and incredible, world-changing success.

    OK, your data’s pretty good. Time to dive into ML? No way!! Way too soon! We’re going to go in sequence here, applying the very most basic techniques to the data first.

    The point of all this is simple: you squeeze all the value you can out of a given “level” of technique before advancing to the next one. There are lots of reasons why this makes sense. The simpler techniques yield results more quickly than fancier ones. They tend to be larger and more obvious, which means the impact will be big. People will understand them, and so are more likely to buy into the changes needed to apply them in real life.

    I’m not going to spell out all the techniques you should apply and the proper sequence, but generally speaking, the order is the same as the order in which the techniques were discovered historically, which is the roughly the same order in which the techniques are taught in school. So you try simple linear regression before multi-variate, for example. And you always look and use visual methods, because a surprising number of the advances are often ones that people in the field know or expect, or that at least “make sense” to them.

    Finally, at long last, you get to use the fancy stuff you’ve been itching to use all along. But by then … your data’s in great shape. Your system is already up and running. People are already accustomed to change and the improvements that result from applying math. And interestingly, there may not be that much “juice” to be squeezed out of the system by then. Depending on your scale, that remaining juice may be tasty indeed, but it’s the icing on the cake.

    In applying AI, the pattern is the same, except that in addition to applying simpler analytic techniques, you may be writing common-sense-understandable rules by hand. Why not? It gets the job done, it’s simple and direct, and the AI can focus on that yummy icing.

    Other Issues

    We’re not done! There are a couple other major, overriding issues to be considered in order to get great results from these advanced methods. I’ll cover them in future posts. They are:

    • Most people have a favorite method, in which they have expertise and experience. That’s wonderful, except that there is a world of different methods, and many of them are simple inapplicable to certain kinds of problems – but great on others. Picking the right method (or methods) is absolutely key to success.
    • Closed loop. All too many projects run open loop. In my descriptions above, I sneakily assumed closed loop – that’s where the best feedback comes from.

    Conclusion

    Wonderful results can be obtained by applying modern analytic methods to real-world problems. But you have to choose: do you want an academic prize or do you want real-world improvements? Sadly, those goals don’t have loads of overlap. If you want real-world results, you should build your effort on a solid foundation of accurate and complete data, and move from simple to increasingly refined as you apply algorithms to it. If you do, you’ll see positive results fairly quickly, and those results will get better and better as you climb up the mountain of sophistication.

  • Let’s Fix CIA Cybersecurity using Machine Learning

    We all know by now that the CIA has suffered from the worst hack in history, worse than the Edward Snowden, Daniel Ellsberg, the OPM and any commercial hack you can think of. The likely response will be lots of time and money spent doing more of the useless stuff that failed last time.

    There is a solution. It's proven, at scale and in practice. It's based on the best technology, Machine Learning. It is the reason why banks lose only little dribbles of money to evil criminals and hackers, but have never suffered substantial card losses, after decades of thousands of attempts per year! You think maybe the CIA should try it?

    Security at the CIA

    I have no idea how the CIA does security today. I suspect the bosses all say it's incredibly important, they spend lots of money on it and use "the best" methods.

    The CIA may spend more money and use stronger words, but they're pretty much like most large organizations. They just don't know how to get security done and don't seem to care. What about government-issued security regulations? Ineffective. 

    11

    There are solutions, but no one is interested. Retails stores have implemented them. Even local libraries have implemented them.

    Credit Cards

    Let's drill into credit card technology, which has implemented a method of security that is proven at large scale and now uses ever-improving machine learning methods. If the CIA had used credit card security technology to protect its assets, the recent breach would not have happened.

    There are hundreds of millions of active credit cards in the US, which cause the movement of trillions of dollars. There are over 30 billion transactions a year. Think of all those cards being used by tens of millions of people at millions of merchants. The fraud problem must be huge, right?

    All I can say is, it's a darn good thing the CIA isn't offering credit cards. While the card system isn't perfect, losses due to fraud are well under 10 cents per $100.

    First step Card security technology

    The card issuers were always concerned about fraud, and as time went on and the numbers grew, the technology deployed to avoid loss evolved.

    Among the earliest automated steps to avoid loss in credit cards were two simple measures: credit limits and velocity checks.

    Credit limits are what they sound like: how much money you can spend (take) before the card is blocked, i.e., prevents further spending. The limit may be $500 or it may be $50,000, but there's always a limit.

    Velocity checks count the frequency that a card is used. If a card is used once a day, that's pretty low frequency. If it's used twice in ten minutes, that's high frequency, and will probably block the card.

    These simple measures did an amazing amount to limit fraud losses. They kept losses under 20 cents per $100 spent.

    Applying first step card technology to the CIA

    In computer terms, all of the assets lost by the CIA are files. Files are managed in a file system, which is a key part of an operating system. All operating systems have security of some kind, which I would hope the CIA already uses. This simply means that any user has to log in and provide security credentials before they're given access to anything.

    Every operating system and file system has the ability to restrict access to files by directory. Did the CIA use this simple security measure? I don't know. Did they place files in a hierarchy of directories and carefully control who had access to which tiny subset of all the files they were working on? I don't know, but if they failed to use this existing security method, someone should go to jail.

    Regardless of how existing security methods were deployed, the methods of credit limit and velocity check could be added to the file system to keep any one person from "spending too much," i.e., from accessing too many files in a way that could lead to a security breach. Obviously this simple method is not currently deployed at the CIA.

    Inside the file system, after a request for a file has been made and before it is honored, there is already a security check: does this person have access to files in this directory? What's needed is straightforward. There needs to be a per-person log of all file accesses, including name and date/time of access. For each person, there should be a limit to the number of files accessed per period of time (for example per day), which is like a credit limit. In addition, there should be a velocity check, so that if a person uses half their daily quota in ten minutes, there could be a problem. When either of these checks are tripped, the user is locked out, and security people need to check and make sure the person is actually doing authorized work. If the limits are set correctly for each person's role, this will stop many problems.

    Obviously, bad guys figure this out, so you add things. If you see that someone keeps accessing new files close to the daily maximum, something is wrong. You apply a different kind of velocity check, and shut them down. There are other simple extensions which cover a wide variety of bad things, and shut people down before they get many files.

    This method, if applied to the CIA, would put them decades behind credit card technology, but way ahead of where they are. This method would have prevented the recent CIA breach.

    Neural Network card technology

    Credit limits, velocity checks and their extensions were and are effective for reducing loss. But the bad guys got smarter, and managed to game the system in spite of them.

    Before long, some smart and motivated people got together and applied an older machine learning technique, neural networks, to the problem. HNC, now part of FICO, became the industry standard for fraud prevention.

    The approach is basically to investigate in depth fraudsters who had been caught and train neural nets to recognize them. The neural nets worked best with a large collection of cases to work on, so an industry coalition was organized, and most of the card issuers contributed their data to HNC, which distributed well-trained models to all the participants. This resulted is tremendous improvement — it cut the already-low fraud rate in half.

    However, this particular method of machine learning, while it works well with credit cards, does not apply to cases like the CIA. Neural nets require a large number of cases to train against, which exist in the credit card world. But fortunately, the number of breaches at places like the CIA, while catastrophic, are small in number and infrequent. Therefore, the neural network method would not help the CIA.

    The lastest Machine Learning card technology

    Recently, some smart innovators applied more modern machine learning techniques to credit card fraud, techniques that went deeper into the card issuer's computer systems. This company, Feedzai, is posting tremendous gains in fighting fraud, without requiring data sets of existing fraud cases to train against. This new, powerful method trains against normal, lawful users' ordinary usage patterns, and detect departures from them. Because of this, it can catch first-time fraud.

    Disclosure: I'm part of a VC firm that invests in Feedzai.

    Applying credit card machine learning to the CIA

    Feedzai-type machine learning methods are exactly what's needed at the CIA. I'm not saying they can be plugged as-is into the CIA to solve the problem. I am saying that the machine learning methods used by Feedzai to fight credit card fraud are exactly applicable to extend the "credit limit" and "velocity checks" to new levels of accuracy in protecting files in a file system.

    Part of what Feedzai does is model the patterns of card usage that are typical for a kind of consumer. Apply this to the kinds of users who access files at the CIA. Some of them are designers, some are programmers, others are quality people and testers. Each of them will have a typical pattern, accessing a per-person unique set of files. Usually, they'll access the same set of files over and over, as they're working on them. Accessing a file for the first time will be rare, and usually only happen when they're working on a new project.

    What if a tester, for example, suddenly starts reading files from a project they're not currently working on? What if they're reading source code files, while their normal work only involves working with executables? Alarm!! Ahh-OOOgahhh!! Shut down access of the VERY FIRST file they try to access! And that person has some 'splaining to do.

    It's legitimate for a team to be assigned to a new project. Why shouldn't their actions be hand-monitored during the initial days, with every single file access logged and double-checked as being appropriate during a start-up period? Then, once a pattern has been established, the automated method can again take over.

    Even a simple implementation of this kind of machine learning would have prevented the massive CIA breach. The 8,761 documents currently available on Wikileaks are just a portion of the whole. Even if the directory-level file system security were as pathetic as I suspect it was, the machine learning method would have caught anyone accessing files outside their normal work pattern, subjecting them to scrutiny and probable removal from the premises.

    Conclusion

    Security breaches of the most damaging kinds keep rolling in, from the most deeply secret parts of government (NSA, CIA, Army) to important commercial organizations. It's way past time that proven methods of the kind I describe here and in posts linked-to here are deployed to solve the problem.

     

  • Devil’s Dictionary for 21st Century Computing 3

    More cynical definitions in the series introduced here, for Deep Learning and Blockchain.

    Ambrose Bierce

    A couple definitions from his book:

    Cynic

    Conversation

    Consult

    Stan Kelly-Bootle

    Mr. Kelly-Bootle sometimes provided extended explanations of the words he defined:

    Alpha

    Sometimes he even needed illustrations. See the two definitions below, followed by illustrations:

    ASCII

    ASL

    Definitions for 21st Century Computing

    A couple more from the student:

    Deep Learning

    Deep learning is an evolution of shallow neural networks, in which the neural networks are stacked in many layers, making them “deep.”

    Decades after the 1959 biological model introduced by Nobel Prize-winning scientists Hubel and Wiesel inspired artificial intelligence pioneers at MIT and elsewhere to invent neural network technology, someone noticed that biological neurons are connected in many layers, unlike the single-layer neural networks that AI researchers had been touting for years as the basis for recreating human intelligence inside a machine. Since everyone knows that prestigious artificial intelligence researchers don’t commit errors, or at least simple ones, “deep learning” was introduced as a brand-new idea that would finally crack the code of making machines as smart as the average fifth grader. Someday. Maybe.

    Blockchain

    A hot new technology that is sweeping through the world of finance,  healthcare and elsewhere, whose greatest practical success to date has been the secret transfer of funds between cooperating parties in a criminal enterprise.

    A newly discovered database that has recently been freed from the nearly unbreakable bonds of its cryptocurrency prison; however, as a new kind of database, it stubbornly refuses to be classified as a “database,” preferring to be known as a “distributed ledger,” of which it is apparently the only known exemplar. A cynic might point out that that the stubborn refusal to agree to be part of genus database-imus may be due to the wholly inadequate functionality and performance of blockchain on generally accepted measures of database value, but this is almost certainly unfair to such a widely hailed future solution to problems that undoubtedly are pressing, and have resisted solution for many years.

    Conclusion

    I apologize in advance: there could be more to come.

  • Learning, Machine and Human

    Machine Learning is all the rage today. It's getting so I'm hearing about it as often as about Big Data! And that's a lot!

    A Machine Learning Expert is supposed to be able to wield his magic weapon and solve problems that have eluded apparently smart, motivated and educated humans for decades. It's said to be that good! It's knocking off previously unsolvable problems in fintech and healthcare left and right, with no end in sight.

    I'm a big fan of machine learning and related analytical techniques. I'm delighted that it is finally being applied to some problems for which it is well-suited; this happy event is long overdue. But as with most magic wands, some words of qualification and caution are in order.

    Do you have a ML problem?

    While the definition of machine learning has been stretched and pulled in recent years (maybe forever!), there are important numerical methods that most people don't consider to be ML algorithms. One important category of these is optimization techniques of the kind that are studied in Operations Research. For example, if you want to optimize running an oil refinery, you probably want goal-based optimization rather than machine learning.

    What kind of machine learning?

    Given that you have a problem that may lend itself to a machine learning approach, it's important that you pick the right one to use — that's right, I said "right one." Machine learning is a body of algorithms, in fact a large and growing body. Here's a snapshot of part of a list of them — this is less than a quarter of the list:

    1 ML
    Do you have all the data?

    Supposing you do in fact have a problem that lends itself to machine learning and have a sense of the appropriate technique to use, even a machine can only learn if it's got the right stuff to learn from.

    This is one of the many reasons why machine learning efforts that end up yielding practical, real-world results nearly always start out with humans examining the data in great detail. Often they find that data you know is going to be important just isn't present in the data set.

    And then when all the relevant data is there, what to do with it is often blindingly obvious — human learning works just great, thank you very much!

    Is the data any good?

    There's this phrase you may have heard; it goes something like "garbage in, garbage something-or-other." You can probably figure it out. Sounds simple. It isn't. Even finding out whether your data is any good can be a major challenge.

    And then, once you're pretty sure it's good, does it stay good? This isn't a pie-in-the-sky problem. One company I know that processes massive amounts of credit card data from credit card companies has a few people assigned full time to detect when the card company has changed something important about the data. When told about it, the card company would typically respond with skepticism. Then they would check. Then they'd say "oops." The "sorry" was usually implied, not stated.

    Are the data types identified and in good order?

    Take something simple, like date. If a date is coded, it may be a julian day number; many DBMS's do it this way. A date may be just a string, like 20161112. You have to know whether that's year-month-day (Nov 12 2016) or year-day-month (Dec 11 2016) or day-year-month (Dec 20 1611). The whole Y2K problem came from this, in which Sep 9 1999 would be represented in a string like this: 090999. Life is complicated. Data is even more complicated, in new and different ways. You have to embrace the complication.

    And BTW, dates are just the tip of the messy-data iceberg.

    Is the data normalized?

    This may sound esoteric, but getting good results can hang on it. It basically means, is all the data that refers to the same thing coded the same way? For example, here are a couple street address variations: "Cedar Lake East," "Cedar Lake E," "Cedar Lk E." The guy driving the post office truck knows they're the same. Does the computer?

    I ran into a more complex problem of this kind trying to get data about doctors, doctors who happened to work at varying office locations. How can you be sure it's the same doctor, particularly when there are doctors with similar names and different spellings of the same name.

    Is the data coded where appropriate?

    That's why you'd really like to have all your data be coded. You really don't want doctor names — you want unique doctor ID's, like social security numbers. But all too often, you just don't have it.

    How much natural language is used?

    Any of the problems above can sink a machine learning project into the morass of struggling with tools and bad results. But when natural language is involved, you reach a whole new level of horror.

    The world has a lot of experience with this, smart people working with the best tools on massive data sets over many years. Even things that sound simple are far from solved, and it's doubtful they ever will be solved with high precision.

    One simple example: spam filters. Do you get any spam in your email? Are any valid emails marked as spam? If your answer is "no," then it's obvious that you basically don't use email.

    Another example: comment filtering. As commenting on the web has exploded, so has the number and vigor of people who write nasty, obscene comments. Lots of people, yes including all the tech giants, have put loads of resources into automatically identifying comments that are inappropriate. You wouldn't think it would be that hard. It's not hard — for humans. For machines, well, yeah it's hard.

    The problem of natural language processing (NLP) remains unsolved. Even something seemingly simple like "feature extraction" from natural language can be a nightmare. Suppose you want to automatically extract from clinical notes whether a patient is homeless. Consider these sentences:

    The possibility that the patient is homeless was raised several times. I examined it carefully. Not true.

    This is easily understood by a human reader, but is surprisingly difficult for NLP because of making the link between the sentences. The problem is linking “it” with the attribute “homeless” and further interpreting “not true” to mean that the attribute “homeless” is false. And that again is a relatively simple case.

    Conclusion

    I'm all for machine learning. But fashionable trends like this all too often result in spending lots of money with promising results perpetually just over the horizon, and then … the subject gets changed.

    There's good news. Machine learning used by the right people in the right way against properly constructed and understood data sets with the right amounts of human learning added in can achieve astounding results. And have! A good example is The Oak HC/FT portfolio company Feedzai, which is blocking and tackling credit card fraudsters as we speak.

  • Devil’s Dictionary for 21st Century Computing 2

    Another in the series introduced here.

    Ambrose Bierce

    A couple definitions from his book:

    Telephone

    Telescope

    Stan Kelly-Bootle

    Mr. Kelly-Bootle sometimes provided extended explanations of the words he defined:

      Algo

    Algo 2

    Definitions for 21st Century Computing

    A couple more from the student:

    Cognitive Computing

    A totally, absolutely brand-new approach to making computers that are really smart. Cognitive computing is already a success primarily because it has NOTHING whatsoever to do with certain lame technologies that have a decades-long, proven track record of achieving perpetually imminent success. Cognitive computing is primarily backed by a giant company whose roots go back to the technology that popularized the term “hanging chads,” whose TLA name is alphabetically adjacent to HAL, the star of movie set in 2001.

    Machine Learning

    The term for a growing collection of dozens of techniques that have been developed in the continuing quest to teach machines enough so that they can score better than they do on the college entrance exams. Until the quest for effective machine learning yields better results, machines will continue to be relegated to second-class status among the company of educated things.

    The advocates of machine learning are known to be a fiercely contentious lot, each asserting that its own approach is superior to all others, and that any evidence adduced to the contrary is propaganda, fake news of the worst sort, stemming from jealous advocates of inferior approaches. The closest approximation to the internecine warfare of the machine learning field is the human learning field, in which advocates of public, government-run and union-staffed schools exchange harsh words with advocates of charter schools, with a level of invective and passion that indicates that someone is strongly in favor of hopelessly uneducated machines and/or humans.

    Conclusion

    I apologize in advance: there could be more to come.

  • How Blockchain will Deliver Value

    Blockchain is already a huge phenomenon. But it has issues. Can blockchain fulfill its promise? Can it have a big impact on financial services, healthcare and perhaps other industries? You betcha! Here’s how.

    Blockchain is big

    First it was BitCoin. Now it's blockchain, which is what people call the "underlying technology" of BitCoin. Although that's about as accurate as calling the combustion engine the underlying technology of the car, only leaving out the gas tank — it won't work!

    In any case, expectations among investors are riding high. Here's a snapshot of investor interest:

    Blockchain

    Obstacles to blockchain's success

    Probably the biggest problem with blockchain is that it's just a kind of database with a peculiar set of characteristics. Just having a database doesn't make everyone involved in a problem suddenly decide to digitize everything in the same format, make the same calls to the same API's and respond to everything appropriately. So the problem is often one which blockchain simply doesn't solve.

    There's also a deep obstacle. It's one that is obvious to any technical person and makes common sense, but for reasons that elude me, is rarely discussed among blockchain investors and enthusiasts.  The problem is the community validation protocol that assures the integrity of the ledger. As part of BitCoin, the problem is cleverly solved by miners, who are incented to provide this service by being paid in BitCoin. When you take BitCoin out of “blockchain” and apply blockchain to other applications, you take away the payment mechanism for miners to do their job. This fact alone has a long string of ramifications, among which is the integrity and security of the "distributed ledger."

    History of other advanced technologies

    The obstacles to success for blockchain are serious. I wonder what we could learn from looking at history? Perhaps there are other abstruse, advanced technologies that also overcame serious obstacles and became smashing successes. Maybe we could learn from them and see how blockchain could similarly enjoy the great success that is so widely predicted for it.

    There are several historical parallels that could be applied to block chain. One that seems relevant is neural networks.

    HNC Software was started in 1986 to exploit the incredible power of neural networks. "Neural," like what's in your brain, get it? It's like smart computers! The bright boys of HNC got contracts and were solving all sorts of important problems in multiple fields. Sort of. Around 1990, the CTO of a credit card company, Household International, brought them in to solve his company's fraud problem. After a while, with the data and help of Household, they got something good going.

    Household let them get data from other card companies to make their models even better, and soon HNC was rocketing. They went public, became the card industry's standard solution, and eventually merged with FICO.

    I was active in the card industry when they were rapidly growing, and I knew a couple of the people whose names were on the patents. Everyone accepted that HNC's solution trumped everyone else's because, after all, it was based on that amazing new technology … neural networks!

    Looking under the covers

    If you took off just the top sheet, you would see that HNC had devised carefully controlled training protocols to overcome the over-training that frequently hobbles neural networks. Clever!

    But seeing what was really going on was an eye-opener. Underneath all the neural net stuff was a large and growing body of … get ready … human-created rules! Little snippets of code, each of which would identify a certain pattern of fraud. As new fraud was discovered, humans at HNC (mostly) would add a new rule to the set of (when I last saw it) thousands of rules. The latest set of card transactions, both legit and fraud, would then be run through the training system, and the neural network would be trained to balance the output of all the rules and combine them into a single probability score.

    Net-net: the rules did the fraud recognition, the neural networks weighted the rule outputs into a combined final score for a given transaction.

    The message of HNC and the understanding of the market was clear, however: the HNC solution was better than anything else, it was based on near-magical neural networks, and life is good.

    Applying the lesson

    HNC provides an excellent model for how blockchain can succeed in the market. They'll do it the same way neural networks did. Investment and attention will go to important problems; the problems will get solved by stubborn, hard-working people who are motivated to get something that works, and don't really care about the extent to which what people call blockchains are involved. The marketing people will promote the magical elixir of blockchain, everyone will ohhh and ahhh, and no one will care what's under the covers, so long as it works.

    It worked for neural networks and HNC, and genuinely frustrated the fraudsters. The same pattern can work for blockchain.

Links

Recent Posts

Categories