Sparse Principal Component Analysis: Algorithms And Applications