Slides I used for my dreamforce presentation. Learn how to use Salesforce Einstein Vision API, precisely the Image Classification API to generate a predictive deep learning model and use the same with some test images to see the prediction working. I use a fictional business and protein 3d structures to illustrate the power of this API - https://metamind.readme.io/docs/introduction-to-the-einstein-predictive-vision-service
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Identify Protein Structures Using Einstein
1. Identify Protein Structures using Einstein
@gthoppae
Gnanasekaran Thoppae, Salesforce Architect | Founder Suisse Romande Salesforce DG
2. Use case summary
• Suisse Romande Proteomics Lab provides its various services to the
academic community in the region.
• The lab has developed a custom app (LIMS) on its Salesforce platform.
• A community portal allows its external users to login and order services.
• Protein structure identification app keeps its customers engaged, business
differentiated.
7. Einstein Platform Services – Authorization
Setup
1. Register for the Einstein platform services
account – https://api.einstein.ai/signup
2. Download private key – einstein_platform.pem
3. Construct JSON web token (JWT) and sign
with your private key -
https://api.einstein.ai/token
4. Obtain a time limited OAUTH token
5. Use the token to call the API
12. Summary
• Creative way to use known protein 3d structure image data
• Einstein Platform Services overview
• Image data used for creating the custom classifier
• Einstein Vision API exploration using Postman REST client
13. Conclusion
• Deep learning methodologies are mature and ready to be
exploitable.
• Large number of images are required to create a accurate
models.
• Image analysis has application in almost all domains and new
use cases are emerging.
Services: Protein & peptide separation, digestion & labelling, mass spectrometry
Lab information management system (LIMS) helps organize the core processes
Gathers metadata about samples, experiments as well as provides results
Leverages Einstein Image Classification service
There exists 20 different amino acids in our body.
Each amino acid joins together in long chains by forming peptide bond
These chains are called polypeptides
Through the hydrogen bonding between amino acids in these chains, local conformations can be formed namely alpha-helix and beta-sheets. These are generally called secondary structures
The protein structure will bend and fold to form stable structures that allows it to perform a biologically important function.
Protein molecules are crystallized
They are subjected to X-ray beams and the diffraction pattern is recorded
Based on the atomic distances between atoms a 3d electron density map is produced
A protein model is then built from it
There are a few ingenious ways Suisse Romande Proteomics Lab keeps its prospects and customers engaged.
It has created a game called “know you protein” using Salesforce Einstein AI.
It shows a random image of a 3D protein structure and asks what type of protein it is.
Given the background of the audience and their capacity to recognize protein folding patterns, people might guess correctly or not.
In this example, this protein structure is ovalbumin from egg white and this particular customer guess rightly.
Let us see how they built this game using Einstein Image Classification.
Einstein image classification API is one of capability of the Salesforce Einstein platform services.
It simplifies the underlying technology for image based prediction use cases.
Anyone can get started using this API by simply
creating an account on Einstein.ai website – https://api.Einstein.ai/signup
obtaining a one-time RSA private key
registering a remote site to allow your org to connect to Einstein service
The API communication uses signed JSON Web Token (JWT) payload to generate Oauth token
The API is extensively documented with easy to follow CURL snippets that provide “instant gratification”.
Image prediction consist of 4 steps:
Creating a dataset with labels – in our case, labels are a group of similar 3d protein structure images
Training the dataset and generate a predictive model
Classifying test data using the generated model
Obtaining prediction results out of the
The image classification service provides some standard image classifiers and also allows you to build custom classifiers as per your needs.
In order to create a custom classifier you must have a good collect of similar, related images.
The quality of predictions you receive is as good as the quality of the training dataset you use for the model generation.
Einstein image classification API is one of capability of the Salesforce Einstein platform services.
It simplifies the underlying technology for image based prediction use cases.
Anyone can get started using this API by simply
creating an account on Einstein.ai website – https://api.Einstein.ai/signup
obtaining a one-time RSA private key
registering a remote site to allow your org to connect to Einstein service
The API communication uses JSON Web Token (JWT) payload to generate Oauth token
The API is extensively documented with easy to follow CURL snippets that provide “instant gratification”.
Image prediction consist of 4 steps:
Creating a dataset with labels – in our case, labels are a group of similar 3d protein structure images
Training the dataset and generate a predictive model
Classifying test data using the generated model
Obtaining prediction results out of the
The image classification service provides some standard image classifiers and also allows you to build custom classifiers as per your needs.
In order to create a custom classifier you must have a good collect of similar, related images.
The quality of predictions you receive is as good as the quality of the training dataset you use for the model generation.
The “Known your protein” dataset consists of 3 groups of proteins namely Lysozyme, Hemoglobin (globular proteins) and Porin (membrane protein).
Each group contains 50 images in different orientation and configurations
Based on the secondary structure in this ribbon model the image classifier predicts the similarity and likelihood of a given test image.
Now let us see how to interact with the Einstein Image Classification API using a REST UI client
Artificial Intelligence Basics module – https://trailhead.salesforce.com/modules/ai_basics
Quick start: Einstein image classification - https://trailhead.salesforce.com/projects/predictive_vision_apex
Build a cat rescue app that recognizes cat breeds - https://trailhead.salesforce.com/projects/build-a-cat-rescue-app-that-recognizes-cat-breeds
Search the #DF17 agenda builder for “PredictionIO”