Session 2N
Machine Learning
3:30 PM to 5:15 PM | Moderated by Werner Stuetzle
- Presenter
-
- Matthew C. (Matthew) Bihis, Senior, Electrical Engineering (Bothell) Mary Gates Scholar, NASA Space Grant Scholar, Undergraduate Research Conference Travel Awardee
- Mentor
-
- Sohini Roy Chowdhury, Engineering & Mathematics
- Session
-
- 3:30 PM to 5:15 PM
Databases are growing too large for a single computer to handle; cloud-based platforms are capable of handling limitless amounts of information while big data is quickly becoming one of the most sought after fields for its many applications. My research focuses on adapting machine learning methods within the cloud-based computing platform: Microsoft Azure Machine Learning Studio (MAMLS), and comparing the results to the current state-of-the-art processes. Our goal is to create and automate a generalized flow that utilizes cloud-based resources for classification and regression tasks. In this work, classification tasks refer to data sets where each sample has a discrete label, i.e., class A, B, or C, while regression tasks refer to data sets where each sample has a continuous label, i.e., anywhere within the range from 1-10. In both cases, the goal is to correctly predict the label for each sample through the implementation of machine learning algorithms. The preliminary results imply that the MAMLS platform is a viable option for an automatic classification application because the overall process did not need to be tailored specifically for each data set. The automated decision-making process, including the choice of an optimal machine learning algorithm and parameter fine-tuning, has been realized through the inclusion of modules written in the ‘R’ programming language. My current work focus on an in-depth analysis of prior work regarding the data sets in study. Currently, the automated flow is capable of accepting a generalized input and synthesizing optimal, parameterized classification results with minimal manual supervision, this cloud-based flow can be applied to a wide range of vendor-based applications.
- Presenter
-
- Nishant Velagapudi, Senior, Informatics (Information Architecture), Bioengineering Mary Gates Scholar, UW Honors Program
- Mentors
-
- Jevin West, The Information School
- Lovenoor Aulck, The Information School
- Session
-
- 3:30 PM to 5:15 PM
The University of Washington graduates 74% of its students: meaning that 26% of students do not complete their studies. Students who churn (or “drop out”) from the University of Washington end up spending a significant amount of time and money and ultimately receive no benefit. State governments and the federal government together spend ~$2.9 billion per year in grants and loans to first year students who will not return to school, representing a significant waste of taxpayer dollars. The first step in improving student retention at the University of Washington is identifying the students who are at the greatest risk to churn from the school. This information can be passed to counselors or department specific administration staff who can then target retention efforts at the students who need it most. The work is twofold: first, machine learning algorithms were trained on University of Washington transcript data from the period of 1970 to 2013. The feature set was loosely classified into four categories: classes taken, class performance, demographic data, and high school performance. These algorithms provided an 87% prediction accuracy of student dropouts. A feature engineering approach is now underway to further improve performance. This involves expanding the feature set by creating composite features and modified features. Composite features will allow the machine learning algorithms to weight relationships between features in addition to the features themselves (e.g. an engineering student with a poor math GPA may be more likely to churn). Modified features include some mathematical function of the original feature (log, square, multiplied, etc.). This allows for different (and potentially much greater) feature weights without suffering the penalties imposed by algorithm regularization. These two approaches to feature engineering will allow for an improvement over the previously observed 87% accuracy.
- Presenter
-
- Vladimir Korukov, Senior, Computer Science, Physics: Comprehensive Physics
- Mentor
-
- Dieter Fox, Computer Science & Engineering
- Session
-
- 3:30 PM to 5:15 PM
Hand tracking algorithms take as input 2D or 3D images or videos of a hand and return the hand’s position or movement. Hand tracking has various applications from gesture recognition to gaming to sign language interpretation. The goal of my project is to build a robust hand tracker that uses a 3D camera. Given a 3D image from a depth camera, the algorithm must find the pose and joint values of the hand model. Some current methods for tracking a hand include particle filters, gradient descent on joint parameters, and convolutional neural networks (CNNs). Particle filters are the most accurate, but they are computationally expensive and are not real time. Gradient descent can be done in real time, but needs to be initialized and has a chance of losing track of the hand. Neural nets are able to detect a hand without initialization, but they typically suffer from inaccuracy. The approach I research combines a gradient descent method and a CNN to leverage the benefits of both frameworks. A set of 3D images get processed by a CNN, yielding estimates of the hand pose in each image. These estimates are then fed into a gradient descent optimizer to produce a final estimate for the pose. Results have shown that the neural network can successfully set an initial pose for the gradient descent method, after which the gradient descent improves the pose estimation over the neural network.
- Presenter
-
- Christopher Andrew (Chris) Mackie, Junior, Computer Science, Physics: Comprehensive Physics
- Mentor
-
- Michael Ernst, Computer Science & Engineering
- Session
-
- 3:30 PM to 5:15 PM
Computers can produce undesired results when operating on large non-negative values. For example, a computer might compute (2^32 - 2) / (2^32 - 1) to be exactly 2, whereas the desired value is slightly less than 1. The computer representation of non-negative, or "unsigned", values is incompatible with the standard computer implementation of division for possibly negative, or "signed", values. If a programmer uses the wrong implementation of an operator, or mixes signed and unsigned values in a computation, that mistake can lead to incorrect calculations and even to security vulnerabilities. Our goal is to prevent such errors. To prevent introducing errors, programmers must segregate signed and unsigned values in their programs. This task is tedious and error-prone. We have built an automated tool that reports when a programmer has made a mistake related to signed and unsigned values. Even more importantly, the tool is sound: if the tool issues no warnings, then the program is guaranteed to contain no such errors. Our technical approach is called pluggable type-checking: it enriches the programming language's type system in order to represent signedness, which languages like Java do not currently handle. This approach is natural and easy-to-use for programmers. A programmer simply declares which values are unsigned, and our tool checks that these values are used soundly. Our implementation is publicly available as open-source at http://checkerframework.org/ . In case studies, it found a number of errors in real-world code. This illustrates the potential for our technique to make programming less error-prone and programs more reliable.
- Presenter
-
- Nikko Wei (Nikko) Rush, Sophomore, Pre-Sciences
- Mentors
-
- Noah Smith, Computer Science & Engineering
- Kelvin Luu, Computer Science & Engineering
- Lingpeng Kong, Computer Science & Engineering, Carnegie Mellon University
- Session
-
- 3:30 PM to 5:15 PM
Natural language is made up of many different sentences connected to form coherent discourse. Shallow discourse parsing is the method of parsing through a given text to find the discourse relationship between pairs of related ideas. For example, given the following text, "having just one firm do this isn't going to mean a hill of beans. But if this prompts others to consider the same thing, then it may become much more important", the word 'but' functions as a discourse connective and connects the two ideas together. In this project, we developed an end-to-end parser that takes English or Chinese news stories and locates all of the discourse relations in the text. Our system can identify both explicit and implicit connectives, the location of the text they connect, and the type of the connective. Nine separate classifiers are chained together to create the full system. The system has been entered into the CONLL 2016 shared task on shallow discourse parsing. Performance of our system was compared with performance of systems from several other universities. Currently, ideas in text can only be understood within a single sentence. We hope to match the state of the art performance in this task, 92% accuracy in identifying discourse relations of a typical news article. Developments in shallow discourse parsing are the first step in automatically connecting ideas across many sentences. Such developments have opened the door for applications in automatic information extraction, summarization, and question answering systems.
- Presenter
-
- Nathaniel Arfaa (Nate) Yazdani, Junior, Computer Science, Mathematics UW Honors Program, Undergraduate Research Conference Travel Awardee
- Mentor
-
- Rastislav Bodik, Computer Science & Engineering
- Session
-
- 3:30 PM to 5:15 PM
The web has become a pervasive part of our lives, giving us previously unfathomable access to information and computation. The dynamic, interactive experience of the modern web is made possible only by the substantial engineering efforts put into making web browsers run correctly and with high efficiency. Towards this aim, software engineers have crafted complex, highly specialized algorithms and tuned their performance largely through informal and experimental techniques. Web browser layout engines are a case in point; Google has 10 full-time staff members specifically dedicated to this component of Google Chrome. In our research, we set out to develop a system to transform a high-level description of such computations on a restricted domain of tree-shaped data structures into an algorithm to perform the computations on any input from this domain with both efficiency and correctness. More generally, this kind of transformation, involving the automated construction of a program from a high-level, constrained description, is known as program synthesis, or optimal program synthesis when optimization is incorporated into the process. In our case, we optimize with respect to the time necessary to compute or update a prior result based on a change in input by exploiting parallel and incremental computation. Existing, domain-specific implementations already incorporate both concepts but often suboptimally and sometimes even incorrectly, as they are notoriously difficult to get right. In our approach, we employ an automated theorem prover to perform multiple compositional searches over the space of candidate algorithms and select the optimal candidate according to our efficiency approximation methods. In the process of accomplishing this, we have created a novel approach to decomposing complex, almost intractable problems in program synthesis. Currently, we are applying this work to synthesize a highly performant web layout engine with guaranteed layout correctness.
The University of Washington is committed to providing access and accommodation in its services, programs, and activities. To make a request connected to a disability or health condition contact the Office of Undergraduate Research at undergradresearch@uw.edu or the Disability Services Office at least ten days in advance.