Rörledningar för maskininlärning (ML) för modellutbildning och validering omfattar vanligtvis förbehandling, såsom datarening och funktionsteknik, innan en ML-modell tränas. Förbehandling kombinerar relationell algebra och användardefinierade funktioner (UDF), medan modellträning använder iterationer och linjär algebra. De nuvarande systemen är anpassade till något av de två. Som en följd av detta optimeras förbehandlings- och ML-stegen isolerat. För att möjliggöra holistisk optimering av ML-utbildningsrörledningar presenterar vi Lara, ett deklarativt domänspecifikt språk för samlingar och matriser. Laras mellanliggande representation (IR) reflekterar över hela programmet, dvs UDF, kontrollflöde och båda datatyperna. Två vyer på IR möjliggör olika optimeringar. Monader gör det möjligt för operatören att pushdown och fusion över typ- och loopgränser. Kombinerare tillhandahåller domänspecifika operatörers semantik och optimerar dataåtkomst och korsvalidering av ML-algoritmer. Våra experiment på förbehandling av rörledningar och utvalda ML-algoritmer visar effekterna av våra föreslagna optimeringar på täta och glesa data, som uppnår hastigheter upp till en storleksordning.
Lara REF är ett deklarativt domänspecifikt språk för samlingar och matriser som tillåter linjär algebraverksamhet på matriser att blandas med förutfattade meningar för insamlingsbearbetning.
An Intermediate Representation for Optimizing Machine Learning Pipelines
{'venue': 'PVLDB', 'journal': 'PVLDB', 'mag_field_of_study': ['Computer Science']}