亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        智能計(jì)算服務(wù)的需求獲取方法

        2022-11-30 08:39:06汪燁周澳回周思源姜波陳駿武宋師哲
        計(jì)算機(jī)應(yīng)用 2022年11期
        關(guān)鍵詞:貝葉斯模板分類

        汪燁,周澳回,周思源,姜波,陳駿武,宋師哲

        智能計(jì)算服務(wù)的需求獲取方法

        汪燁,周澳回,周思源*,姜波,陳駿武,宋師哲

        (浙江工商大學(xué) 計(jì)算機(jī)與信息工程學(xué)院,杭州 310018)(?通信作者電子郵箱3508006105@qq.com)

        智能計(jì)算服務(wù)由服務(wù)提供者通過互聯(lián)網(wǎng)為服務(wù)消費(fèi)者提供數(shù)據(jù)的分析和處理,并建立學(xué)習(xí)模型完成智能計(jì)算功能。由于服務(wù)提供者與服務(wù)消費(fèi)者之間缺乏有效的溝通渠道,以及服務(wù)消費(fèi)者反饋的需求描述模糊、混亂,目前缺乏一種統(tǒng)一的服務(wù)需求獲取方法對(duì)用戶持續(xù)變化的需求進(jìn)行有效的分析、組織和規(guī)約,導(dǎo)致智能計(jì)算服務(wù)無法根據(jù)用戶的需求進(jìn)行快速改進(jìn)。針對(duì)服務(wù)開發(fā)中需求變更的持續(xù)性和不確定性等問題,提出了一種智能計(jì)算服務(wù)的需求獲取方法。該方法首先從Stack Overflow問答論壇獲取智能計(jì)算服務(wù)的應(yīng)用反饋和問題,然后根據(jù)服務(wù)消費(fèi)者所關(guān)注的需求類型采用不同的學(xué)習(xí)模型(包括支持向量機(jī)(SVM)、樸素貝葉斯和TextCNN)對(duì)其進(jìn)行知識(shí)分類和優(yōu)先級(jí)排序,最后采用自定義的服務(wù)需求模板統(tǒng)一描述智能計(jì)算服務(wù)的需求。

        服務(wù)需求工程;需求獲??;智能計(jì)算服務(wù);機(jī)器學(xué)習(xí);神經(jīng)網(wǎng)絡(luò)

        0 引言

        隨著Web服務(wù)技術(shù)、移動(dòng)網(wǎng)絡(luò)計(jì)算和社交網(wǎng)絡(luò)的快速發(fā)展,服務(wù)在企業(yè)應(yīng)用的開發(fā)中顯得愈發(fā)重要,包括谷歌、Facebook、Netflix、eBay、LinkedIn、Foursquare、Instagram在內(nèi)的很多企業(yè)都發(fā)布了公共服務(wù)。基于服務(wù)的開發(fā)通過組合調(diào)用服務(wù)來避免開發(fā)所花費(fèi)的成本和精力。近年來人工智能不斷地突破與創(chuàng)新,基于人工智能提供的相關(guān)計(jì)算服務(wù)(本文簡(jiǎn)稱為“智能計(jì)算服務(wù)”)也迎來了新一輪的革新與更迭。智能計(jì)算服務(wù)由服務(wù)提供者通過互聯(lián)網(wǎng)為服務(wù)消費(fèi)者提供數(shù)據(jù)的分析和處理,通過建立學(xué)習(xí)模型完成智能計(jì)算功能[1]。

        智能計(jì)算服務(wù)面臨用戶需求、軟件資源和系統(tǒng)上下文環(huán)境等方面變化的挑戰(zhàn),其服務(wù)需求不可避免地需要持續(xù)的變更。實(shí)踐研究表明,在消費(fèi)者需求更多元以及服務(wù)復(fù)雜性逐步增長(zhǎng)的情況下,服務(wù)開發(fā)中的需求并不是靜態(tài)的,而是持續(xù)的、不確定性的。這些需求不僅是由服務(wù)消費(fèi)者顯式地向提供方提出的需求,更多的是由服務(wù)使用體驗(yàn)和使用過程中等隱式發(fā)現(xiàn)的需求[2]。智能計(jì)算服務(wù)目前在開發(fā)時(shí)往往會(huì)面臨服務(wù)需求如何快速獲取和改進(jìn)的問題。一方面,由于服務(wù)提供者與服務(wù)消費(fèi)者之間缺乏有效的溝通渠道,服務(wù)消費(fèi)者難以將智能計(jì)算服務(wù)的用戶體驗(yàn)盡快地反饋給服務(wù)提供者,從而導(dǎo)致服務(wù)提供者無法及時(shí)地獲取服務(wù)需求;另一方面,服務(wù)消費(fèi)者對(duì)于需求的描述模糊且混亂,目前缺乏一種統(tǒng)一的服務(wù)需求定義方法來對(duì)用戶持續(xù)變化的需求進(jìn)行有效的組織和規(guī)約,導(dǎo)致智能計(jì)算服務(wù)無法迅速地根據(jù)用戶的需求獲取真正有價(jià)值的用戶需求從而快速改進(jìn)。服務(wù)需求獲取的任務(wù)就是找出更多的可以滿足用戶的需求并詳細(xì)說明用戶持續(xù)變化的需求,這是決定智能計(jì)算服務(wù)開發(fā)成敗以及服務(wù)推廣和應(yīng)用的關(guān)鍵。這不僅能夠增強(qiáng)服務(wù)提供者和消費(fèi)者對(duì)智能計(jì)算服務(wù)產(chǎn)品特征在細(xì)節(jié)與相互依賴關(guān)系上的理解以及對(duì)需求的掌握,還可使服務(wù)涉眾之間的交流更為緊密以減少交流誤解與偏差,更加準(zhǔn)確地反映服務(wù)開發(fā)情況,為服務(wù)開發(fā)決策提供依據(jù)[3]。

        服務(wù)需求工程是指采用工程化方法指導(dǎo)網(wǎng)絡(luò)化的服務(wù)軟件需求的挖掘、建模、分析、描述和管理[4]。目前服務(wù)需求工程集中在服務(wù)需求的建模、分析階段[1,5-7],對(duì)于獲取有價(jià)值的服務(wù)需求后將其規(guī)范描述的研究很少。根據(jù)調(diào)研,尚未有工作針對(duì)智能計(jì)算服務(wù)研究其需求獲取方法,因此本文提出了一種智能計(jì)算服務(wù)的需求獲取方法。首先從Stack Overflow(https://stackoverflow.com/)問答論壇上爬取服務(wù)消費(fèi)者關(guān)于智能計(jì)算服務(wù)的用戶反饋和問題,然后對(duì)其進(jìn)行知識(shí)分類、優(yōu)先級(jí)排序,最后采用自定義的需求模板統(tǒng)一描述智能計(jì)算服務(wù)的需求。針對(duì)該問題的深入研究對(duì)提高和保障智能計(jì)算服務(wù)產(chǎn)品的質(zhì)量具有重要的研究意義。

        1 相關(guān)工作

        服務(wù)需求是否準(zhǔn)確、完整和規(guī)范將影響整個(gè)服務(wù)的開發(fā)流程與效果,越來越多的研究開始側(cè)重于服務(wù)需求工程。服務(wù)需求工程方法包括服務(wù)需求的挖掘、建模、分析、描述和管理等具體技術(shù),本章將針對(duì)這些技術(shù)做具體介紹。Penserini等[8]提出了一種基于Tropos的擴(kuò)展方法并將其制定為服務(wù)設(shè)計(jì),將利益相關(guān)者目標(biāo)與服務(wù)集合相關(guān)聯(lián),促進(jìn)服務(wù)目標(biāo)的迭代。Chen等[5]提出了一種基于領(lǐng)域目標(biāo)模型和過程模型的個(gè)性化服務(wù)需求分析法,該方法面向最終服務(wù)涉眾,以服務(wù)涉眾的操作為驅(qū)動(dòng),對(duì)涉眾的操作進(jìn)行分類,定義相應(yīng)的檢測(cè)類型以及流程,制定規(guī)則以滿足涉眾的服務(wù)需求。Mouheb等[6]提供了一種可視化方法對(duì)服務(wù)功能需求和服務(wù)質(zhì)量需求進(jìn)行整合建模。Wang等[1,9]提出了基于業(yè)務(wù)流程模型的服務(wù)質(zhì)量需求分析方法ProQRASS以及基于工作流模式的服務(wù)需求分析法PASER,解決了服務(wù)需求中的質(zhì)量需求和功能需求不一致的問題。Sun等[7]提出的QRA(Quality Requirements Analysis)方法從服務(wù)涉眾的角度(即早期服務(wù)質(zhì)量需求)分析服務(wù)質(zhì)量需求。為了更適配服務(wù)系統(tǒng)的需求分析,Wang等[10]提出了一個(gè)基于本體的服務(wù)需求建??蚣?,由本體、角色、目標(biāo)、過程以及服務(wù)五個(gè)層次組成。Garg等[11]提出了一種基于非功能性需求的云服務(wù)采用方法TrAdeCIS,建立了權(quán)衡決策,根據(jù)非功能性需求選擇最佳可用的替代模型。

        服務(wù)需求變更是貫穿服務(wù)整個(gè)生命流程的一種循環(huán)過程,該循環(huán)過程是由環(huán)境變化驅(qū)動(dòng)的。隨著服務(wù)計(jì)算系統(tǒng)的發(fā)展流行,面向服務(wù)的需求獲取逐漸得到了研究人員的重視。Zhang等[12]提出了一個(gè)基于RGPS(Role,Goal,Process,Service,即角色、目標(biāo)、過程以及服務(wù))的面向服務(wù)需求獲取框架,用于捕捉需求生成中的關(guān)鍵建模知識(shí)和構(gòu)建管理需求的原則,確定環(huán)境變化、需求變化、觀點(diǎn)變化和設(shè)計(jì)變化四種基本變化類型以幫助控制和監(jiān)測(cè)需求的變更。

        需求知識(shí)分類指對(duì)收集到的多種需求知識(shí)信息進(jìn)行分類。由于傳統(tǒng)需求分類方法在完整性、準(zhǔn)確性以及效率方面存在缺陷,越來越多的研究工作在需求分類方法中融合人工智能技術(shù),包括基于信息檢索[13-14]、基于機(jī)器學(xué)習(xí)[15-16]以及基于深度學(xué)習(xí)的方法[17]。關(guān)鍵字匹配、最鄰近節(jié)點(diǎn)算法、樸素貝葉斯、K?means、相似度計(jì)算、邏輯回歸、神經(jīng)網(wǎng)絡(luò)、TextCNN、長(zhǎng)短期記憶(Long Short?Term Memory, LSTM)和門控循環(huán)單元(Gate Recurrent Unit, GRU)被廣泛使用。

        上述算法和模型為本文的研究提供了思路,本文的主要工作如下:

        1)采用知識(shí)彌補(bǔ)用戶問題和服務(wù)需求之間的鴻溝,并明確定義了問題、知識(shí)、需求的概念。

        2)針對(duì)智能計(jì)算服務(wù)需求覆蓋范圍廣等問題,更細(xì)化地定義了11種功能和1種非功能方面的知識(shí)類別及其概念解釋。

        3)采用支持向量機(jī)(Support Vector Machine, SVM)、樸素貝葉斯和TextCNN等傳統(tǒng)機(jī)器學(xué)習(xí)方法進(jìn)行有效分類,發(fā)現(xiàn)TextCNN方法的效果最好。

        4)對(duì)需求生成的情況進(jìn)行了有效分析,制定了不同的需求描述模板,并通過具體例子進(jìn)行解釋說明。

        2 方法框架

        基于上述概念,本文在智能計(jì)算服務(wù)的需求獲取過程中對(duì)Stack Overflow問答文檔進(jìn)行了分析,步驟如下:

        1)面向智能計(jì)算服務(wù)的知識(shí)類別定義。綜合分析已有需求分類,定義了11種功能和1種非功能方面的知識(shí)類別,同時(shí)針對(duì)智能計(jì)算服務(wù)的特點(diǎn),增加可解釋性作為新的知識(shí)類別。

        2)面向智能計(jì)算服務(wù)問答數(shù)據(jù)的挖掘。調(diào)研已有智能計(jì)算服務(wù)市場(chǎng),主要以用戶問答數(shù)據(jù)的數(shù)量和質(zhì)量為參考標(biāo)準(zhǔn),選取了TensorFlow這款全球最熱門的開源機(jī)器學(xué)習(xí)服務(wù)平臺(tái)作為爬取對(duì)象,構(gòu)建數(shù)據(jù)集,并對(duì)其進(jìn)行預(yù)處理。

        3)采用機(jī)器學(xué)習(xí)(SVM和樸素貝葉斯)、深度學(xué)習(xí)模型TextCNN分別對(duì)問答數(shù)據(jù)進(jìn)行知識(shí)分類,同時(shí)對(duì)比三種模型,探討不同模型在精確率(Precision)、召回率(Recall)和F1值上的分類效果。

        4)根據(jù)知識(shí)分類,對(duì)問題進(jìn)行優(yōu)先級(jí)排序。

        5)篩選排序靠前的服務(wù)需求知識(shí),基于不同分類的需求模板對(duì)其進(jìn)行擴(kuò)展補(bǔ)充,生成新的需求。

        3 智能計(jì)算服務(wù)的需求獲取方法

        3.1 面向智能計(jì)算服務(wù)的知識(shí)類別定義

        綜合考慮現(xiàn)有需求分類的類別[18-20]以及智能計(jì)算服務(wù)的特點(diǎn),本文定義了12種知識(shí)類別:

        1)功能性:智能計(jì)算服務(wù)要滿足用戶目標(biāo)或期望應(yīng)具有的條件或權(quán)能。

        2)可靠性:智能計(jì)算服務(wù)在部分組件(一個(gè)或多個(gè))發(fā)生故障時(shí)仍能正常運(yùn)作的能力。

        3)合法性:智能計(jì)算服務(wù)的功能是否符合法律或規(guī)定。

        4)外觀體驗(yàn):消費(fèi)者對(duì)智能計(jì)算服務(wù)操作外觀或者操作界面的期望。

        5)可維護(hù)性:智能計(jì)算服務(wù)可被修改的能力,包括修正、改進(jìn)或該功能對(duì)環(huán)境、需求變化的適應(yīng)。

        6)操作性:消費(fèi)者在使用智能計(jì)算服務(wù)時(shí)遇到的操作問題。

        7)性能:智能計(jì)算服務(wù)是否能達(dá)到消費(fèi)者的性能目標(biāo)。

        8)移植/兼容:智能計(jì)算服務(wù)從一個(gè)平臺(tái)或環(huán)境移植到另一個(gè)平臺(tái)或環(huán)境上的難易程度。

        9)擴(kuò)展性:智能計(jì)算服務(wù)為了應(yīng)對(duì)將來需求變化而提供的一種擴(kuò)展能力。

        10)安全性:智能計(jì)算服務(wù)及其數(shù)據(jù)不會(huì)因偶然的或惡意的原因而遭到破壞、更改、顯露。

        11)易用性:服務(wù)消費(fèi)者是否容易使用該智能計(jì)算服務(wù)。

        12)可解釋性:在特定的任務(wù)中,通過可視化、參數(shù)分析及實(shí)驗(yàn)解釋智能計(jì)算服務(wù)中的模型行為。

        3.2 面向智能計(jì)算服務(wù)問答數(shù)據(jù)的挖掘

        智能計(jì)算服務(wù)問答數(shù)據(jù)是指Stack Overflow論壇關(guān)于TensorFlow服務(wù)平臺(tái)的問答數(shù)據(jù),本文采用Web Scraper工具,以數(shù)據(jù)質(zhì)量、用戶問題數(shù)、用戶答復(fù)數(shù)、數(shù)據(jù)更新時(shí)間為導(dǎo)向,爬取了16 405條原始問答數(shù)據(jù),針對(duì)每條問題,爬取包括問題編號(hào)、問題主題、問題陳述、答復(fù)、答復(fù)數(shù)、答復(fù)贊同數(shù)這六類信息,并根據(jù)用戶的問答內(nèi)容進(jìn)行過濾。需要說明的是,服務(wù)消費(fèi)者提問中的問題并不全是需求,有些是用戶不會(huì)操作或者缺乏經(jīng)驗(yàn)引發(fā)的問題,這些問題在發(fā)布版本中可能已被解決,也有可能未解決,對(duì)于已被解決的問題不列入本文考慮范圍,對(duì)于未解決的問題將其視為操作性知識(shí)。通過對(duì)16 405條數(shù)據(jù)進(jìn)行篩選和過濾,最終選擇2 213條與需求相關(guān)的問答數(shù)據(jù)。通過對(duì)這2 213條數(shù)據(jù)進(jìn)行分析后發(fā)現(xiàn),用戶在描述問題時(shí)經(jīng)常通過粘貼代碼闡述問題,過多關(guān)注代碼將會(huì)影響計(jì)算機(jī)對(duì)于問題的理解。通過分析Stack Overflow上的問答數(shù)據(jù),發(fā)現(xiàn)大部分問題的詳細(xì)闡述會(huì)集中于問題陳述的前兩句和后兩句,因此本文選擇問題陳述的前兩句和后兩句自然語言文本作為其問題陳述,將精簡(jiǎn)后的問題陳述與問題主題合并后共同作為問題數(shù)據(jù)。對(duì)上述信息進(jìn)行數(shù)據(jù)清洗與過濾等預(yù)處理,去除自然語言描述中的亂碼、符號(hào)等數(shù)據(jù),構(gòu)建TensorFlow用戶問答數(shù)據(jù)集。

        本文將2 213條數(shù)據(jù)分為1 770條訓(xùn)練數(shù)據(jù)和443條測(cè)試數(shù)據(jù),由多名標(biāo)注者分別進(jìn)行標(biāo)注,標(biāo)注的類別為12種預(yù)先定義好的知識(shí)類別,并由作者對(duì)標(biāo)注結(jié)果進(jìn)行驗(yàn)證,出現(xiàn)分歧時(shí),選取投票最高的結(jié)果作為最終標(biāo)注結(jié)果。

        3.3 基于學(xué)習(xí)模型的問答數(shù)據(jù)知識(shí)分類

        目前針對(duì)文本問答數(shù)據(jù)知識(shí)分類研究工作所使用的模型主要以統(tǒng)計(jì)機(jī)器學(xué)習(xí)模型為主,隨著深度學(xué)習(xí)的迅速發(fā)展,也出現(xiàn)了基于神經(jīng)網(wǎng)絡(luò)的知識(shí)分類研究,為了探索在Stack Overflow用戶問答數(shù)據(jù)上的知識(shí)分類有效性,選取了在相關(guān)工作中使用最多的SVM、樸素貝葉斯和TextCNN作為主要方法。這些方法在傳統(tǒng)軟件系統(tǒng)的功能需求分類和非功能需求分類中已被證明效果不錯(cuò),例如SVM方法在應(yīng)用商店評(píng)論的分類中精確率和召回率最高可達(dá)58%和49%,基于EM的樸素貝葉斯分類算法在對(duì)功能性和非功能性需求的分類中正確率可達(dá)70%,TextCNN方法在DOORS文檔數(shù)據(jù)庫的需求分類中精確率和召回率最高可達(dá)73.3%和88.5%。對(duì)于統(tǒng)計(jì)機(jī)器學(xué)習(xí)模型,使用詞頻?逆文檔頻率(Term Frequency?Inverse Document Frequency, TF?IDF)對(duì)文本特征值進(jìn)行提取,它是判斷某個(gè)詞匯對(duì)于整個(gè)語料庫中某個(gè)文檔重要性的方法。本文采用的SVM和樸素貝葉斯分類方法均需先使用TF?IDF對(duì)文本特征值進(jìn)行提取。

        3.3.1SVM

        SVM[20]是一種基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化的機(jī)器學(xué)習(xí)算法,實(shí)現(xiàn)對(duì)線性可分的數(shù)據(jù)分類。

        而在線性不可分的情況下,SVM會(huì)先將輸入的向量映射到高維特征向量空間中,再在該特征空間中構(gòu)造最優(yōu)分類面。

        3.3.2樸素貝葉斯

        樸素貝葉斯[21]分類以貝葉斯定理為基礎(chǔ),假設(shè)特征詞之間相互獨(dú)立,通過訓(xùn)練數(shù)據(jù)集學(xué)習(xí)輸入到輸出的聯(lián)合概率分布,獲得分類模型。

        3.3.3TextCNN

        TextCNN[22]是一種用于文本分類的卷積神經(jīng)網(wǎng)絡(luò)模型架構(gòu),包括輸入嵌入層、卷積層、池化層和全連接層。

        輸入嵌入層是將以自然語言描述的詞語文本轉(zhuǎn)換為數(shù)值形式以適配輸入,實(shí)現(xiàn)卷積處理。由于Word2Vec模型適用性強(qiáng)、響應(yīng)速度快,本文選擇Word2Vec模型生成詞向量。

        卷積層實(shí)現(xiàn)卷積計(jì)算,TextCNN將原CNN技術(shù)處理圖像應(yīng)用的二維卷積計(jì)算改進(jìn)為適用于一維文本數(shù)的卷積計(jì)算。由于不同尺寸的卷積核得到的特征圖(Feature_Map)大小不一,對(duì)特征使用池化函數(shù),使它們的維度相同。本文選擇1?Max?pooling池化函數(shù),從而更好地提取特征信息。

        全連接層將上層采用池化函數(shù)池化后的結(jié)果拼接起來,使用Softmax函數(shù)得到屬于每個(gè)類的概率,通過概率值即可得到所對(duì)應(yīng)的知識(shí)類別。

        3.4 基于知識(shí)分類的問題優(yōu)先級(jí)排序

        3.5 生成需求

        上述步驟形成的候選需求只是用戶的原始描述,并不能直接用于需求說明,因此還需對(duì)其進(jìn)行擴(kuò)充和規(guī)范化。需求生成分為三種情況:1)對(duì)于沒有答復(fù)的問題,直接使用問題和問題陳述包含的信息來擴(kuò)充需求;2)對(duì)于只有一個(gè)答復(fù)的問題,結(jié)合問題和答復(fù)包含的信息擴(kuò)充需求;3)對(duì)于擁有多個(gè)答復(fù)的問題,選擇問題以及同意數(shù)最多的答復(fù)擴(kuò)充需求。

        由于不同的需求描述方法不同,我們調(diào)研了需求工程領(lǐng)域相關(guān)工作[23-25],并對(duì)其進(jìn)行分類和歸納,制定了不同的需求描述模板(如表1)。對(duì)于非功能需求的獲取,基于其常用指標(biāo),制定了定性和定量的描述模板。例如,根據(jù)可靠性指標(biāo)(如平均失效間隔(Mean Time Between Failures, MTBF)、平均恢復(fù)時(shí)間(Mean Time To Repair, MTTR)和平均無故障時(shí)間(Mean Time To Failure, MTTF)),性能指標(biāo)[23](如時(shí)間、吞吐量、容量需求和其他指標(biāo)),可移植性指標(biāo)(如代碼變更率、安裝成功率、界面適應(yīng)力、功能完整性),可維護(hù)性指標(biāo)(如圈復(fù)雜度、代碼行數(shù)、可維護(hù)性指數(shù)、繼承層次數(shù)、類耦合度和單元測(cè)試覆蓋率),本文分別制定了智能計(jì)算服務(wù)的可靠性、性能、可移植性和可維護(hù)性需求的描述模板,如表1所示。

        對(duì)于功能和操作性需求生成,目前采用最多的描述模板是用例和用戶故事,由于用例涉及的需求信息涉及具體步驟,而Stack Overflow獲取的數(shù)據(jù)只能反映出用戶的目標(biāo)和期望,因此采用用戶故事作為模板更合適。在進(jìn)行需求協(xié)商確定需求后,可再由需求分析人員根據(jù)用例模板做進(jìn)一步擴(kuò)充。合法性、外觀體驗(yàn)、安全性、易用性和可解釋性雖然屬于非功能性,但其描述特征更偏向于功能需求,因此本文對(duì)用戶故事做了簡(jiǎn)單的擴(kuò)展,以適配上述五個(gè)不同的非功能需求。本文結(jié)合目前使用廣泛的安全性用戶故事(security? related user story)[24]作為安全性需求的描述模板。易用性需求的描述在用戶故事的基礎(chǔ)上,擴(kuò)展了易用性機(jī)制[26],包括系統(tǒng)狀態(tài)、警告、長(zhǎng)時(shí)間操作、中止命令、中止操作、返回、文本輸入、循序漸進(jìn)、用戶偏好、喜愛和幫助。根據(jù)文獻(xiàn)[25],可解釋性包含兩個(gè)方面:一方面是模型本身的可解釋性,一方面是模型預(yù)測(cè)結(jié)果的可解釋性。因此,本文設(shè)計(jì)的可解釋性用戶故事模板包含了這兩個(gè)方面。

        表1 服務(wù)需求描述模板

        4 實(shí)驗(yàn)及結(jié)果分析

        為了驗(yàn)證本文工作,以TensorFlow智能計(jì)算服務(wù)為案例。該實(shí)驗(yàn)主要回答以下兩個(gè)研究問題:

        1)Stack Overflow文檔中是否包含智能計(jì)算服務(wù)的需求信息;服務(wù)消費(fèi)者在使用智能計(jì)算服務(wù)時(shí),更關(guān)注哪些需求。

        2)本文在基于Stack Overflow問答數(shù)據(jù)做知識(shí)分類時(shí)哪種方法效果更好,為此選擇精確率、召回率和F1值三個(gè)指標(biāo)對(duì)SVM、樸素貝葉斯和TextCNN進(jìn)行客觀評(píng)價(jià)。

        4.1 實(shí)驗(yàn)數(shù)據(jù)

        本文選取了開源智能計(jì)算服務(wù)TensorFlow在開發(fā)人員常用網(wǎng)站Stack Overflow上的問答數(shù)據(jù)進(jìn)行了實(shí)驗(yàn)驗(yàn)證。選擇TensorFlow的原因?yàn)椋簯?yīng)用較為廣泛,在開源深度學(xué)習(xí)服務(wù)排名中位列第一,在Stack Overflow上能獲取大量關(guān)于該服務(wù)的使用問答數(shù)據(jù)。

        4.2 Stack Overflow文檔中智能計(jì)算服務(wù)的需求信息統(tǒng)計(jì)

        本文對(duì)TensorFlow的問答數(shù)據(jù)進(jìn)行了分析和人工標(biāo)注,基于得到的16 405條問答數(shù)據(jù),從中選擇2 213條需求信息較為明顯的問題及回答作為實(shí)驗(yàn)數(shù)據(jù),對(duì)其進(jìn)行知識(shí)分類,標(biāo)注結(jié)果如表2所示。從表2可以看出,用戶在問答論壇上對(duì)于TensorFlow在操作性需求和功能性上的關(guān)注度更高,在安全性、合法性、外觀體驗(yàn)和可維護(hù)性上的關(guān)注度較少,甚至無關(guān)注。

        4.3 分類模型對(duì)比分析

        4.3.1分類模型設(shè)置

        對(duì)于統(tǒng)計(jì)機(jī)器學(xué)習(xí)模型,本文使用TF?IDF方法提取文本特征作為輸入。

        1)SVM是一種有監(jiān)督機(jī)器學(xué)習(xí)方法,是通過學(xué)習(xí)數(shù)據(jù)之間的最大超平面距離進(jìn)行數(shù)據(jù)劃分,同時(shí)為了解決非線性不可分問題,增加采用核函數(shù)方法將原本線性不可分?jǐn)?shù)據(jù)映射到更高維的向量空間中,以幫助進(jìn)行有效分類。

        2)樸素貝葉斯是基于貝葉斯理論的機(jī)器學(xué)習(xí)方法,是通過假設(shè)屬性之間相互獨(dú)立,通過求解各個(gè)屬性的概率值進(jìn)行劃分決策。

        3)TextCNN使用了深度學(xué)習(xí)框架:TensorFlow實(shí)現(xiàn)深度學(xué)習(xí)模型。其超參數(shù)設(shè)置為:訓(xùn)練輪數(shù)(Epoch)=20,學(xué)習(xí)率(Learning Rate)=0.001,批大小(Batch Size)=32,卷積核大小分別為3、4、5,丟棄率(Dropout)=0.5,優(yōu)化器為Adam。

        表2標(biāo)注結(jié)果

        Tab.2 Result of labeling

        4.3.2評(píng)價(jià)指標(biāo)

        其中:為包含正確地分類到該類別的知識(shí)數(shù)量,為在該類別中不正確地分類的知識(shí)數(shù)量;為不正確地沒有分類在該類別中的知識(shí)數(shù)量。

        4.3.3結(jié)果分析與討論

        實(shí)驗(yàn)結(jié)果如圖1所示,SVM在精確率上的結(jié)果最優(yōu),因?yàn)镾VM適合小樣本、非線性和高維模式的識(shí)別,故在一定程度上可以較好地對(duì)文本數(shù)據(jù)進(jìn)行分類。TextCNN在召回率上表現(xiàn)較好,因?yàn)樗诰W(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單的基礎(chǔ)上引入了已訓(xùn)練好的詞向量,能更好地抓取文本特征,得到了較好的結(jié)果,但數(shù)據(jù)噪聲大且訓(xùn)練數(shù)據(jù)較少,在一定程度上對(duì)結(jié)果造成影響。樸素貝葉斯效果最差,因?yàn)樗鼘?duì)數(shù)據(jù)的表達(dá)形式敏感。

        圖1 實(shí)驗(yàn)結(jié)果

        4.4 實(shí)驗(yàn)數(shù)據(jù)

        由于TextCNN在Stack Overflow問答數(shù)據(jù)上的表現(xiàn)最好,因此選擇TextCNN做知識(shí)分類,并采用3.4節(jié)步驟排序和3.5節(jié)步驟生成需求,結(jié)果如表3所示。

        表3服務(wù)需求描述實(shí)例

        Tab.3 Instances of service requirement descriptions

        5 結(jié)語

        本文提出了一種面向智能計(jì)算服務(wù)的需求獲取方法,通過對(duì)Stack Overflow上的問答數(shù)據(jù)進(jìn)行挖掘分析,及時(shí)有效地獲取用戶對(duì)于智能計(jì)算服務(wù)的需求反饋,采用智能化方法對(duì)其進(jìn)行分類,根據(jù)分類的結(jié)果采用適當(dāng)?shù)男枨竽0暹M(jìn)行新需求的定義,最后為開發(fā)人員形成可供參考的服務(wù)需求,幫助其進(jìn)行服務(wù)開發(fā)。

        下一步工作包括:首先,研究其他深度學(xué)習(xí)方法在Stack Overflow數(shù)據(jù)集上的表現(xiàn),如BERT、循環(huán)神經(jīng)網(wǎng)絡(luò)等;同時(shí)開發(fā)自動(dòng)化的服務(wù)需求定義技術(shù),能夠使需求分析人員從分類好的服務(wù)需求知識(shí)中自動(dòng)提取有用信息,并映射到服務(wù)需求模板中。在實(shí)驗(yàn)上,我們將爬取更多智能計(jì)算服務(wù)如Pytorch在Stack Overflow上的問答數(shù)據(jù)進(jìn)行驗(yàn)證。其次,對(duì)數(shù)據(jù)集進(jìn)一步標(biāo)注,區(qū)分不同的智能計(jì)算服務(wù)和用戶種類,研究不同應(yīng)用和用戶。

        [1] WANG Y, YANG X H, WANG X Y, et al. ProQRASS: a process? based approach to quality requirements analysis for service systems[J]. International Journal of Software Engineering and Knowledge Engineering, 2013, 23(7): 943-962.

        [2] SOUZA V E S, LAPOUCHNIAN A, ANGELOPOULOS K, et al. Requirements?driven software evolution[J]. Computer Science ― Research and Development, 2013, 28(4): 311-329.

        [3] 張圣. 軟件開發(fā)工程中需求分析重要性之探析[J].科技信息,2008(18):75-75(ZHANG S. Exploration of importance of requirements analysis in software development engineering[J]. Science and Technology Information, 2008(18): 75-75.)

        [4] BANO M, ZOWGHI D, IKRAM N, et al. What makes service oriented requirements engineering challenging? a qualitative study[J]. IET Software, 2014, 8(4): 154-160.

        [5] CHEN H F, HE K Q. A method for service?oriented personalized requirements analysis[J]. Journal of Software Engineering and Applications, 2011, 4(1): 59-68.

        [6] MOUHEB D, TALHI C, NOUH M, et al. Aspect?oriented modeling for representing and integrating security concerns in UML[M]// Software Engineering Research, Management and Applications. Berlin: Springer, 2010: 197-213.

        [7] SUN J, ZHAO L P, LOUCOPOULOS P, et al. QRA: a quality requirements analysis approach for service systems[C]// Proceedings of the 2013 IEEE International Conference on Services Computing. Piscataway: IEEE, 2013: 25-32.

        [8] PENSERINI L, PERINI A, SUSI A, et al. From stakeholder needs to service requirements[C]// Proceedings of the 2006 Service? Oriented Computing: Consequences for Engineering Requirements. Piscataway: IEEE, 2006: No.8.

        [9] WANG Y, WANG T,SUN J. PASER: a pattern?based approach to service requirements analysis[J]. International Journal of Software Engineering and Knowledge Engineering, 2019, 29(4): 547-576.

        [10] WANG J, HE K Q, LI B, et al. Meta?models of domain modeling framework for networked software[C]// Proceedings of the 6th International Conference on Grid and Cooperative Computing. Piscataway: IEEE, 2007: 878-886.

        [11] GARG R, NAUDTS B, VERBRUGGE S, et al. Modeling legal and regulative requirements for ranking alternatives of cloud?based services[C]// Proceedings of the IEEE 8th International Workshop on Requirements Engineering and Law. Piscataway: IEEE, 2015: 25-32.

        [12] ZHANG S L, YIN J S, LIU R. A RGPS?based framework for service?oriented requirement evolution of networked software[C]// Proceedings of the IEEE 3rd International Conference on Communication Software and Networks. Piscataway: IEEE, 2011: 321-325.

        [13] CLELAND?HUANG J, SETTIMI R, ZOU X C, et al. Automated classification of non?functional requirements[J]. Requirements Engineering, 2007, 12(2): 103-120.

        [14] SHARMA V S, RAMNANI R R, SENGUPTA S. A framework for identifying and analyzing non?functional requirements from text[C]// Proceedings of the 4th International Workshop on Twin Peaks of Requirements and Architecture. New York: ACM, 2014: 1-8.

        [15] LI C Y, HUANG L G, GE J D, et al. Automatically classifying user requests in crowdsourcing requirements engineering[J]. Journal of Systems and Software, 2018, 138: 108-123.

        [16] CASAMAYOR A, GODOY D, CAMPO M. Identification of non? functional requirements in textual specifications: a semi? supervised learning approach[J]. Information and Software Technology, 2010, 52(4): 436-445.

        [17] GUZMAN E, EL?HALIBY M, BRUEGGE B. Ensemble methods for App review classification: an approach for software evolution[C]// Proceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering. Piscataway: IEEE, 2015: 771-776.

        [18] 王瑩,鄭麗偉,張禹堯,等. 面向中文APP用戶評(píng)論數(shù)據(jù)的軟件需求挖掘方法[J]. 計(jì)算機(jī)科學(xué), 2020, 47(12):56-64.(WANG Y, ZHENG L W, ZHANG Y Y, et al. Software requirement mining method for Chinese APP user review data[J]. Computer Science, 2020, 47(12): 56-64.)

        [19] 賈一荻,劉璘. 中文非功能需求描述的識(shí)別與分類方法研究[J]. 軟件學(xué)報(bào), 2019, 30(10):3115-3126.(JIA Y D, LIU L. Recognition and classification of non?functional requirements in Chinese[J]. Journal of Software, 2019, 30(10): 3115-3126.)

        [20] KURTANOVI? Z, MAALEJ W. Automatically classifying functional and non?functional requirements using supervised machine learning[C]// Proceedings of the IEEE 25th International Requirements Engineering Conference. Piscataway: IEEE, 2017: 490-495.

        [21] KHAN J A, LIU L, WEN L J. Requirements knowledge acquisition from online user forums[J]. IET Software, 2020, 14(3): 242-253.

        [22] KIM Y. Convolutional neural networks for sentence classification[C]// Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2014: 1746-1751.

        [23] ECKHARDT J, VOGELSANG A, FEMMER H, et al. Challenging incompleteness of performance requirements by sentence patterns[C]// Proceedings of the IEEE 24th International Requirements Engineering Conference. Piscataway: IEEE, 2016: 46-55.

        [24] TONDEL I A, JAATUN M G, MELAND P H. Security requirements for the rest of us: a survey[J]. IEEE Software, 2008, 25(1):20-27.

        [25] K?HL M A, BAUM K, LANGER M, et al. Explainability as a non?functional requirement[C]// Proceedings of the IEEE 27th International Requirements Engineering Conference. Piscataway: IEEE, 2019: 363-368.

        [26] DUBEY S K, GULATI A, RANA A. Usability evaluation of software systems using fuzzy multi?criteria approach[J]. International Journal of Computer Science Issues, 2012, 9(3):404-409.

        Requirement acquisition approach for intelligent computing services

        WANG Ye, ZHOU Aohui, ZHOU Siyuan*, JIANG Bo, CHEN Junwu, SONG Shizhe

        (,,310008,)

        In intelligent computing services, data analysis and processing are provided for the service consumer by the service provider through Internet, and a learning model is established to complete intelligent computing function. Due to the lack of effective communication channels between service providers and service consumers, as well as the fuzzy and messy requirement descriptions of the service consumer feedback, there is a lack of a unified service requirement acquisition method to effectively analyze, organize and regulate the continuously changing requirement of users, which leads to the failure of intelligent computing services to make a rapid improvement according to the user’s requirements. Aiming at the problems of continuity and uncertainty of requirement changes in service development, a requirement acquisition method for intelligent computing services was proposed. The application feedback and questions of intelligent computing services were firstly obtained from Stack Overflow question and answer forum. Then, the knowledge classification and prioritization were performed on them by using different learning models (including Support Vector Machine (SVM), naive Bayes and TextCNN) according to the types of requirements concerned by the service consumer. Finally, a customized service requirement template was used to describe the requirements of intelligent computing services.

        service requirement engineering; requirement acquisition; intelligent computing service; machine learning; neural network

        This work is partially supported by Zhejiang Provincial Natural Science Foundation (LY21F020011).

        WANG Ye, born in 1986, Ph. D., associate professor. Her research interests include requirements engineering, service computing, machine learning.

        ZHOU Aohui, born in 1999, M. S. candidate. His research interests include software engineering, data mining.

        ZHOU Siyuan, born in 1998, M. S. candidate. His research interests include software engineering, data mining.

        JIANG Bo, born in 1970, Ph. D., professor. Her research interests include machine learning, requirements engineering, service computing.

        CHEN Junwu, born in 1995, M. S. candidate. His research interests include service computing, deep learning, data mining.

        SONG Shizhe, born in 1998, M. S. candidate. His research interests include service computing, machine learning, data mining.

        TP311

        A

        1001-9081(2022)11-3486-07

        10.11772/j.issn.1001-9081.2022010059

        2022?01?18;

        2022?03?31;

        2022?04?15。

        浙江省自然科學(xué)基金資助項(xiàng)目(LY21F020011);浙江省科技廳重點(diǎn)研發(fā)項(xiàng)目(2021C01162)。

        汪燁(1986—),女,安徽滁州人,副教授,博士,CCF會(huì)員,主要研究方向:需求工程、服務(wù)計(jì)算、機(jī)器學(xué)習(xí);周澳回(1999—),男,浙江溫州人,碩士研究生,CCF會(huì)員,主要研究方向:軟件工程、數(shù)據(jù)挖掘;周思源(1998—),男,上海人,碩士研究生,CCF會(huì)員,主要研究方向:軟件工程、數(shù)據(jù)挖掘;姜波(1970—),女,浙江黃巖人,教授,博士,CCF理事,主要研究方向:機(jī)器學(xué)習(xí)、需求工程、服務(wù)計(jì)算;陳駿武(1995—),男,浙江金華人,碩士研究生,CCF會(huì)員,主要研究方向:服務(wù)計(jì)算、深度學(xué)習(xí)、數(shù)據(jù)挖掘;宋師哲(1998—),男,貴州遵義人,碩士研究生,CCF會(huì)員,主要研究方向:服務(wù)計(jì)算、機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘.

        猜你喜歡
        貝葉斯模板分類
        鋁模板在高層建筑施工中的應(yīng)用
        鋁模板在高層建筑施工中的應(yīng)用
        分類算一算
        分類討論求坐標(biāo)
        數(shù)據(jù)分析中的分類討論
        教你一招:數(shù)的分類
        貝葉斯公式及其應(yīng)用
        基于貝葉斯估計(jì)的軌道占用識(shí)別方法
        鋁模板在高層建筑施工中的應(yīng)用
        一種基于貝葉斯壓縮感知的說話人識(shí)別方法
        電子器件(2015年5期)2015-12-29 08:43:15
        精品亚洲人伦一区二区三区| 天堂а√在线中文在线新版| 国产精品亚洲五月天高清| 男人天堂AV在线麻豆| 日韩精品一区二区亚洲观看av| 免费国产黄网站在线观看视频| 国内a∨免费播放| 中文字幕无码免费久久9一区9| 一区二区亚洲熟女偷拍| 一本无码中文字幕在线观| www国产无套内射com| 蜜臀亚洲av无码精品国产午夜.| 亚洲av日韩av高潮潮喷无码| 中文字幕亚洲好看有码| 亚洲综合精品一区二区| 麻花传媒68xxx在线观看| 欧美俄罗斯40老熟妇| 日本三级欧美三级人妇视频| 福利一区视频| 91大神蜜桃视频在线观看| 国产色视频一区二区三区不卡| 国内精品久久久人妻中文字幕| 亚洲丁香五月激情综合| 亚洲精品天堂在线观看| 国产av天堂亚洲av刚刚碰| 免费无遮挡禁18污污网站| 狠狠躁夜夜躁AV网站中文字幕| 亚洲伊人av综合福利| 在线观看麻豆精品视频| 日韩欧美亚洲综合久久影院ds| 久久中文精品无码中文字幕| 调教在线播放黄| 在线观看视频亚洲一区二区三区| 国产大片黄在线观看| 国产成人精品午夜福利| 国产精品一区二区久久精品蜜臀| 青青草骚视频在线观看| 国产97在线 | 免费| 午夜无码亚| 丰满少妇在线播放bd| 国语自产偷拍精品视频偷|