jump to navigation

What Brought About our AI Revolution? July 22, 2017

Posted by Peter Varhol in Algorithms, Software development, Software platforms.
Tags: , , ,

Circa 1990, I was a computer science graduate student, writing forward-chaining rules in Lisp for AI applications.  We had Symbolics Lisp workstations, but I did most of my coding on my Mac, using ExperList or the wonderful XLisp written by friend and colleague David Betz.

Lisp was convoluted to work with, and in general rules-based systems required that there was an expert available to develop the rules.  It turns out that it’s very difficult for any human expert to describe in rules how they got a particular answer.  And those rules generally couldn’t take into account any data that might help it learn and refine over time.

As a result, most rules-based systems fell by the wayside.  While they could work for discrete problems where the steps to a conclusion were clearly defined, they weren’t very useful when the problem domain was ambiguous or there was no clear yes or no answer.

A couple of years later I moved on to working with neural networks.  Neural networks require data for training purposes.  These systems are made up of layered networks of equations (I used mostly fairly simple polynomial expressions, but sometimes the algorithms can get pretty sophisticated) that adapt based on known inputs and outputs.

Neural networks have the advantage of obtaining their expertise through the application of actual data.  However, due to the multiple layers of algorithms, it is usually impossible to determine how the system arrives at the answers it does.

Recently I presented on machine learning at the QUEST Conference in Chicago and at Expo:QA in Spain.  In interacting with the attendees, I realized something.  While some data scientists tend to use more complex algorithms today, the techniques involved in neural networks for machine learning are pretty much the same as they were when I was doing it, now 25 years ago.

So why are we having the explosion in machine learning, AI, and intelligent systems today?  When I was asked that question recently, I realized that there was only one possible answer.

Computing processing speeds continue to follow Moore’s Law (more or less), especially when we’re talking floating point SIMD/parallel processing operations.  Moore’s Law doesn’t directly relate to speed or performance, but there is a strong correlation.  And processors today are now fast enough to execute complex algorithms with data applied in parallel.  Some, like Nvidia, have wonderful GPUs that turn out to work very well with this type of problem.  Others, like Intel, have released an entire processor line dedicated to AI algorithms.

In other words, what has happened is that the hardware caught up to the software.  The software (and mathematical) techniques are fundamentally the same, but now the machine learning systems can run fast enough to actually be useful.


The Final Frontier July 6, 2017

Posted by Peter Varhol in Education, Technology and Culture.
Tags: , ,
add a comment

Yes, these are the voyages of the Starship Enterprise.  Its five-year mission: to explore strange new worlds, to seek out new life and new civilizations, to boldly go where no man has gone before.

To someone of my age, this defined the possibilities of space, perhaps even more so than the Apollo 11 landing on the moon.

We failed at this, in my lifetime, to my dying (hopefully not soon) regret.  We failed, not because of a lack of technology, but because of a lack of will.  Since the 1980s, America has been looking inward, rather than reaching for the next brass ring in the universe.

Today, we have no ability to launch astronauts into orbit.  No, we don’t.  Our astronauts go into orbit courtesy of the ESA or the Russians (not sure that ESA is doing all that much any more).  I am sure many of you are pleased at this, but you miss the larger picture.

May I quote Robert Browning: “Ah, but a man’s reach should exceed his grasp, Or what’s a heaven for?”

Seriously.  Life is bigger, much bigger, than our individual petty concerns.  We may think our concerns are larger than life, but until we reach beyond them, we are petty, we are small.  Until we give ourselves to larger and more grandiose goals, we are achieving nothing as human beings.

Look at the people, throughout history, who have given their lives, willingly, in favor of a larger goal.  Not just the astronauts, but soldiers, sailors, explorers, yes, even a few politicians.

Today, my only hope is with the private companies, SpaceX, Blue Origin, Virgin Galactic, and their ilk.  They are our future.  Not NASA, or the government in any way, shape or form.  I hope with all of my heart and soul they can reach where the collective citizenry has declined to.

Set controls for the heart of the sun.

Why I Have to Keep Task Manager Running in Windows July 2, 2017

Posted by Peter Varhol in Software platforms.
Tags: , , , ,
add a comment

Over the last year or so, my daily personal laptop has been running slower and slower.  For a variety of reasons, Windows performance and reliability tends to degrade over time.  Memory especially, but also disk and CPU have been pegging at 100 percent all too frequently.  I suppose I could wipe the system and start again from scratch, but that’s also a good indication that it’s time to get a new laptop.

I’ve upgraded to a new laptop, a midrange Core i5 quad-core system with 8 GB of RAM, running Windows 10.  That will fix my memory, CPU and disk problems, I thought.

Wrong.  My system still hung regularly.  So I started investigating in more detail.

Chrome, for one very big reason.  I will typically keep four or five tabs open, and it doesn’t take long for one or two of them to take up well over 2GB of memory.  And I’m talking about very commonly used sites, like weather.com, fitbit.com, or cnn.com.

While I’ve read several reasons (some of which are contradictory or don’t reflect my situation) why Chrome consumes memory like a drunken sailor, there doesn’t seem to be a whole lot to do about it.  Some talk about disabling add-ins; the only add-in I have running is Flash, and that is still required by many commercial websites (and crashes just as frequently).

Chrome has also been known to consume huge amounts of CPU and disk bandwidth.  I haven’t really read anything actionable about what to do here.

So I keep Task Manager open.  When a Chrome tab starts to misbehave, there is no alternative but to kill the process.

But wait!  It’s not just Chrome!  In Windows 10, there’s also this process called Microsoft Telemetry Service (and yes, it is a Windows Service).  I found this service using 99 percent of my CPU on more than one occasion.  What does Microsoft Telemetry Service do?  It sends use information from your computer to Microsoft.  Not just error information; use information.

It is enabled by default.  If you disable it, some of the Windows updates will re-enable it without telling you.

My very strong recommendation is to disable it and the horse it rode in on.  I guess this is what we deserve in the Facebook era, where we have no privacy.