I work in the Security and Privacy Group in Microsoft Research, and my primary area of interest is using machine learning, artificial intelligence and signal processing for computer security. I am particularly interesting in understanding how deep learning can improve computer security. In the past, I have also done research in the areas of audio signal processing, adaptive filtering, statistical signal processing, biomedical signal processing and wireless communications.
I earned my B.S. in Electrical Engineering from Auburn University, my M.S. in Electrical Engineering from the University of Colorado, and my Ph.D. in Electrical Engineering at the University of Washington.
Multichannel Acoustic Echo Cancellation in Multiparty Spatial Audio Conferencing with Constrained Kalman FilteringZhengyou Zhang, Qin Cai, Jack W. Stokes, in 11th International Workshop on Acoustic Echo and Noise Control, September 14, 2008,
Speaker Identification using a Microphone Array and a Joint HMM with Speech Spectrum and Angle of ArrivalJack W. Stokes, John Platt, Sumit Basu, Institute of Electrical and Electronics Engineers, Inc., July 1, 2006,
Robust RLS with Round Robin Regularization including Application to Stereo Acoustic Echo CancellationJack W. Stokes, John Platt, Institute of Electrical and Electronics Engineers, Inc., May 1, 2006,
At the University of Washington, Jim Ritcey, my advisor, and I developed a new method for evaluating the error performance for Direct Sequence / Code Division Multiple Access (DS/CDMA) communications of wireless channels including random or deterministic signature sequences. The new method could be used to model wireless channels include both fading and shadowing effects. I have also applied this method for the evaluation of outage probabilities.
Prior to transferring to Microsoft Research, I worked on audio for Windows and DirectX as a Senior Software Design Engineer. I helped ship Windows NT 4 – SP3, Windows 98, Windows 98 SE, Windows 2000, Windows XP and DirectX 7. Specifically, I worked on acoustic echo cancellation (AEC), 3D audio processing based on Head Related Transfer Functions (HRTFs), DirectSound, and porting the audio stack to use the Windows Driver Model (WDM) and Kernel Streaming (KS).
In addition, I have worked for the following organizations:
Senior Software Engineer, Siemens Medical Systems, Ultrasound Group, Issaquah, WA.
Senior Research Engineer, Physio Control Corp., Redmond, WA.
Applications Engineer, Motorola Inc., Digital Signal Processing Group , Austin, TX.
Teaching Assistant, University of Colorado, Boulder, CO.
Design Engineer, BDM Corp., Boulder, CO.
Summer Intern, Martin Marietta Corp., Denver, CO.
Cooperative Education Student, Intergraph Corp., Huntsville, AL.
Summer Intern, Computer Science Corp., Huntsville, AL.
Jack W. Stokes, Saddle Point Evaluation of Communications Systems over Ideal and Wireless Channels, University of Washington, 2002.
- System and method facilitating acoustic echo cancellation convergence detection
- Adaptive estimation and compensation of clock drift in acoustic echo cancellers
- Infinite Impulse Response Filter for 3D Sound with Tap Delay Line Initialization
- Multi-channel echo cancellation with round robin regularization
- Integation of a Microphone Array with Acoustic Echo Cancellation and Residual Echo Suppression
At Microsoft, my research involves developing new machine learning algorithms for computer security and signal processing algorithms for audio signals.
Razvan Pascanu, Jack W. Stokes, Hermineh Sanossian, Mady Marinescu, Anil Thomas, Malware Classification With Recurrent Networks, Proceedings IEEE Conference on Acoustics, Speech, and Signal Processing (ICASSP2015), Brisbane, Australia, April, 2015.
George Dahl, Jack W. Stokes, Li Deng, Dong Yu, Large-Scale Malware Classification Using Random Projections and Neural Networks, Proceedings IEEE Conference on Acoustics, Speech, and Signal Processing (ICASSP2013), Vancouver, BC Canada, May, 2013.
Nikos Karampatziakis, Jack W. Stokes, Anil Thomas, and Mady Marinescu, Using File Relationships in Malware Classification, Proceedings of Conference on Detection of Intrusions and Malware & Vulnerability Assessment (DIMVA2012), July 2012.
Jack W. Stokes, John C. Platt, Helen J. Wang, Joe Faulhaber, Jonathan Keller, Mady Marinescu,Anil Thomas and Marius Gheorghescu, Scalable Telemetry Classification for Automated Malware Detection, Proceedings of European Symposium on Research in Computer Security (ESORICS2012), September 2012.
Malicious Web Site Detection
Gang Wang, Jack W. Stokes, Cormac Herley, David Felstead, Detecting Malicious Landing Pages in Distribution Networks, Malware, Proceedings IEEE/IFIP International Conference on Dependable Systems and Networks (DSN2013), Budapest, Hungary, June, 2013.
Christian Seifert, Jack W. Stokes, Christina Colcernian, John C. Platt, and Long Lu, Robust Scareware Image Detection, Proceedings IEEE Conference on Acoustics, Speech, and Signal Processing (ICASSP2013), Vancouver, BC Canada, May, 2013.
Junjie Zhang, Christian Seifert, Jack W. Stokes, and Wenke Lee, ARROW: Generating Signatures to Detect Drive-By Downloads, Proceedings of 20th Annual World Wide Web Conference (WWW2011), March 28, 2011.
Jack W. Stokes, Reid Andersen, Christian Seifert, and Kumar Chellapilla, WebCop: Locating Neighborhoods of Malware on the Web, 3rd Usenix Workshop on Large-Scale Exploits and Emerging Threats (LEET2010), April 27, 2010.
Jack W. Stokes, John C. Platt, Joseph Kravis, and Michael Shilman, ALADIN: Active Learning of Anomalies to Detect Intrusions, Microsoft Research Technical Report MSR-TR-2008-24, March 4, 2008.
Jack W. Stokes, John C. Platt, Joseph Kravis, and Michael Shilman, ALADIN: Active Learning for Statistical Intrusion Detection, Neural Information Processing Systems Workshop on “Machine Learning in Adversarial Environments”, NIPS-20, Whistler BC, December 8, 2007.
Greg Buehrer, Jack W. Stokes, Kumar Chellapilla, A Large Scale Study of Automated of Automated Web Search Traffic, International Workshop on Adversarial Information Retrieval on the Web (AIRWEB2008), Beijing, April 22, 2008.
Greg Buehrer, Jack W. Stokes, Kumar Chellapilla, Classification of Automated Web Traffic, Chapter in Weaving Services and People on the World Wide Web, Editors: Irwin King, Ricardo Baeza-Yates, Springer, 2009, pp 3-26.
Operating Systems and Machine Learning
Kevin Bartz, Jack W. Stokes, John C. Platt, Ryan Kivett, David Grant, Silviu Calinoiu and Gretchen Loihle, Finding Similar Failures Using Callstack Similarity, Workshop on Tackling Computer Systems Problems with Machine Learning Techniques (SysML08), San Diego, CA 2008
Acoustic Echo Cancellation
Zhengyou Zhang, Qin Cai, and Jack W. Stokes, Multichannel Acoustic Echo Cancelation in Multiparty Spatial Audio Conferencing with Constrained Kalman Filtering, International Workshop on Acoustic Echo and Noise Control IWAENC ’08, Seattle, WA, September 2008.
Amit S. Chhetri and Jack W. Stokes, Acoustic Echo Cancellation for High Noise Environments, Proceedings IEEE Conference on Multimedia Expo ICME ’06, Toronto, July 2006.
Jack W. Stokes and John C. Platt, Robust RLS With Round Robin Regularization Including Application To Stereo Acoustic Echo Cancellation, Proceedings IEEE Conference on Acoustics, Speech, and Signal Processing ICASSP ’06, Toulouse, France, May, 2006.
Jack W. Stokes and Henrique S. Malvar, Acoustic Echo Cancellation with Arbitrary Playback Sampling Rate, Proceedings IEEE Conference on Acoustics, Speech, and Signal Processing ICASSP ’04, Montreal, pp. IV-153 – IV-156, May 17-21, 2004.
Acoustic Echo Suppression
Amit S. Chhetri, Arun C. Surendran, Jack W. Stokes and John C. Platt, Regression-Based Residual Acoustic Echo Suppression, International Workshop on Acoustic Echo and Noise Control IWAENC ’05, Eindhoven, Netherlands, September 2005.
Diego A. Bendersky, Jack W. Stokes and Henrique S. Malvar, Nonlinear Residual Acoustic Echo Suppression for High Levels of Harmonic Distortion, Proceedings IEEE Conference on Acoustics, Speech, and Signal Processing ICASSP ’08, Las Vegas, March 30-April 4, 2008.
Double Talk Detection
Mohammad A. Iqbal, Jack W. Stokes, and Steven L. Grant, Normalized Double-Talk Detection Based on Microphone and AEC Error Cross-Correlation, Proceedings IEEE Conference on Multimedia ICME ’07, Beijing 2007.
Mohammad A. Iqbal, Jack W. Stokes, John C. Platt, Arun C. Surendran, and Steven L. Grant, DoubleTalk Detection using Real-time Recurrent Learning, International Workshop on Acoustic Echo and Noise Control IWAENC ’06, Paris, France, September 2006
Mohammad A. Iqbal, Steven L. Grant, Jack W. Stokes, A Frequency Domain Doubletalk Detector Based On Cross-Correlation and Extension To Multi-Channel Case, 43rd Asilomar Conference on Signals, Systems and Computers, Monterrey, CA, Nov 2009.
Jack W. Stokes, John C. Platt, and Sumit Basu, Speaker Identification Using a Microphone Array and a Joint HMM with Speech Spectrum and Angle of Arrival, Proceedings IEEE Conference on Multimedia Expo ICME ’06, Toronto, July 2006.
Jack W. Stokes and James A. Ritcey, Performance Analysis of DS/CDMA Systems with Shadowing and Flat Fading, Signal Processing, 81, pp. 2555-2571, 2001.
Jack W. Stokes and James A. Ritcey, Evaluation of Error Probabilities for General Signal Constellations, Proceedings IEEE Global Telecommunications Conference GLOBECOM ’99, Rio de Janeiro, pp. 909-913, Dec. 5-9, 1999.
Jack W. Stokes and James A. Ritcey, A General Method For Evaluating Outage Probabilities Using Padé Approximations, Proceedings IEEE Global Telecommunications Conference GLOBECOM ’98, Sydney, vol. 3, pp. 1485-1490, Nov. 8-12, 1998.
Jack W. Stokes and James A. Ritcey, Error Probabilities of Synchronous DS/CDMA Systems with Random and Deterministic Signature Sequences for Ideal and Fading Channels, Proceedings IEEE International Communications Conference ICC ’96, Dallas, vol. 3, pp. 1518-1522, June 23-27, 1996.
Jay Stokes and Guy R. L. Sohie, Implementation of PID Controllers on the Motorola DSP56000/ DSP56001, Motorola Literature Distribution, Application Note APR5/D, 1989.
Jay Stokes and Guy R. L. Sohie, Implementation of PID Controllers on the Motorola DSP56000/ DSP56001, Part 1, Microprocessors & Microsystems, Elsevier, Volume 15, Issue 6, pp 321 – 331, July-August 1991.
Jay Stokes and Guy R. L. Sohie, Implementation of PID Controllers on the Motorola DSP56000/ DSP56001, Part 2, Microprocessors & Microsystems, Elsevier, Volume 15, Issue 7, pp 385 – 392, September 1991.