|
|
|
Michael S. Gashler

|
|
My Objectives
-
I am currently working on a Ph.D. in machine learning at Brigham Young University. My E.T.A. is early spring 2011. I intend to seek a faculty position at a research-oriented university, or a post-doc that will allow me to continue my research interests. Ultimately, I am interested in seeking to give machines a human-like ability to learn. I am convinced that this goal is both possible and worthwhile. Recently, I have been looking into improving black-box non-linear system modeling using a variant of manifold learning that estimates intrinsic state.
Conference Publications
-
Gashler, Michael S. and Ventura, Dan and Martinez, Tony. Iterative non-linear dimensionality reduction with manifold sculpting. In Platt, J.C. and Koller, D. and Singer, Y. and Roweis, S., editor, Advances in Neural Information Processing Systems 20, pages 513–520, MIT Press, Cambridge, MA, 2008.
-
Gashler, Michael S. and Giraud-Carrier, Christophe and Martinez, Tony. Decision Tree Ensemble: Small Heterogeneous Is Better Than Large Homogeneous. In The Seventh International Conference on Machine Learning and Applications, Pages 900 - 905, ICMLA '08. 2008. DOI 10.1109/ICMLA.2008.154
Papers Currently Under Review
-
Gashler, Michael S. and Martinez, Tony. Using Estimated State Sequences to Model Dynamical Systems. Journal of Machine Learning Research, 2010.
-
Gashler, Michael S. and Martinez, Tony. CycleCut: Making Manifolds Unfoldable. In Advances in Neural Information Processing Systems, 2010.
-
Gashler, Michael S. and Ventura, Dan and Martinez, Tony. Manifold Learning by Graduated Optimization. IEEE Transactions on Systems, Man, and Cybernetics, Part B, 2010.
-
Gashler, Michael S. and Martinez, Tony. Temporal Non-linear Dimensionality Reduction. In Advances in Neural Information Processing Systems, 2010.
Employment History
-
| Neural Networks and Machine Learning Lab |
Research assistant for Tony Martinez in machine learning at Brigham Young University |
May 2006 – Present |
| Edumetrics Institute |
Worked as a development lead and engineer to build an interpreter training program and a decentralized multiplayer Internet game. |
Dec 2004 – May 2006 |
| Microsoft |
Worked for Microsoft on the Common Language Runtime (the .NET virtual machine.) I developed Code Access Security and the PE file Verifier. |
Jul 2001 – Nov 2004 |
| Vision Lab |
Did Image processing research for Bill Barrett. I worked on finding object boundaries by matching similar parts of successive animation frames. |
Jan 2001 – Jun 2001 |
| Microsoft |
Internship for Microsoft. I did performance work on the startup time of Visual Studio 7.0. |
May 2000 – Jul 2000 |
| Incline Software |
Worked for Incline Software on Ancestral Quest (which later became PAF). |
Apr 1998 – Sep 1999 |
| Waterford Institute |
Developed educational software for children. |
Jan 1998 – Apr 1998 |
| Scott+Charles Computer |
Wrote a Windows version of GlassMaster software for Scott+Charles Computer. GlassMaster is software for running a glass shop. |
May 1994 – Aug 1994 |
Open Source Projects
-
I am an avid hobby-programmer. Once an idea takes hold in my head, a mysterious force seems to compel me to immerse myself in bringing that idea to life. The following is an incomplete list of my projects.
-
Waffles is an open source library of machine learning algorithms. I started this project so that other machine learning researchers could benefit from the algorithms that I develop in the course of my research. It has slowly evolved into a huge library with a diversity of machine learning algorithms, utilities for data mining, and all sorts of classes that are useful to a researcher in this field.
|
|
-
|
Gnuology is somewhat like a Wiki for Genealogy. The idea is that all of your relatives should be able to work on the same data at the same time. The program itself is actually a full web server specifically dedicated for displaying genealogy data from multiple views, and for enabling people to edit the data directly through the web browser. This project has been largely eclipsed by the new Family Search tools, but it still has several novel design aspects that I believe are needed in genealogical communities.
|
-
Isotope is a decentralized massively multiplayer on-line role playing game that focusses on intellectually stimulating puzzle games. The idea is that people can develop puzzle games, post them on their own web server, and link them into the game universe. I invented this game for the Edumetrics Institute.
|
|
-
|
Tesla's Tangle is a board-game that I invented for fun. If you enjoy deep-thinking competitive strategy games, give this one a try. At one point I wanted to start a company behind this game, but I have since decided that I am unwilling to take that much time away from my research.
|
|
Other Projects (some of these are really old)
-
|
In high school (way back in 1993), I developed a package called Gashler's Great Game Generator. It was a map-editor, sprite-editor, tile-editor, etc. It had a wizard interface that would guide you to associate "personalities" with game characters, tweak game parameters with slider-bars, and would generate a game (side-scroller-style). Back then, this was really cool. Some neighborhood kids actually preferred my software to the game console of the time. (Remember the original NES?) I wrote this in Q-basic, but due to the limitations of that language, I had to write some routines in x86 assembly, which I then encoded as a Q-basic string. I dereferenced those strings and then tricked the machine into calling them as a function. I even interfaced directly with the mouse driver through this mechanism. Aah, those were the days, when life was about video games and I had the time to hack around any obstacle that got in my way!
|
-
|
I added a couple features to Kolourpaint (a KDE project).
|
-
|
To show my admiration for the United States Constitution, I wrote my own version that seeks to incorporate an additional two hundred years of hindsight.
|
-
|
I have written tools for pitch detection/correction, and various other signal processing algorithms.
|
-
|
Yes, I once worked for the Evil Empire. My code can be found in both VS and .NET, and my work has led to two of their patents. (As penance, I now work tirelessly to always use my powers for good instead of evil.)
|
|
-
|
|
I once worked for the company that made Ancestral Quest, which eventually became PAF.
|
-
|
I once designed a graphical interface for editing programming code called UPL. It could parse a grammar, and then would provide a visual interface that allowed one to edit the code without being able to produce code that violated the language syntactics. In other words, it constrained you to produce code that would compile. Unfortunately, it turned out to be more tedious to use than a plain-old text editor. Oh well, it was an interesting research project.
|
|
-
|
In my freshman assembly class, we were supposed to write a guess-a-number game in
assembly language. I was bored, so I went home and reverse-engineered 8086 assembly.
With no documentation, just a lot of bit-twiddling and "debug" (a low-level debugger
that used to come with DOS), I built my own assembler. Then, using my assembler, I
wrote a higher-level languaged called Tu. I was particularly proud of the fact that
the image-blit function built into my language was two orders of magnitude faster
than the image-blit function built into the language in which I originally wrote the
assembler! Unfortunately, I became so engrossed in this project that I forgot to
show up to the class midterm. I would have failed, but fortunately the professor
agreed to give me a 'C' if I aced the final, which I did. Ha!
|
|
-
|
I enjoy image processing, and have written several tools for manipulating images.
|
|
-
|
I enjoy studying computer security. I invented a symmetric-key algorithm that allows
you to plug in your favorite one-way-hash function for making cypher blocks.
Cryptpad is a convenient tool I wrote to store my
passwords. It uses my symmetric-key algorithm with SHA-256. I've had cryptography experts
analyze my algorithm. I've also offered a $50 reward (that's all my wife will let me risk)
since 2001 for anyone who can crack it. I also implemented RSA
asymmetric-key cryptography from scratch. (I even wrote my own BigInteger class.) I used
this to make a secure communication program, and several authentication tools. I also
wrote a Javascript version so I could use cryptography within my web apps.
|
-
|
I wrote a simple tool that enables you to edit DVDs, without actually having to alter the DVD. That is, it records time-stamps of the ads you want to skip over, or the scenes that you want to skip, and then enables you to play back the DVD without having to manually skip those parts. The idea was that people could collaborate online to share "bleep" files and thereby improve the DVD watching experience for everyone.
|
-
|
Long ago I wrote some video games for the Waterford Institute.
|
|
-
|
I got started as a programmer by making video games. In my opinion, it's a great way to get people excited about creating things.
|
| |