SlideShare a Scribd company logo
Building Data Products with Python
District Data Labs
Links to various resources
Introduction to Python
http://bit.ly/1gJ73Tt
Github Repository
http://bit.ly/1eLBzki
About the Instructor
Benjamin Bengfort
Data Science:
● MS Computer Science from North Dakota State
● PhD Candidate in CS at the University of Maryland
● Data Scientist at Cobrain Company in Bethesda, MD
● Board member of Data Community DC
● Lecturer at Georgetown University
Python Programmer:
● Python developer for 7 years
● Open source contributor
● My work on Github: https://github.com/bbengfort
About the Instructor
Benjamin Bengfort
I am available to collaborate and
answer questions for all of my
students.
Twitter: twitter.com/bbengfort
LinkedIn: linkedin.com/in/bbengfort
Github: github.com/bbengfort
Email: benjamin@bengfort.com
About the Teaching Assistant
Keshav Magge
● MS Computer Science from University of Houston
● Lead Data/Software Engineer at Cobrain Company in
Bethesda, MD
Python Programmer:
● Python developer for 7 years
● Plone/Zope for 2 years, Django for 5 years
● My work on Github: https://github.com/keshavmagge
About the Teaching Assistant
Keshav Magge
Reach out to me to talk about all
things python/data or just about life
Twitter: twitter.com/keshavmagge
LinkedIn: linkedin.com/pub/keshav-magge/12/a2a/324/
Github: github.com/keshavmagge
Email: keshav@keshavmagge.com
Building Data Products
Hilary Mason
A data product is a product that is
based on the combination of data
and algorithms.
”
“
Building Data Apps with Python
Mike Loukides
A data application acquires its value from the
data itself, and creates more data as a result.
It’s not just an application with data; it’s a
data product. Data science enables the
creation of data products.
”
“
Building Data Apps with Python
The Data Science Pipeline
Data Ingestion
Data Munging
and Wrangling
Computation and
Analyses
Modeling and
Application
Reporting and
Visualization
Data Ingestion
● There is a world of data out
there- how to get it? Web
crawlers, APIs, Sensors? Python
and other web scripting
languages are custom made for
this task.
● The real question is how can we
deal with such a giant volume
and velocity of data?
● Big Data and Data Science often
require ingestion specialists!
● Warehousing the data means
storing the data in as raw a form
as possible.
● Extract, transform, and load
operations move data to
operational storage locations.
● Filtering, aggregation,
normalization and
denormalization all ensure data is
in a form it can be computed on.
● Annotated training sets must be
created for ML tasks.
Data Wrangling
● Hypothesis driven computation
includes design and development
of predictive models.
● Many models have to be trained
or constrained into a
computational form like a Graph
database, and this is time
consuming.
● Other data products like indices,
relations, classifications, and
clusters may be computed.
Computation and Analyses
Modeling and Application
This is the part we’re most familiar with.
Supervised classification, Unsupervised
clustering - Bayes, Logistic Regression,
Decision Trees, and other models.
This is also where the money is.
● Often overlooked, this part is
crucial, even if we have data
products.
● Humans recognize patterns
better than machines. Human
feedback is crucial in Active
Learning and remodeling (error
detection).
● Mashups and collaborations
generate more data- and
therefore more value!
Reporting and Visualization
Don’t forget feedback!
(Active Learning for Data
Products)
What we’re going to build today
SCIENCE BOOKCLUB!!
● A book club that chooses what to
read via a recommender system.
● Uses GoodReads data to ingest
and return feedback on books.
● Statistical model is a non-
negative matrix factorization
● Reporting using Jinja (almost a
web app)
Workflow
1. Setting up a Python skeleton
2. Creating and Running Tests
3. Wading in with a configuration
4. Ingestion with urllib and requests
5. Creating a command line admin with argparse
6. Wrangling with BeautifulSoup and SQLAlchemy
7. Modeling with numpy
8. Reporting with Jinja2
Octavo Architecture (really clear DSP)
requests.py
Ingestion
Module
Raw Data
Storage Computational
Data Storage
Wrangling
Module
BeautifulSou
p
SQLAlchemy
Recommender
Module
Numpy
Reporting
Module
Jinja2Matplotlib
requests.py
Octavo Architecture (really clear DSP)
requests.py
Ingestion
Module
Raw Data
Storage
Computational
Data Storage
Wrangling
Module
BeautifulSoup
SQLAlchemy
Recommender
Module
Numpy
Reporting
Module
Jinja2
Matplotlib
How to tackle this course ...
How to tackle this course ...
Lean into it- absorb as much as
possible, don’t worry about falling
behind - it will be in your head!
Then afterwards - lets all digest it
together (keep in touch)
Ad

Recommended

Building Data Products with Python (Georgetown)
Building Data Products with Python (Georgetown)
Benjamin Bengfort
 
An Interactive Visual Analytics Dashboard for the Employment Situation Report
An Interactive Visual Analytics Dashboard for the Employment Situation Report
Benjamin Bengfort
 
Graph Based Machine Learning on Relational Data
Graph Based Machine Learning on Relational Data
Benjamin Bengfort
 
Scikit-Learn Tutorial | Machine Learning With Scikit-Learn | Sklearn | Python...
Scikit-Learn Tutorial | Machine Learning With Scikit-Learn | Sklearn | Python...
Simplilearn
 
Interpretable machine learning
Interpretable machine learning
Sri Ambati
 
A Beginner's Guide to Machine Learning with Scikit-Learn
A Beginner's Guide to Machine Learning with Scikit-Learn
Sarah Guido
 
Practical Tips for Interpreting Machine Learning Models - Patrick Hall, H2O.ai
Practical Tips for Interpreting Machine Learning Models - Patrick Hall, H2O.ai
Sri Ambati
 
Scikit Learn intro
Scikit Learn intro
9xdot
 
Automatic machine learning (AutoML) 101
Automatic machine learning (AutoML) 101
QuantUniversity
 
Azure Machine Learning
Azure Machine Learning
Mostafa
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data Analysis
Manuel Martín
 
Introduction to Machine learning
Introduction to Machine learning
Knoldus Inc.
 
Ferruzza g automl deck
Ferruzza g automl deck
Eric Dill
 
16th Athens Big Data Meetup - 1st Talk - An Introduction to Machine Learning ...
16th Athens Big Data Meetup - 1st Talk - An Introduction to Machine Learning ...
Athens Big Data
 
Introduction to Azure Machine Learning
Introduction to Azure Machine Learning
Paul Prae
 
Unified Approach to Interpret Machine Learning Model: SHAP + LIME
Unified Approach to Interpret Machine Learning Model: SHAP + LIME
Databricks
 
AutoML - The Future of AI
AutoML - The Future of AI
Ning Jiang
 
Helping data scientists escape the seduction of the sandbox - Krish Swamy, We...
Helping data scientists escape the seduction of the sandbox - Krish Swamy, We...
Sri Ambati
 
Data science
Data science
Purna Chander
 
Machine learning life cycle
Machine learning life cycle
Ramjee Ganti
 
Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014
Manuel Martín
 
Knowledge Discovery
Knowledge Discovery
André Karpištšenko
 
End-to-End Machine Learning Project
End-to-End Machine Learning Project
Eng Teong Cheah
 
ModelDB: A System to Manage Machine Learning Models: Spark Summit East talk b...
ModelDB: A System to Manage Machine Learning Models: Spark Summit East talk b...
Spark Summit
 
Ds for finance day 3
Ds for finance day 3
QuantUniversity
 
Meetup sthlm - introduction to Machine Learning with demo cases
Meetup sthlm - introduction to Machine Learning with demo cases
Zenodia Charpy
 
Building a performing Machine Learning model from A to Z
Building a performing Machine Learning model from A to Z
Charles Vestur
 
Machine learning with scikitlearn
Machine learning with scikitlearn
Pratap Dangeti
 
Machine Learning
Machine Learning
Ramiro Aduviri Velasco
 
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
LazarinaStoyanova
 

More Related Content

What's hot (20)

Automatic machine learning (AutoML) 101
Automatic machine learning (AutoML) 101
QuantUniversity
 
Azure Machine Learning
Azure Machine Learning
Mostafa
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data Analysis
Manuel Martín
 
Introduction to Machine learning
Introduction to Machine learning
Knoldus Inc.
 
Ferruzza g automl deck
Ferruzza g automl deck
Eric Dill
 
16th Athens Big Data Meetup - 1st Talk - An Introduction to Machine Learning ...
16th Athens Big Data Meetup - 1st Talk - An Introduction to Machine Learning ...
Athens Big Data
 
Introduction to Azure Machine Learning
Introduction to Azure Machine Learning
Paul Prae
 
Unified Approach to Interpret Machine Learning Model: SHAP + LIME
Unified Approach to Interpret Machine Learning Model: SHAP + LIME
Databricks
 
AutoML - The Future of AI
AutoML - The Future of AI
Ning Jiang
 
Helping data scientists escape the seduction of the sandbox - Krish Swamy, We...
Helping data scientists escape the seduction of the sandbox - Krish Swamy, We...
Sri Ambati
 
Data science
Data science
Purna Chander
 
Machine learning life cycle
Machine learning life cycle
Ramjee Ganti
 
Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014
Manuel Martín
 
Knowledge Discovery
Knowledge Discovery
André Karpištšenko
 
End-to-End Machine Learning Project
End-to-End Machine Learning Project
Eng Teong Cheah
 
ModelDB: A System to Manage Machine Learning Models: Spark Summit East talk b...
ModelDB: A System to Manage Machine Learning Models: Spark Summit East talk b...
Spark Summit
 
Ds for finance day 3
Ds for finance day 3
QuantUniversity
 
Meetup sthlm - introduction to Machine Learning with demo cases
Meetup sthlm - introduction to Machine Learning with demo cases
Zenodia Charpy
 
Building a performing Machine Learning model from A to Z
Building a performing Machine Learning model from A to Z
Charles Vestur
 
Machine learning with scikitlearn
Machine learning with scikitlearn
Pratap Dangeti
 
Automatic machine learning (AutoML) 101
Automatic machine learning (AutoML) 101
QuantUniversity
 
Azure Machine Learning
Azure Machine Learning
Mostafa
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data Analysis
Manuel Martín
 
Introduction to Machine learning
Introduction to Machine learning
Knoldus Inc.
 
Ferruzza g automl deck
Ferruzza g automl deck
Eric Dill
 
16th Athens Big Data Meetup - 1st Talk - An Introduction to Machine Learning ...
16th Athens Big Data Meetup - 1st Talk - An Introduction to Machine Learning ...
Athens Big Data
 
Introduction to Azure Machine Learning
Introduction to Azure Machine Learning
Paul Prae
 
Unified Approach to Interpret Machine Learning Model: SHAP + LIME
Unified Approach to Interpret Machine Learning Model: SHAP + LIME
Databricks
 
AutoML - The Future of AI
AutoML - The Future of AI
Ning Jiang
 
Helping data scientists escape the seduction of the sandbox - Krish Swamy, We...
Helping data scientists escape the seduction of the sandbox - Krish Swamy, We...
Sri Ambati
 
Machine learning life cycle
Machine learning life cycle
Ramjee Ganti
 
Quick presentation for the OpenML workshop in Eindhoven 2014
Quick presentation for the OpenML workshop in Eindhoven 2014
Manuel Martín
 
End-to-End Machine Learning Project
End-to-End Machine Learning Project
Eng Teong Cheah
 
ModelDB: A System to Manage Machine Learning Models: Spark Summit East talk b...
ModelDB: A System to Manage Machine Learning Models: Spark Summit East talk b...
Spark Summit
 
Meetup sthlm - introduction to Machine Learning with demo cases
Meetup sthlm - introduction to Machine Learning with demo cases
Zenodia Charpy
 
Building a performing Machine Learning model from A to Z
Building a performing Machine Learning model from A to Z
Charles Vestur
 
Machine learning with scikitlearn
Machine learning with scikitlearn
Pratap Dangeti
 

Similar to Building Data Apps with Python (20)

Machine Learning
Machine Learning
Ramiro Aduviri Velasco
 
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
LazarinaStoyanova
 
Machine learning at scale - Webinar By zekeLabs
Machine learning at scale - Webinar By zekeLabs
zekeLabs Technologies
 
Lambda Architecture and open source technology stack for real time big data
Lambda Architecture and open source technology stack for real time big data
Trieu Nguyen
 
Evaluation of big data analysis
Evaluation of big data analysis
Καρολίνα Κάτι
 
Closing The Loop for Evaluating Big Data Analysis
Closing The Loop for Evaluating Big Data Analysis
Swiss Big Data User Group
 
Moving from BI to AI : For decision makers
Moving from BI to AI : For decision makers
zekeLabs Technologies
 
Data science presentation
Data science presentation
MSDEVMTL
 
AI hype or reality
AI hype or reality
Awantik Das
 
How to be data savvy manager
How to be data savvy manager
TOSHI STATS Co.,Ltd.
 
DevOps Days Rockies MLOps
DevOps Days Rockies MLOps
Matthew Reynolds
 
Transition to a modern data platform
Transition to a modern data platform
Michael Ghen
 
Architecting for analytics
Architecting for analytics
Rob Winters
 
Building Data Scientists
Building Data Scientists
Mitch Sanders
 
How to become a data scientist
How to become a data scientist
Manjunath Sindagi
 
Real world machine learning with Java for Fumankaitori.com
Real world machine learning with Java for Fumankaitori.com
Mathieu Dumoulin
 
Resume
Resume
Dheeraj Mummareddy
 
Integrating Azure Machine Learning and Predictive Analytics with SharePoint O...
Integrating Azure Machine Learning and Predictive Analytics with SharePoint O...
Bhakthi Liyanage
 
Lambda architecture for real time big data
Lambda architecture for real time big data
Trieu Nguyen
 
How to build data accessibility for everyone
How to build data accessibility for everyone
Karen Hsieh
 
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
LazarinaStoyanova
 
Machine learning at scale - Webinar By zekeLabs
Machine learning at scale - Webinar By zekeLabs
zekeLabs Technologies
 
Lambda Architecture and open source technology stack for real time big data
Lambda Architecture and open source technology stack for real time big data
Trieu Nguyen
 
Closing The Loop for Evaluating Big Data Analysis
Closing The Loop for Evaluating Big Data Analysis
Swiss Big Data User Group
 
Moving from BI to AI : For decision makers
Moving from BI to AI : For decision makers
zekeLabs Technologies
 
Data science presentation
Data science presentation
MSDEVMTL
 
AI hype or reality
AI hype or reality
Awantik Das
 
Transition to a modern data platform
Transition to a modern data platform
Michael Ghen
 
Architecting for analytics
Architecting for analytics
Rob Winters
 
Building Data Scientists
Building Data Scientists
Mitch Sanders
 
How to become a data scientist
How to become a data scientist
Manjunath Sindagi
 
Real world machine learning with Java for Fumankaitori.com
Real world machine learning with Java for Fumankaitori.com
Mathieu Dumoulin
 
Integrating Azure Machine Learning and Predictive Analytics with SharePoint O...
Integrating Azure Machine Learning and Predictive Analytics with SharePoint O...
Bhakthi Liyanage
 
Lambda architecture for real time big data
Lambda architecture for real time big data
Trieu Nguyen
 
How to build data accessibility for everyone
How to build data accessibility for everyone
Karen Hsieh
 
Ad

More from Benjamin Bengfort (20)

Privacy and Security in the Age of Generative AI - C4AI.pdf
Privacy and Security in the Age of Generative AI - C4AI.pdf
Benjamin Bengfort
 
Implementing Function Calling LLMs without Fear.pdf
Implementing Function Calling LLMs without Fear.pdf
Benjamin Bengfort
 
Privacy and Security in the Age of Generative AI
Privacy and Security in the Age of Generative AI
Benjamin Bengfort
 
Digitocracy without Borders: the unifying and destabilizing effects of softwa...
Digitocracy without Borders: the unifying and destabilizing effects of softwa...
Benjamin Bengfort
 
Getting Started with TRISA
Getting Started with TRISA
Benjamin Bengfort
 
Visual diagnostics for more effective machine learning
Visual diagnostics for more effective machine learning
Benjamin Bengfort
 
Visualizing Model Selection with Scikit-Yellowbrick: An Introduction to Devel...
Visualizing Model Selection with Scikit-Yellowbrick: An Introduction to Devel...
Benjamin Bengfort
 
Dynamics in graph analysis (PyData Carolinas 2016)
Dynamics in graph analysis (PyData Carolinas 2016)
Benjamin Bengfort
 
Visualizing the Model Selection Process
Visualizing the Model Selection Process
Benjamin Bengfort
 
Data Product Architectures
Data Product Architectures
Benjamin Bengfort
 
A Primer on Entity Resolution
A Primer on Entity Resolution
Benjamin Bengfort
 
Introduction to Machine Learning with SciKit-Learn
Introduction to Machine Learning with SciKit-Learn
Benjamin Bengfort
 
Fast Data Analytics with Spark and Python
Fast Data Analytics with Spark and Python
Benjamin Bengfort
 
Evolutionary Design of Swarms (SSCI 2014)
Evolutionary Design of Swarms (SSCI 2014)
Benjamin Bengfort
 
An Overview of Spanner: Google's Globally Distributed Database
An Overview of Spanner: Google's Globally Distributed Database
Benjamin Bengfort
 
Graph Analyses with Python and NetworkX
Graph Analyses with Python and NetworkX
Benjamin Bengfort
 
Natural Language Processing with Python
Natural Language Processing with Python
Benjamin Bengfort
 
Beginners Guide to Non-Negative Matrix Factorization
Beginners Guide to Non-Negative Matrix Factorization
Benjamin Bengfort
 
Annotation with Redfox
Annotation with Redfox
Benjamin Bengfort
 
Rasta processing of speech
Rasta processing of speech
Benjamin Bengfort
 
Privacy and Security in the Age of Generative AI - C4AI.pdf
Privacy and Security in the Age of Generative AI - C4AI.pdf
Benjamin Bengfort
 
Implementing Function Calling LLMs without Fear.pdf
Implementing Function Calling LLMs without Fear.pdf
Benjamin Bengfort
 
Privacy and Security in the Age of Generative AI
Privacy and Security in the Age of Generative AI
Benjamin Bengfort
 
Digitocracy without Borders: the unifying and destabilizing effects of softwa...
Digitocracy without Borders: the unifying and destabilizing effects of softwa...
Benjamin Bengfort
 
Visual diagnostics for more effective machine learning
Visual diagnostics for more effective machine learning
Benjamin Bengfort
 
Visualizing Model Selection with Scikit-Yellowbrick: An Introduction to Devel...
Visualizing Model Selection with Scikit-Yellowbrick: An Introduction to Devel...
Benjamin Bengfort
 
Dynamics in graph analysis (PyData Carolinas 2016)
Dynamics in graph analysis (PyData Carolinas 2016)
Benjamin Bengfort
 
Visualizing the Model Selection Process
Visualizing the Model Selection Process
Benjamin Bengfort
 
A Primer on Entity Resolution
A Primer on Entity Resolution
Benjamin Bengfort
 
Introduction to Machine Learning with SciKit-Learn
Introduction to Machine Learning with SciKit-Learn
Benjamin Bengfort
 
Fast Data Analytics with Spark and Python
Fast Data Analytics with Spark and Python
Benjamin Bengfort
 
Evolutionary Design of Swarms (SSCI 2014)
Evolutionary Design of Swarms (SSCI 2014)
Benjamin Bengfort
 
An Overview of Spanner: Google's Globally Distributed Database
An Overview of Spanner: Google's Globally Distributed Database
Benjamin Bengfort
 
Graph Analyses with Python and NetworkX
Graph Analyses with Python and NetworkX
Benjamin Bengfort
 
Natural Language Processing with Python
Natural Language Processing with Python
Benjamin Bengfort
 
Beginners Guide to Non-Negative Matrix Factorization
Beginners Guide to Non-Negative Matrix Factorization
Benjamin Bengfort
 
Ad

Recently uploaded (20)

Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Quantum AI: Where Impossible Becomes Probable
Quantum AI: Where Impossible Becomes Probable
Saikat Basu
 
You are not excused! How to avoid security blind spots on the way to production
You are not excused! How to avoid security blind spots on the way to production
Michele Leroux Bustamante
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
Fwdays
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
PyCon SG 25 - Firecracker Made Easy with Python.pdf
PyCon SG 25 - Firecracker Made Easy with Python.pdf
Muhammad Yuga Nugraha
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
AI VIDEO MAGAZINE - June 2025 - r/aivideo
AI VIDEO MAGAZINE - June 2025 - r/aivideo
1pcity Studios, Inc
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Quantum AI: Where Impossible Becomes Probable
Quantum AI: Where Impossible Becomes Probable
Saikat Basu
 
You are not excused! How to avoid security blind spots on the way to production
You are not excused! How to avoid security blind spots on the way to production
Michele Leroux Bustamante
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
Fwdays
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
PyCon SG 25 - Firecracker Made Easy with Python.pdf
PyCon SG 25 - Firecracker Made Easy with Python.pdf
Muhammad Yuga Nugraha
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
AI VIDEO MAGAZINE - June 2025 - r/aivideo
AI VIDEO MAGAZINE - June 2025 - r/aivideo
1pcity Studios, Inc
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 

Building Data Apps with Python

  • 1. Building Data Products with Python District Data Labs
  • 2. Links to various resources Introduction to Python http://bit.ly/1gJ73Tt Github Repository http://bit.ly/1eLBzki
  • 3. About the Instructor Benjamin Bengfort Data Science: ● MS Computer Science from North Dakota State ● PhD Candidate in CS at the University of Maryland ● Data Scientist at Cobrain Company in Bethesda, MD ● Board member of Data Community DC ● Lecturer at Georgetown University Python Programmer: ● Python developer for 7 years ● Open source contributor ● My work on Github: https://github.com/bbengfort
  • 4. About the Instructor Benjamin Bengfort I am available to collaborate and answer questions for all of my students. Twitter: twitter.com/bbengfort LinkedIn: linkedin.com/in/bbengfort Github: github.com/bbengfort Email: [email protected]
  • 5. About the Teaching Assistant Keshav Magge ● MS Computer Science from University of Houston ● Lead Data/Software Engineer at Cobrain Company in Bethesda, MD Python Programmer: ● Python developer for 7 years ● Plone/Zope for 2 years, Django for 5 years ● My work on Github: https://github.com/keshavmagge
  • 6. About the Teaching Assistant Keshav Magge Reach out to me to talk about all things python/data or just about life Twitter: twitter.com/keshavmagge LinkedIn: linkedin.com/pub/keshav-magge/12/a2a/324/ Github: github.com/keshavmagge Email: [email protected]
  • 8. Hilary Mason A data product is a product that is based on the combination of data and algorithms. ” “
  • 10. Mike Loukides A data application acquires its value from the data itself, and creates more data as a result. It’s not just an application with data; it’s a data product. Data science enables the creation of data products. ” “
  • 12. The Data Science Pipeline
  • 13. Data Ingestion Data Munging and Wrangling Computation and Analyses Modeling and Application Reporting and Visualization
  • 14. Data Ingestion ● There is a world of data out there- how to get it? Web crawlers, APIs, Sensors? Python and other web scripting languages are custom made for this task. ● The real question is how can we deal with such a giant volume and velocity of data? ● Big Data and Data Science often require ingestion specialists!
  • 15. ● Warehousing the data means storing the data in as raw a form as possible. ● Extract, transform, and load operations move data to operational storage locations. ● Filtering, aggregation, normalization and denormalization all ensure data is in a form it can be computed on. ● Annotated training sets must be created for ML tasks. Data Wrangling
  • 16. ● Hypothesis driven computation includes design and development of predictive models. ● Many models have to be trained or constrained into a computational form like a Graph database, and this is time consuming. ● Other data products like indices, relations, classifications, and clusters may be computed. Computation and Analyses
  • 17. Modeling and Application This is the part we’re most familiar with. Supervised classification, Unsupervised clustering - Bayes, Logistic Regression, Decision Trees, and other models. This is also where the money is.
  • 18. ● Often overlooked, this part is crucial, even if we have data products. ● Humans recognize patterns better than machines. Human feedback is crucial in Active Learning and remodeling (error detection). ● Mashups and collaborations generate more data- and therefore more value! Reporting and Visualization
  • 19. Don’t forget feedback! (Active Learning for Data Products)
  • 20. What we’re going to build today SCIENCE BOOKCLUB!! ● A book club that chooses what to read via a recommender system. ● Uses GoodReads data to ingest and return feedback on books. ● Statistical model is a non- negative matrix factorization ● Reporting using Jinja (almost a web app)
  • 21. Workflow 1. Setting up a Python skeleton 2. Creating and Running Tests 3. Wading in with a configuration 4. Ingestion with urllib and requests 5. Creating a command line admin with argparse 6. Wrangling with BeautifulSoup and SQLAlchemy 7. Modeling with numpy 8. Reporting with Jinja2
  • 22. Octavo Architecture (really clear DSP) requests.py Ingestion Module Raw Data Storage Computational Data Storage Wrangling Module BeautifulSou p SQLAlchemy Recommender Module Numpy Reporting Module Jinja2Matplotlib
  • 23. requests.py Octavo Architecture (really clear DSP) requests.py Ingestion Module Raw Data Storage Computational Data Storage Wrangling Module BeautifulSoup SQLAlchemy Recommender Module Numpy Reporting Module Jinja2 Matplotlib
  • 24. How to tackle this course ...
  • 25. How to tackle this course ... Lean into it- absorb as much as possible, don’t worry about falling behind - it will be in your head! Then afterwards - lets all digest it together (keep in touch)