



摘要:為深入探討基于神經網絡技術的計算機應用軟件開發技術,提升軟件系統開發過程的智能化、自動化水平,本文簡要分析了神經網絡技術,從組件開發、程序設計、系統安裝三個方面提出基于神經網絡技術的計算機應用軟件開發方法,并借助具體案例進行深入分析,以探索神經網絡技術在計算機應用軟件開發中的應用。
關鍵詞:神經網絡技術;計算機應用;軟件開發
引言
2024年國務院《政府工作報告》中明確提出“人工智能+”戰略行動,推動人工智能應用于各行各業,為社會提供更多支持[1]。在計算機應用軟件開發中,人工智能技術得到廣泛應用,神經網絡技術作為其重要分支之一,具有強大的學習能力,可有效提升計算機軟件模型的性能、編程準確性,逐漸成為軟件工程領域智能化轉型的重要驅動力,并且為軟件開發注入新的動能。在神經網絡技術的加持下,軟件開發工具以其強大的代碼理解和生成能力,有效提升了軟件開發的效率。現階段,各大企業意識到神經網絡技術的重要價值和作用,并將其應用至計算機應用軟件開發中。基于此,本文主要對神經網絡技術下的計算機應用軟件開發技術進行深入探討,以期為相關研究人員提供參考。
1. 神經網絡技術
神經網絡技術是人工智能領域的重要組成部分,主要基于神經生理學、心理物理學研究成果,對生物神經網絡的理論抽象,通過模擬人腦,以期實現類人工智能的機器學習技術[2]。通過運用該技術來建立BP(back propagation)神經網絡模型,對計算機應用軟件開發中存在的各種風險、問題等進行評估、預測,方便研發人員進行調整和優化,對于提高軟件開發質量發揮著重要的作用。神經網絡技術在計算機應用軟件開發中的運用要素眾多,如做好數據預處理工作,根據預處理結果對計算機應用軟件的缺陷進行分類,計算缺陷數量,并創建預測模型,為規避計算機應用軟件開發缺陷、提高開發質量奠定基礎。
其中,數據的預處理是根據神經網絡的逆向傳遞原則,由模型學習數據開始,經由網絡的權重系數選取與多層模式建構,再以此為基礎,使用所建的多個辨識模式來進行辨識,進而選取正確率較高的模型。以預處理結果為依據,對計算機應用軟件開發中存在的各種缺陷進行總結,并做好分類工作。缺陷類型主要包括兩種,一種為需求缺陷,另一種為錯誤內容。開發人員需要根據實際缺陷類型,采取針對性的措施進行處理。在缺陷分類時,可以發現各類型的特征值差異,對于少量參數的類別,由于目前的計算機軟件很難對其正確歸類,因此,容易出現缺陷預測錯誤的情況[3]。神經網絡技術的應用則是通過對系統內在平衡的控制,優化系統中的數據獲取方式和學習方式,使原來不均衡的學習參數得到均衡調節。
對于缺陷數量特征的計算,該技術能夠根據軟件缺陷密度公式確定1000行程序中存在的錯誤數目。公式為
(1)
式中,Mq表示計算機軟件中所有已知或潛在缺陷數量;Md表示計算機軟件的總代碼行數,是衡量軟件規模的重要指標,反映軟件開發的投入量及復雜程度。
在軟件缺陷預測中,深度學習的應用主要是通過構建預測模型來實現。如圖1所示,為基于軟件度量的缺陷預測模型。該模型從開放源碼的公用庫或開放源碼團體中提取軟件的功能模塊,引入與缺陷密切關聯的度量元素,抽取相應的測量特性,實現故障樣本的構建,然后利用該方法對已有的軟件缺陷進行建模,并預測軟件缺陷。
2. 基于神經網絡技術的計算機應用軟件開發技術應用
2.1 組件開發
在組件開發中,利用神經網絡技術提取數據特征,依據數據具體特征進行分類,并對用戶的行為偏好進行分析,預測用戶需求。在特征提取中,神經網絡技術的應用是通過卷積神經網絡(CNN)和循環神經網絡(RNN)等深度學習模型來實現。CNN用于圖像數據處理,經過卷積操作,自動提取圖像中的邊緣、角點、紋理等特征;RNN主要擅長序列數據的處理,捕捉時間序列中的依賴關系,將序列中的高級特征提取出來。在用戶行為分析中,神經網絡技術通過GNN和RNN相結合,GNN對用戶局部行為隱藏狀態進行捕捉并預處理,RNN則是對用戶行為的時間序列特征進行捕捉,全方位對用戶行為模式進行分析,并實現用戶需求、偏好的有效預測[4]。神經網絡技術在組件開發中的應用極大地提高特征提取的自動化程度,減少人工干預,并且可以處理大規模、高維度的原始數據,從海量數據中提取出有用的特征,從而提高模型的性能和準確率。
2.2 程序設計
在計算機應用軟件開發中,程序設計非常關鍵,直接關系到計算機應用程序的發展。為了使計算機應用程序滿足使用者的要求,可利用自動化、人工智能等新技術,研制一套計算機應用程序,由自動化、智能化模塊直接代替人工完成對軟件的開發與優化。對于各類計算機應用程序,在進行設計時,必須先熟悉其工作過程,從效率和安全性等方面來降低非必要的過程,加強各個過程間的銜接[5]。在神經網絡技術的應用下,與開發人員進行協作,生成相應的程序框架和局部瑣碎細節,從而減少人工編程的工作量。完成程序設計后,利用神經網絡自動測試代碼的性能,通過訓練神經網絡,識別代碼中存在的內存泄漏、性能瓶頸等各種問題,提高代碼穩定性,還可以利用神經網絡技術補全代碼,提高編程準確性。
2.3 安裝系統
計算機應用軟件開發完成后,進入系統安裝階段。在系統中,先配置好神經網絡所需的環境,如安裝Python、Anaconda、TensorFlow或PyTorch等深度學習框架,幫助開發者快速搭建神經網絡模型,并進行訓練和測試。在系統安裝過程中,容易遇到一些兼容性問題和格式變換的需求,利用神經網絡技術,學習歷史數據中的模式,預測并解決這些問題。在自動化決策中,對于系統無法自動解決的問題,借助神經網絡技術,依據目前系統狀態和歷史數據,推薦最優的解決方案,該技術的應用可有效提升系統的安裝效率。針對系統安裝中出現的故障問題,神經網絡通過學習大量的故障案例,在最短時間內診斷問題的根源,并推薦針對性的修復方案。通過這種智能化的故障診斷,可以極大地縮短故障解決時間,進而提高系統的穩定性和可靠性[6]。
2.4 基于神經網絡技術的計算機應用軟件開發案例
以NeMo Curator數據管理軟件為例,其作為人工智能數據管理的可擴展工具包,包含多個可擴展數據挖掘模塊,為大型語言模型數據的整理而設計。該軟件的開發旨在通過神經網絡技術減輕數據采集工作量,提高管理質量。該軟件集成神經網絡技術,具有優化數據處理、預測分析及用戶行為模式識別等高級功能。該軟件系統的使用者角色有兩種,即一般用戶和管理員。如圖2所示,為具體的業務流程。
2.4.1 軟件開發設計
在數據管理軟件開發中,整體功能包括數據傳輸層、服務層、視圖層、控制器、實體類包、工具包、數據庫映射、持久層對象。數據庫包含數據庫表和表間關系分析,其中,數據庫表又包括多項內容,如被試者表、報告表格回答表、量表回答表、評量表等[7]。這些不僅是數據存儲的載體,還是神經網絡模型的輸入數據源。在軟件開發階段,使用Java開發工具,具體選用IntelliJ IDEA,該工具以編寫代碼為主,其作用是對程序進行最優處理,并通過結合神經網絡框架(如TensorFlow、PyTorch等)的Java API,實現神經網絡模型的集成與調用,從而提升程序的開發效率[8]。在數據存儲上,選用MySQL相關數據庫,并新增用于存儲神經網絡模型參數和訓練數據的專用數據庫表或外部存儲解決方案(如HDFS、云存儲等),其具有較高的可用性、容錯特性,在數據庫服務器出現故障時,能夠自動恢復。
2.4.2 模型建立和分析
在該軟件開發建模環節,以K均值算法為主,引入神經網絡技術,尤其是自組織映射(self-organizing map,SOM)網絡和深度學習中的聚類方法,并以迭代法來解決聚類[9]。模型創建的過程主要包括以下幾個方面:其一,明確K值;其二,采用隨機取樣法,從數據集中選擇k個數據點,并將其作為質心;其三,對數據集中所有數據點和質心的距離進行計算,根據計算結果劃分數據點的類型;其四,如果獲得的距離不在既定的閾值范圍內,則需要重新選取數據點,并再次計算所有數據點和質心的間距,直至間距控制在既定閾值范圍內;其五,當間距在閾值范圍內時,算法終止,并將結果輸出,完成聚類。
聚類分析使用K均值算法,在一個數據庫中對給出的K個簇聚類算法進行解析,然后根據業務的實際需求,通過人工設置或者選取合適的方法來獲取K值[10]。在此過程中,采取輪廓系數法或者誤差平方和的方法,獲得最佳的K值。在該軟件設計中,采取誤差平方和的方法,由專家判斷出每一個最佳K值后,對每一個簇內的點到聚類中心點之間的誤差平方和進行計算。一般而言,所求的值越小,表明聚類效果越好。SOM網絡是一種無監督學習的神經網絡,在聚類分析中,通過使用SOM網絡,對數據進行分類,然后基于SOM網絡的輸出,將其作為K均值算法的初始聚類中心,加速聚類的過程,并有效提高聚類質量。
得到聚類結果之后,使用輪廓系數法,對聚類效果進行評估。先確定i點,然后在該位置上計算向量i與i所在簇內的其他點之間的距離,即e(i),之后再計算向量i到其他簇之間的點的平均距離,即f(i)。具體計算公式為
(2)
式中,S(i)表示輪廓系數;e、f表示距離。依據該公式可知,輪廓系數的范圍在[-1,1],對于所有點輪廓系數,計算出具體的平均值,作為這一次的聚類結果的輪廓系數。對于最終計算出來的系數,越靠近1,表示該聚類能夠達到較好效果,并且表明本次軟件開發在功能、性能方面具有較好的效果,符合用戶的要求。軟件開發設計完成后,通過使用自動化技術,將該軟件安裝到計算機系統當中,在這個過程中,根據計算機系統的硬件配置、操作系統版本等信息,利用神經網絡模型對軟件安裝參數和配置等進行自動調整,優化軟件的運行性能和兼容性。
結語
在計算機應用軟件開發中,神經網絡技術的應用促使軟件開發方式發生變化,既能夠提升開發效率和質量,還能夠降低開發成本和風險。通過探討神經網絡技術在計算機軟件開發中的具體應用,充分發揮該技術的優勢,從而在各種程序設計和整合的開發環境中提高編碼的效率、質量。
參考文獻:
[1]國務院.政府工作報告——2024年3月5日在第十四屆全國人民代表大會第二次會議上[R/OL].(2024-03-12)[2024-10-30].https://www.gov.cn/gongbao/2024/issue_11246/202403/content_6941846.html.
[2]Wang X.Retraction Note:System simulation of computer image recognition technology application by using improved neural network algorithm[J].Soft Computing,2024,(prepublish):1-1.
[3]Gadani N N.Optimizing Software Development Processes in Cloud Computing Environments Using Agile Methodologies and DevOps Practices[J].Asian Journal of Research in Computer Science,2024(7):75-83.
[4]段濤,劉華.人工智能的計算機應用軟件開發技術研究[J].電子元器件與信息技術,2023(1):102-105.
[5]馮景利.基于人工智能的計算機應用軟件開發技術應用分析[J].信息記錄材料,2022(9):189-191.
[6]王曉紅.基于人工智能的計算機應用軟件開發技術[J].中國信息界,2024(5): 37-39.
[7]張海玉.基于人工智能的計算機應用軟件開發技術研究[J].軟件,2022(5):82-84.
[8]畢江會.基于人工智能的計算機應用軟件開發技術研析[J].電子元器件與信息技術,2021(7):195-196,198.
[9]薛夢丹.基于人工智能的計算機應用軟件開發技術應用分析[J].中國高新科技,2023(13):40-42.
[10]李大偉.基于人工智能的計算機應用軟件開發技術分析[J].軟件,2023(9): 124-126.
作者簡介:趙霏,碩士研究生,zhaofei8201@163.com,研究方向:計算機技術。