Computing the singular values and singular vectors of a large matrix is a basic task in high dimensional data analysis with many applications in computer science and statistics. In practice, however, data is often perturbed by noise. A natural question is the following. How much does a small perturbation to the matrix change the singular values and vectors? Classical (deterministic) theorems, such as those by Davis-Kahan, Wedin, and Weyl, give tight estimates for the worst-case scenario. In this talk, I will consider the case when the perturbation is random. In this setting, better estimates can be achieved when our matrix has low rank. I will also discuss several applications of these results including locating hidden structure in a random graph and the matrix completion problem. This talk is based on joint work with Van Vu and Ke Wang.