Gordon Rios

Professional Details

Since 1992 I've worked as a scientific programmer and scientist developing code primarily in C++, Python, and Java, for industrial and research applications. I have broad experience working with packages such as MATLAB, S-Plus (and open sourced variant R), Maple, and Mathematica. I have particularly deep knowledge in the application of machine learning to internet services such as email, web document/query classification and search.

Current Position

I've recently joined Zvents.com as CTO with the express charter of helping the team create the world's best search engine for events. At Zvents I'll work on all aspects of search relevance and usability with an emphasis applying recent research in information retrieval while working closely with significant open source software projects.

Machine Learning and Spam Filtering

Until June 2006 I was a technical advisor for ProofPoint, Inc. where previously I lead machine learning research and development for email spam detection. The company is a leading provider of enterprise grade email software providing state of the art anti-virus, anti-spam, and content compliance applications. Based on work done at Proofpoint I had a paper accepted at the First Conference on Email and Anti-Spam (CEAS 2004), was invited to the program committee and to be a session chair for machine learning section for CEAS (2005), and joined the program committee for CEAS (2006).

Web Search and Document Classification

From February 2005 to November of 2006 I worked as a Technical Yahoo (principal) at Yahoo! working in the International Relevance Group headed up by my friend and colleague Dr. Gordon Sun. Within the group I was responsible for a variety of machine learning projects related to improving search engine relevance for international markets.

From February 1999 to August 2002 I worked as a software engineer and scientist for Inktomi in Inktomi's Directory Engine group and Inktomi's Web Search Group where I did a variety of machine learning programming and analysis projects aimed at improving web document retrieval and categorization.

Data Mining and Computational Finance

Prior to Inktomi, I worked for two years as a lead developer at Cogit Corporation building data mining software for marketing automation applications; and, before Cogit I worked for about five years doing computational finance for two large buy-side investment firms. During this time I also met with researchers from the Santa Fe Institute and was particularly inspired by the work of Brian Arthur in modeling economic systems.

Academics and Research

Here are a few of my papers (published and unpublished) that I like -- most of these were written in response to specific technical problems as a way to organize my thoughts and findings for a particular industrial audience.

As of 2003 I was still doing research at UC Berkeley's department of Industrial Engineering and Operations Research (IEOR) where I recently earned a second Masters in Operations Research with an application focus in computer science. I've taken courses in Stochastic Processes, Mathematical Programming, Dynamic Programming, and Machine Learning. From late 2000 to 2003 I was exploring actor-critic reinforcement learning algorithms and dynamic programming with Prof. Stuart Dreyfus. The theme of the research was building computer programs that interactively learn how to make decisions in a complex or dynamic environment.

My work on AI is tempered by the extensive conversations on the limits of AI with Prof. Stuart Dreyfus and his brother Prof. Hubert Dreyfus -- some of which lead to citations in the book On The Internet by Hubert Dreyfus which sharply highlights the limitations of the internet's role in human society.

Before working as a full time software engineer, I earned an MBA from UC Berkeley (1992) with an emphasis in Computational Finance and Operations Research completing a masters thesis on exotic options with Prof. Mark Rubinstein. I worked for several years writing computer programs for derivatives analysis and pricing for large buy-side money management firms.

Selected Software and Consulting Projects

As a consultant I usually do my best work when supporting other software engineers with software components providing sophisticated analytics as high level services. When called upon to write complete applications I always implement them as thin wrappers around core components or libraries. In other situations I have worked with teams to create new algorithms (typically tweaks or adjustments to known algorithms) which have occasionally resulted in patent applications.

12/2004-2/2005
Wink, Mountain View CA
Consulting Research Scientist: Machine Learning and Search
Worked with Luke Lu, Bruch Karsh, and Michael Tanne, to help design personalized search engine rankings. Two weeks of full time contract programming to complete first version of innovative model fitting code also resulted in provisional patent application.

3/2003-7/2003
Symphoniq, Mountain View CA

Consulting Research Scientist: Machine Learning
Advanced R & D for the application of machine learning to large scale systems management for the founders of NetIQ.

2/2001-6/2001
Optimization Science
, San Francisco
Consulting Scientist
Developed several algorithms for sequential stochastic optimization of website visitor offers. Techniques included dynamic programming and reinforcement learning. Patent filings in process for four algorithms. Work performed remotely while living in Eastern Europe during leave of absence from Inktomi. (Matlab and Java)

8/2000-12/2000
Centrata Inc.
, Menlo Park
Technical Advisor
Advised senior management in the application of peer to peer computing models to text retrieval and other related machine learning tasks. Contact was then CEO (now board member) Shishir Mehrotra.

1/2000-2/2001
Lawrence Berkeley Labs
, Berkeley
Consulting Software Engineer
Developed a high performance neural network package for use in one of LBL's computational biology groups -- group's Principal Investigator is Dr. Stephen Holbrook. (C++)

7/2000-8/2000
U.C. Berkeley Math Department
, Berkeley
Consulting Software Engineer
Developed a web robot to crawl and index data from a web site. Wrote code to process data and apply matrix algorithms to analze membership relationships using eigenvector methods. Work done in conjunction with Prof. Allen Knutson. (Perl and Matlab)

10/1999-5/2000
Preference Metrics, LLC, San Francisco

Application Library Developer
Developed a commercial quality C++ library that implments a general collaborative filtering engine based on an algorithm by Prof. Ken Goldberg. Note: This work was done as a research project while a graduate student in the IEOR department at U.C. Berkeley. Here's a link to the brief api tutorial I wrote for the library.

10/1999-12/1999
Heavy Gear Java Game
, San Francisco
Independent Software Engineer
Developed a simulation of Heavy Gear a popular science fiction tactical board game. (Java Applet)

1/1998-1/1999
Memetix Corporation, San Francisco

Chief Technology Officer/Cofounder
Helped design and write a prototype for a knowledge management application based on distributed object oriented "small world networks" of information. Team leader for development (team composed of myself and two other software developers). Completed technical due diligence to get seed funding of $400,000 with D.H. Blair. As of late 2002 the company was fully funded and operating as CriticalPoint Software. (Java and XML)

3/1996-11/1996
NightScope Stock Pricing

Developed a website for stock pricing based on a neural network (now archived but still accesible but the server isn't allowing my old scripts POST priveliges) (C++, HTML, and Perl/CGI)

10/1995-10/1996
TCW Group, Inc.

Principal Designer and Cofounder of a startup acquired by TCW
Developed a genetic algorithm based portfolio optimizer for a high yield bond index fund product. Startup principal was Mark D. Senkpiel. (S+ and C)

Miscellaneous

Cont@ct By Em/\i|


gordon007 on the mail server hosted by yahoo

Notable Blogs

Political

Fun and Games


Gordon Rios