Archive for the ‘machine learning sdk’ Category

Big Data Solutions: Intelligent Agents Find Meaning of Text

Friday, January 18th, 2013

 

ai-BrainDocs AgentWhat if your computer could find ideas in documents? Building on the idea of fingerprinting documents, ai-one helped develop ai-BrainDocs – a tool to mine large sets of documents to find ideas using intelligent agents. This solves a big problem for knowledge workers: How to find ideas in documents that are missed by traditional keyword search tools (such as Google, Lucine, Solr, FAST, etc.).

Customers Struggle with Unstructured Text

Almost every organization struggles to find value in “big data” – especially ideas buried within unstructured text. Often a very limited set of vocabulary can be used to express very different ideas. Lawyers are particularly talented at this: They can use 100 unique words to express thousands of ideas by simply changing the ordering and frequencies of the words.

Lawyers are not the only ones that need to find ideas inside documents. Other use cases include finding and classifying complaints, identifying concepts within social media feeds such as Twitter or Facebook and mining PubMed find related research articles. Recently, we have had several healthcare companies contact us to mine electronic health records (EHR) data to find information that is buried within doctors notes so they can predict adverse reactions, find co-morbidity risks and detect fraud.

The common denominator for all these uses cases is simple: How to find “what matters most” in documents? They need a way to find these ideas fast enough to keep pace with the growth in documents. Given that information is growing at almost 20% per year – this means that a very big problem now will be enormous next year.

Problems with Current Approaches

We’ve heard numerous stories from customers who were frustrated at the cost, complexity and expertise required to implement solutions to enable machines to read and understand the meaning of free-form text. Often these solutions use latent semantic indexing (LSI) and latent Dirichlet allocation (LDA). In one case, a customer spent more than two years trying to combine LSI with a Microsoft FAST Enterprise search appliance running on SharePoint. It failed because they were searching a high-volume of legal documents with very low variability. They were searching legal contracts to find paragraphs that included a very specific legal concept that could be expressed with many different combinations of words. Keyword search failed because the legal concept used commonly used words. LSI and LDA failed because the systems required a very large training set – often involving hundreds of documents. Even after reducing the specificity requirements, LSI and LDA still failed because they could not find the legal ideas at the paragraph level.

Inspiration

We found inspiration in the complaints we heard from customers: What if we could build an “intelligent agent” that could read documents like a person? We thought of the agent as an entry-level staff person who could be taught with a few examples then highlight paragraphs that were similar to (but not exactly like) the teaching examples.

Solution: Building Intelligent Agents

For several months, we have been developing prototypes of intelligent agents to mine unstructured text to find meaning. We built a Java application that combine ai-one’s machine learning API with natural language processing (OpenNLP) and NoSQL databases (MongoDB). Our approach generates an “ai-Fingerprint” that is a representational model of a document using keywords and association words. The “ai-Fingerprint” is similar to a graph G[V,E] where G is the knowledge representation, V (vertices) are keywords, and E (edges) are associations. This can also be thought of as a topic model.

ai-FingerprintThe ai-Fingerprint can be generated for almost any size text – from sentences to entire libraries of documents. As you might expect, the “intelligence” (or richness) of the ai-Fingerprint is proportional to the size of text it represents. Very sparse text (such as a tweet) has very little meaning. Large texts, such as legal documents, are very rich. This approach to topic modelling is precise — even without training or using external ontologies.

[NOTE: We are experimenting with using ontologies (such as OWL and RDF) as a way to enrich ai-Fingerprints with more intelligence. We are eager to find customers who want to build prototypes using this approach.]

The Secret Sauce

The magic is that ai-one’s API automatically detects keywords and associations – so it learns faster, with fewer documents and provides a more precise solution than mainstream machine learning methods using latent semantic analysis. Moreover, using ai-one’s approach makes it relatively easy for almost any developer to build intelligent agents.

How to Build Intelligent Agents?

To build an intelligent agent, we first had to consider how a human reads and understands a document.

The Human Perspective

Human are very good at detecting ideas – regardless of the words used to express them. As mentioned above, lawyers can express dozens of completely different legal concepts with a vocabulary of just a few hundred words. Humans can recognize the subtle differences of two paragraphs by how a lawyer uses words – both in meaning (semantics) and structure (syntax). Part of the cleverness of a lawyer is finding ways to combine as few words as possible to express a very precise idea to accomplish a specific legal or business objective. In legal documents, each new idea is almost always expressed in a paragraph. So two paragraphs might have the exact same words but express completely different ideas.

To find these ideas, a person (or computer) must detect the patterns of word use – similar to the finding a pattern in a signal. For example, as a child I knew I was in trouble when my mother called me by my first and last name – the combination of these words created a “signal” that was different than when she just used my first name. Similarly, a legal concept has a different meaning if two words occur together, such as “written consent” than if it only uses the word “consent.”

The (Conventional) Machine Learning Perspective

It’s almost impossible to program a computer to find such “faint signals” within a large number of documents. To do so would require a computer to be programmed to find all possible combinations of words for a given idea to search and match.

Machine learning technologies enable computers to identify features within the data to detect patterns. The computer “learns” by recognizing the combinations of features as patterns.

[There are many forms of machine learning – so I will keep focused only on those related to our text analytics problem.]

Natural Language Processing

One of the most important forms of machine learning for text analytics is natural language processing (NLP). NLP tools are very good at codifying the rules of language for computers to detect linguistic features – such as parts of speech, named entities, etc.

However (at the time of this writing), most NLP systems can’t detect patterns unless they are explicitly programmed or trained to do so. Linguistic patterns are very domain specific. The language used in medicine is different than what is used in law, etc. Thus, NLP is not easily generalized. NLP only works in specific situations where there is predictable syntax, semantics and context. IBM Watson can play Jeopardy! but has had tremendous problems finding commercial applications in marketing or medical records processing. Very few organizations have the budget or expertise to train NLP systems. They are left to either buy an off-the-shelf solution (such as StoredIQ ) or hire a team of PhDs to modify one of the open-source NLP tools. Good luck.

Latent Analysis Techniques

Tools such as latent semantic analysis (LSA), latent semantic indexing (LSI) and latent Dirichlet allocation (LDA) are all capable of detecting patterns within language. However, they require tremendous expertise to implement and often require large numbers of training documents. LSA and LSI are computationally expensive because they must recalculate the relationships between features each time they are given something new to learn. Thus, learning the meaning of the 1,001th document requires a calculation across the 1,000 previously learned documents. LSA uses a statistical approach called single variable decomposition to isolate keywords. Unlike LSA, ai-one’s technology also detects the association words that give a keyword context.

Similar to our ai-Fingerprint approach, LDA uses a graphical model for topic discovery. However, it takes tremendous skill to develop applications using LDA. Even when implemented, it requires the user to make informed guesses about the nature of the text. Unlike LDA, ai-one’s technology can be learned in a few hours. It requires no supervision or human interaction. It simply detects the inherent semantic value of text – regardless of language.

Our First Intelligent Agent Prototype: ai-BrainDocs

It took our team about a month to build the initial version of ai-BrainDocs. Our team used ai-one’s keyword and association commands to generate a graph for each document. This graph goes into MongoDB as a JSON object that represents the knowledge (content) of each document.
Next we created an easy way to build intelligent agents. We simply provide the API with examples of concepts we want to find. This training set can be very short. For one type of legal contracts, it only took 4 examples of text for the intelligent agent to achieve 90% accuracy in finding similar concepts.

Unlike solutions that use LSI, LDA and other technologies, the intelligent agents in ai-BrainDocs finds ideas at the paragraph level. This is a huge advantage when looking at large documents – such as medical research or SEC filings.

Next we built an interface that allows the end-user to control the intelligent agents by setting thresholds for sensitivity and determining how many paragraphs to scan at a time.

Our first customers are now testing ai-BrainDocs – and so far they love it. We expect to learn a lot as more people use the tool for different purposes. We are looking forward to developing ways for intelligent agents to interact – just like people – by comparing what they find within documents. We are finding that it is best for each agent to specialize in a specific subject. So finding ways for agents to compare their results using Boolean operators enables them to find similarities and differences between documents.

One thing is clear: Intelligent agents are ideal for mining unstructured text to find small ideas hidden in big data.

We look forward to reporting more on our work with ai-BrainDocs soon.

Posted by: Olin Hyde

Building Intelligent Agents: Google Now versus Apple SIRI?

Friday, December 14th, 2012

It has been a long time since our last blog post. Why? We’ve been busy learning how to build better intelligent agents.

Today, Kurt and I were discussing ways to improve feature detection algorithms for use in a prototype application called ai-BrainDocs. This is a system that detects concepts within legal documents. This is a hard problem because legal concepts (or ideas) use the same words. That is, there are no distinguishing features in the text.

ai-one’s technology is able to solve this problem by understanding how the same word (keyword) can mean different things by its context (as defined by association words). Together, keywords and associations create an array that we call an ai-Fingerprint. This can be thought of as a graph that can be represented as G[V,E]. ai-Fingerprints are easy to build using our Topic-Mapper API.

We pondered how the intelligent agents for Android developed by Google (called Google Now) and Apple iOS (called SIRI) might perform on a simple test. We picked a use case where the words were sparse but unique — looking for the status for a departing flight on American Airlines. Both Google Now and Apple SIRI have a tremendous advantages over ai-one because they: 1) have a lot more money to spend on R&D, 2) use expensive voice recognition technologies, and 3) they store all queries made by every user so they can apply statistical  machine learning to refine results from natural language processing (NLP).

Unlike Apple and Google, ai-one’s approach is not statistical. We use a new form of artificial neural network (ANN) that detects features and relationships without any training or human intervention.  This enables us to do something that Google and Apple can’t: Autonomic learning. This is a huge advantage for situations where you need to develop machine learning applications to find information where you can’t define what you are seeking. This is common in so-called “Big Data” problems. It is also much cheaper, faster and accurate than using the statistical machine learning tools that Apple and Google are pushing.

 

Posted by: Olin Hyde

Gartner Names ai-one Cool Vendor 2012 for Content Analytics

Tuesday, May 15th, 2012

Gartner Cool Vendor in Content Analytics, 2012

 

*GARTNER named ai-one in Cool Vendors in Content Analytics, 2012. The report reviews five vendors from around the world that offer potentially disruptive innovations for analyzing data to find actionable insights. Unlike traditional business intelligence solutions, these vendors provide technologies that can understand multiple types of information — including both structured and unstructured data.

The core value of ai-one’s technology is to make it easy for programmers to build intelligence into any application. Our APIs provide a way to mimic the way people detect patterns. “This is why we call it biologically inspired intelligence,” says founder and CEO

Answering the Most Important Questions, Mr. Walter Diggelmann, “because it works just like the human brain.”

 These companies have received tremendous publicity. Both are funded by traditional Silicon Valley venture capital firms. No surprise that they strive to provide comprehensive machine learning solutions rather than a tool for the general programming public.

“We do something completely different! We provide a general purpose tool that you can combine with other technologies to solve a specific problem. We do not try to do everything. Rather we just do one thing: We find the answer to the question you didn’t know to ask.” says Diggelmann

The advantage of ai-one’s approach to developers is that using the API is easy. The tool finds the inherent meaning of any data by detecting patterns. For example, feed it text and it will find every keyword and determine the association words that give each keyword context. Together, keywords and associations provide a complete and accurate summary of a document. The API gives precise results almost instantly and does not require any specialized training to use. Moreover, it is autonomic — as it works without any human intervention.

ai-one follows a technology licensing model — much like Qualcomm. The company makes money when licensees embed the API into commercial applications. ai-one works closely with its OEM partners to ensure that their products are successful.

ai-one’s technology enables programmers to build hybrid analytics solutions that integrate content from almost any digital source, in any language, regardless of its structure (or lack of structure). This capability has the potential to transform the way we think about business intelligence. “90% of the world’s data is unstructured,” says Diggelmann, “but 100% of the major business intelligence systems can’t read or understand it.  We provide a tool to bridge the gap.”

*Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings.  Gartner research publications consist of the opinions of Gartner’s research organization and should not be construed as statements of fact.  Garner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.

 

Big Data Just Got Smaller: New Approach to Find Information

Tuesday, November 15th, 2011

Press Release

For Immediate Release

ai-Fingerprint

ai-Fingerprint shows a graphical representation of the knowledge within a news article

San Diego, CA – Artificial intelligence vendor ai-one will unveil a new approach to graphically represent knowledge at the SuperData conference in San Diego on Wednesday November 16, 2011. The discovery, named ai-Fingerprint, is a significant breakthrough because it allows computers to understand the meaning of language much like a person. Unlike other technologies, ai-Fingerprints compresses knowledge in way that can work on any kind of device, in any language and shows how clusters of information relate to each other. This enables almost any developer to use off-the-shelf and open-source tools to build systems like Apple’s SIRI and IBM Watson.

Ondrej Florian, ai-one’s VP of Core Technology invented ai-Fingerprints as a way to find information by comparing the differences, similarities and intersections of information on multiple websites. The approach is dynamic so that the ai-Fingerprint transforms as the source information changes. For example, the shape for a Twitter feed adapts with the conversation. This enables someone to see new information evolve and immediately understand its significance.

“The big idea is that we use artificial intelligence to identify clusters and show how each cluster relates to another,” said Florian. “Our approach enables computers to compare ai-Fingerprints across many documents to find hidden patterns and interesting relationships.”

The ai-Fingerprint is the collection of all the keywords and their associations identified by ai-one’s Topic-Mapper tool. Each keyword and its associations is a coordinate – much like what you would find on a map. The combination of these keywords and associations forms a graph that encapsulates the entire meaning of the document.

The real-world applications are impressive. “It solves a lot of so-called Big Data problems because the system learns by itself,” said Olin Hyde who worked with Florian on the project. “ai-Fingerprints work with existing computer languages and standards. So it only took us about a week to create a generic tool, called BrainBrowser, to find relationships in complex texts – such as summarizing news articles, searching for a job, or identifying new uses for a drug.”

To build BrainBrowser, the team fed ai-Fingerprint results from Topic-Mapper into a natural language processing tool, OpenNLP, so that the computer could understand the rules of grammar then tag parts of speech, chunk phrases and classify words into categories (also called named-entity recognition). The ai-Fingerprint is continuously updated by Topic-Mapper so that the computer can understand how information changes over time – as it does in a human conversation.

Next, the team built a little tool in Java that converted the output into a continuous data feed using an open-standard format called XGMML. This format shares the knowledge of a document as a network of words, sentences and relationships.

Finally, they visualized the result with an open-source bioinformatics tool, called Cytoscape, to show the differences, similarities and identify anomalous information among documents. The result is a graphic representation of knowledge that can show clusters, extract summaries and compare many documents at the same time.

The approach is easy for others to replicate with other technologies. “We used Topic-Mapper with Java, OpenNLP and Cytoscape,” said Florian, “But you could easily do this with Python, MATLAB and NLTK. Heck, you could throw a voice recognition tool on it, like Dragon or Nuance, and you can build an intelligent agent just like SIRI.”

ai-Fingerprint works in any language because Topic-Mapper looks only at byte-patterns. “The approach can give false positives if you don’t teach it the rules of language” warned Florian, “but it is very accurate once it learns the grammar from an outside source of information – such as a natural language processing system or an external database.”

ai-one’s engineering team sees ai-Fingerprints as a way to make it easier, faster and less expensive for their partners to develop intelligent systems. The team is now testing it for applications in advertising, financial analysis, medical research and search engine optimization (SEO).

“Our mission is to make powerful AI available to all developers. This is a big step in that direction,” said ai-one’s chief operating officer Tom Marsh. “We are eager to find academic and consulting partners who can build upon what we started.”

“BrainBrowser is just a minimally viable product (MVP) to prove the concept,” added Hyde. “The sky is the limit for those that want to build commercial applications. Just take the MVP code and customize to your needs.”

A demo of the system can be seen on www.ai-one.com and the semsys YouTube channel.  ai-one intends to provide the source code for ai-Fingerprint as part of its Topic-Mapper software development kit.

How to Build a Killer Application: AI and the Lean Startup

Tuesday, October 18th, 2011

 

How to Build a Killer Application: Artificial Intelligence and the Lean Startup

Quick pitch to the San Diego Tech Founders: Lean Startup Group

Machines can learn.

Saturday, September 10th, 2011

Check out our newest video (3 min 34 sec). Machines can learn.

 

Machines can learn.

Machines can learn.

 

 

 

 

Artificial Intelligence for Everyone

Wednesday, August 24th, 2011

Artificial Intelligence is the Only Way to Keep Pace

Do yourself (and humanity) a favor — sign up and take Stanford’s class Introduction to Artificial Intelligence (AI). It is free. Open to everyone. And online. You have no excuse. (If the prerequisites of knowing linear algebra and probability theory scare you — then overcome your fear by taking a few of the 10-minute classes offered by Salman Khan at Khan Academy (also free, open and online). I regularly use Sal’s classes to refresh my decades-old memory of many long forgotten math classes. Amazing stuff).

Stanford Professor Sebastian Thrun and Google’s Peter Norvig deserve tremendous credit for making this course available to anyone with an Internet connection. Why?  Because if you don’t understand artificial intelligence you won’t understand the future. Stanford and AAAI are showing the kind of leadership in education that  that can (and probably will) spawn a new wave of innovation that will transform our lives even more than the Internet.

This class is so important that everyone at ai-one signed up — even though we already know a bit about artificial intelligence ourselves (which is often called machine learning). My fiance, father, cousins…even my workout buddy also signed up. If nothing else, this class is taught by two of the smartest people working on how to solve problems faster and more accurately by using machines that can learn how to reason and learn patterns with ever decreasing human intervention.

Machine Learning is Very Different from Machine Programming

I often speak with prospective customer for our technology who immediately ask me what a learning machine can do differently than a computer that is programmed. The answer is simple but profound: Machines can now learn like humans — by detecting the meaning of data by detecting inherent patterns and associations of each element within a data set. This means the machine can learn the meaning of whatever data you feed to it. No, it can’t reason — that is, machine’s can’t spontaneously create new thoughts (yet). They can spontaneously detect how a word is related to other words, documents, websites, etc. This way of determining meaning through association is often called a semantic network. Although the concepts for creating a world wide web of semantically linked data has been around for a long time (notably described by Tim Berners-Lee in his famous paper The Semantic Web in 2001).

Linking data is the only to make sense out of it. Without links it is simply a sea of noise. Noise that is growing at an astonishing rate.

Evolve or Die: Why Everyone Needs to Know About Artificial Intelligence

Human currently doubles every 5 years — your cognitive capacity does not.

In fact, cognitive capacities are much the same for any individual human as they were before we learned enough to form civilizations. So we are only as smart as our capacity to learn — and that capacity has limits. One such limit is the Dunbar Number which is the theoretical limit of the number of people with whom you can maintain meaningful relationships. This is thought to be between 100 and 200 people. So even though I might have over 800 Facebook friends — most are people whom I do not have sustainable, long-term relationships. Many of these “friends” are people I knew in high school and have long since lost contact (except through Facebook). Interestingly, about 142 people made a personal effort to wish me a happy birthday (130 were on Facebook) — reflecting a value  that falls within widely accepted values for the Dunbar Number (which can be thought of as a Dunbar Limit).

The news for your brain gets worse. Knowledge is continuing to grow faster. Several leading indicators  (such as the adoption newly patented technologies) indicate that this pace will increase exponentially — as predicted by Ray Kurzweil in his now famous essay The Law of Accelerating Returns. Data grows even faster than human knowledge. Data includes both the factual information (that is useful) and all the outputs of sensing devices. Knowledge is the extraction of meaning from data.

Cisco’s Dave Evan’s estimates there are about 35 billion sensors connected to the Internet — enabling an internet of things. That works out to 7 devices for every human on the planet — and growing.

Artificial intelligence is the only way for humans to evolve as fast as our data. If only a few people know about artificial intelligence then only a few people will reap the benefits. Knowing about AI is essential for us to ensure a future filled with greater liberties and opportunities for everyone’s mutual benefit.

Example to Illustrate Difference Between Data and Knowledge

Sensors record data. To make that data useful (actionable or meaningful) we must use systems (such as software) to process the data into information. For example, my heart rate monitor records each heartbeat and my location over time (it is GPS enabled). I know the exact time and place for each contraction of my heart as indicated by an electrical signal. Each of these data points is meaningless unless I can see a pattern of how all those heartbeats fit together. My goal is to see a pattern where I run faster at a lower heart rate. My monitor is old — so it takes me about 20 minutes to download the data, look at it (using the really bad software that came with the system), then determine if how I am progressing (or not). NONE of this data links anywhere. So it is useless to my  insurance company — too bad because I’d like them to know that I am fitter than the average person so they can lower my health insurance rates.

Big Data

The explosion of data caused by all the billions of people and billions of sensors offers a tremendous opportunity to find new value — both in terms of new ways to make money and new ways to make discoveries to improve the human condition.

It is comical when business leaders complain about “big data” problems — rather than seeing big data as a massive, unprecedented opportunity to gain competitive advantage by understanding more than competitors. IDC’s 2011 Digital Universe Study provides great insights on how businesses can “extract value from chaos.”

Big data is a relative term. Thirty years ago, it was unimaginable to have a way to access a terabyte of data. Now I can access 10,000x more than that — from my cell phone. Thirty years from now, my great-nieces and nephews will scoff at our struggles to make sense of exabytes of “chaotic” data (absurd because chaos is only a matter of not seeing inherent patterns within data). The story of science is the never ending discovery of new patterns in things we considered random, chaotic (or divine), such as: weather, astronomical events, plagues, diseases, etc.

Making Sense of It All

We recently released an application program interface (API) that enables programmers to build artificial intelligence into software applications. The value of this API is that is generates a lightweight ontology that reveals all patterns and associations within a data set. Feed it data. It tells you how any one element (byte, word, document, etc.) relates to another. Here is a link to a video that describes ai-one’s machine learning technology.

Yes, you can get a no-obligation copy to try for yourself — just contact us.

Overview Video of ai-one Topic-Mapper SDK for Machine Learning Applications

Monday, August 1st, 2011

Click this link for an video overview of the ai-one Topic-Mapper SDK for machine learning applications (8 minutes).