AI - A recap of the market
Machine Learning history and overview
Deep Learning explained in 2 slides
Deep Learning in Microsoft
Galaxy Classification in-depth
A demo!
1. Is it a bird, plane or a galaxy?
Image Classification with SQL
Server
Julian Lee
Advanced Analytics & AI Technical Specialist
Global Black Belt - ANZ
2.
3.
4. Challenges Respondents
There is no defined business case 42%
Not Clear what AI can be used for 39%
Don’t have the required skills 33%
Need first to invest in modernizing data
management
29%
Don’t have the budget 23%
Not certain what is needed for
implementing an AI system
19%
AI systems are not proven 14%
Don’t have the right processes 13%
Not sure what AI means 3%
30. Source: Willett et al, “Galaxy Zoo 2: detailed morphological
classifications for 304,122 galaxies from the Sloan Digital Sky
Survey”, https://arxiv.org/abs/1308.3496
39. library(mrsdeploy)
remoteLogin("https://example.com:12800")
apiPredictGalaxyClass <- function(id, img)
{
imgData <- data.frame(specobjid=id, img=img, stringsAsFactors=FALSE)
sqlImgData <- RxSqlServerData("galaxyImgData")
rxDataStep(imgData, sqlImgData, overwrite=TRUE)
sqlrutils::executeStoredProcedure(spPredictGalaxyClass)$data
}
apiGalaxyModel <- publishService("apiPredictGalaxyClass", apiPredictGalaxyClass, spPredictGalaxyClass,
inputs=list(id="character", img="character"),
outputs=list(pred="data.frame"))
cat(apiGalaxyModel$swagger(), file="swagPredictGalaxyClass.json")
remoteLogout()
Login to the remote R
server
Call the stored proc
created earlier
Create a web service
with defined inputs
and outputs
Generate Swagger JSON
to represent API
To understand Deep Learning – first principles of Neural Networks
Essentially Deep Learning is a ‘rebranding” of neural networks. Newer algorithms to enable more complex networks, results in ‘deep’
Convolution Neural Networks (CNNs) / Recurrent Neural Networks (RNNs)
More complex or deep
Ability to use multi-dimensional arrays to train a network
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4965871/
Benchmarking on State of the Art Deep Learning Software Tools
https://chaosmail.github.io/deeplearning/2016/10/22/intro-to-deep-learning-for-computer-vision/
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4965871/
http://brohrer.github.io/how_convolutional_neural_networks_work.html
In standard applications, convolution layers are followed by a pooling layer (Box 2). In this example, the lowest level convolutional units operate on 3 × 3 patches, but deeper ones use and capture information from larger regions. These convolutional pattern‐matching layers are followed by one or multiple fully connected layers to learn which features are most informative for classification. For each layer with learnable weights, three example images that maximize some neuron output are shown.
A pre‐trained network can be used as a generic feature extractor
Feeding input into the first layer (left) gives a low‐level feature representation in terms of patterns (left to right) present in smaller patches in every cell (top to bottom). Neuron activations extracted from deeper layers (right) give rise to more abstract features that capture information from a larger segment of the image.
Image Database – 100 million images to describe 100k sysnets or Synonym-net
Challenge involves classification, localization, and detection
Deep Neural Network of 152 Layers – 5 times more than previous
Achieve a Word Error Rate of 6.3% - lowest in the industry
http://blog.qure.ai/notes/neural-networks-for-genomics
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4965871/
Autoencoders for dimensionality reduction and feature extraction – ADAGE (http://msystems.asm.org/content/1/1/e00025-15)
Deep learning to predict gene or transcript expression levels – D-Gex Method (https://github.com/uci-cbcl/D-GEX
Convolutional networks for epigenomics – DeepBind (http://www.nature.com/nbt/journal/v33/n8/full/nbt.3300.html)
Deep Learning on Biological Imaging Analysis