Get Early Access to the Vital AI Development Kit.
Sample Code, Documentation, and Bug-Fixes will be provided on an ongoing basis.
The Early Access program runs from April 23rd until August 1st, 2015 with a finalized release thereafter.
Welcome to the bleeding edge!
Create Intelligent Data-Driven Applications.
With multiple data analysis modules, Vital AI enables various types of Artificial Intelligence.
With machine learning, you can categorize data or make numerical predictions.
With Natural Language Processing, you can categorize text, extract entities (names of people, places, organizations, and things), extract sentiment, extract relationships.
With graph analysis, including social network analysis, you can determine important items and people in networks.
Using logical inference, you can use rules and infer new insights from your data.
Applications of Data Analytics and Data Science are numerous. Here are some example applications of Vital AI's technology.
Combine Machine Learning and Natural Language Processing into a Recommendation System for your Content, Products, or other Data Objects.
Model your data with Vital's tools to integrate multiple sources of data seamlessly.
Use machine learning to predict outcomes, and make better decisions. Use in Life Science Research, Logistics, Green Energy.
Use our conversational natural language interface to interact one-on-one with your users.
The VDK provides tools for data modeling, data object code generation, access to NoSQL data repositories, and data analysis modules for machine learning, natural language processing, and others.
With the VDK, your team can build, test, and deploy Intelligent Applications with processes to iterate and evolve your applications.
GUI and command-line tools are available to assist data modeling and deploying your code.
When it comes time to scale your application across additional server resources, push your code to the Vital AI Application Platform modules for deployment.
Use the vitalsigns command-line tool to generate your data-object code directly from your data model, keeping your code in sync with your data. Put an end to data mis-matches and integration problems.
Connect your application to scalable NoSQL data repositories such as DynamoDB, MongoDB, HBase, and Allegrograph.
Use machine learning prediction modules generated via Spark, Hadoop, and Natural Language Text-Analysis in your applications.
Data organized by Vital AI may easily be visualized by a variety of visualization tools, allowing for intuitive understanding of data relationships.
The Vital Client is added to your application, providing an API to access the Vital Platform. The Vital Client includes a cache of data objects to improve performance, the REST and Queue interfaces, and the VitalSigns data mapping component, which aligns your application data model with the Vital AI Platform. VitalSigns greatly improves development efficiency, eases integration, and eliminates additional data mapping and other data maintenance. The Vital AI platform includes Machine Learning, Natural Language Processing, Logical Inference, Graph Analytics, Data Analysis via Spark and Hadoop, Web Crawling, integration with Twitter and Facebook, and large scale semantic data management, available via the Vital Client. The Vital AI Platform is implemented using the Vital AI Service, which consists of 3 primary layers: Vital Prime, Vital Flow, and Spark+Hadoop. Vital Prime provides in-memory data storage and analysis. Vital Flow provides data processing via multi-step data flows which may include steps for text processing, graph analysis, machine learning, logical inference, integration with social networks, and integration with other external APIs. Hadoop provides long term storage of data via HDFS and HBase and analysis via Map/Reduce and Spark jobs.
Flexible server infrastructure for access to data repositories, running distributed data processing workflows, access to cached data, running real-time analytical scripts.
Distributed data processing workflows including predictions, natural language processing, graph analytics, and access to external data resources.
Large-scale, distributed, parallel, data analytics.
Vital AI provides a low-level Core data model which allows different data processing components to have a common data framework. This Core data model is extended to include objects for common use cases, such as "User", "Document", "Event", and others. This Vital Domain Model is extended to include objects that are required for an application. This becomes the Application Domain Model. For example, if an application will recommend movies to users, then the application may extend the domain model to include objects for "Film", "Actor", and "Genre". VitalSigns provides development tools to define a data model across the entire application and generate objects, which are then used in various components, including the Application's User Interface, Vital Flows, and Spark/Hadoop. This means that the definition of the "User" object is the same in the Application's User Interface, in Vital Flows for recommendations, and in the Spark/Hadoop machine learning jobs. This speeds development and eliminates many problems with data incompatibilities. VitalSigns handles data mapping across components, across different programming languages and data repositories.
All application models agree on a low-level data model.
All application models use the same data objects defined in the same model.
The data model captures the meaning of the data, allowing automatic interpretation of the data.
The Vital Platform uses Vital Prime servers in the implementation. Vital Prime provides in-memory data storage and analysis, interfaces to data repositories, and access to data processing using Vital Flows or Spark/Hadoop. Additionally, Vital Prime implements authentication / authorization for application users. Vital Prime is accessed via a REST interface. Event objects, such as user "clicks", can be sent to Vital Prime via the Queue interface. Event data sent via queue is typically sent into the Data Matrix, which counts events by type and group. Vital Prime processes queries using a connected data repository such as a text index, a triplestore (NoSQL) database, or HBase. Vital Prime provides a scripting interface. Such scripts are called "DataScripts". DataScripts implement application data processing functionality including defining data processing workflows ("Vital Flows"), processing real-time data analytics in the Data Matrix, or accessing the cache and connected data repositories. DataScripts can be run periodically using the JobEngine. DataScripts can be called via the application using the callFunction REST API call. Application functionality is typically implemented via a DataScript, including common features such as returning "top content", "recommended content", or "trending content".
Vital Flows are used to process data in workflows using different data access and processing components strung together. Vital Flows are distributed over servers using a queue. Vital Flows consist of steps and sub-steps, and a Flow may "call" another Flow, providing generalized data workflows. The NLP Flow Server handles various text processing functions, such as entity extraction, sentiment analysis, and topic categorization. The Graph Analytics Server handles large-scale graph analysis, such as for social network analysis. The Data Flow Server interfaces with data repositories for accessing and storing data. The Integrator Flow Server interacts with external APIs, including Facebook and Twitter APIs. The Inference Flow Server provides a logical inference and rules engine. The Machine Learning Flow Server uses learned models to categorize data. The Spark/Hadoop Flow Server access Spark/Hadoop jobs and data. DataScripts define and run a Vital Flow.
The Vital Platform uses Spark+Hadoop for large-scale data processing, including machine learning analysis. Data stored in HBase is available for analysis using Map/Reduce and Spark jobs, as is data from application events (such as log data), typically written to HDFS. A Vital Flow, initiated via DataScript, may trigger a Map/Reduce or Spark job. The output of a machine learning job is a learned model. The model is loaded into a Vital Flow step which can be used in Vital Flows in categorization.
During application development and maintenance, very significant resources are spent mapping and integrating data, including across different levels of the application architecture. Vital AI's goal with the Vital AI Development Kit (VDK) and the application platform modules is to reduce this resource drain to near zero, freeing up time for deeper data analysis and better applications. By using a common data model and standardized tools, user interfaces, application servers, data repositories, and data analysis tools can draw from the same data model, limiting errors, mismatches, and integration problems.
Model your data with description metadata
Version control your data model
Collaborate using your data model across your teams
Generate code from your data model
Use your data model througout analysis
Define parameters, features, algorithms in your data model
Deploy with data model as code artifact
Validate incoming/outgoing data with data model
Use data model in ongoing production data analytics jobs
See our presentation from the August 2014 Semantic Technology Conference for information about data models with Big Data.
See our presentation from the October 2013 NYC Semantic Technology Conference for information about developing Intelligent Apps.
Vital AI can support your team with expertise in data science and data analytics.
Let us focus our expertise in machine learning, natural language processing, and other forms of data analysis, on your needs.
Vital AI can provide software development services to implement applications using the Vital AI Development Kit and the Vital AI App Platform.
We can support your team on an hourly or project basis. We have experience in mobile, web, and desktop applications. Let our team help build an Intelligent Application for you.