Natural Language Processing of Textual Requirements (multiple topics available)
Managing requirements is a core activity in many industries. Often, these requirements only exist in textual form and companies need to maintain large volumes of requirements (i.e., millions of requirements). Clearly, having machine-understandable representations of requirements would be immensely beneficial. However, manually digitizing textual requirements is not an option. Instead, automatic approaches based on natural language understanding techniques will be necessary. For this project we envision a couple of directions that could be explored in the scope of a Master's thesis. Of course, not all directions would be explored by one student. Instead, several students could work on the general topic where each students explores a specific direction, either independently or in coordination with other theses.
Some example sentences:
- "The gas cylinders shall be designed according to a recognised international standard accepted by the Society, e.g. EN14208, EN13322, ISO 9809 or CFR 49."
- "The following shall be regarded as minimum requirements: 1.5 times the increase in volume for volumes up to 1000 litres, and 1.3 times the increase for volumes over 1000 litres."
- "Where a superheater, re-heater or economiser is fitted with a valve between one of these and the boiler, the unit shall have appropriate safety valves."
The directions that we imagine include, but are not limited to:
- Domain-specific terminology extraction: Given a set of textual requirements, automatically identify those word or phrases that are specific to the described domain (e.g., gas cylinders and superheaters).
- Ontology learning from text: Given a set of textual requirements, automatically identify classes, instances, and relations
- Ontology population from text: Given an set of textual requirements and an ontology, automatically identify instances and relations and add them to the ontology
- Requirements Ontology: Develop an ontology that enables to formally describe requirements
- Interactive textual requirement editor: an editor that makes use of auto-complete to provide options regarding how to continue with writing a textual requirement.
- Semantic Parsing: Develop an approach that transforms a textual requirement into a formal representation
- Distantly supervized information extraction: Make use of the distant supervision principle to identify and extract relations expressed in textual requirements
- Crowdsourcing-based annotations: Design crowdsourcing tasks to let crowdworkers annotate textual requirements
- Sentence decomposition/simplification: Develop an approach that decomposes a complex textual requirement sentence into less complex sentences
- Pattern mining: Develop an approach that identifies textual patterns that frequently occur in textual requirements
- Automated paraphrasing: Develop an approach that automatically paraphrases a textual requirement (without changing its meaning)
The thesis will be jointly supervised by Dr. Basil Ell and Ole Magnus Holter.
If you are interested in this project please send an email to basile [at] ifi.uio.no and we can arrange a chat.