| Software engineers constantly encounter problems and need help with unfamiliar areas.Most programmers look for information on Internet,such as bug fixes and code syntax.In order to help engineers find useful information efficiently,this thesis hopes to extract question and answer pairs(Q&A)from developer conversation,and build artificial intelligence virtual assistants of software engineering.The goal of this thesis is to use the conversation of developer conversation as data resources to extract Q&A by deep learning algorithms to provide data sources and research algorithms for downstream tasks,such as Q&A systems in software engineering.One of the challenges is how to extract and learn the deep features of developer conversations to improve the diversity and coherence of virtual assistant.Existing Q&A extraction algorithms usually focus on text and ignore code fragments,and Q&A may be inaccurate or even wrong.Code fragments contain useful contextual information in developer conversations that are critical for building virtual assistants of software engineers.To address this problem,this thesis proposes a deep learning model(MCADDL)to extract distributed representations of developer conversations,and thus extract Q&A containing text and code fragments.In this model,the text and code fragments are trained with word embeddings using a natural language pre-training model and a programming language pre-training model,respectively,by capturing the features of the contextual data of the Q&A in the form of high-dimensional vectorization.The high-dimensional vectors of text and code fragments are then fed into the model MCADDL,which uses a multiple convolutional attention mechanism to learn the higher-order feature relationships of text and code fragments to identify potential joint features.In this way,MCADDL can effectively extract Q&A from developers’ conversations.Experimental results show that MCADDL outperforms the baseline solution,i.e.,it has higher accuracy(74.38%),recall(60.25%),and F-measure(66.57%).Thus,the integration of existing data resources into practical applications is achieved,and the Q&A extraction system is developed and deployed by using mainstream development frameworks to provide users with visual and convenient Q&A extraction services. |