  We address the problem of recovering a signal (up to global phase) from its
short-time Fourier transform (STFT) magnitude measurements. This problem arises
in several applications, including optical imaging and speech processing. In
this paper we suggest three interrelated algorithms. The first algorithm
estimates the signal efficiently from noisy measurements by solving a simple
least-squares (LS) problem. In contrast to previously proposed algorithms, the
LS approach has stability guarantees and does not require any prior knowledge
on the sought signal. However, the recovery is guaranteed under relatively
strong restrictions on the STFT window. The second approach is guaranteed to
recover a non-vanishing signal efficiently from noise-free measurements, under
very moderate conditions on the STFT window. Finally, the third method
estimates the signal robustly from noisy measurements by solving a
semi-definite program (SDP). The proposed SDP algorithm contains an inherent
trade-off between its robustness and the restrictions on the STFT windows that
can be used.
