We seek a Machine Learning Research Programmer to join a major research effort to develop integrated intelligent software assistants operating on mobile devices. Supported by a $10M gift from Yahoo!, the InMind project is now in its fourth year, and is developing a working prototype of future mobile software agents. We are about to field it to an increasingly large opt-in user community, enabling us to research and evaluate new paradigms for software agents of the future. This project serves as an opportunity to build on significant ongoing research at CMU in artificial intelligence, machine learning, human-computer interaction, computer perception, natural language processing and other fields.
The successful candidate for this research programmer position will be part of the team that is developing a semantic-driven Middleware for our InMind IPA (Intelligent Personal Assistant). Currently, our Middleware allows InMind modules to communicate to each other, to interact with smartphone's sensors and effectors, to consume services from third-party Web API's, to monitor all system and user activity, and to dynamically create complex decision rules that combine the use of those sensors, effectors and services; just to mention a few. The next step on the evolution of our Middleware (Middleware+) is the development of a semantic layer that allows it to automatically discover new system skills and synergies between modules. A new skill may refer to either a single functionality provided by a Middleware component (e.g., Email module is empowered with new functionality that filters emails by some criteria) or new functionality that can emerge from the interaction of multiple Middleware components (News and Movie recommendation may use OpenFace to improve the recommendation based on user's mood). Middleware+ will use a harmonious combination of techniques and models such as semantic reasoning, semantic feature extraction, NELL (Never-Ending Language Learning), word-embedding models such as word2vec and doc2vec, and unsupervised and reinforcement machine learning.
Research programmers will also be involved in software architecture definition tasks and may potentially collaborate in some other research activities. In 2017, the InMind project will be scaling up for fielding to multiple users simultaneously, so experience in scaling up applications, and multi-user systems would be very appreciated. The successful candidate will work under the direct supervision of Dr. Oscar Romero in the Machine Learning Department, and will also work with project co-directors Prof. Tom Mitchell and Prof. Justine Cassell to ensure that Middleware+ is aligned with the vision of the project.
Duties and Responsibilities:
- To develop Middleware+ components (Design, Implementation and Test).
- To collaborate in performing Software Engineering tasks.
- To collaborate in the definition and construction of a shared cross-module ontology.
- To collaborate in the implementation of Machine Learning techniques to automate the process of ontology construction.
- To collaborate in the implementation of a semantic feature extraction module.
- To collaborate in writing scientific papers
- To carry out user studies and experiments
Minimum Education and Competences:
- A Msc. degree in Computer Science, Machine Learning, Mathematics, or related.
- Strong knowledge in Software Engineering
- A minimum of 3 years experience in Java and Object-Oriented Programming
- Background in Machine Learning (2+ years work experience or academic studies)
- Strong communication and interpersonal skills
- Background in Deep Learning
- Experience with Word Embedding Models, Word2Vec, OWL, Jena, Semantic Reasoning, etc.
- Skills in Android Programming
- Experience with Gradle and Maven
Contract terms: one year contract, renewable based on availability of funding, and performance.
Interested applicants should submit a CV and a statement of interests.
Please visit Why Carnegie Mellon to learn more about becoming part of an institution inspiring innovations that change the world. http://www.cmu.edu/jobs/why-cmu/index.html. A listing of employee benefits is available at: http://www.cmu.edu/jobs/benefits-at-a-glance/index.html.
Carnegie Mellon University is an affirmative action/equal opportunity employer committed to excellence through diversity. CMU is responsive to the needs of dual career couples and is dedicated to work-life balance through an array of university policies and benefits.
Carnegie Mellon University considers applicants for employment without regard to, and does not discriminate on the basis of, gender, race, protected veteran status, disability, or any other legally protected status.