SlideShare uma empresa Scribd logo
1 de 39
Intelligent Software Engineering:
Synergy between AI and Software
Engineering
Tao Xie
University of Illinois at Urbana-Champaign
taoxie@illinois.edu
http://taoxie.cs.illinois.edu/
Artificial Intelligence  Software Engineering
Artificial
Intelligence
Software
Engineering
Intelligent Software Engineering
Intelligence Software Engineering
Artificial Intelligence  Software Engineering
Artificial
Intelligence
Software
Engineering
Intelligent Software Engineering
Intelligence Software Engineering
Intelligent Test Generation for Binary Code
• 2016 DARPA’s Cyber Grand Challenge (all-machine hacking tournament)
• 7 teams/systems conducted defense & attack tasks on a server constantly being fed with
new code patches filled with bugs/vulnerabilities
• Top winner: Mayhem developed by ForAllSecure co-founded by CMU Prof. David Brumley,
with its key tech as dynamic symbolic execution [Godefroid et al. PLDI’05]
• Microsoft Security Risk Detection [MS]
• With its key tech as dynamic symbolic execution [Godefroid et al. PLDI’05]
• Evolved from SAGE @Microsoft Research [Godefroid et al. ACM Queue‘12]
Coldewey. Carnegie Mellon’s Mayhem AI takes home $2 million from DARPA’s Cyber Grand Challenge. techcrunch.com. Aug 5, 2016.
“Carnegie Mellon’s Mayhem AI takes home
$2 million from DARPA’s Cyber Grand Challenge”
Intelligent Test Generation for .NET Code
• Pex @Microsoft Research [ASE’14 Ex]
• Automated test generation tool for .NET code
• With its key tech as dynamic symbolic execution [Godefroid et al. PLDI’05]
• Intelligent techniques to tackle challenges of
• Path explosion via fitness function [DSN’09]
• Method sequence explosion via program synthesis [OOPSLA’11]
• …
• Shipped in Visual Studio 2015/2017 Enterprise Edition
• As IntelliTest
[ASE’14 Ex] Tillmann, de Halleux, Xie. Transferring an Automated Test Generation Tool to Practice: From Pex to Fakes
and Code Digger. ASE’14 Experience Paper
Intelligent Test Generation for Mobile App Code
• Tencent’s automatic test generation tool for WeChat [FSE’16IN][ICSE’17SEIP]
• Guided random test generation tool improved over Google Monkey
• Deployed in daily WeChat testing practice
• WeChat = WhatsApp + Facebook + Instagram + PayPal + Uber …
• #monthly active users: 1 billion @2018 March
• Facebook’s automatic test generation tool for Facebook mobile apps
• Originated from search-based testing tool Sapienz [Mao et al. ISSTA’16] at UCL
• Evolved from commercialized Sapienz by its acquired UCL spinoff MaJiCkE co-founded
by Prof. Mark Harman
• Deployed in daily testing practice of various Facebook apps
Intelligent Software Testing: Continuous Learning
• Learning from others working on the same things
• Our MSeqGen work on mining API usage call sequences to test the API [ESEC/FSE’09]
• Green: Reducing, reusing & recycling constraints [Visser et al. FSE’12]
• Learning from others working on similar things
• Enhancing reuse of constraint solutions [Jia et al. ISSTA’15]
• Heuristically matching solution spaces of arithmetic formulas [Aquino et al. ICSE’17]
Software Analytics
Software analytics is to enable software practitioners
to perform data exploration and analysis in order to
obtain insightful and actionable information for data-
driven tasks around software and services.
Zhang, Dang, Lou, Han, Zhang, Xie. Software Analytics as a Learning Case in Practice: Approaches and Experiences.
MALETS 2011
Software Analytics
Software analytics is to enable software practitioners
to perform data exploration and analysis in order to
obtain insightful and actionable information for data-
driven tasks around software and services.
Zhang, Dang, Lou, Han, Zhang, Xie. Software Analytics as a Learning Case in Practice: Approaches and Experiences.
MALETS 2011
Data Sources in Software/Services
Runtime traces
Program logs
System events
Perf counters
…
Usage log
User surveys
Online forum posts
Blog & Twitter
…
Source code
Bug history
Check-in history
Test cases
Eye tracking
MRI/EMG
…
Zhang, Han, Dang, Lou, Zhang, Xie. Software Analytics in Practice. IEEE Software 2013
Research Topics & Technology Pillars
Zhang, Han, Dang, Lou, Zhang, Xie. Software Analytics in Practice. IEEE Software 2013
Example Research on Software Analytics
• StackMine [ICSE’12, IEEESoft’13]: performance debugging in the large
• Data Source: Performance call stack traces from Windows end users
• Analytics Output: Ranked clusters of call stack traces based on shared patterns
• Impact: Deployed/used in daily practice of Windows Performance Analysis team
• Service Analysis Studio [ASE’13-EX]: service incident management
• Data Source: Transaction logs, system metrics, past incident reports
• Analytics Output: Healing suggestions/likely root causes of the given incident
• Impact: Deployed and used by an important Microsoft service (hundreds of
millions of users) for incident management
Internet
@Microsoft Research Asia
Open Source Microservice Benchmark System
70+ microservices, including 40+ business ones, 30+ infrastructure ones (message middleware service,
distributed cache services, database services), totally 300K LOC
Git Repo:https://github.com/FudanSELab/train-ticketFudan、UIUC、SUTD Collaborative Research
Open Source Microservice Benchmark System
Git Repo:https://github.com/FudanSELab/train-ticket
• Include Java、Python、Go、Node.js
• Use asynchronous communication and message queue
• Use distributed cache
• Visualization tools for runtime monitoring and management
• Cluster orchestration support: docker swarm and Kubernetes
• Service mesh support: Istio
• Substantial test cases including 100+ unit and integration tests
• Multiple client support: Web, Android
Zhou, Peng, Xie, Sun, Ji, Li, Ding. Fault Analysis and Debugging of Microservice Systems: Industrial Survey, Benchmark System, and Empirical
Study. IEEE Transactions on Software Engineering (TSE), To appear
Fudan、UIUC、SUTD Collaborative Research
Current: Modern IDE
Intelligent IDE: Natural Language Interfacing
Inspired by AnnaTalk (Software Analytics Group @Microsoft Research Asia):
Conversational Interface for Business Analytics
Source: https://www.hksilicon.com/articles/1213020
Translation of NL to Programs
● Program Aliasing: a semantically equivalent program may have
many syntactically different forms
NL Sentences
NL  Regex: Sequence-to-Sequence Model
● Encoder/Decoder: 2 layers stacked LSTM architectures [Locascio et al. EMNLP’16]
Training Objective: Maximum Likelihood Estimation (MLE) 
Maximizing Semantic Correctness
● Standard seq-to-seq maximizes likelihood mapping NL to ground truth
● MLE penalizes syntactically different but semantically equivalent regex
● Reward : semantic correctness
● Alternative objective: Maximize the expected
Leveraging reinforcement learning to maximize Expected Semantic Correctness
Zhong, Guo, Yang, Peng, Xie, Lou, Liu, Zhang. SemRegex: A Semantics-Based Approach for Generating Regular Expressions
from Natural Language Specifications. EMNLP’18.
Measurements of Semantic Correctness
([ABab]&[A-Z]).*X● Minimal DFAs
● Test Cases (pos/neg string examples)
Zhong, Guo, Yang, Peng, Xie, Lou, Liu, Zhang. SemRegex: A Semantics-Based Approach for Generating Regular Expressions
from Natural Language Specifications. EMNLP’18.
Intelligent Software Engineering: Tech Transfer
http://www.diffblue.com/
Oxford University spin-off,
Daniel Kroening et al.
Peking University spin-off,
Ge Li et al.
https://www.codota.com/
Technion spin-off,
Eran Yahav et al.
Technical University Munich spin-off,
Benedikt Hauptmann et al.
https://www.qualicen.de/en/
http://www.aixcoder.com/
MaJiCKe
UCL spin-off, Mark Harman et al.
Acquired by Facebook
https://www.deepcode.ai/
ETH Zurich spin-off,
Martin Vechev et al.
Quite Many Recent Papers in AI/ML for SE
https://ml4code.github.io/
• 2018 (35)
• 2017 (34)
• 2016 (25)
• 2015 (25)
• 2014 (14)
• 2013 (9)
• 2012 (1)
• 2009 (1)
• 2007 (1)https://arxiv.org/abs/1709.06182
Open Topics in Intelligent Software Engineering (ISE)
• How to define or determine levels of intelligence in software engineering
solutions?
• Automation vs. Intelligence
• How to bring high levels of intelligence in software engineering solutions?
• How to attain high-quantity and high-quality labelled software data?
• How to transfer ISE research results into industrial/open source practice?
• …
Artificial Intelligence  Software Engineering
Artificial
Intelligence
Software
Engineering
Intelligent Software Engineering
Intelligence Software Engineering
AI Software is Complex
• March 18, 2018 (Tempe, Arizona): self-driving Uber car struck and
killed Elaine Herzberg, aged 49
• “Was this algorithmic tragedy inevitable? And how used to such
incidents would we, should we, be prepared to get?”
• “Software is released into a code universe which no one can fully
understand.”
Smith. Franken-algorithms: the deadly consequences of unpredictable code. theguardian.com, Aug 9, 2018
Requirements and Testing of AI Software - Chatbot
• March 23/24, 2016: Microsoft's Teen Chatbot Tay Turned into Genocidal
Racist
• "There are a number of precautionary steps they [Microsoft] could have
taken. It wouldn't have been too hard to create a blacklist of terms; or
narrow the scope of replies. They could also have simply manually
moderated Tay for the first few days, even if that had meant slower
responses.“
• “businesses and other AI developers will need to give more thought to the
protocols they design for testing and training AIs like Tay.”
Shead. Here's why Microsoft's teen chatbot turned into a genocidal racist, according to an AI expert. businessinsider.com, March 24, 2016
Requirements and Testing of AI Software – AI Hiring
• In 2014, Amazon tried building an AI tool to help with recruiting
but the tool was discriminating against women; in 2017, Amazon
abandoned the tool.
• Data source: predominantly male resumes submitted to Amazon over a
10-year period as candidates for recruitment
• Fairness testing: testing software for discrimination
[Galhotra et al. ESEC/FSE’17]
Hamilton. Amazon built an AI tool to hire people but had to shut it down because it was discriminating against women. businessinsider.com,
Oct. 10, 2018
Adversarial Machine Learning/Testing
● Generate adversarial examples derived from legitimate examples
with slight modification (imperceptible to human) to induce
misclassification
28
Turn rightGo straight
Slight
modification
Tian et al. DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars. ICSE 2018
Adversarial Machine Learning/Testing
● Generate adversarial examples derived from legitimate examples
with slight modification (imperceptible to human) to induce
misclassification
29
Turn rightGo straight
Slight
modification
Tian et al. DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars. ICSE 2018
Lu et al. NO Need to Worry about Adversarial Examples in
Object Detection in Autonomous Vehicles. CVPR’17.
https://arxiv.org/abs/1707.03501
“Our work raises an important question: can one
construct examples that are adversarial for many or
most viewing conditions? If so, the construction
should offer very significant insights into the internal
representation of patterns by deep networks. If not,
there is a good prospect that adversarial examples
can be reduced to a curiosity with little practical
impact.”
Example Defenses Against Adversarial Examples
30
Defense
Target model t
Target model t’
x
Detector &
Reformer
Target model t
x
x’
Class label
Class label
A single model is still vulnerable to an adversarial example white-box attack
MulDef: Multi-Model-based Defense Framework
31
Target model t
Model
Generator
Runtime Model
Selector
Input x Class label
Model Generator: generates a family of models T, M1, M2, ...
● Legitimate-behavior preservation
● Robustness diversity
● As many models as possible
Runtime Model Selector: randomly selects a model from the
family at runtime
Srisakaokul, Zhang, Zhong, Yang, Xie. MULDEF: Multi-model-based Defense Against Adversarial Examples for Neural
Networks. arXiv:1809.00065, August 2018.
Family of models:
t, M1, M2, …
Neural Machine Translation
Screen snapshot captured on April 5, 2018
• Overall better than statistical
machine translation
• Worse controllability
• Existing translation quality
assurance
 Need reference translation,
not applicable online
Translation Quality Assurance
● Key idea:black-box algorithms specialized for common problems
○ No need for reference translation; need only the original sentence and generated
translation
○ Precise problem localization
● Common problems
○ Under-translation
○ Over-translation
Tencent、UIUC Collaborative Work
Zheng, Wang, Liu, Zhang, Zeng, Deng, Yang, He, Xie. Testing Untestable Neural Machine Translation: An Industrial Case. ICSE 2019 Poster
Deployment of Translation Quality Assurance
● Adopted to improve WeChat translation service (over 1 billion users,
online serving 12 million translation tasks)
○ Offline monitoring (regression testing)
○ Online monitoring (real time selection of best model)
● Large scale test data for translation
○ ~130K English/180K Chinese words/phrases
○ Detect numerous problems in other vendors as well
BLEU Score Improvement %Problems Reduction
Problem Cases in Other Translation Services
Tencent、UIUC Collaborative Work
Zheng, Wang, Liu, Zhang, Zeng, Deng, Yang, He, Xie.
Testing Untestable Neural Machine Translation: An
Industrial Case. ICSE 2019 Poster
Quite Many Recent Papers in SE for AI/ML
• Ma et al. MODE: Automated Neural Network Model Debugging via State Differential Analysis and Input
Selection. ESEC/FSE’18
• Sun et al. Concolic Testing for Deep Neural Networks. ASE’18
• Udeshi et al. Automated Directed Fairness Testing. ASE’18
• Ma et al. DeepGauge: Multi-Granularity Testing Criteria for Deep Learning Systems. ASE’18
• Zhang et al. DeepRoad: GAN-based Metamorphic Testing and Input Validation Framework for Autonomous
Driving Systems. ASE’18
• Dwarakanath et al. Identifying Implementation Bugs in Machine Learning based Image Classifiers using
Metamorphic Testing. ISSTA’18
• Zhang et al. An Empirical Study on TensorFlow Program Bugs. ISSTA’18
• Tian et al. DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars. ICSE’18
• Abdessalem et al. Testing Vision-Based Control Systems Using Learnable Evolutionary Algorithms. ICSE’18
• Odena, Goodfellow. TensorFuzz: Debugging Neural Networks with Coverage-Guided Fuzzing.
arXiv:1807.10875. 2018.
• …
Open Topics in Intelligence Software Engineering (ISE)
• How to solicit and specify requirements for intelligence software?
• How to tackle the complexity of integrating intelligence software with the rest of the
software system?
• How to define test oracles (or properties) for intelligence software?
• How to design high-quality library/framework APIs for developing intelligence
software?
• How to transfer ISE research results into industrial/open source practice?
• …
(SE  AI)  Practice Impact
Problem
Domain
Solution
Domain
Practice
Intelligent Software Engineering
Intelligence Software Engineering
38
Thank You!
Q & A
This work was supported in part by NSF under grants no. CNS-1513939, CNS-1564274, CCF-1816615.
Tao Xie
University of Illinois at Urbana-Champaign
taoxie@illinois.edu
http://taoxie.cs.illinois.edu/
(SE  AI)  Practice Impact
Problem
Domain
Solution
Domain
Practice
Intelligent Software Engineering
Intelligence Software Engineering

Mais conteúdo relacionado

Mais procurados

ManpowerGroup Solutions RPO PPT
ManpowerGroup Solutions RPO PPTManpowerGroup Solutions RPO PPT
ManpowerGroup Solutions RPO PPT
Samuel Nishizawa
 
Catering cook experience letter
Catering cook experience letterCatering cook experience letter
Catering cook experience letter
daleyblind497
 
Hr administrative assistant experience letter
Hr administrative assistant experience letterHr administrative assistant experience letter
Hr administrative assistant experience letter
arcevaleria12
 
Company Presentation Staffing
Company Presentation   StaffingCompany Presentation   Staffing
Company Presentation Staffing
Yogesh Mishra
 
Scrum Agile Playbook Powerpoint Presentation Slides
Scrum Agile Playbook Powerpoint Presentation SlidesScrum Agile Playbook Powerpoint Presentation Slides
Scrum Agile Playbook Powerpoint Presentation Slides
SlideTeam
 
Company Profile- Vision HR Services
Company Profile- Vision HR ServicesCompany Profile- Vision HR Services
Company Profile- Vision HR Services
Anand Mahori
 

Mais procurados (20)

Generative AI Use cases for Enterprise - Second Session
Generative AI Use cases for Enterprise - Second SessionGenerative AI Use cases for Enterprise - Second Session
Generative AI Use cases for Enterprise - Second Session
 
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
Github Copilot vs Amazon CodeWhisperer for Java developers at JCON 2023
 
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
Revolutionize DevOps with ML capabilities. Introduction to Amazon CodeGuru an...
 
Brand Name Proposal
Brand Name ProposalBrand Name Proposal
Brand Name Proposal
 
ManpowerGroup Solutions RPO PPT
ManpowerGroup Solutions RPO PPTManpowerGroup Solutions RPO PPT
ManpowerGroup Solutions RPO PPT
 
Catering cook experience letter
Catering cook experience letterCatering cook experience letter
Catering cook experience letter
 
Hr administrative assistant experience letter
Hr administrative assistant experience letterHr administrative assistant experience letter
Hr administrative assistant experience letter
 
Company Presentation Staffing
Company Presentation   StaffingCompany Presentation   Staffing
Company Presentation Staffing
 
Scrum Agile Playbook Powerpoint Presentation Slides
Scrum Agile Playbook Powerpoint Presentation SlidesScrum Agile Playbook Powerpoint Presentation Slides
Scrum Agile Playbook Powerpoint Presentation Slides
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?
 
Charles Caldwell - Improve Your Life with AI.pdf
Charles Caldwell - Improve Your Life with AI.pdfCharles Caldwell - Improve Your Life with AI.pdf
Charles Caldwell - Improve Your Life with AI.pdf
 
ChatGPT 顛覆傳統的科技創新 - 不僅文字工作者會被AI取代?
ChatGPT 顛覆傳統的科技創新 - 不僅文字工作者會被AI取代?ChatGPT 顛覆傳統的科技創新 - 不僅文字工作者會被AI取代?
ChatGPT 顛覆傳統的科技創新 - 不僅文字工作者會被AI取代?
 
The Power of Foursquare: 7 Innovative Ways to Get Your Customers to Check In ...
The Power of Foursquare: 7 Innovative Ways to Get Your Customers to Check In ...The Power of Foursquare: 7 Innovative Ways to Get Your Customers to Check In ...
The Power of Foursquare: 7 Innovative Ways to Get Your Customers to Check In ...
 
Company Profile- Vision HR Services
Company Profile- Vision HR ServicesCompany Profile- Vision HR Services
Company Profile- Vision HR Services
 
introduction Azure OpenAI by Usama wahab khan
introduction  Azure OpenAI by Usama wahab khanintroduction  Azure OpenAI by Usama wahab khan
introduction Azure OpenAI by Usama wahab khan
 
Barbar Bahatti - Harnessing the Power of LLMs.pdf
Barbar Bahatti - Harnessing the Power of LLMs.pdfBarbar Bahatti - Harnessing the Power of LLMs.pdf
Barbar Bahatti - Harnessing the Power of LLMs.pdf
 
Lessons in Scaling Product from Startup to Public Company by Squarespace VP o...
Lessons in Scaling Product from Startup to Public Company by Squarespace VP o...Lessons in Scaling Product from Startup to Public Company by Squarespace VP o...
Lessons in Scaling Product from Startup to Public Company by Squarespace VP o...
 
AzureOpenAI.pptx
AzureOpenAI.pptxAzureOpenAI.pptx
AzureOpenAI.pptx
 
Recruitment Process Outsourcing (RPO) – Moving Beyond the Pioneer Stage
Recruitment Process Outsourcing (RPO) – Moving Beyond the Pioneer StageRecruitment Process Outsourcing (RPO) – Moving Beyond the Pioneer Stage
Recruitment Process Outsourcing (RPO) – Moving Beyond the Pioneer Stage
 
Global Azure Bootcamp Pune 2023 - Lead the AI era with Microsoft Azure.pdf
Global Azure Bootcamp Pune 2023 -  Lead the AI era with Microsoft Azure.pdfGlobal Azure Bootcamp Pune 2023 -  Lead the AI era with Microsoft Azure.pdf
Global Azure Bootcamp Pune 2023 - Lead the AI era with Microsoft Azure.pdf
 

Semelhante a Intelligent Software Engineering: Synergy between AI and Software Engineering

Semelhante a Intelligent Software Engineering: Synergy between AI and Software Engineering (20)

Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...Intelligent Software Engineering: Synergy between AI and Software Engineering...
Intelligent Software Engineering: Synergy between AI and Software Engineering...
 
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - TrivadisTechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
TechEvent 2019: Artificial Intelligence in Dev & Ops; Martin Luckow - Trivadis
 
Se research update
Se research updateSe research update
Se research update
 
Software Analytics: Towards Software Mining that Matters (2014)
Software Analytics:Towards Software Mining that Matters (2014)Software Analytics:Towards Software Mining that Matters (2014)
Software Analytics: Towards Software Mining that Matters (2014)
 
Analyzing Big Data's Weakest Link (hint: it might be you)
Analyzing Big Data's Weakest Link  (hint: it might be you)Analyzing Big Data's Weakest Link  (hint: it might be you)
Analyzing Big Data's Weakest Link (hint: it might be you)
 
Software Mining and Software Datasets
Software Mining and Software DatasetsSoftware Mining and Software Datasets
Software Mining and Software Datasets
 
Big Data: the weakest link
Big Data: the weakest linkBig Data: the weakest link
Big Data: the weakest link
 
Intelligent Software Engineering: Synergy between AI and Software Engineering
Intelligent Software Engineering: Synergy between AI and Software EngineeringIntelligent Software Engineering: Synergy between AI and Software Engineering
Intelligent Software Engineering: Synergy between AI and Software Engineering
 
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and Challenges
 
MSRA 2018: Intelligent Software Engineering: Synergy between AI and Software ...
MSRA 2018: Intelligent Software Engineering: Synergy between AI and Software ...MSRA 2018: Intelligent Software Engineering: Synergy between AI and Software ...
MSRA 2018: Intelligent Software Engineering: Synergy between AI and Software ...
 
Advancing Foundation and Practice of Software Analytics
Advancing Foundation and Practice of Software AnalyticsAdvancing Foundation and Practice of Software Analytics
Advancing Foundation and Practice of Software Analytics
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software Engineering
 
Software Analytics: Data Analytics for Software Engineering and Security
Software Analytics: Data Analytics for Software Engineering and SecuritySoftware Analytics: Data Analytics for Software Engineering and Security
Software Analytics: Data Analytics for Software Engineering and Security
 
Jagrat_Mankad
Jagrat_MankadJagrat_Mankad
Jagrat_Mankad
 
Marvin AI: An Open Source Platform to Deploy and Manage Machine Learning Models
Marvin AI: An Open Source Platform to Deploy and Manage Machine Learning ModelsMarvin AI: An Open Source Platform to Deploy and Manage Machine Learning Models
Marvin AI: An Open Source Platform to Deploy and Manage Machine Learning Models
 
Three Interviews About Static Code Analyzers
Three Interviews About Static Code AnalyzersThree Interviews About Static Code Analyzers
Three Interviews About Static Code Analyzers
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020
 
Machine programming
Machine programmingMachine programming
Machine programming
 
Software Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software EngineeringSoftware Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software Engineering
 

Mais de Tao Xie

Csise15 codehunt
Csise15 codehuntCsise15 codehunt
Csise15 codehunt
Tao Xie
 

Mais de Tao Xie (20)

MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...
MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...
MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...
 
DSML 2021 Keynote: Intelligent Software Engineering: Working at the Intersect...
DSML 2021 Keynote: Intelligent Software Engineering: Working at the Intersect...DSML 2021 Keynote: Intelligent Software Engineering: Working at the Intersect...
DSML 2021 Keynote: Intelligent Software Engineering: Working at the Intersect...
 
Diversity and Computing/Engineering: Perspectives from Allies
Diversity and Computing/Engineering: Perspectives from AlliesDiversity and Computing/Engineering: Perspectives from Allies
Diversity and Computing/Engineering: Perspectives from Allies
 
ISEC'18 Tutorial: Research Methodology on Pursuing Impact-Driven Research
ISEC'18 Tutorial: Research Methodology on Pursuing Impact-Driven ResearchISEC'18 Tutorial: Research Methodology on Pursuing Impact-Driven Research
ISEC'18 Tutorial: Research Methodology on Pursuing Impact-Driven Research
 
ISEC'18 Keynote: Intelligent Software Engineering: Synergy between AI and Sof...
ISEC'18 Keynote: Intelligent Software Engineering: Synergy between AI and Sof...ISEC'18 Keynote: Intelligent Software Engineering: Synergy between AI and Sof...
ISEC'18 Keynote: Intelligent Software Engineering: Synergy between AI and Sof...
 
Planning and Executing Practice-Impactful Research
Planning and Executing Practice-Impactful ResearchPlanning and Executing Practice-Impactful Research
Planning and Executing Practice-Impactful Research
 
Transferring Software Testing Tools to Practice (AST 2017 Keynote)
Transferring Software Testing Tools to Practice (AST 2017 Keynote)Transferring Software Testing Tools to Practice (AST 2017 Keynote)
Transferring Software Testing Tools to Practice (AST 2017 Keynote)
 
Transferring Software Testing Tools to Practice
Transferring Software Testing Tools to PracticeTransferring Software Testing Tools to Practice
Transferring Software Testing Tools to Practice
 
Advances in Unit Testing: Theory and Practice
Advances in Unit Testing: Theory and PracticeAdvances in Unit Testing: Theory and Practice
Advances in Unit Testing: Theory and Practice
 
Common Technical Writing Issues
Common Technical Writing IssuesCommon Technical Writing Issues
Common Technical Writing Issues
 
HotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William Enck
HotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William EnckHotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William Enck
HotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William Enck
 
Transferring Software Testing and Analytics Tools to Practice
Transferring Software Testing and Analytics Tools to PracticeTransferring Software Testing and Analytics Tools to Practice
Transferring Software Testing and Analytics Tools to Practice
 
User Expectations in Mobile App Security
User Expectations in Mobile App SecurityUser Expectations in Mobile App Security
User Expectations in Mobile App Security
 
Impact-Driven Research on Software Engineering Tooling
Impact-Driven Research on Software Engineering ToolingImpact-Driven Research on Software Engineering Tooling
Impact-Driven Research on Software Engineering Tooling
 
Next Generation Developer Testing: Parameterized Testing
Next Generation Developer Testing: Parameterized TestingNext Generation Developer Testing: Parameterized Testing
Next Generation Developer Testing: Parameterized Testing
 
Csise15 codehunt
Csise15 codehuntCsise15 codehunt
Csise15 codehunt
 
Text Analytics for Security
Text Analytics for SecurityText Analytics for Security
Text Analytics for Security
 
Gamifying Teaching and Learning of Software Engineering and Programming
Gamifying Teaching and Learning of Software Engineering and ProgrammingGamifying Teaching and Learning of Software Engineering and Programming
Gamifying Teaching and Learning of Software Engineering and Programming
 
Towards Mining Software Repositories Research that Matters
Towards Mining Software Repositories Research that MattersTowards Mining Software Repositories Research that Matters
Towards Mining Software Repositories Research that Matters
 
Tutorial: Text Analytics for Security
Tutorial: Text Analytics for SecurityTutorial: Text Analytics for Security
Tutorial: Text Analytics for Security
 

Último

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
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Último (20)

Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
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
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
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-...
 
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
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
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
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 

Intelligent Software Engineering: Synergy between AI and Software Engineering

  • 1. Intelligent Software Engineering: Synergy between AI and Software Engineering Tao Xie University of Illinois at Urbana-Champaign taoxie@illinois.edu http://taoxie.cs.illinois.edu/
  • 2. Artificial Intelligence  Software Engineering Artificial Intelligence Software Engineering Intelligent Software Engineering Intelligence Software Engineering
  • 3. Artificial Intelligence  Software Engineering Artificial Intelligence Software Engineering Intelligent Software Engineering Intelligence Software Engineering
  • 4. Intelligent Test Generation for Binary Code • 2016 DARPA’s Cyber Grand Challenge (all-machine hacking tournament) • 7 teams/systems conducted defense & attack tasks on a server constantly being fed with new code patches filled with bugs/vulnerabilities • Top winner: Mayhem developed by ForAllSecure co-founded by CMU Prof. David Brumley, with its key tech as dynamic symbolic execution [Godefroid et al. PLDI’05] • Microsoft Security Risk Detection [MS] • With its key tech as dynamic symbolic execution [Godefroid et al. PLDI’05] • Evolved from SAGE @Microsoft Research [Godefroid et al. ACM Queue‘12] Coldewey. Carnegie Mellon’s Mayhem AI takes home $2 million from DARPA’s Cyber Grand Challenge. techcrunch.com. Aug 5, 2016. “Carnegie Mellon’s Mayhem AI takes home $2 million from DARPA’s Cyber Grand Challenge”
  • 5. Intelligent Test Generation for .NET Code • Pex @Microsoft Research [ASE’14 Ex] • Automated test generation tool for .NET code • With its key tech as dynamic symbolic execution [Godefroid et al. PLDI’05] • Intelligent techniques to tackle challenges of • Path explosion via fitness function [DSN’09] • Method sequence explosion via program synthesis [OOPSLA’11] • … • Shipped in Visual Studio 2015/2017 Enterprise Edition • As IntelliTest [ASE’14 Ex] Tillmann, de Halleux, Xie. Transferring an Automated Test Generation Tool to Practice: From Pex to Fakes and Code Digger. ASE’14 Experience Paper
  • 6. Intelligent Test Generation for Mobile App Code • Tencent’s automatic test generation tool for WeChat [FSE’16IN][ICSE’17SEIP] • Guided random test generation tool improved over Google Monkey • Deployed in daily WeChat testing practice • WeChat = WhatsApp + Facebook + Instagram + PayPal + Uber … • #monthly active users: 1 billion @2018 March • Facebook’s automatic test generation tool for Facebook mobile apps • Originated from search-based testing tool Sapienz [Mao et al. ISSTA’16] at UCL • Evolved from commercialized Sapienz by its acquired UCL spinoff MaJiCkE co-founded by Prof. Mark Harman • Deployed in daily testing practice of various Facebook apps
  • 7. Intelligent Software Testing: Continuous Learning • Learning from others working on the same things • Our MSeqGen work on mining API usage call sequences to test the API [ESEC/FSE’09] • Green: Reducing, reusing & recycling constraints [Visser et al. FSE’12] • Learning from others working on similar things • Enhancing reuse of constraint solutions [Jia et al. ISSTA’15] • Heuristically matching solution spaces of arithmetic formulas [Aquino et al. ICSE’17]
  • 8. Software Analytics Software analytics is to enable software practitioners to perform data exploration and analysis in order to obtain insightful and actionable information for data- driven tasks around software and services. Zhang, Dang, Lou, Han, Zhang, Xie. Software Analytics as a Learning Case in Practice: Approaches and Experiences. MALETS 2011
  • 9. Software Analytics Software analytics is to enable software practitioners to perform data exploration and analysis in order to obtain insightful and actionable information for data- driven tasks around software and services. Zhang, Dang, Lou, Han, Zhang, Xie. Software Analytics as a Learning Case in Practice: Approaches and Experiences. MALETS 2011
  • 10. Data Sources in Software/Services Runtime traces Program logs System events Perf counters … Usage log User surveys Online forum posts Blog & Twitter … Source code Bug history Check-in history Test cases Eye tracking MRI/EMG … Zhang, Han, Dang, Lou, Zhang, Xie. Software Analytics in Practice. IEEE Software 2013
  • 11. Research Topics & Technology Pillars Zhang, Han, Dang, Lou, Zhang, Xie. Software Analytics in Practice. IEEE Software 2013
  • 12. Example Research on Software Analytics • StackMine [ICSE’12, IEEESoft’13]: performance debugging in the large • Data Source: Performance call stack traces from Windows end users • Analytics Output: Ranked clusters of call stack traces based on shared patterns • Impact: Deployed/used in daily practice of Windows Performance Analysis team • Service Analysis Studio [ASE’13-EX]: service incident management • Data Source: Transaction logs, system metrics, past incident reports • Analytics Output: Healing suggestions/likely root causes of the given incident • Impact: Deployed and used by an important Microsoft service (hundreds of millions of users) for incident management Internet @Microsoft Research Asia
  • 13. Open Source Microservice Benchmark System 70+ microservices, including 40+ business ones, 30+ infrastructure ones (message middleware service, distributed cache services, database services), totally 300K LOC Git Repo:https://github.com/FudanSELab/train-ticketFudan、UIUC、SUTD Collaborative Research
  • 14. Open Source Microservice Benchmark System Git Repo:https://github.com/FudanSELab/train-ticket • Include Java、Python、Go、Node.js • Use asynchronous communication and message queue • Use distributed cache • Visualization tools for runtime monitoring and management • Cluster orchestration support: docker swarm and Kubernetes • Service mesh support: Istio • Substantial test cases including 100+ unit and integration tests • Multiple client support: Web, Android Zhou, Peng, Xie, Sun, Ji, Li, Ding. Fault Analysis and Debugging of Microservice Systems: Industrial Survey, Benchmark System, and Empirical Study. IEEE Transactions on Software Engineering (TSE), To appear Fudan、UIUC、SUTD Collaborative Research
  • 16. Intelligent IDE: Natural Language Interfacing Inspired by AnnaTalk (Software Analytics Group @Microsoft Research Asia): Conversational Interface for Business Analytics Source: https://www.hksilicon.com/articles/1213020
  • 17. Translation of NL to Programs ● Program Aliasing: a semantically equivalent program may have many syntactically different forms NL Sentences
  • 18. NL  Regex: Sequence-to-Sequence Model ● Encoder/Decoder: 2 layers stacked LSTM architectures [Locascio et al. EMNLP’16]
  • 19. Training Objective: Maximum Likelihood Estimation (MLE)  Maximizing Semantic Correctness ● Standard seq-to-seq maximizes likelihood mapping NL to ground truth ● MLE penalizes syntactically different but semantically equivalent regex ● Reward : semantic correctness ● Alternative objective: Maximize the expected Leveraging reinforcement learning to maximize Expected Semantic Correctness Zhong, Guo, Yang, Peng, Xie, Lou, Liu, Zhang. SemRegex: A Semantics-Based Approach for Generating Regular Expressions from Natural Language Specifications. EMNLP’18.
  • 20. Measurements of Semantic Correctness ([ABab]&[A-Z]).*X● Minimal DFAs ● Test Cases (pos/neg string examples) Zhong, Guo, Yang, Peng, Xie, Lou, Liu, Zhang. SemRegex: A Semantics-Based Approach for Generating Regular Expressions from Natural Language Specifications. EMNLP’18.
  • 21. Intelligent Software Engineering: Tech Transfer http://www.diffblue.com/ Oxford University spin-off, Daniel Kroening et al. Peking University spin-off, Ge Li et al. https://www.codota.com/ Technion spin-off, Eran Yahav et al. Technical University Munich spin-off, Benedikt Hauptmann et al. https://www.qualicen.de/en/ http://www.aixcoder.com/ MaJiCKe UCL spin-off, Mark Harman et al. Acquired by Facebook https://www.deepcode.ai/ ETH Zurich spin-off, Martin Vechev et al.
  • 22. Quite Many Recent Papers in AI/ML for SE https://ml4code.github.io/ • 2018 (35) • 2017 (34) • 2016 (25) • 2015 (25) • 2014 (14) • 2013 (9) • 2012 (1) • 2009 (1) • 2007 (1)https://arxiv.org/abs/1709.06182
  • 23. Open Topics in Intelligent Software Engineering (ISE) • How to define or determine levels of intelligence in software engineering solutions? • Automation vs. Intelligence • How to bring high levels of intelligence in software engineering solutions? • How to attain high-quantity and high-quality labelled software data? • How to transfer ISE research results into industrial/open source practice? • …
  • 24. Artificial Intelligence  Software Engineering Artificial Intelligence Software Engineering Intelligent Software Engineering Intelligence Software Engineering
  • 25. AI Software is Complex • March 18, 2018 (Tempe, Arizona): self-driving Uber car struck and killed Elaine Herzberg, aged 49 • “Was this algorithmic tragedy inevitable? And how used to such incidents would we, should we, be prepared to get?” • “Software is released into a code universe which no one can fully understand.” Smith. Franken-algorithms: the deadly consequences of unpredictable code. theguardian.com, Aug 9, 2018
  • 26. Requirements and Testing of AI Software - Chatbot • March 23/24, 2016: Microsoft's Teen Chatbot Tay Turned into Genocidal Racist • "There are a number of precautionary steps they [Microsoft] could have taken. It wouldn't have been too hard to create a blacklist of terms; or narrow the scope of replies. They could also have simply manually moderated Tay for the first few days, even if that had meant slower responses.“ • “businesses and other AI developers will need to give more thought to the protocols they design for testing and training AIs like Tay.” Shead. Here's why Microsoft's teen chatbot turned into a genocidal racist, according to an AI expert. businessinsider.com, March 24, 2016
  • 27. Requirements and Testing of AI Software – AI Hiring • In 2014, Amazon tried building an AI tool to help with recruiting but the tool was discriminating against women; in 2017, Amazon abandoned the tool. • Data source: predominantly male resumes submitted to Amazon over a 10-year period as candidates for recruitment • Fairness testing: testing software for discrimination [Galhotra et al. ESEC/FSE’17] Hamilton. Amazon built an AI tool to hire people but had to shut it down because it was discriminating against women. businessinsider.com, Oct. 10, 2018
  • 28. Adversarial Machine Learning/Testing ● Generate adversarial examples derived from legitimate examples with slight modification (imperceptible to human) to induce misclassification 28 Turn rightGo straight Slight modification Tian et al. DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars. ICSE 2018
  • 29. Adversarial Machine Learning/Testing ● Generate adversarial examples derived from legitimate examples with slight modification (imperceptible to human) to induce misclassification 29 Turn rightGo straight Slight modification Tian et al. DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars. ICSE 2018 Lu et al. NO Need to Worry about Adversarial Examples in Object Detection in Autonomous Vehicles. CVPR’17. https://arxiv.org/abs/1707.03501 “Our work raises an important question: can one construct examples that are adversarial for many or most viewing conditions? If so, the construction should offer very significant insights into the internal representation of patterns by deep networks. If not, there is a good prospect that adversarial examples can be reduced to a curiosity with little practical impact.”
  • 30. Example Defenses Against Adversarial Examples 30 Defense Target model t Target model t’ x Detector & Reformer Target model t x x’ Class label Class label A single model is still vulnerable to an adversarial example white-box attack
  • 31. MulDef: Multi-Model-based Defense Framework 31 Target model t Model Generator Runtime Model Selector Input x Class label Model Generator: generates a family of models T, M1, M2, ... ● Legitimate-behavior preservation ● Robustness diversity ● As many models as possible Runtime Model Selector: randomly selects a model from the family at runtime Srisakaokul, Zhang, Zhong, Yang, Xie. MULDEF: Multi-model-based Defense Against Adversarial Examples for Neural Networks. arXiv:1809.00065, August 2018. Family of models: t, M1, M2, …
  • 32. Neural Machine Translation Screen snapshot captured on April 5, 2018 • Overall better than statistical machine translation • Worse controllability • Existing translation quality assurance  Need reference translation, not applicable online
  • 33. Translation Quality Assurance ● Key idea:black-box algorithms specialized for common problems ○ No need for reference translation; need only the original sentence and generated translation ○ Precise problem localization ● Common problems ○ Under-translation ○ Over-translation Tencent、UIUC Collaborative Work Zheng, Wang, Liu, Zhang, Zeng, Deng, Yang, He, Xie. Testing Untestable Neural Machine Translation: An Industrial Case. ICSE 2019 Poster
  • 34. Deployment of Translation Quality Assurance ● Adopted to improve WeChat translation service (over 1 billion users, online serving 12 million translation tasks) ○ Offline monitoring (regression testing) ○ Online monitoring (real time selection of best model) ● Large scale test data for translation ○ ~130K English/180K Chinese words/phrases ○ Detect numerous problems in other vendors as well BLEU Score Improvement %Problems Reduction Problem Cases in Other Translation Services Tencent、UIUC Collaborative Work Zheng, Wang, Liu, Zhang, Zeng, Deng, Yang, He, Xie. Testing Untestable Neural Machine Translation: An Industrial Case. ICSE 2019 Poster
  • 35. Quite Many Recent Papers in SE for AI/ML • Ma et al. MODE: Automated Neural Network Model Debugging via State Differential Analysis and Input Selection. ESEC/FSE’18 • Sun et al. Concolic Testing for Deep Neural Networks. ASE’18 • Udeshi et al. Automated Directed Fairness Testing. ASE’18 • Ma et al. DeepGauge: Multi-Granularity Testing Criteria for Deep Learning Systems. ASE’18 • Zhang et al. DeepRoad: GAN-based Metamorphic Testing and Input Validation Framework for Autonomous Driving Systems. ASE’18 • Dwarakanath et al. Identifying Implementation Bugs in Machine Learning based Image Classifiers using Metamorphic Testing. ISSTA’18 • Zhang et al. An Empirical Study on TensorFlow Program Bugs. ISSTA’18 • Tian et al. DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars. ICSE’18 • Abdessalem et al. Testing Vision-Based Control Systems Using Learnable Evolutionary Algorithms. ICSE’18 • Odena, Goodfellow. TensorFuzz: Debugging Neural Networks with Coverage-Guided Fuzzing. arXiv:1807.10875. 2018. • …
  • 36. Open Topics in Intelligence Software Engineering (ISE) • How to solicit and specify requirements for intelligence software? • How to tackle the complexity of integrating intelligence software with the rest of the software system? • How to define test oracles (or properties) for intelligence software? • How to design high-quality library/framework APIs for developing intelligence software? • How to transfer ISE research results into industrial/open source practice? • …
  • 37. (SE  AI)  Practice Impact Problem Domain Solution Domain Practice Intelligent Software Engineering Intelligence Software Engineering
  • 38. 38 Thank You! Q & A This work was supported in part by NSF under grants no. CNS-1513939, CNS-1564274, CCF-1816615. Tao Xie University of Illinois at Urbana-Champaign taoxie@illinois.edu http://taoxie.cs.illinois.edu/
  • 39. (SE  AI)  Practice Impact Problem Domain Solution Domain Practice Intelligent Software Engineering Intelligence Software Engineering

Notas do Editor

  1. kNN8
  2. kNN8