Update on latest Artificial Intelligence API’s and services

The past few years has seen a blur of software giants releasing AI and Machine Learning themed APIs and services. I was, frankly, surprised at how many options there currently are for developers and companies. I think it’s a positive sign for the industry that there are multiple options from reputable brands when it comes to topics like visual and language recognition – these have almost become commodities. You also see strong consolidation into very typical categories like machine learning for building general predictive models, visual recognition, language and speech recognition, conversational bots and news analysis.

  • Google
    • Google Cloud Platform
      • Google Prediction API
        • Hosted Models (Demo)
          • Language Identifier
            • Spanish, English or French
          • Tag Categoriser
            • Android, appengine, chrome youtube
          • Sentiment Predictor
            • Positive or negative label for comments
        • Trained Models
          • Train your own model
      • Google Cloud Vision API
        • Label Detection
        • Explicit Content Detection
        • Logo Detection
        • Landmark Detection
        • Optical Character Recognition
        • Face Detection
        • Image Attributes
      • Cloud Speech API
        • Audio to text
        • >80 languages
        • Streaming Recognition
        • Inappropriate Content Filtering
        • Real-time or Buffered Audio Support
        • Noisy Audio Handling
      • Google Translate API
        • Text Translation
        • Language Detection
    • Tensor Flow
      • Open Source graph-based numerical computation and model building

 

  • Facebook
    • Bot for messenger
      • Ability to build a chat bot for your company that chats via facebook messenger

 

  • IBM
    • Bluemix
      • Alchemy
        • Alchemy Language
          • Keyword Extraction
          • Entity Extraction
          • Sentiment Analysis
          • Emotion Analysis
          • Concept Tagging
          • Relation Extraction
          • Taxonomy Classification
          • Author Extraction
        • Alchemy Data News
          • News and blog analysis
          • Sentiment, keyword, taxonomy matching
      • Concept Insights
        • Linking concepts between content
      • Dialog
        • Chat interaction
      • Language Translation
      • Natural Language Classifier
        • Phrase classification
      • Personality Insights
        • Social media content analysis to predict personal traits
      • Relationship Extraction
        • Finds relationships between objects and subjects in sentences
      • Retrieve and Rank
        • Detects signals in data
      • Speech To Text, Text to Speech
      • Tone Analyzer
        • Emotion analysis
      • Tradeoff Analytics
        • Decision making support
      • Visual Recognition
      • Cognitive Commerce
        • Support for driving commerce, recommendations etc
      • Cognitive Graph
        • Creates a knowledge graph of data thats typically difficult for a machine to understand
      • Cognitive Insights
        • Personalised commercial insights for commerce

 

 

  • Microsoft
    • Microsoft Cognitive Services
      • Vision
        • Categorise images
        • Emotion recognition
        • Facial detection
        • Anaylze video
      • Speech
        • Speech to text, text to speech
        • Speaker recognition
      • Language
        • Spell checking
        • Natural language processing
        • Complex linguistic analysis
        • Text analysis for sentiment, phrases, topics
        • Models trained on web data
      • Knowledge
        • Relationships between academic papers
        • Contextual linking
        • Interactive search
        • Recommendations
      • Search
        • Search
        • Search autosuggest
        • Image and metadata search
        • News search
        • Video search
      • Bot Framework
      • Content Moderator
      • Translator
      • Photo DNA Cloud Service

Did I miss something from this list? Comment and let me know!

Will the Real AI Please Stand Up? A search for structure in the AI world

Where is AI development going, and how do we know when we are there? The AI world is developing rapidly and and it can be quite challenging to keep up with everything that’s happening across the wide spectrum of AI capabilities.

While writing this post, I tried to discover a way for myself to organise new developments in AI, or at least differentiate between them. The first idea I had was to turn to definitions of AI. Here is an example from alanturing.net:

“Artificial Intelligence (AI) is usually defined as the science of making computers do things that require intelligence when done by humans. .. Research in AI has focussed chiefly on the following components of intelligence: learning, reasoning, problem-solving, perception, and language-understanding.”

It’s a good definition, but far too functional for my taste. When defining AI, I think about a quest to produce human level and higher intelligence, a sentient artificial consciousness, even an artificial life form. Working from this expectation, I decided to broaden my search to define the boundaries of AI.

I tried to find a taxonomy of AI, but none that I found satisfied me, because they were based on what we have built organically over the lifetime of AI research. What I wanted was a framework which indicated the potential, as well as the reality. I decided to take the search a level higher to look for linkages between intelligence in humans and AI, but I still did not find a satisfactory taxonomy of human intelligence related to AI topics.

While searching for models of human intelligence, I came upon the Cattell-Horn-Carroll (CHC) Theory of Cognitive Abilities. It’s a model which describes the different kinds of intelligence and general cognitive capabilities to be found in humans. I decided to try to map AI capabilities to this cognitive abilities list:

CHC Cognition Capabilities Mapped to AI
CHC Cognition Capabilities Mapped to AI

The cognitive ability which most closely matched my idea of what AI should aspire to was Fluid Reasoning, which describes the ability to identify patterns, solve novel problems, and use abstract reasoning. There are many AI approaches dedicated to providing reasoning-based intelligence, but they are not as yet at the level of human capabilities. I included neural Turing Machines in this category, after some deliberation. This article from New Scientist convinced me that the Neural Turing Machine is the beginning of independent abstract reasoning in machines. The working memory component allows for abstraction and problem solving.

Crystallised Intelligence, also known as Comprehension Knowledge, is about building a knowledge base of useful information about the world. I have linked this type of knowledge to Question-answer systems like IBM Watson which specialises in using stored knowledge.

After some puzzling, I associated Long Short Term Memory (LSTM) neural nets with long and short term memory. In this approach, the neural network node has a feedback loop to itself to reinforce its current state, and a mechanism to forget the current state. This serves as a memory mechanism to aid in reproducing big picture patterns, for instance. This article on deeplearning.net provided some clarity for me. I also added Neural Turing Machines into the short term memory category because of the working memory component.

Another interesting aspect which came up was the range of sensory cognitive capabilities which are addressed by machines, not only with software, but also with hardware like touch sensors and advances in processors, not to mention robotic capabilities like movement and agility. Some senses were also included like visual, auditory and olifactory.

This model is strongly focused on human intelligence and capabilities. It could probably be improved by adding a scale of competence to each capability and mapping each AI area onto the scale. Perhaps it also limits thinking about artificial intelligence, but it does at least provide a frame of reference.

Once I had produced this diagram, I really felt that I had reached a milestone. However, the elements above did not cover exactly what I was looking for in a sentient machine. After some search, I discovered another level of cognition which intrigued me – metacognition. This is the ability to think about thinking and reflect on your own cognitive capabilities and process. We use metacognition to figure out how to overcome our own shortcomings in learning and thinking. As far as I can tell, metacognition is still in the theoretical phase for AI systems.

The last puzzle-piece for my ideal AI is self-awareness. This is the ability to recognise yourself and see yourself as others would see you. There is much research and philosophy available on the topic, for example Dr’s Cruse and Schilling’s robot Hector, which they use as an experiment to develop emergent reflexive consciousness. There are promising ideas in this area but I believe it’s still in a largely theoretical phase.

The mapping above could be improved upon, but it was a good exercise to engage with the AI landscape. The process was interesting because AI approaches and domains had to be considered from different aspects until they fitted into a category. I expect the technology mapping to change as AI matures and new facets appear, but that’s for the future.

Do you dis/agree with these ideas? Please comment!