SlideShare a Scribd company logo
Lessons Learned from
Testing Machine Learning
SoftwareChristian Ramírez
@chrix2 @formiik
About me
• Computer Engineer
• M.Sc. (Astronomy)
• Ex-googler
• Python lover
• Actually formiiker (principal researcher at formiik
and formiiklabs)
About formiik and how we use
MLFormiik is a platform designed to improve
productivity of on-site staff.
– Route optimization
– Workload balancing
– Ranking
– Time series anomaly detection
– Image recognition (deep learning)
Lesson 0
• Corollary number 2 by @dx
• “In theory, there is no difference between theory
and practice. But, in practice, there is”
Yogi Bera
Introduction
• In machine learning, computers apply statistical
learning techniques to automatically identify
patterns in data.
• A core objective of a learner is to generalize from
its experience.
•WHAT?
Lesson 1
• Forget all you know about testing
Traditional software
programming• In a general way, we do this:
• With a specification of a function
» f(x)
– We implement the function to meet the specification
» f(x)=y
Traditional software
programming• How we do testing, basically:
– Inputs a=[X1,X2,…,Xn]
– Expect results b=[Y1,Y2,…,Yn]
– We use assertions to validate the specification
– f(Xi)==Yi
Machine learning software
programming
• In the most of cases
• We give examples
– Pairs (Xi,Yi)
– Induce f() such that
• y≈f(x)
for given pairs, and generalizes well for unseen x
Machine learning software
programming
• In other cases
• We give examples
– Input (Xi)
– No Yi are given to the learning algorithm, leaving it on its
own to find structure in its input
Testing (ML) software
• Traditional software is modular
– We can decompose it and understand it
– Each module has inputs and outputs that can be defined
and isolated
Testing (ML) software
• Machine learning systems appear to be monolithic
– Everything depends on everything else
– Changing any one thing changes everything else
Lesson 2
• Learn about machine learning
– Kinds of learning
– Coding
Lesson 3
• The models will learn what you teach them to
learn.
– Test models no requirements
– Adversarial examples
– Algorithms don't align with reality
– Spurious correlations
• Corollary number 4 “human beings are so fools to
programming” by @dx
Lesson 4
• No matter what you have read on blogs, you need
a good level of mathematical knowledge
• Remember again corollary number 2
Lesson 5
• Build your own ecosystem
– Frameworks
– GPU or CPU?
Lesson 6
• Identifies how much data you really need
– More data or better models?
Lesson 7
• You need a new toolset
– Experimental data scientist
Lesson 8
• Be a story teller
– Have a goal
– Manage the expectative, this is not magic
Summary
Questions?
Thanks
@chrix2
christian.ramirez@formiik.com

More Related Content

PDF
Intro to machine learning
PPTX
Road to machine learning
PPT
introducción a Machine Learning
PPTX
Machine Can Think
PPT
This is a heavily data-oriented
PPTX
.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
PDF
Data structure and algorithmic thinking with python cover
DOCX
Santosh Sahu_MTech_CSE
Intro to machine learning
Road to machine learning
introducción a Machine Learning
Machine Can Think
This is a heavily data-oriented
.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
Data structure and algorithmic thinking with python cover
Santosh Sahu_MTech_CSE

What's hot (11)

PPT
source1
PPT
课堂讲义(最后更新:2009-9-25)
PPTX
Csci101 lect00 introduction
PPTX
Machine learning
PPTX
Machine learning: A Walk Through School Exams
PPTX
Model Drift Monitoring using Tensorflow Model Analysis
DOC
Machine Learning
PPT
Mobile Computing
PDF
Cprogrammingforproblemsolving
PPTX
Machine Learning in Finance
PDF
Continuous Adaptation via Meta Learning in Nonstationary and Competitive Envi...
source1
课堂讲义(最后更新:2009-9-25)
Csci101 lect00 introduction
Machine learning
Machine learning: A Walk Through School Exams
Model Drift Monitoring using Tensorflow Model Analysis
Machine Learning
Mobile Computing
Cprogrammingforproblemsolving
Machine Learning in Finance
Continuous Adaptation via Meta Learning in Nonstationary and Competitive Envi...
Ad

Similar to Lessons Learned from Testing Machine Learning Software (20)

PPTX
Lessons Learned from Building Machine Learning Software at Netflix
PDF
Machine Learning and Deep Learning from Foundations to Applications Excel, R,...
PPTX
An Introduction to Machine Learning
PDF
Introduction to ML.pdf Supervised Learning, Unsupervised
PPTX
Justin Basilico, Research/ Engineering Manager at Netflix at MLconf SF - 11/1...
PPTX
Introduction to Machine Learning and AI.pptx
PPTX
introduction to machine learning and ai.pptx
PDF
PWL Seattle #23 - A Few Useful Things to Know About Machine Learning
PPTX
Recommendations for Building Machine Learning Software
PPTX
Keynote at IWLS 2017
PDF
Introduction to Machine Learning
PDF
Machine Learning_Unit 2_Full.ppt.pdf
PPTX
Machine Learning Unit 1 Semester 3 MSc IT Part 2 Mumbai University
PDF
01_introduction_ML.pdf
PPT
This is a heavily data-oriented
PPTX
Machine learning testing survey, landscapes and horizons, the Cliff Notes
PDF
Week 1.pdf
PDF
Machine learning
PDF
01_introduction to machine learning algorithms and basics .pdf
PPTX
introduction to machine learning education.pptx
Lessons Learned from Building Machine Learning Software at Netflix
Machine Learning and Deep Learning from Foundations to Applications Excel, R,...
An Introduction to Machine Learning
Introduction to ML.pdf Supervised Learning, Unsupervised
Justin Basilico, Research/ Engineering Manager at Netflix at MLconf SF - 11/1...
Introduction to Machine Learning and AI.pptx
introduction to machine learning and ai.pptx
PWL Seattle #23 - A Few Useful Things to Know About Machine Learning
Recommendations for Building Machine Learning Software
Keynote at IWLS 2017
Introduction to Machine Learning
Machine Learning_Unit 2_Full.ppt.pdf
Machine Learning Unit 1 Semester 3 MSc IT Part 2 Mumbai University
01_introduction_ML.pdf
This is a heavily data-oriented
Machine learning testing survey, landscapes and horizons, the Cliff Notes
Week 1.pdf
Machine learning
01_introduction to machine learning algorithms and basics .pdf
introduction to machine learning education.pptx
Ad

Recently uploaded (20)

PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
System and Network Administraation Chapter 3
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
ai tools demonstartion for schools and inter college
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
medical staffing services at VALiNTRY
PDF
Nekopoi APK 2025 free lastest update
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Reimagine Home Health with the Power of Agentic AI​
Design an Analysis of Algorithms II-SECS-1021-03
VVF-Customer-Presentation2025-Ver1.9.pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Operating system designcfffgfgggggggvggggggggg
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
wealthsignaloriginal-com-DS-text-... (1).pdf
System and Network Administraation Chapter 3
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
ai tools demonstartion for schools and inter college
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Odoo POS Development Services by CandidRoot Solutions
How Creative Agencies Leverage Project Management Software.pdf
Softaken Excel to vCard Converter Software.pdf
Odoo Companies in India – Driving Business Transformation.pdf
medical staffing services at VALiNTRY
Nekopoi APK 2025 free lastest update
Navsoft: AI-Powered Business Solutions & Custom Software Development
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx

Lessons Learned from Testing Machine Learning Software

  • 1. Lessons Learned from Testing Machine Learning SoftwareChristian Ramírez @chrix2 @formiik
  • 2. About me • Computer Engineer • M.Sc. (Astronomy) • Ex-googler • Python lover • Actually formiiker (principal researcher at formiik and formiiklabs)
  • 3. About formiik and how we use MLFormiik is a platform designed to improve productivity of on-site staff. – Route optimization – Workload balancing – Ranking – Time series anomaly detection – Image recognition (deep learning)
  • 4. Lesson 0 • Corollary number 2 by @dx • “In theory, there is no difference between theory and practice. But, in practice, there is” Yogi Bera
  • 5. Introduction • In machine learning, computers apply statistical learning techniques to automatically identify patterns in data. • A core objective of a learner is to generalize from its experience.
  • 7. Lesson 1 • Forget all you know about testing
  • 8. Traditional software programming• In a general way, we do this: • With a specification of a function » f(x) – We implement the function to meet the specification » f(x)=y
  • 9. Traditional software programming• How we do testing, basically: – Inputs a=[X1,X2,…,Xn] – Expect results b=[Y1,Y2,…,Yn] – We use assertions to validate the specification – f(Xi)==Yi
  • 10. Machine learning software programming • In the most of cases • We give examples – Pairs (Xi,Yi) – Induce f() such that • y≈f(x) for given pairs, and generalizes well for unseen x
  • 11. Machine learning software programming • In other cases • We give examples – Input (Xi) – No Yi are given to the learning algorithm, leaving it on its own to find structure in its input
  • 12. Testing (ML) software • Traditional software is modular – We can decompose it and understand it – Each module has inputs and outputs that can be defined and isolated
  • 13. Testing (ML) software • Machine learning systems appear to be monolithic – Everything depends on everything else – Changing any one thing changes everything else
  • 14. Lesson 2 • Learn about machine learning – Kinds of learning – Coding
  • 15. Lesson 3 • The models will learn what you teach them to learn. – Test models no requirements – Adversarial examples – Algorithms don't align with reality – Spurious correlations • Corollary number 4 “human beings are so fools to programming” by @dx
  • 16. Lesson 4 • No matter what you have read on blogs, you need a good level of mathematical knowledge • Remember again corollary number 2
  • 17. Lesson 5 • Build your own ecosystem – Frameworks – GPU or CPU?
  • 18. Lesson 6 • Identifies how much data you really need – More data or better models?
  • 19. Lesson 7 • You need a new toolset – Experimental data scientist
  • 20. Lesson 8 • Be a story teller – Have a goal – Manage the expectative, this is not magic

Editor's Notes

  • #3: Soy ingeniero en computacion, egresado de la universidad nacional de mexico Tengo una maestria en ciencias con especialidad en astronomia, es en este punto donde yo conoci el machine learning y el bigdata, claro que esa epoca no se llamaban asi Fui tester en google, donde floreciomi pasion por las pruebas de software Actualmente soy principal researcher at formiik and formiiklabs
  • #4: Formiik es el producto lider en america latina para la optimizacion de trabajo en ca
  • #5: No importa cuanto hayas leido sobre machine learning, cuantos posts hayas comentado en kdnuggets o cuantos tweets de kirk borne hayas compartido. No haces testing de machine learning hasta que lo haces en la vida real Hay mucha investigacion sobre como aplicar machine learning en testing, pero hay muy poco sobre como hacer testing sobre aplicaciones de machine learning
  • #6: Esta es un definicion de machine learning, que vemos en blogs, revistas y demas lugares No dice mucho al respecto
  • #8: Lo primero que debes hacer es quitarte todas las ideas que tienes sobre “testing tradicional” No porque esten mal, pero ya no son aplicables como tal en este contexto Se que esto puede sonar pretencioso pero es la verdad
  • #10: Si, ya se que eso no es testing is checking y validaciones Espero que Michael bolton no este en esta sala
  • #14: In the machine learning world, we can identify mistakes. We can also retrain a network from scratch to try to fix a mistake. However, we do not know how to make small local changes, fixing a small bug without changing everything at once, which is the everyday practice that defines bugfixing in traditional programming. In machine learning, fixing a bug means restarting and rebuilding the whole system.
  • #15: Debes conocer, los tipos de aprendizaje, en que casos se usan, que algoritmos existen Aprender a programar, es indispensable Las pruebas, las validaciones, la generacion y limpieza de datos deben ser codificadas Recuerda terminator, enviaron a una maquina para acabar con otra maquina, es la unica manera