Fast generalised linear models by database sampling and one-step polishing
In this note, I show how to fit a generalised linear model to N observations on p variables stored in a relational database, using one sampling query and one aggregation queries, as long as N^1/2+δ observations can be stored in memory. The resulting estimator is fully efficient and asymptotically equivalent to the maximum likelihood estimator, and so its variance can be estimated from the Fisher information in the usual way. A proof-of-concept implementation uses R with MonetDB and with SQLite, and could easily be adapted to other popular databases. I illustrate the approach with examples of taxi-trip data in New York City and factors related to car colour in New Zealand.
READ FULL TEXT