SlideShare ist ein Scribd-Unternehmen logo
1 von 85
Modeling and AI: Friends or foes
Jordi Cabot
@softmodeling – jordicabot.com June 2019
About
SOM Research Lab
Software runs the world. Models run the software
Our mission
We are interested in the
broad area of systems and
software engineering,
especially promoting the
rigorous use of models and
engineering principles
while keeping an eye on the
most unpredictable element
in any project: the people.
Flickr/clement127
The AI subteam
Preliminaries
Model-Driven Engineering
https://mdse-book.com/
To model, or not to model, this is the WRONG
question
- Shakespeare
Artificial Intelligence
Cognification:
The application of knowledge
to boost the performance
and impact of a process
Cognification
Artificial
Intelligence
Machine
Learning
Deep Learning
© Prof. Dr. Andreas Vogelsang – TU Berlin
Why should you care?
Kai-Fu Lee
AI
Coder
Modeler
How can we be friends:
(1) MDE for AI
• Grady Booch – history of softwre engineering
The entire history of software engineering is that of
the rise in levels of abstraction
- Grady Booch
Also true for AI -> MDE is the
best tool for this evolution
AI is software, too! (and rather immature)
AI
landscape
Could
B from
DSLs
PIM/PSM
M2M
M2T
…
Modeling ML pipelines (data
preparation is more challenging
than the learning itself)
As expected, all players are moving in
this direction
• Key to get more users that will then become
users of their underlying infrastructure
Azure ML Studio
Orange
RapidMiner
IBM SPSS Modeler
Nvidia digits
Knime
Model-Driven Bot Development:
Xatkit
https://github.com/xatkit-bot-platform
Gwendal Daniel, Jordi Cabot, Laurent Deruelle, Mustapha Derras:
Multi-platform Chatbot Modeling and Deployment with the Jarvis
Framework. CAiSE 2019: 177-193
Let’s create a chatbot to help
newcomers to write issues on Github!
Alright! It’s just a set of questions &
answers, this will be pretty simple!
Narrator It wasn’t.
Once upon a time
What went wrong?
if(‘’ I have an issue’’) {
return ‘’In which
repository?’’
}
Chatbots are complex systems
Conversation
Logic
Text Processing
External Services
Messaging
Platforms
Deployment
Evolution
Maintenance
Tests
AI Chatbot
landscape
MDD of (chat)bots with Xatkit
• Raise the level of abstraction at what chatbots are
defined
– Focus on the core aspects of the chatbot
• Conversation and user interactions
• Action computations
– Independent from specific implementation technologies
• Automate the deployment and execution of the
modeled chatbot over multiple platforms
Chatbot dev – Example: Bots for OSS
Slack bot to help users open a well-described new issue on a GitHub
project
If the User Wants To Open Issue
Reply « In which repository? » on Slack
User Intent
Action Parameters Platform
Conversation
step
Intent language
Library example
intent OpenNewIssue {
inputs {
‘’I want to create an issue’’
‘’Open an issue’’
}
}
intent SpecifyRepository {
inputs {
‘’In repository MyRepo’’
}
outContext Repository {
name <- ‘’MyRepo’’ (@any)
}
}
Execution Language
Import library Example
Import platform Slack
Import platform Github
Listen to Slack
on intent OpenNewIssue do
Slack.reply(‘’Sure, I’ll help you to write
your issue! Which repository is for?’’)
on intent SpecifyRepository do
Slack.reply(‘Great, I’ll open an issue
related to repository {$Repository.name}.’’)
[… a few intents later with all the info …]
Github.openIssue({$Repository.name},
{$Issue.title}, {$Issue.content})
Platform Language
Abstract platform Chat
actions {
PostMessage(message, channel)
Reply(message)
}
}
Platform Slack extends Chat Platform Github
action {
openIssue(repository, title, content)
}
}
Xatkit Framework
Chatbot
Designer
Intent Recognition Providers
(platform-specific)
Platorm Package
Intent Package
Xatkit Modeling
Language Chatbot
User
Instant
Messaging
Platforms
Xatkit Runtime
Execution Package
uses
uses
Platform-independent
chatbot definition
External
Services
Deployment
Configuration
Platform
Designer
How can we be friends:
(2) AI for MDE
AI to simplify development
Smart Autocomplete
Smart Autocomplete
https://ai.facebook.com/blog/aroma-ml-for-
code-recommendation/
Also in MDE land....
Jordi Cabot, Robert Clarisó, Marco Brambilla, Sébastien Gérard:
Cognifying Model-Driven Software Engineering. STAF Workshops 2017: 154-160
Mendix Assist
OutSystems.ai
Many other useful applications to explore
Modeling bot as virtual assistant (kind of an “expert system”)
Model inferencer to discover schema of unstructured data
A code generator that mimicks a company programming style
A real-time model reviewer ( “pair-modeling” )
A morphing modeling tool that adapts to the user profile
(expertise, typical usage)
AI to skip modeling:
An ML-based approach to learn
model transformations
Loli Burgueño, Jordi Cabot and Sebastien Gerard. An LSTM-Based Neural
Network Architecture for Model Transformations
Model transformations chain
Original model
… CODE
Software code1 refinementst n refinementth
Model-to-model
Transformation
Model-to-text
Transformation
CODE
CODE
• Requires learning a new language (the MT Language)
• Time consuming
• Error prone
Let’s try to learn the MTs automatically
Input
Output
Training Transforming
ML Input OutputML
Machine Learning
Artificial Neural Networks
Deep Networks
Recurrent networks
LSTM
BPMN
Petri nets
BPMN Petri Net
MTs ≈ sequence-to-sequence arch
• Combine two LSTM for better results
• Avoids fixed size input and output constraints
Tree-to-Tree Encoder-decoder arquitecture
InputTree
EmbeddingLayer
Encoder
LSTM network
OutputTree
ExtractionLayer
Decoder
LSTM network
AttentionLayer
InputModel
OutputModel
• Pre- and post-processing required to…
• represent models as trees
• reduce the size of the training dataset by using a canonical form
• rename variables to avoid the “dictionary problem”
InputModel
(preprocessed)
InputTree
EmbeddingLayer
Encoder
LSTM
network
OutputTree
ExtractionLayer
OutputModel
(non-postprocessed)
Decoder
LSTM
network
AttentionLayer
InputModel
OutputModel
Preprocessing
Postprocessing
Complete picture ML is
NOT a
fast
learner!
AI for model management:
Model similarity
with Graph Kernels
Robert Clarisó, Jordi Cabot:
Applying graph kernels to model-driven engineering
problems. MASES@ASE 2018: 1-5
Model diversity for better testing
If I ask a
solver for
25
solutions, I
only get
three
REALLY
different
ones!
Graph-based ML for more diverse results
Feature-based methods
• Graphs summarized as feature vectors
• The choice of the features is key
• E.g. of features: number of vertices, edges,
avg/min/max degree…
Easy to use BUT loss of precision
Kernel-based methods
• Goal
– Polynomial times
– Capture relevant topological information
• How
– Compare graph structures: path, subtrees, cycles
– Different Kernel methods. E.g. random walks
Best Kernel depends on the problem!
Let’s
revisit this
problem
Kernels to
cluster the
solutions and
choose
representative
examples
The leader of a dept works
in a different dept (error?)
Might be missed by
feature vector encoding
(MDE <-> AI)
meta
A model-
based bot
used to
build
models
Also for
BPMN
models
Joint work with Josep Carmona’s team
(go to see From Process models to chatbots on Wed)
Smart
modeling
tools to
generate
smart apps
Open Challenges
All this is very
fancy and
fashionable
BUT
Where is my data?
Every few years, a new initiative to collect
models in a repo pops up but in the end…
Data augmentation techniques? (mutation, GANs,…)
• Size of the training dataset
• Diversity in the training set
• Computational limitations of ANNs
– i.e., mathematical operations
• Generalization problem
– predicting output solutions for input models very different from
the training distribution it has learnt from
Limits of Neural Networks
Models
Community
Modeling needs to
adapt
- AI is here to stay
- Let’s see it as an opportunity
- To showcase the benefits of
modeling
- To improve the modeling
experience and broaden its user
base
Models are not
enough
We need (smart)
processing
capabilities to get the
most out of themhttps://modelia.eu/
Summary
Exciting times to be a modeler!!
Let’s work
together
jordi.cabot@
icrea.cat
@softmodeling
modeling-
languages.com
Back-up slides
Model representation
MODEL
ASSOCOBJ
c
Class
ATTS
isAbstract name
false family
OBJ
a
Attribute
ATTS
multivalued name
false surname
OBJ
d
t
Datatype
ATTS
name
String
at
t
c a
ASSOC
typ
e
a d
t
Preliminary results
• Correctness
– Measured through the accuracy and validation
loss
Preliminary results
• Performance
1. How long does it
take for the training
phase to complete?
Preliminary results
• Performance
1. How long does it
take for the training
phase to complete?
2. How long it takes to transform an
input model when the network is
trained?
Software Modeling and Artificial Intelligence: friends or foes?

Weitere ähnliche Inhalte

Was ist angesagt?

Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
Piero Fraternali
 
Model driven software engineering in practice book - chapter 7 - Developing y...
Model driven software engineering in practice book - chapter 7 - Developing y...Model driven software engineering in practice book - chapter 7 - Developing y...
Model driven software engineering in practice book - chapter 7 - Developing y...
Marco Brambilla
 
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Jordi Cabot
 
01 introduction to_module
01 introduction to_module01 introduction to_module
01 introduction to_module
APU
 
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
Marco Brambilla
 

Was ist angesagt? (20)

Lightweight Model-Driven Engineering
Lightweight Model-Driven EngineeringLightweight Model-Driven Engineering
Lightweight Model-Driven Engineering
 
The secret life of rules in Software Engineering
The secret life of rules in Software EngineeringThe secret life of rules in Software Engineering
The secret life of rules in Software Engineering
 
Lessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformLessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platform
 
Towards a UML and IFML mapping to GraphQL
Towards a UML and IFML mapping to GraphQLTowards a UML and IFML mapping to GraphQL
Towards a UML and IFML mapping to GraphQL
 
All Researchers Should Become Entrepreneurs
All Researchers Should Become EntrepreneursAll Researchers Should Become Entrepreneurs
All Researchers Should Become Entrepreneurs
 
Web technologies: Model Driven Engineering
Web technologies: Model Driven EngineeringWeb technologies: Model Driven Engineering
Web technologies: Model Driven Engineering
 
Model driven software engineering in practice book - chapter 7 - Developing y...
Model driven software engineering in practice book - chapter 7 - Developing y...Model driven software engineering in practice book - chapter 7 - Developing y...
Model driven software engineering in practice book - chapter 7 - Developing y...
 
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
Developing Open Source MDE Tools / Eclipse Stories and Lessons Learned - OSS4...
 
Introduction to architectures based on models, models and metamodels. model d...
Introduction to architectures based on models, models and metamodels. model d...Introduction to architectures based on models, models and metamodels. model d...
Introduction to architectures based on models, models and metamodels. model d...
 
01 mde principles
01 mde principles01 mde principles
01 mde principles
 
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
Model-Driven Software Engineering in Practice - Chapter 6 - Modeling Language...
 
Model Drift Monitoring using Tensorflow Model Analysis
Model Drift Monitoring using Tensorflow Model AnalysisModel Drift Monitoring using Tensorflow Model Analysis
Model Drift Monitoring using Tensorflow Model Analysis
 
01 introduction to_module
01 introduction to_module01 introduction to_module
01 introduction to_module
 
GOF Design pattern with java
GOF Design pattern with javaGOF Design pattern with java
GOF Design pattern with java
 
Oa 4 month exp
Oa 4 month expOa 4 month exp
Oa 4 month exp
 
Introduction to MDA
Introduction to MDAIntroduction to MDA
Introduction to MDA
 
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
 
Meta-modeling: concepts, tools and applications
Meta-modeling: concepts, tools and applicationsMeta-modeling: concepts, tools and applications
Meta-modeling: concepts, tools and applications
 
Applying Refactoring Tools in Practice
Applying Refactoring Tools in PracticeApplying Refactoring Tools in Practice
Applying Refactoring Tools in Practice
 
Workshop proposal
Workshop proposalWorkshop proposal
Workshop proposal
 

Ähnlich wie Software Modeling and Artificial Intelligence: friends or foes?

Lessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at NetflixLessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at Netflix
Justin Basilico
 
Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011
Hugo Bruneliere
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine Learning
Paco Nathan
 

Ähnlich wie Software Modeling and Artificial Intelligence: friends or foes? (20)

Smart modeling of smart software
Smart modeling of smart softwareSmart modeling of smart software
Smart modeling of smart software
 
Generative AI in CSharp with Semantic Kernel.pptx
Generative AI in CSharp with Semantic Kernel.pptxGenerative AI in CSharp with Semantic Kernel.pptx
Generative AI in CSharp with Semantic Kernel.pptx
 
Lessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at NetflixLessons Learned from Building Machine Learning Software at Netflix
Lessons Learned from Building Machine Learning Software at Netflix
 
[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...
[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...
[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...
 
What are the Unique Challenges and Opportunities in Systems for ML?
What are the Unique Challenges and Opportunities in Systems for ML?What are the Unique Challenges and Opportunities in Systems for ML?
What are the Unique Challenges and Opportunities in Systems for ML?
 
2014 01-ticosa
2014 01-ticosa2014 01-ticosa
2014 01-ticosa
 
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
Building a MLOps Platform Around MLflow to Enable Model Productionalization i...
 
Deep Learning with CNTK
Deep Learning with CNTKDeep Learning with CNTK
Deep Learning with CNTK
 
Data Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLData Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAML
 
TechDayPakistan-Slides RAG with Cosmos DB.pptx
TechDayPakistan-Slides RAG with Cosmos DB.pptxTechDayPakistan-Slides RAG with Cosmos DB.pptx
TechDayPakistan-Slides RAG with Cosmos DB.pptx
 
Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software Engineering
 
201909 Automated ML for Developers
201909 Automated ML for Developers201909 Automated ML for Developers
201909 Automated ML for Developers
 
Introduction to ML.NET
Introduction to ML.NETIntroduction to ML.NET
Introduction to ML.NET
 
Global Azure Bootcamp - ML.NET for developers
Global Azure Bootcamp - ML.NET for developersGlobal Azure Bootcamp - ML.NET for developers
Global Azure Bootcamp - ML.NET for developers
 
Building intelligent applications with Large Language Models
Building intelligent applications with Large Language ModelsBuilding intelligent applications with Large Language Models
Building intelligent applications with Large Language Models
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine Learning
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 
BSSML16 L10. Summary Day 2 Sessions
BSSML16 L10. Summary Day 2 SessionsBSSML16 L10. Summary Day 2 Sessions
BSSML16 L10. Summary Day 2 Sessions
 
ALT
ALTALT
ALT
 

Mehr von Jordi Cabot

Mehr von Jordi Cabot (20)

AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?
 
Model-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesModel-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architectures
 
Modeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineModeling should be an independent scientific discipline
Modeling should be an independent scientific discipline
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
 
How to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortHow to sustain a tool building community-driven effort
How to sustain a tool building community-driven effort
 
The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21
 
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosIngeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulos
 
Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit
 
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model Transformations
 
WAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsWAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIs
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?
 
UMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesUMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL Databases
 
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Multi-Platform Chatbot Modeling and Deployment with the Xatkit FrameworkMulti-Platform Chatbot Modeling and Deployment with the Xatkit Framework
Multi-Platform Chatbot Modeling and Deployment with the Xatkit Framework
 
Model-driven Round-trip Engineering of REST APIs
Model-driven Round-trip Engineering of REST APIsModel-driven Round-trip Engineering of REST APIs
Model-driven Round-trip Engineering of REST APIs
 
Robust Hashing for software models
Robust Hashing for software models Robust Hashing for software models
Robust Hashing for software models
 
Automatic discovery of Web API Specifications: an example-driven approach
Automatic discovery of Web API Specifications: an example-driven approachAutomatic discovery of Web API Specifications: an example-driven approach
Automatic discovery of Web API Specifications: an example-driven approach
 
A UML profile for OData Web APIs
A UML profile for OData Web APIsA UML profile for OData Web APIs
A UML profile for OData Web APIs
 
EMF-REST: Generation of RESTful APIs from Models
EMF-REST: Generation of RESTful APIs from ModelsEMF-REST: Generation of RESTful APIs from Models
EMF-REST: Generation of RESTful APIs from Models
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
 

Kürzlich hochgeladen

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Kürzlich hochgeladen (20)

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 

Software Modeling and Artificial Intelligence: friends or foes?

Hinweis der Redaktion

  1. Thank you for the invitation. It’s an honour to be here. I’ll talk about the intersection between these two concepts and how they can help each other I’ll try to cover the state of the art but also to focused on some specific applications we’re working on in my team
  2. Similar to many of you
  3. We have a soft side
  4. They do the work, I take care of the marketing
  5. Before we talk about the relationship between modeling and AI, we should make sure we have a common understanding of these concepts
  6. I’ll skip the introduction to MDE since you’re all experts on this here.
  7. There is always a model and we all model, at least in our head, the real question is whether to make the models explícit And this is linked to a trade-off analysis of the cost of these models vs the benefits of having them explícit. As we’ll see, AI can reduce the cost and maximize these benefits
  8. We typically use the word AI or even just ML as these are the most fashionable concepts. And we’ll use those in this talk. But I prefer the word cognification, taken from these book.
  9. Todo tendrá la opción de funcionar con o sin cognificación.
  10. More than determining the exact limits of each circle the point is make clear that not everything can be reduced to Deep learning
  11. So we may even wonder whether there is a future for us
  12. Relationship between humans and AI depending on the type of tasks depending on two dimensions: compassion/empathy and creativity/optimization Best results always in the category where both have some kind of coooperation
  13. We need to have a better perspective of what AI is (and is not) and how we can use it as a valuable tool
  14. In fact they are very Good Friends that can help each other a lot. I’ll spend the rest of the talk describing how they can help each ohter.
  15. Plenty of complexity and heterogeneity. This is the typical scenario where modeling abstractions can help a lot. The AI landscape could beneffit from DSLs, PIM, transformations, …. We’re very Good at this. Huge opportunity for us to contribute to the AI world.
  16. The
  17. A way to facilitate the creation of ML models. The easier to use the tool, the more users they get for their infrastructure
  18. Still, typicall rather low-level and not integrated with the rest of the company Information System.
  19. Plenty of complexity and heterogeneity. This is the typical scenario where modeling abstractions can help a lot. The AI landscape could beneffit from DSLs, PIM, transformations, …. We’re very Good at this. Huge opportunity for us to contribute to the AI world.
  20. We need to define the potential intentions of the users, The actions / executions to be done in response And the platform (and services
  21. All of you old enough may have a feeling of deja vu
  22. A lot of initiatives going on in the programming IDEs domain
  23.  It shows a customary usage of InputStream in decoding bitmaps. Furthermore, this recommendation demonstrates a good practice to catch the potential IOException when opening the InputStream. If this exception occurs in runtime and is not caught, the app will crash immediately. A responsible engineer should extend the code using this recommendation and handle this exception properly.
  24. Even powerpoint has an asssitant
  25. Beyond an autocomplete similar to the Mendix Assist, they also offer another interesting type of suggestions for data models.
  26. We all can imagine several potential applications And many of these ideas are not really new. It’s just that they are now posible thanks to better data and tools With Antoni we had already a Project 2011 on this topic
  27. Typical MDD process
  28. In the end we choose LSTM (Long short Term memory networks) since they are able to remember more context (RNN already remember due to the backpropagation but LSTM remember more long distance) When transforming models you need to have this capacity of remembering parts of the models you’ve seen and matched before
  29. A typical sequence-to-sequence arch combines two LSTMs for better results especially regarding constraints on the input and output sizes.
  30. The encoder transform the sequence into a fixed size numeric vector. The decoder reverses the process
  31. We follow a variation that uses tree embeddings as this is closer to models
  32. AI can also help in managing and sorting models
  33. Which is clearly inefficient If we can somehow cluster the solutions and just take one of each type, we would get much more meaningful information!
  34. And you may even need to define your own
  35. Which is clearly inefficient
  36. And you may even need to define your own
  37. And you may even need to define your own
  38. I haven’t yet seen this combination much. E.g. apps that include facial recognition components
  39. More and more mixed. Following up on what we said before, we need lowcode tools to include ML component that help users include inteligent components in their apps
  40. Possibilites are endless but only if we manage to fix some important challenges first.
  41. More and more mixed. Following up on what we said before, we need lowcode tools to include ML component that help users include inteligent components in their apps
  42. We should talk about the elephant in the room
  43. There is no GitHub for models This makes any initiative related to ML difficult to implement with Good results. Also transfer learning could help here
  44. But if we only focus on the techniques we’re missing the most important aspect: the people building AND using those models - > social aspects of AI
  45. One way or the other, modeling needs to adapt to stay relevant
  46. If we want to move MDE forward we need more than just keep improving modeling techniques
  47. Need to understand a new community, difficulties in publishing…
  48. We’re always looking for collaborations. So get involved in our research or stop complaining about useless research done in academia!!!!
  49. The correctness of ANNs is studied through its accuracy and overfitting (being the latter measured through the validation loss). The accuracy should be as close as 1 as possible while the validation loss as close to 0 as possible. The accuracy is calculated comparing for each input model in the test dataset whether the output of the network corresponds with the expected output. If it does, the network was able to successfully predict the target model for the given input model. The accuracy grows and the loss decreases with the size of the dataset, i.e., the more input-output pairs we provide for training, the better our software learns and predicts (transforms). In this concrete case, with a dataset with 1000 models, the accuracy is 1 and the loss 0 (meaning that no overfitting was taking place), which means that the ANNs are perfectly trained and ready to use. Note that we show the size of the complete dataset but, we have split it using an 80% of the pairs for training, a 10% for validation and another 10% for testing.