SlideShare a Scribd company logo
Deep recurrent neural network
for sequence learning in Spark
Yves MABIALA
THALES
Outline
• Thales & Big Data
• On the difficulty of Sequence Learning
• Deep Learning for Sequence Learning
• Spark implementation of Deep Learning
• Use cases
– Predictive maintenance
– NLP
Thales & Big Data
Thales systems produce a huge quantity of data
Transportation systems (ticketing, supervision, …)
Security (radar traces, network logs, …)
Satellite (photos, videos, …)
which is often
Massive
Heterogeneous
Extremely dynamic
and where understanding the dynamics of the monitored phenomena
is mandatory Sequence Learning
What is sequence learning ?
Sequence learning refers to a set of ML tasks where a model has
to either deal with sequences as input, produce sequences as
output or both
Goal : Understand the dynamic of a sequence to
– Classify
– Predict
– Model
Typical applications
– Text
• Classify texts (sentiment analysis)
• Generate textual description of images (image captioning)
– Video
• Video classification
– Speech
• Speech to text
How is it typically handled ?
Taking into account the dynamic is difficult
– Often people do not bother
• E.g. text analysis using bag of word (one hot encoding)
– Problem for certain tasks such as sentiment classification (order of the words is important)
– Or use popular statistical approaches
• (Hidden) Markov model for prediction (and classification)
– Shortterm dependency (order 1) : 𝑃(𝑋$ = 𝑥 (𝑋$'( = 	𝑥$'(,… , 𝑋$', = 𝑥$',)⁄ ) = 𝑃(𝑋$ = 𝑥$ 𝑋$'( =	 𝑥$'()⁄
• Autoregressive approaches for time series forecasting
The chair is red 1 0 1 1 0 0 0 0
The cat is on a chair
The cat is young 1 1 0 0 1 1 0 0
1 1 1 0 0 1 1 1
The is chair red young cat on a
Link with artificial neural network ?
Artificial neural network is a set of statistical models inspired from the brain
– Transforms the input by applying at each layer (non linear) functions
– More layers equals more capabilities (≥ 2	hidden layers : Deep Learning)
• From manual features building to feature learning
Set of transformation and activation operations
– Affine : 𝒀 = 𝑾 𝒕
𝑿 + 𝒃, sigmoid activation :
𝟏
𝟏8𝐞𝐱𝐩	('𝑿)
, tanh activation : 𝒀 = 𝐭𝐚𝐧𝐡	( 𝑿)
• Only affine + activation layers = multi layer perceptron (available in Spark ML since 1.5.0)
– Convolutional : Apply a spatial convolution on the 1D/2D input (signal, image, …) : 𝐘 = 	𝒄𝒐𝒏𝒗 𝑿, 𝑾 + 𝒃
• Learns spatial features used for classification (images) , prediction
– Recurrent : Introduces a recurrent part to learn dependencies between observations (features related to
the dynamic)
Objective
– Find the best weights W to minimize the difference between the predicted output and the desired one
(using back-propagation algorithm)
input
hidden
layers
output
Able to cope with varying size sequences either at the input or at the output
Recurrent Neural Network basics
One to many
(fixedsize input,
sequence output)
e.g. Image captioning
Many to many
(sequence input to sequence
output)
e.g. Speech to text
Many to one
(sequence input to fixedsize
output)
e.g. Text classification
Artificial neural networks with one or more recurrent layers
Classical neural network Recurrent neural network
𝒀 𝒌'𝟑 𝒀 𝒌'𝟐 𝒀 𝒌'𝟏 𝒀 𝒌
𝒀 𝒌
𝑿 𝒌'𝟑 𝑿 𝒌'𝟐 𝑿 𝒌'𝟏 𝑿 𝒌
𝒀 𝒌 = 𝒇(𝑾 𝒕 𝑿 𝒌 + 𝑯𝒀 𝒌'𝟏)
𝑿 𝒌𝑿
𝒀 𝒌 = 𝒇(𝑾 𝒕 𝑿 𝒌)
𝒀
Unrolled through time
𝒀 𝒌'𝟑 𝒀 𝒌'𝟐 𝒀 𝒌'𝟏 𝒀 𝒌
𝑿
𝒀 𝒌'𝟑 𝒀 𝒌'𝟐 𝒀 𝒌'𝟏 𝒀 𝒌
𝑿 𝒌'𝟑 𝑿 𝒌'𝟐 𝑿 𝒌'𝟏 𝑿 𝒌
𝑿 𝒌'𝟑 𝑿 𝒌'𝟐 𝑿 𝒌'𝟏 𝑿 𝒌
𝒀
On the difficulty of training recurrent networks
RNNs are (were) known to be difficult to learn
– More weights and more computational steps
• More computationally expensive (accelerator needed for matrix ops : Blas or GPU)
• More data needed to converge (scalability over Big Data architectures : Spark)
– Theano, Tensor Flow, Caffe do not have distributed versions
– Unable to learn long range dependencies (Graves & Al 2014)
• At a given time t, RNN does not remember the observations before 𝑋J',
⇒ New RNN architectures with memory preservation (more context)
𝑍$ = 𝑓 𝑊N
O
𝑋$ + 𝐻N 𝑌$'(
𝑅$ = 𝑓(𝑊S
O
𝑋$ + 𝐻S 𝑌$'()
𝐻T$ = tanh(𝑊YJZ[
O
𝑋$ + 𝑈 𝑌$'(	o	𝑅$ ) 	
𝑌$	 = 1 − 𝑍$ 𝑌$'( + 𝑍$ 𝐻T$
LSTM GRU
Recurrent neural networks in Spark
Spark implementation of DL algorithms (data parallel)
– All the needed blocks
• Affine, convolutional, recurrent layers (Simple and GRU)
• Sigmoid, tanh, reLU activations
• SGD, rmsprop, adadelta optimizers
– CPU (and GPU backend)
– Fully compatible with existing DL library in Spark ML
Performance
– On 6 nodes cluster (CPU)
• 5.46 average speedup (some communication overhead)
– About the same speedup as MLP in Spark ML
Driver
Worker 1
Worker 2
Worker 3
Resulting gradients (2)
Model broadcast (1)
Use case 1 : predictive maintenance (1)
Context
– Thales and its clients build systems in different domains
• Transportation (ticketing, controlling)
• Defense (radar)
• Satellites
– Need better and more accurate maintenance services
• From planned maintenance (every x days) to an alert maintenance
• From expert detection to automatic failure prediction
• From whole subsystem changes to more localized reparations
Goal
– Detect early signs of a (sub)system failure using data coming
from sensors monitoring the health of a system (HUMS)
Use case 1 : predictive maintenance (2)
Example on a real system
– 20 sensors (20 values every 5 minutes), label (failure or not)
– Take 3 hours of data and predict the probability of failure in the next hour (fully
customizable)
Learning using MLLIB
Use case 1 : predictive maintenance (3)
Recurrent net learning
Impact of recurrent nets
– Logistic regression
• 70% detection with 70% accuracy
– Recurrent Neural Network
• 85% detection with 75% accuracy
Use case 2 : Sentiment analysis (1)
Context
– Social network analysis application developed at Thales (Twitter, Facebook,
blogs, forums)
• Analyze both the content of the texts and the relations (texts, actors)
– Multiple (big data) analysis
• Actor community detection
• Text clustering (themes)
• …
Focus on
– Sentiment analysis on the collected texts
• Classify texts based on their sentiment
Use case 2 : Sentiment analysis (2)
Learning dataset
– Sentiment140 + Kaggle challenge (1.5M labeled tweets)
– 50% positives, 50% negatives
Compare Bag of words + classifier approaches (Naïve Bayes, SVM, logistic
regression) versus RNN
Use case 2 : Sentiment analysis (3)
NB SVM
Log
Reg
NeuralNet
(perceptron)
RNN (GRU)
100 61.4 58.4 58.4 55.6 NA
1 000 70.6 70.6 70.6 70.8 68.1
10 000 75.4 75.1 75.4 76.1 72.3
100 000 78.1 76.6 76.9 78.5 79.2
700 000 80 78.3 78.3 80 84.1
Results
40
45
50
55
60
65
70
75
80
85
90 NB
SVM
LogReg
NeuralNet
RNN
(GRU)
The end…
THANK YOU !

More Related Content

Similar to Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala (20)

PDF
Introduction to Deep learning Models.pdf
cse21216
 
PPTX
Deep recurrent neutral networks for Sequence Learning in Spark
DataWorks Summit/Hadoop Summit
 
PDF
Deep Learning: Application & Opportunity
iTrain
 
PPTX
Introduction_to_Deep_learning_Standford_university by Angelica Sun
ssuser36b130
 
PDF
Separating Hype from Reality in Deep Learning with Sameer Farooqui
Databricks
 
PDF
A Platform for Accelerating Machine Learning Applications
NVIDIA Taiwan
 
PDF
Using Deep Learning to do Real-Time Scoring in Practical Applications
Greg Makowski
 
PPTX
Automatic Attendace using convolutional neural network Face Recognition
vatsal199567
 
PPT
Nural network ER. Abhishek k. upadhyay
abhishek upadhyay
 
PPTX
Deep learning: the future of recommendations
Balázs Hidasi
 
PPTX
Big Sky Earth 2018 Introduction to machine learning
Julien TREGUER
 
PPTX
Introduction to deep learning
Amr Rashed
 
PPTX
Deep Learning Sample Class (Jon Lederman)
Jon Lederman
 
PPT
deepnet-lourentzou.ppt
yang947066
 
PPT
Deep learning is a subset of machine learning and AI
leradiophysicien1
 
PPT
Overview of Deep Learning and its advantage
aqib296675
 
PPT
Introduction to Deep Learning presentation
johanericka2
 
PDF
Recurrent Neural Networks, LSTM and GRU
ananth
 
PPT
Temporal Hypermap Theory and Application
Abel Nyamapfene
 
PPTX
Deep learning (2)
Muhanad Al-khalisy
 
Introduction to Deep learning Models.pdf
cse21216
 
Deep recurrent neutral networks for Sequence Learning in Spark
DataWorks Summit/Hadoop Summit
 
Deep Learning: Application & Opportunity
iTrain
 
Introduction_to_Deep_learning_Standford_university by Angelica Sun
ssuser36b130
 
Separating Hype from Reality in Deep Learning with Sameer Farooqui
Databricks
 
A Platform for Accelerating Machine Learning Applications
NVIDIA Taiwan
 
Using Deep Learning to do Real-Time Scoring in Practical Applications
Greg Makowski
 
Automatic Attendace using convolutional neural network Face Recognition
vatsal199567
 
Nural network ER. Abhishek k. upadhyay
abhishek upadhyay
 
Deep learning: the future of recommendations
Balázs Hidasi
 
Big Sky Earth 2018 Introduction to machine learning
Julien TREGUER
 
Introduction to deep learning
Amr Rashed
 
Deep Learning Sample Class (Jon Lederman)
Jon Lederman
 
deepnet-lourentzou.ppt
yang947066
 
Deep learning is a subset of machine learning and AI
leradiophysicien1
 
Overview of Deep Learning and its advantage
aqib296675
 
Introduction to Deep Learning presentation
johanericka2
 
Recurrent Neural Networks, LSTM and GRU
ananth
 
Temporal Hypermap Theory and Application
Abel Nyamapfene
 
Deep learning (2)
Muhanad Al-khalisy
 

More from Spark Summit (20)

PDF
FPGA-Based Acceleration Architecture for Spark SQL Qi Xie and Quanfu Wang
Spark Summit
 
PDF
VEGAS: The Missing Matplotlib for Scala/Apache Spark with DB Tsai and Roger M...
Spark Summit
 
PDF
Apache Spark Structured Streaming Helps Smart Manufacturing with Xiaochang Wu
Spark Summit
 
PDF
Improving Traffic Prediction Using Weather Data with Ramya Raghavendra
Spark Summit
 
PDF
A Tale of Two Graph Frameworks on Spark: GraphFrames and Tinkerpop OLAP Artem...
Spark Summit
 
PDF
No More Cumbersomeness: Automatic Predictive Modeling on Apache Spark Marcin ...
Spark Summit
 
PDF
Apache Spark and Tensorflow as a Service with Jim Dowling
Spark Summit
 
PDF
Apache Spark and Tensorflow as a Service with Jim Dowling
Spark Summit
 
PDF
MMLSpark: Lessons from Building a SparkML-Compatible Machine Learning Library...
Spark Summit
 
PDF
Next CERN Accelerator Logging Service with Jakub Wozniak
Spark Summit
 
PDF
Powering a Startup with Apache Spark with Kevin Kim
Spark Summit
 
PDF
Improving Traffic Prediction Using Weather Datawith Ramya Raghavendra
Spark Summit
 
PDF
Hiding Apache Spark Complexity for Fast Prototyping of Big Data Applications—...
Spark Summit
 
PDF
How Nielsen Utilized Databricks for Large-Scale Research and Development with...
Spark Summit
 
PDF
Spline: Apache Spark Lineage not Only for the Banking Industry with Marek Nov...
Spark Summit
 
PDF
Goal Based Data Production with Sim Simeonov
Spark Summit
 
PDF
Preventing Revenue Leakage and Monitoring Distributed Systems with Machine Le...
Spark Summit
 
PDF
Getting Ready to Use Redis with Apache Spark with Dvir Volk
Spark Summit
 
PDF
Deduplication and Author-Disambiguation of Streaming Records via Supervised M...
Spark Summit
 
PDF
MatFast: In-Memory Distributed Matrix Computation Processing and Optimization...
Spark Summit
 
FPGA-Based Acceleration Architecture for Spark SQL Qi Xie and Quanfu Wang
Spark Summit
 
VEGAS: The Missing Matplotlib for Scala/Apache Spark with DB Tsai and Roger M...
Spark Summit
 
Apache Spark Structured Streaming Helps Smart Manufacturing with Xiaochang Wu
Spark Summit
 
Improving Traffic Prediction Using Weather Data with Ramya Raghavendra
Spark Summit
 
A Tale of Two Graph Frameworks on Spark: GraphFrames and Tinkerpop OLAP Artem...
Spark Summit
 
No More Cumbersomeness: Automatic Predictive Modeling on Apache Spark Marcin ...
Spark Summit
 
Apache Spark and Tensorflow as a Service with Jim Dowling
Spark Summit
 
Apache Spark and Tensorflow as a Service with Jim Dowling
Spark Summit
 
MMLSpark: Lessons from Building a SparkML-Compatible Machine Learning Library...
Spark Summit
 
Next CERN Accelerator Logging Service with Jakub Wozniak
Spark Summit
 
Powering a Startup with Apache Spark with Kevin Kim
Spark Summit
 
Improving Traffic Prediction Using Weather Datawith Ramya Raghavendra
Spark Summit
 
Hiding Apache Spark Complexity for Fast Prototyping of Big Data Applications—...
Spark Summit
 
How Nielsen Utilized Databricks for Large-Scale Research and Development with...
Spark Summit
 
Spline: Apache Spark Lineage not Only for the Banking Industry with Marek Nov...
Spark Summit
 
Goal Based Data Production with Sim Simeonov
Spark Summit
 
Preventing Revenue Leakage and Monitoring Distributed Systems with Machine Le...
Spark Summit
 
Getting Ready to Use Redis with Apache Spark with Dvir Volk
Spark Summit
 
Deduplication and Author-Disambiguation of Streaming Records via Supervised M...
Spark Summit
 
MatFast: In-Memory Distributed Matrix Computation Processing and Optimization...
Spark Summit
 
Ad

Recently uploaded (20)

PPT
AI Future trends and opportunities_oct7v1.ppt
SHIKHAKMEHTA
 
PPTX
apidays Helsinki & North 2025 - Running a Successful API Program: Best Practi...
apidays
 
PDF
Data Retrieval and Preparation Business Analytics.pdf
kayserrakib80
 
PDF
apidays Singapore 2025 - The API Playbook for AI by Shin Wee Chuang (PAND AI)
apidays
 
PDF
OPPOTUS - Malaysias on Malaysia 1Q2025.pdf
Oppotus
 
PPTX
Exploring Multilingual Embeddings for Italian Semantic Search: A Pretrained a...
Sease
 
PPTX
Listify-Intelligent-Voice-to-Catalog-Agent.pptx
nareshkottees
 
PPTX
apidays Singapore 2025 - Generative AI Landscape Building a Modern Data Strat...
apidays
 
PDF
apidays Singapore 2025 - Surviving an interconnected world with API governanc...
apidays
 
PDF
Avatar for apidays apidays PRO June 07, 2025 0 5 apidays Helsinki & North 2...
apidays
 
PPTX
apidays Munich 2025 - Building an AWS Serverless Application with Terraform, ...
apidays
 
PDF
apidays Helsinki & North 2025 - APIs in the healthcare sector: hospitals inte...
apidays
 
PPTX
Advanced_NLP_with_Transformers_PPT_final 50.pptx
Shiwani Gupta
 
PPT
tuberculosiship-2106031cyyfuftufufufivifviviv
AkshaiRam
 
PDF
What does good look like - CRAP Brighton 8 July 2025
Jan Kierzyk
 
PDF
Product Management in HealthTech (Case Studies from SnappDoctor)
Hamed Shams
 
PDF
Context Engineering for AI Agents, approaches, memories.pdf
Tamanna
 
PPTX
apidays Helsinki & North 2025 - APIs at Scale: Designing for Alignment, Trust...
apidays
 
PDF
Research Methodology Overview Introduction
ayeshagul29594
 
PPTX
apidays Singapore 2025 - From Data to Insights: Building AI-Powered Data APIs...
apidays
 
AI Future trends and opportunities_oct7v1.ppt
SHIKHAKMEHTA
 
apidays Helsinki & North 2025 - Running a Successful API Program: Best Practi...
apidays
 
Data Retrieval and Preparation Business Analytics.pdf
kayserrakib80
 
apidays Singapore 2025 - The API Playbook for AI by Shin Wee Chuang (PAND AI)
apidays
 
OPPOTUS - Malaysias on Malaysia 1Q2025.pdf
Oppotus
 
Exploring Multilingual Embeddings for Italian Semantic Search: A Pretrained a...
Sease
 
Listify-Intelligent-Voice-to-Catalog-Agent.pptx
nareshkottees
 
apidays Singapore 2025 - Generative AI Landscape Building a Modern Data Strat...
apidays
 
apidays Singapore 2025 - Surviving an interconnected world with API governanc...
apidays
 
Avatar for apidays apidays PRO June 07, 2025 0 5 apidays Helsinki & North 2...
apidays
 
apidays Munich 2025 - Building an AWS Serverless Application with Terraform, ...
apidays
 
apidays Helsinki & North 2025 - APIs in the healthcare sector: hospitals inte...
apidays
 
Advanced_NLP_with_Transformers_PPT_final 50.pptx
Shiwani Gupta
 
tuberculosiship-2106031cyyfuftufufufivifviviv
AkshaiRam
 
What does good look like - CRAP Brighton 8 July 2025
Jan Kierzyk
 
Product Management in HealthTech (Case Studies from SnappDoctor)
Hamed Shams
 
Context Engineering for AI Agents, approaches, memories.pdf
Tamanna
 
apidays Helsinki & North 2025 - APIs at Scale: Designing for Alignment, Trust...
apidays
 
Research Methodology Overview Introduction
ayeshagul29594
 
apidays Singapore 2025 - From Data to Insights: Building AI-Powered Data APIs...
apidays
 
Ad

Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala

  • 1. Deep recurrent neural network for sequence learning in Spark Yves MABIALA THALES
  • 2. Outline • Thales & Big Data • On the difficulty of Sequence Learning • Deep Learning for Sequence Learning • Spark implementation of Deep Learning • Use cases – Predictive maintenance – NLP
  • 3. Thales & Big Data Thales systems produce a huge quantity of data Transportation systems (ticketing, supervision, …) Security (radar traces, network logs, …) Satellite (photos, videos, …) which is often Massive Heterogeneous Extremely dynamic and where understanding the dynamics of the monitored phenomena is mandatory Sequence Learning
  • 4. What is sequence learning ? Sequence learning refers to a set of ML tasks where a model has to either deal with sequences as input, produce sequences as output or both Goal : Understand the dynamic of a sequence to – Classify – Predict – Model Typical applications – Text • Classify texts (sentiment analysis) • Generate textual description of images (image captioning) – Video • Video classification – Speech • Speech to text
  • 5. How is it typically handled ? Taking into account the dynamic is difficult – Often people do not bother • E.g. text analysis using bag of word (one hot encoding) – Problem for certain tasks such as sentiment classification (order of the words is important) – Or use popular statistical approaches • (Hidden) Markov model for prediction (and classification) – Shortterm dependency (order 1) : 𝑃(𝑋$ = 𝑥 (𝑋$'( = 𝑥$'(,… , 𝑋$', = 𝑥$',)⁄ ) = 𝑃(𝑋$ = 𝑥$ 𝑋$'( = 𝑥$'()⁄ • Autoregressive approaches for time series forecasting The chair is red 1 0 1 1 0 0 0 0 The cat is on a chair The cat is young 1 1 0 0 1 1 0 0 1 1 1 0 0 1 1 1 The is chair red young cat on a
  • 6. Link with artificial neural network ? Artificial neural network is a set of statistical models inspired from the brain – Transforms the input by applying at each layer (non linear) functions – More layers equals more capabilities (≥ 2 hidden layers : Deep Learning) • From manual features building to feature learning Set of transformation and activation operations – Affine : 𝒀 = 𝑾 𝒕 𝑿 + 𝒃, sigmoid activation : 𝟏 𝟏8𝐞𝐱𝐩 ('𝑿) , tanh activation : 𝒀 = 𝐭𝐚𝐧𝐡 ( 𝑿) • Only affine + activation layers = multi layer perceptron (available in Spark ML since 1.5.0) – Convolutional : Apply a spatial convolution on the 1D/2D input (signal, image, …) : 𝐘 = 𝒄𝒐𝒏𝒗 𝑿, 𝑾 + 𝒃 • Learns spatial features used for classification (images) , prediction – Recurrent : Introduces a recurrent part to learn dependencies between observations (features related to the dynamic) Objective – Find the best weights W to minimize the difference between the predicted output and the desired one (using back-propagation algorithm) input hidden layers output
  • 7. Able to cope with varying size sequences either at the input or at the output Recurrent Neural Network basics One to many (fixedsize input, sequence output) e.g. Image captioning Many to many (sequence input to sequence output) e.g. Speech to text Many to one (sequence input to fixedsize output) e.g. Text classification Artificial neural networks with one or more recurrent layers Classical neural network Recurrent neural network 𝒀 𝒌'𝟑 𝒀 𝒌'𝟐 𝒀 𝒌'𝟏 𝒀 𝒌 𝒀 𝒌 𝑿 𝒌'𝟑 𝑿 𝒌'𝟐 𝑿 𝒌'𝟏 𝑿 𝒌 𝒀 𝒌 = 𝒇(𝑾 𝒕 𝑿 𝒌 + 𝑯𝒀 𝒌'𝟏) 𝑿 𝒌𝑿 𝒀 𝒌 = 𝒇(𝑾 𝒕 𝑿 𝒌) 𝒀 Unrolled through time 𝒀 𝒌'𝟑 𝒀 𝒌'𝟐 𝒀 𝒌'𝟏 𝒀 𝒌 𝑿 𝒀 𝒌'𝟑 𝒀 𝒌'𝟐 𝒀 𝒌'𝟏 𝒀 𝒌 𝑿 𝒌'𝟑 𝑿 𝒌'𝟐 𝑿 𝒌'𝟏 𝑿 𝒌 𝑿 𝒌'𝟑 𝑿 𝒌'𝟐 𝑿 𝒌'𝟏 𝑿 𝒌 𝒀
  • 8. On the difficulty of training recurrent networks RNNs are (were) known to be difficult to learn – More weights and more computational steps • More computationally expensive (accelerator needed for matrix ops : Blas or GPU) • More data needed to converge (scalability over Big Data architectures : Spark) – Theano, Tensor Flow, Caffe do not have distributed versions – Unable to learn long range dependencies (Graves & Al 2014) • At a given time t, RNN does not remember the observations before 𝑋J', ⇒ New RNN architectures with memory preservation (more context) 𝑍$ = 𝑓 𝑊N O 𝑋$ + 𝐻N 𝑌$'( 𝑅$ = 𝑓(𝑊S O 𝑋$ + 𝐻S 𝑌$'() 𝐻T$ = tanh(𝑊YJZ[ O 𝑋$ + 𝑈 𝑌$'( o 𝑅$ ) 𝑌$ = 1 − 𝑍$ 𝑌$'( + 𝑍$ 𝐻T$ LSTM GRU
  • 9. Recurrent neural networks in Spark Spark implementation of DL algorithms (data parallel) – All the needed blocks • Affine, convolutional, recurrent layers (Simple and GRU) • Sigmoid, tanh, reLU activations • SGD, rmsprop, adadelta optimizers – CPU (and GPU backend) – Fully compatible with existing DL library in Spark ML Performance – On 6 nodes cluster (CPU) • 5.46 average speedup (some communication overhead) – About the same speedup as MLP in Spark ML Driver Worker 1 Worker 2 Worker 3 Resulting gradients (2) Model broadcast (1)
  • 10. Use case 1 : predictive maintenance (1) Context – Thales and its clients build systems in different domains • Transportation (ticketing, controlling) • Defense (radar) • Satellites – Need better and more accurate maintenance services • From planned maintenance (every x days) to an alert maintenance • From expert detection to automatic failure prediction • From whole subsystem changes to more localized reparations Goal – Detect early signs of a (sub)system failure using data coming from sensors monitoring the health of a system (HUMS)
  • 11. Use case 1 : predictive maintenance (2) Example on a real system – 20 sensors (20 values every 5 minutes), label (failure or not) – Take 3 hours of data and predict the probability of failure in the next hour (fully customizable) Learning using MLLIB
  • 12. Use case 1 : predictive maintenance (3) Recurrent net learning Impact of recurrent nets – Logistic regression • 70% detection with 70% accuracy – Recurrent Neural Network • 85% detection with 75% accuracy
  • 13. Use case 2 : Sentiment analysis (1) Context – Social network analysis application developed at Thales (Twitter, Facebook, blogs, forums) • Analyze both the content of the texts and the relations (texts, actors) – Multiple (big data) analysis • Actor community detection • Text clustering (themes) • … Focus on – Sentiment analysis on the collected texts • Classify texts based on their sentiment
  • 14. Use case 2 : Sentiment analysis (2) Learning dataset – Sentiment140 + Kaggle challenge (1.5M labeled tweets) – 50% positives, 50% negatives Compare Bag of words + classifier approaches (Naïve Bayes, SVM, logistic regression) versus RNN
  • 15. Use case 2 : Sentiment analysis (3) NB SVM Log Reg NeuralNet (perceptron) RNN (GRU) 100 61.4 58.4 58.4 55.6 NA 1 000 70.6 70.6 70.6 70.8 68.1 10 000 75.4 75.1 75.4 76.1 72.3 100 000 78.1 76.6 76.9 78.5 79.2 700 000 80 78.3 78.3 80 84.1 Results 40 45 50 55 60 65 70 75 80 85 90 NB SVM LogReg NeuralNet RNN (GRU)