Finding optimal parameters for acceleration structures for raytracing is key to improved performance. Previous research has shown that a speedup of over 10% of rendering time is possible. Some parameters are interdependent which complicates the process of finding an optimal configuration. It is hence interesting to find them efficiently. Autotuning is an automatic optimization scheme able to search for optimal configurations and has been applied successfully to kD-trees in the past, which we apply today on BVHs. The more parameters to optimize, the more difficult it is to find optimal solutions. In this article, we analyze in detail the behavior of the parameters and their impact on acceleration structure building and rendering time. We show the interdependence and context sensitivity (i.e., scene, viewpoint) of the parameters. Based on the use case, this allows to target only crucial parameters. Convergence speed towards an optimal configuration is essential. To find better parameters, the autotuner needs to build the acceleration structure over and over, changing parameters every time. We introduce a hybrid model-based prediction and online autotuning method to address this issue. The prediction model allows for both instantaneous near-optimal configurations when inputs are known or similar, and efficient search of the configuration space when inputs are completely new. Online autotuning outperforms configurations recommended in literature by up to 11% median. The prediction model achieves 95% of the maximum speedup of the autotuner while reducing 90% of its overhead. Thus, hybrid online autonuning enables always-on tuning in ray tracing.
Traceability information is a fundamental prerequisite for many essential software maintenance and evolution tasks, such as change impact and software reusability analyses. However, manually generating traceability information is costly and error-prone. Therefore, researchers have developed automated approaches that utilize textual similarities between artifacts to establish trace links. These approaches tend to achieve low precision at reasonable recall levels, as they are not able to bridge the semantic gap between high-level natural language requirements and code. We propose to overcome this limitation by leveraging fine-grained, method and sentence level, similarities between the artifacts for traceability link recovery. Our approach uses word embeddings and a Word Mover's Distance-based similarity to bridge the semantic gap. The fine-grained similarities are aggregated according to the artifacts structure and participate in a majority vote to retrieve coarse-grained, requirement-to-class, trace links. In a comprehensive empirical evaluation, we show that our approach is able to outperform state-of-the-art unsupervised traceability link recovery approaches. Additionally, we illustrate the benefits of fine-grained structural analyses to word embedding-based trace link generation.
Understanding the meaning and the senses of expressions is essential to analyze natural language requirements. Disambiguation of expressions in their context is needed to prevent misinterpretations. Current knowledge-based disambiguation approaches only focus on senses of single words and miss out on linking the shared meaning of expressions consisting of multiple words. As these expressions are common in requirements, we propose a sense disambiguation approach that is able to detect and disambiguate multiword expressions. We use a two-tiered approach to be able to use different techniques for detection and disambiguation. Initially, a conditional random field detects multiword expressions. Afterwards, the approach disambiguates these expressions and retrieves the corresponding senses using a knowledge-based approach. The knowledge-based approach has the benefit that only the knowledge base has to be exchanged to adapt the approach to new domains and knowledge. Our approach is able to detect multiword expressions with an F1-score of 88.4% in an evaluation on 997 requirement sentences. The sense disambiguation achieves up to 57% F1-score.
Even though intelligent systems such as Siri or Google Assistant are enjoyable (and useful) dialog partners, users can only access predefined functionality. Enabling end-users to extend the functionality of intelligent systems will be the next big thing. To promote research in this area we carried out an empirical study on how laypersons teach robots new functions by means of natural language instructions. The result is a labeled corpus consisting of 3168 submissions given by 870 subjects. The analysis of the dataset revealed that many participants used certain wordings to express their wish to teach new functionality; two corresponding trigrams are among the most frequent. On the contrary, more than one third (37%) did not verbalize the teaching intent at all. We labeled the semantic constituents in the utterances: declaration (including the name of the function) and intermediate steps. The full corpus is publicly available: http://dx.doi.org/10.21227/zecn-6c61.
Systems with conversational interfaces are rather popular nowadays. However, their full potential is not yet exploited. For the time being, users are restricted to calling predefined functions. Soon, users will expect to customize systems to their needs and create own functions using nothing but spoken instructions. Thus, future systems must understand how laypersons teach new functionality to intelligent systems. The understanding of natural language teaching sequences is a first step toward comprehensive end-user programming in natural language. We propose to analyze the semantics of spoken teaching sequences with a hierarchical classification approach. First, we classify whether an utterance constitutes an effort to teach a new function or not. Afterward, a second classifier locates the distinct semantic parts of teaching efforts: declaration of a new function, specification of intermediate steps, and superfluous information. For both tasks we implement a broad range of machine learning techniques: classical approaches, such as Naïve Bayes, and neural network configurations of various types and architectures, such as bidirectional LSTMs. Additionally, we introduce two heuristic-based adaptations that are tailored to the task of understanding teaching sequences. As data basis we use 3168 descriptions gathered in a user study. For the first task convolutional neural networks obtain the best results (accuracy: 96.6%); bidirectional LSTMs excel in the second (accuracy: 98.8%). The adaptations improve the first-level classification considerably (plus 2.2% points).
A difficulty in processing of the natural language is recognizing the context of a statement. However, since this contains implicit knowledge which we unconsciously use in our formulations, it is necessary to assign the context for correct interpretation. A context in our system is managed by a service that interprets and processes input and provides feedback to the end user. In this paper, we present a solution how an end user input can be assigned to such a service. For this purpose, we score the end user inputs by the system with an ensemble of 6 different classifiers that consider semantics as well as syntax. The system learns the user's input at run time and adapts his enunciation step by step. During the evaluation, the system was able to classified 87% of the user statements to the correct service. Far from perfect, this research might lead to fundamental changes in computer use.
Classifying requirements is crucial for automatically handling natural language requirements. The performance of existing automatic classification approaches diminishes when applied to unseen projects because requirements usually vary in wording and style. The main problem is poor generalization. We propose NoRBERT that fine-tunes BERT, a language model that has proven useful for transfer learning. We apply our approach to different tasks in the domain of requirements classification. We achieve similar or better results F 1 -scores of up to 94%) on both seen and unseen projects for classifying functional and non-functional requirements on the PROMISE NFR dataset. NoRBERT outperforms recent approaches at classifying non-functional requirements subclasses. The most frequent classes are classified with an average F 1 -score of 87%. In an unseen project setup on a relabeled PROMISE NFR dataset, our approach achieves an improvement of 15 percentage points in average F 1 score compared to recent approaches. Additionally, we propose to classify functional requirements according to the included concerns, i.e., function, data, and behavior. We labeled the functional requirements in the PROMISE NFR dataset and applied our approach. NoRBERT achieves an F 1 -score of up to 92%. Overall, NoRBERT improves requirements classification and can be applied to unseen projects with convincing results.
Intelligent systems are rather smart today but still limited to built-in functionality. To break through this barrier, future systems must allow users to easily adapt the system by themselves. For humans the most natural way to communicate is talking. But what if users want to extend the systems' functionality with nothing but natural language? Then intelligent systems must understand how laypersons teach new skills. To grasp the semantics of such teaching sequences, we have defined a hierarchical classification task. On the first level, we consider the existence of a teaching intent in an utterance; on the second, we classify the distinct semantic parts of teaching sequences: declaration of a new function, specification of intermediate steps, and superfluous information. We evaluate twelve machine learning techniques with multiple configurations tailored to this task ranging from classical approaches such as naïve-bayes to modern techniques such as bidirectional LSTMs and task-oriented adaptations. On the first level convolutional neural networks achieve the best accuracy (96.6%). For the second task, bidirectional LSTMs are the most accurate (98.8%). With the additional adaptations we are able to improve both classifications distinctly (up to 1.8%).
Student mobility is a shared goal of the member states of the European Union. One ingredient that makes student mobility possible is a universal student ID card that is accepted everywhere and can be coded with services at the institutions visited. The European Student Card (ESC) is such a universal ID card, standardized in Europe. A team of students from the Karlsruhe Institute of Technology developed the software for it. It works as follows: A student with an ESC simply walks up to a self-service kiosk, presents the card to a reader, and then selects the desired services, such as cafeteria, library, lab access, etc. In this interview, the development team will explain how they made this work smoothly, including the security considerations. This project is another example of how undergraduate students can build impressive software if given a challenge, the right tools, and some supervision.
Vehicle emissions tests used to be done entirely in the laboratory. However, certain car manufacturers cheated on those tests. In response, the European Union introduced emissions tests in real traffic. To make such tests meaningful, they must be performed on routes that meet certain criteria, such as the difference in elevation between start and end points and the proportion of urban and country roads. Finding suitable routes is a complex search problem. Undergraduate students from Karlsruhe Institute of Technology, Germany, developed the first fully automatic solution for finding such routes. In this interview, they share how they did it.
Virtual assistants such as Siri or Google Assistant are omnipresent.However, their development remains costly.One must either manually model the problem domain or provide thousands of labeled samples.We propose to automatically create virtual assistants based on Active Ontologies for interacting with databases.Our approach generates Active Ontologies; we use the database structure to derive a concept hierarchy and database values together with synonyms to extract information from user queries.Our approach also learns common phrases from samples, e.g. from existing Dialogflow agents.We extract pre-and postfixes and attach them to concepts, e.g. at to detect a succeeding location.The generated Active Ontologies reply to previously unseen and composed requests.The approach is not limited to virtual assistants but can be applied to any system with a textual or voice-based conversational interface such as chatbots.We evaluate our approach in three domains: tourism, hotel, and web cams.The study shows that automatically generated Active Ontologies extract relevant information from user utterances with a precision of 58%.The precision increases to 79% (recall 46%, F1 58%) when we use sample utterances.Our approach successfully transfers between domains, e.g.we learn phrases from the tourism domain and use them to reply to hotel requests without any adjustments.
In this paper, we preset guidelines on how to model a dialogue-based conversation with a chatbot build on Microsoft conversational services. Therefore, we created a free framework which manages dialogues and user sessions. For this purpose, we use a systematic classification of the input and intents. Especially, we used Microsoft Language Understanding Intelligent Service (LUIS) for intent extraction. LUIS provides a platform to extract the user need by calculating the intent probability. Unfortunately, LUIS does not provide dialogue management. For that reason, developers need to create own dialogue behavior in Visual Studio project. Therefore, we extracted and use it as a free guideline for the community and other platform developers.
In our previous work, we present on how new algorithms can be recognized and learned from human descriptions. In this case, end users are able to extend the given system by their own functionality. During the evaluation, due to language limits on the system, it could interpret only 59 % of user input correctly. In this paper, we provide an approach on the Dialog-based Meaning Derivation Service (DMDS). In case, user input does not match to the system knowledge, DMDS serves various word networks to find relevant synonyms as candidates for the unknown word. DMDS then tries to verify these candidates to the given knowledge base. Finally, matched candidates are presented to the end user by the dialog system for confirmation of a contextual match. The meaning is learned after the user confirmation and is mapped to the given functionality, and can be used afterwards. Therefore, the model developed in this work can be categorized as supervised learning. Finally, both the performance and the quality recorded by input from a user study were examined. However, DMDS improves the correct interpretation of the system from 59 % to 82 %. Our focus is to improve the interaction between humans and machines and enable the end user to instruct programmable devices, without having to learn a programming language.
Systems such as Alexa, Cortana, and Siri appear rather smart. However, they only react to predefined wordings and do not actually grasp the user's intent. To overcome this limitation, a system must grasp the topics the user is talking about. Therefore, we apply unsupervised multi-topic labeling to spoken utterances. Although topic labeling is a well-studied task on textual documents, its potential for spoken input is almost unexplored. Our approach for topic labeling is tailored to spoken utterances; it copes with short and ungrammatical input. The approach is two-tiered. First, we disambiguate word senses. We utilize Wikipedia as pre-labeled corpus to train a naïve-bayes classifier. Second, we build topic graphs based on DBpedia relations. We use two strategies to determine central terms in the graphs, i.e. the shared topics. One focuses on the dominant senses in the utterance and the other covers as many distinct senses as possible. Our approach creates multiple distinct topics per utterance and ranks results. The evaluation shows that the approach is feasible; the word sense disambiguation achieves a recall of 0.799. Concerning topic labeling, in a user study subjects assessed that in 90.9% of the cases at least one proposed topic label among the first four is a good fit. With regard to precision, the subjects judged that 77.2% of the top ranked labels are a good fit or good but somewhat too broad (Fleiss' kappa k = 0.27).
Motivated by a real-world scenario, we enable end users to query data due natural language from different sources like spreadsheets and databases. We provide a natural language user interface (NLUI) solution on how real-world entities and relations between them can be interpreted as a model to allow end user questions on the data. Therefore, the system enables end users to give instructions step-by-step, to avoid the complexity in full descriptions and give directly feedback of success. An evaluation is conducted with human users who had to perform a series of tasks using natural language. Overall, 13 end user took part in our survey with ten questions. 94.9% of all answers in the first part could be resolved on spreadsheet data, and 62,5% on SQL database.
Natural language processing, an area of artificial intelligence (AI), has attained remarkable successes. Digital assistants such as Siri and Alexa respond to spoken commands, and understand several languages. Google has demonstrated a machine can call up a restaurant and make a reservation in a manner that is indistinguishable from a human. Automated translation services are used around the world in over a hundred languages. This interview discusses a new and surprising application of language processing in politics. Though the AI software analyzes texts in German, it could be adapted to any language. The underlying technology has wider applications in text analysis, including legal tech, contracting, and others. Here is a summary.
Our work is where the Software Engineering meets the Human Computer Interaction and the End User Programming to aim for a major breakthrough by making machines programmable in ordinary and unrestricted language. In this paper, we provide a solution on how new algorithms can be recognized and learned from human descriptions. Our focus is to improve the interaction between humans and machines and enable the end user to instruct programmable devices, without having to learn a programming language. In a test-driven development, we created a platform that allows users to manipulate spreadsheet data by using natural language. Therefore, the system (i) enables end users to give instructions step-by-step, to avoid the complexity in full descriptions and give directly feedback of success (ii) creates an abstract meta model for user input during the linguistic analysis and (iii) independently interprets the meta model to code sequences that contain loops, conditionals, and statements. The context then places the recognized program component in the history. In this way, an algorithm is generated in an interactive process. One of the result can be the code sequence for algorithm, like well-known selection sort. We present a series of ontology structures for matching instructions to declare variables, loop, make decisions, etc. Furthermore, our system asks clarification questions when the human user is ambiguous. During the evaluation, 11 undergraduate students were asked to solve tasks by using natural language, and describe algorithms in three classes of complexity. Overall, the system was able to transform 60% of the user statements into code. Far from perfect, this research might lead to fundamental changes in computer use. Rather than merely consuming software, end users of the ever-increasing variety of digital devices could develop their own programs, potentially leading to novel, highly personalized, and plentiful solutions.
—In this paper, we present the idea to use the nat- ural language as the user interface for programming tasks. Programming languages assist with repetitive tasks that involve the use of conditionals, loops and statements. However, users can easily describe tasks in their natural language. We aim to develop a Natural Language User Interface that enables users to describe algorithms, including statements, loops, and conditionals. For this, we extend our current spreadsheet system to support control flows. Although far from perfect, this research might lead to fundamental changes in computer use. With natural language, programming would become available to everyone. We believe that it is a reasonable approach for end-user software engineering and will, therefore, overcome the present bottleneck of IT proficients.
In this interview, computer scientist Catherine McGeoch demystifies quantum computing and introduces us to a new world of computational thinking.
Current systems with spoken language interfaces do not leverage contextual information. Therefore, they struggle with understanding speakers’ intentions. We propose a system that creates a context model from user utterances to overcome this lack of information. It comprises eight types of contextual information organized in three layers: individual, conceptual, and hierarchical. We have implemented our approach as a part of the project PARSE. It aims at enabling laypersons to construct simple programs by dialog. Our implementation incrementally generates context including occurring entities and actions as well as their conceptualizations, state transitions, and other types of contextual information. Its analyses are knowledgeor rule-based (depending on the context type), but we make use of many well-known probabilistic NLP techniques. In a user study we have shown the feasibility of our approach, achieving F1 scores from 72% up to 98% depending on the type of contextual information. The context model enables us to resolve complex identity relations. However, quantifying this effect is subject to future work. Likewise, we plan to investigate whether our context model is useful for other language understanding tasks, e.g., anaphora resolution, topic analysis, or correction of automatic speech recognition errors.
Lutz Prechelt合作论文数Institut fur Informatik, Freie Universitat Berlin7