report/experiment data science
CI/CD - DevOps pipeline
iterate through:
Testing in ML
ML training and DevOps
ML as a separate service
Pros: - clear separation of responsabilities - ability to use different progr. lang & framework suitable for the task Cons: - unclear boundaries for the ML service
std DevOps methods - technical debt
ML related technical debt
Changing Anything Changes Everything (CACE) / Entanglement
CACE - mitigation strategies
CACE -mitigation strategies cons/pros
strategy 1.
- this approach may not scale in all situations
- when maintenance cost is outweighed by modularity benefits
strategy 2.
- use vizualization to see effects on diff. dimensions
- use metrics on a slice-by-slice basis
strategy 3.
- may add more debt by increasing system complexity
Hidden feedback loops
Undeclared consumers
Data dependencies
- building large data-dependency chains are difficult to untangle
Data dependency problems
Unstable data dependencies
Underutilized data dependencies
Static analysis of data dependencies
Correction cascades
System-level spaghetti code
system-design anti-patterns:
Spaghetti code - solutions
Changes in the external world