2019-02-15 Faster Polynomial Features#

The current implementation of PolynomialFeatures in scikit-learn computes each new feature independently and that increases the number of data exchanged between numpy and Python. The idea of the implementation in ExtendedFeatures is to reduce this number by brodcast multiplications. The second optimization occurs by transposing the matrix: dense matrix are organized by rows in memory so it is faster to mulitply two rows than two columns. See Faster Polynomial Features.