国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Bi-LSTM 和Attention 的智能合約分類

2021-03-12 07:00燦,王
軟件導(dǎo)刊 2021年2期
關(guān)鍵詞:源代碼合約注意力

王 燦,王 冬

(1.山東科技大學 計算機科學與工程學院,山東 青島 266590;2.山東省滕東生建煤礦,山東 滕州 277522)

0 引言

區(qū)塊鏈技術(shù)不斷突破,應(yīng)用也越來越廣泛,尤其是布置在區(qū)塊鏈上的智能合約分類呈指數(shù)級增長[1]。智能合約白皮書的出現(xiàn),預(yù)示其在數(shù)據(jù)共享、物聯(lián)網(wǎng)供應(yīng)鏈、金融貿(mào)易等方面運用十分廣泛,是走在前沿的技術(shù)。目前存有最多智能合約應(yīng)用的平臺是Ethereum,該平臺每月都會發(fā)布智能合約,其數(shù)量已經(jīng)達到10 萬個[2]。雖然區(qū)塊鏈用戶數(shù)目還不是很多,分布也不廣,但未來區(qū)塊鏈用戶會像現(xiàn)在擁有數(shù)據(jù)流量用戶一樣涌來,其帶來的各種復(fù)雜疑難問題需要及時解決。因此,設(shè)計出滿足智能合約的自動分類模型非常必要。

針對智能合約的自動分類模型研究很多。智能合約分類首先要建立一個模型,這個模型要以文本分類為中心。目前研究智能合約分類著作較少,尤其是源代碼與用戶信息方面的研究內(nèi)容很少。

在研究文獻中發(fā)現(xiàn),分類算法模型[3]用到文本分類中,如支持向量機SVM[4-5]、決策樹[6]、樸素貝葉斯算法[7]等可提高文本分類的實用價值。在文本分類算法中,傳統(tǒng)機器學習在進行文本分類時需要進行特征工程[8]。黃步添等[9]首次將智能合約源代碼與交易信息結(jié)合,在詞嵌入模型中提取出文本特征。長短期記憶(Long Short-Term Memory,LSTM)[10]網(wǎng)絡(luò)生成全局向量。為將向量輸入到前饋神經(jīng)網(wǎng)絡(luò)中,需要通過Softmax 層輸出分類結(jié)果,但這并沒有解決RNN[11]的梯度問題,同時計算量大,耗費時間。Kim[12]提出卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)模型,這種模型基于一種雙通道輸入原理,將超參調(diào)節(jié)和靜態(tài)向量作為輸入通道,由此提取出不同特征,最后將不同長度的句子通過向量表示。CNN 模型具備捕獲時間和空間的局部相關(guān)性,以及通過匯聚提取更高層次關(guān)聯(lián)的能力,有助于實現(xiàn)從連續(xù)的上下文窗口句子進行建模。但是模型完成工作量及占用內(nèi)存大,效率較低。文獻[13]提出W2V-SVM 模型,基于Word2Vec 方法訓練詞集合,再通過高斯核支持向量機結(jié)合One vs All 算法實現(xiàn)特征分類。這種模型內(nèi)存占用不大,但準確率不高。文獻[14]提出將CNN 和LSTM 相結(jié)合的算法模型。該模型通過CNN 實現(xiàn)高層特征提取,采用LSTM 按照依存關(guān)系進行分類,可在短時間內(nèi)快速捕獲到集合特征,但前期的特征提取工作效率還有待改進。

LSTM[15-16]模型優(yōu)點在于能捕獲較長距離的依賴關(guān)系,并在訓練過程中就能篩選出不重要的信息將其遺忘,缺陷是不能捕獲從后到前的語義信息,影響智能合約分類的準確性。因此,可利用LSTM 捕獲有選擇性的記憶或遺忘部分不重要的信息,進而實現(xiàn)穩(wěn)定性與高效率。本文提出的結(jié)合注意力的Bi-LSTM 模型能有效解決以上模型存在的不足。該模型主要通過Bi-LSTM 人工智能算法結(jié)合注意力機制,快速對智能合約進行有效信息[17]的捕獲和提取,智能捕獲關(guān)鍵特征,從而提高智能合約分類的效率和準確度。

1 智能合約自動分類模型

模型Bi-LSTM 框架如圖1 所示,包括詞嵌入層、Bi-LSTM 層、層級注意力機制、Softmax 層、句表示層、連接層。智能合約特征信息需要最大程度地提取,這樣有助于提高智能合約分類功能,優(yōu)化效果。本文基于源代碼和用戶信息建模。由于源代碼涉及到代碼語義特征,而用戶信息涉及到賬戶特征,因此需要學習兩大特征,關(guān)注其之間的聯(lián)系,還要在詞層面和句層面引入注意力機制,捕獲到有重要意義的句子和單詞。最后通過Softmax 層完成分類任務(wù),將兩大特征生成智能合約。智能合約自動分類模型需要運用詞嵌入層、Bi-LSTM、層級注意力機制、Softmax 層結(jié)構(gòu)進行仿真模擬。

1.1 詞嵌入層

在詞嵌入層中,源代碼特征和賬戶信息特征要以單詞為單位分割,分割之后還要轉(zhuǎn)化為向量表示。給定一個智能合約D,包含源代碼C 和賬戶信息A,利用模型Word2Vec 將單詞S 中的W1反映到二維向量空間,通過下式生成詞向量表示:

得到的詞向量結(jié)果直接包含了語義特征,在詞嵌入層中完成。

Fig.1 Intelligent contract automatic classification model圖1 智能合約自動分類模型

1.2 Bi-LSTM 層

Bi-LSTM 在處理單詞排序問題時,會運用一個轉(zhuǎn)換函數(shù)實現(xiàn)排序長度,以遞歸方式將一個轉(zhuǎn)換函數(shù)f 應(yīng)用到內(nèi)部隱藏狀態(tài)向量ht,隱藏ht在t 時刻與當前輸入向量et以及前一隱藏狀態(tài)ht-1之間的關(guān)系。

Bi-LSTM 層由各種各樣的LSTM 單元組成,每個單元都包含一個記憶單元ct和3 個門控制器,分別是輸入門it、輸出門t0和遺忘門ft。對給定的輸入向量et,可計算上一單元的隱藏狀態(tài)ht-1、上一單元的記憶狀態(tài)ct-1以及當前單元的隱藏狀態(tài)輸出th。

1.3 層級注意力機制

在測試源代碼和賬戶信息的智能合約分類中發(fā)現(xiàn),如果引入層級注意力機制會大大提高捕獲關(guān)鍵信息的準確性,這樣有助于智能合約分類的準確性,加強其穩(wěn)定性。不同單詞對智能合約的貢獻程度不同,比如說一個取名為“Maker's”的變量和函數(shù)中,其分類預(yù)測作用要比其它變量和函數(shù)更大,因此需要引入層級注意力機制以提高智能合約分類的正確性。引入了注意力機制的模型在訓練完成后的測試時間會更短,原因在于注意力機制能更快速地提取文本中的關(guān)鍵特征,加速合約分類,有效把握關(guān)鍵特征,提高分類準確性。

1.4 Softmax 層

在得到智能合約全局特征表示后,將d 作為最終輸入到Softmax 分類器的分類特征。首先將d 反饋到線性層中,將其投影到目標分類Q 中。

2 實驗設(shè)置

2.1 數(shù)據(jù)集

本文從3 個不同的區(qū)塊鏈平臺收集總共35 101 個經(jīng)過驗證的智能合約,并利用網(wǎng)站提供的API 獲取相關(guān)智能合約賬戶信息。根據(jù)文獻[14]可知智能合約在7 個領(lǐng)域運用廣泛,分別是娛樂(音樂、視頻、游戲、社交)、工具、信息管理、金融(保險、融資、投資、貨幣等)、彩票、物聯(lián)網(wǎng)、其它。為驗證Bi-LSTM 的有效性,通過這7 個方面依次進行模型測試,從而得到速度數(shù)據(jù),以此判斷模型是否全面有效,對比實驗數(shù)量按金融、娛樂、工具、彩票、信息管理、其它、物聯(lián)網(wǎng)從大到小排列。

2.2 評價指標

與分類問題常用指標類似,本文使用正確率(Preci?sion)、召回率(Recall)和F 值(F-score)3 個度量指標評價模型性能。

3 實驗結(jié)果與分析

基于Dataset-E、Dataset-N 和Dataset-EO 數(shù)據(jù)集,給出不同模型的實驗結(jié)果。為更有說服力地體現(xiàn)本文算法效果,在仿真中分別引入W2V-SVM、CNN[12]、C-LSTM[18]、W2V-LSTM[9]、ATT-CNN[19]、AT-LSTM[20]、ATT-BiLSTM[21]這7 種不同算法模型。對這些模型進行仿真,采用正確率(Precision)、召回率(Recall)和F(F-score)評估各模型的分類效果。

基于Dataset-E 的實驗結(jié)果如表1 所示。

Table 1 The experimental results based on the Dataset-E表1 基于Dataset-E 的實驗結(jié)果

基于Dataset-EO 的模型實驗結(jié)果如表2 所示。

Table 2 The experimental results based on the Dataset-EO表2 基于Dataset-EO 的實驗結(jié)果

基于Dataset-N 的模型實驗結(jié)果如表3 所示。

其中效果最明顯的是Dataset-E,其次是Dataset-EO,最后是Dataset-N。CNN 和LSTM 模型在Dataset-E 數(shù)據(jù)集上分別達到83.4% 和87.8% 的正確率,而加入注意力機制的ATT-CNN 和AT-LSTM 模型正確率分別達到88.6%和89.6%,分別提高了5.2% 和2.2%。加入注意力機制的Bi-LSTM 模型正確率在Dataset-E、Dataset-N 和Dataset-EO 數(shù)據(jù)集上分別達到89.8%、87.9% 和85.0%,比同樣條件下傳統(tǒng)的CNN 模型提高了6.4%、5.5% 和3.7%,此結(jié)果源于注意力機制引用。智能合約分類中引入注意力機制,使智能合約捕獲到最關(guān)鍵特征,因而效率迅速提高。

Table 3 The experimental results based on Dataset-N表3 基于Dataset-N 的實驗結(jié)果

將Bi-LSTM 模型在3 個數(shù)據(jù)集上進行對比實驗,結(jié)果如圖2、圖3 所示。

Fig.2 Precision_Recall curves of four models圖2 四種模型的Precision_Recall 曲線

Fig.3 Precision_Recall curve of three models圖3 三種模型的Precision_Recall 曲線

分析模型的Precision_Recall 曲線可更直觀地看出,加入注意力機制的長短期記憶網(wǎng)絡(luò)模型分類效果更好,更加合理。實驗結(jié)果表明本文提出的智能合約分類更智能地捕獲到了最關(guān)鍵特征,提高了效率和準確度。

4 結(jié)語

針對區(qū)塊鏈技術(shù)的智能合約自動分類問題,本文研究了注意力和雙向長短期記憶神經(jīng)網(wǎng)絡(luò),運用Bi-LSTM 神經(jīng)網(wǎng)絡(luò)從源代碼和賬戶信息兩個角度進行分類,通過其特征表示,對智能合約語義特征進行更大程度的捕獲,最終將特征整合表示,以利于智能合約運用。在3 個數(shù)據(jù)集進行實驗,結(jié)果顯示文本模型具有更高的穩(wěn)定性和完整性,收斂速度也大幅加快。同時,智能合約分類問題還需進一步研究,以實現(xiàn)更優(yōu)的智能合約分類,達到更高效率。

猜你喜歡
源代碼合約注意力
人工智能下復(fù)雜軟件源代碼缺陷精準校正
讓注意力“飛”回來
基于TXL的源代碼插樁技術(shù)研究
軟件源代碼非公知性司法鑒定方法探析
“揚眼”APP:讓注意力“變現(xiàn)”
揭秘龍湖產(chǎn)品“源代碼”
合約必守,誰能例外!——對“情勢變更”制度不可寄于過高期望
文登市| 镇远县| 镶黄旗| 杭锦旗| 桃园县| 钦州市| 七台河市| 遵化市| 林周县| 浦东新区| 花莲市| 临邑县| 镇坪县| 和平区| 三门峡市| 永平县| 桑日县| 革吉县| 得荣县| 鹤峰县| 准格尔旗| 石嘴山市| 巴楚县| 南部县| 株洲市| 北票市| 巴彦县| 阿鲁科尔沁旗| 南城县| 厦门市| 泾源县| 邹平县| 大城县| 江都市| 清丰县| 理塘县| 景宁| 方山县| 家居| 普格县| 修文县|