This repository contains interactive educational materials developed for the NCPTT grant: "Data-Driven Heritage Preservation: Leveraging Machine Learning for Informed Adobe Conservation Strategies".
Designed for All Skill Levels: These notebooks use a "Scaffolded Learning" approach:
- No-Code: Use interactive sliders and buttons to explore concepts.
- Low-Code: Read explanations of how the logic works.
- Pro-Code: Inspect the underlying Python code to learn implementation.
No installation required! You can run these tutorials directly in your browser using Google Colab.
| Lesson | Topic | Link |
|---|---|---|
| Tutorial 1 | Data Exploration & Pattern Analysis | |
| Tutorial 2 | Expert-Statistical Intervention Framework |
When you open the notebooks in Colab, you will need to upload the data file:
- Download
synthetic_adobe_data.csvfrom this repository. - In Colab, click the Folder Icon 📁 on the left sidebar.
- Upload the CSV file.
What you'll do:
- Data Explorer (No-Code): Use a dropdown menu to visualize different damage types.
- Factor Analysis (Low-Code): Use a slider to group damage types into "Co-occurrence Patterns." See the heatmap update in real-time.
- Weight Recovery (Low-Code): Use Elastic Net to recover the implicit weights of the scoring system and identify which conditions drive the Total Score.
What you'll do:
- Matrix Builder: Interactively build an intervention priority matrix by combining statistical importance (from Tutorial 1) with preservation ethics.
- The Budget Game: You set the budget! Define your total funds and unit costs, then use sliders to allocate repairs. Try to maximize your preservation score without going over your limit.
FOUN_ncptt/
├── README.md # This guide
├── generate_synthetic_data.py # Creates privacy-preserving dataset
├── synthetic_adobe_data.csv # The data (generated by script above)
├── data_exploration_and_pattern_analysis.ipynb # Tutorial 1 (Diagnostics)
├── intervention_matrix_notebook.ipynb # Tutorial 2 (Decisions)
├── generate_tex_figures.py # Script for publication figures
└── texfigures/ # Output folder for images
Learning Objectives:
- Conceptual: Understand Factor Analysis and Elastic Net / Weight Recovery without getting bogged down in syntax.
- Applied: Translate statistical findings into preservation decisions.
- Technical: (Optional) Learn the Python implementation of these methods.
Customization:
You can modify the generate_synthetic_data.py script to simulate different types of heritage structures (e.g., masonry bridges, timber frames) to adapt the tutorials for other domains.
Author: Dr. Rebecca Napolitano, Penn State University
Grant: National Center for Preservation Technology and Training (NCPTT)