廖志平
(湖南環境生物職業技術學院,湖南 衡陽 421005)
大數據技術的發展使互聯網的應用范圍不斷擴大,論文重查、物流配送、電商平臺以及喜好推薦等許多傳統行業都在利用大數據工具和技術開辟新市場。在大數據技術的幫助下,商家們可以更好地進行消費決策,同時也可以準確地預測出商品的銷售量和銷路,進而使整個行業的供求關系得到改善。
SpringBoot不能徹底取代Spring,而是將Spring的框架整合到一起,使它成為一個對開發者來說更方便的開發工具。該軟件已經集成了很多第三方的資源庫,在使用時只要簡單地進行引入,無須經常進行其他的整合。
Ajax在Web服務器和Browser間進行異步的數據傳送,而Web頁面則需要從服務器方獲取本地資料,這樣可以讓Web軟件變得更小巧、更友好。Ajax也可以作為一個跨領域的鏈接,用于調整后端的前頁。
MyBatis是一個基于Java的很好的持久的架構,它可以在以后的應用中存儲和調用。MyBatis架構也可以在自定義數據庫、存儲等問題上做出出色的安排,基于MyBatis的實際應用和其本身的特性,通常將其分為3層:API接口層、數據處理層和底層支持層。
該數據的采集過程包括數據爬取、數據清洗、數據分析和數據展示。數據挖掘技術是通過scrapy從一個特定的頁面中得到一個完整的頁面,再通過BS4的框架提取出該頁面的主題和標記;數據清理就是對所采集到的數據進行初步加工、整理,剔除不合格的數據;數據處理是利用已有的Spark運算符對已洗數據進行求和、求平均等運算,將獲得的最終結果存儲在一個數據庫中;數據顯示部分使用SpringBoot架構,通過控制層、服務層和數據層對數據進行數據訪問,并對數據進行可視性回饋。該體系的數據流圖如圖1所示。

圖1 數據流圖
系統架構設計如圖2所示,該體系結構由控制層、服務層和數據層構成。

圖2 系統架構設計圖
這3個層次的區分使整個體系的體系設計更清晰。服務級可以利用SQL語句來抽取數據庫中的數據,將這些數據保存在可視化的Data領域,然后將這些數據傳輸到VIP層,再將其反饋到VIP級,可以幫助系統的發展。在整個體系結構的框架下,可以進行完善的大學級的體系結構。整個體系結構的完善程度直接關系到整個體系結構的可變性和可擴展性。
該平臺采用Python爬蟲,在“'./data/2020年9月大學英語六級成績.xls'”“'./data/2021年6月份英語六級成績數據.xls'”等搜索英語成績信息,因此該系統的主要目的是為了獲得更多的信息。但是經過檢測,由于頁面本身存在防扒的特性,如果頻繁地進行大規模的爬行,很容易造成IP被封鎖,因此在進行數據攀爬時,不能一次或多次地進行海量的數據訪問。
隨機森林構建思想解決了原先單決策樹存在的過擬合和非全局最優解的缺陷,體現隨機性,該算法利用訓練集和特征變量的隨機性進行英語成績分析,N棵樹就有N個分類效果。每課決策樹之間不相關聯,這樣在對英語成績處理時可根據成績特征區間進行分布。
隨機森林算法由(),(),…,h()構成。
邊際函數定義,如公式(1)所示。

邊際函數的概念是指如果分類結果的準確率高于不正確的分類結果,則獲得的數量更多,則表明該方法有效性更高。
泛化誤差定義,如公式(2)所示。

式中:、為概率定義空間。
隨機森林邊緣函數,如公式(3)、公式(4)所示。


由此可對隨機森林強度和相關性進行分析。
隨機森林強度定義,如公式(5)所示。

將公式(4)代入公式(5)可得公式(6)。

隨機森林相關度定義,如公式(7)所示。






隨機森林的特性主要表現為收斂程度、強度以及相關程度。它的收斂性是由于所有的概率分布都是收斂的,并且都是有極限的,因此就意味著它對未知的東西有很強的適應能力,而且不會產生太大的錯誤。
數據預處理,在數據預處理方面,采用“pandas+Matplot lib+seaborn+sklearn”等工具,該文采用了python的pandas庫與numpy庫進行協同的過濾操作。從多個角度對大學本科院校四、六級的數據進行了多個維度的統計和分析,揭示了目前大學英語的發展狀況,為英語教學的改革做了細致的剖析。其操作如下。
df_202009_six = pd.read_excel('./data/2020年9月大學英語六級成績.xls')
df_202009_four = pd.read_excel('./data/2020年9月大學英語四級成績.xls')
df_202012_six = pd.read_excel('./data/2020年12月份六級成績.xls')
df_202012_four = pd.read_excel('./data/2020年12月 份四級成績.xls')
df_202106_six = pd.read_excel(w1'./data/2021年6月份英語六級成績數據.xls')
df_202106_four = pd.read_excel('./data/2021年6月份英語四級成績數據.xls')
在前端,需要處理數據進行查詢和可視顯示,盡可能使顯示的接口更加直觀和漂亮。選擇SpringBoot進行前端架構的構建,其總體架構與SpringMVC相似,通過網頁啟動Ajax,通過逐層的訪問控制層、服務層和數據層來實現數據的可視性??梢暬难菔灸J絹碓从贓charts的正式的說明,它擁有更多的互動和互動。
而后端則負責處理數據的攀爬與存貯,是整個分析體系的關鍵所在。使用scrapy和bs4中的BeautifulSoup架構進行了爬行。這2種結構都很方便,也很好地理解了常規規則和Xpath。然后編寫Spark算符,將Spark的RDD轉換為DataFrame,以便在SQL基礎上進行數據格式的解析和運算。將數據寫入MySQL數據庫,并將其存儲在數據表格中。作為一個數據解析的平臺,為了確保數據的準確性,管理者必須定期對站點的結構和信息進行更新。
數據抓?。耗壳霸撐乃褂玫氖且环N爬行算法,其具體的算法是以Beautiful Soup為基礎。HTML/XML是一種用Python語言寫成的HTML/XML,它能處理不規則的標簽,產生解析樹。并通過隨機森林算法進行成績分類,可以方便地瀏覽、搜索和修改配置目錄。該方法無須編寫規則運算即可輕松抽取網絡中的數據,快速給使用者提供各種分析方法。
尋找數據:確定好了數據區域是中間的部分,進行數據爬取。
抓取數據:抓取數據用到了urllib.request庫,解析html用到了BeautifulSoup庫。
應用隨機森林算法對英語成績樣本進行分析,并可以選擇對象的不同的特征將其劃分為多個子集合,這樣就可以對新的對象進行屬性劃分。
從分析中可以看出外國語學院通過率高,這主要源于學習內容與習慣,英語學習越多通過率越高,另外體育學院最低,主要原因在于平時學習較少,大多是體育訓練,導致英語學習比重降低。
界面代碼設置如下。


可根據所獲取數據創建英語四級中閱讀、聽力、寫作與總分之間的線性回歸分析,大數據分析應用在英語中可使使用者盡快了解成績以及學生詳情,能夠更好地幫助英語學習。在Hist表格上,系統會輸出相應的數據讓使用者看到。在Python上運行時,系統將會通過隨機森林算法進行成績分類,并由系統處理生產線性回歸分析圖,由該圖可知,無論是總分、聽力、閱讀還是寫作,分數集中位置都在中間,這與學生能力相關。
界面代碼設置如下。

該文主要從數據爬取、數據預處理、數據分析和可視化4個部分來研究“大數據在英語教學中的應用”的設計和實施。該數據解析體系由SpringBoot框架與數據庫、爬蟲和Spark結合在一起實現。重點闡述了決策樹和隨機森林在英語成績分析中的應用及其算法,并對它的特性和優點進行了詳細的論述。在系統的開發初期對系統的要求與可行性進行了細致的研究,并根據實際情況分析了隨機森林算法在英語中的應用、大數據處理以及數據分析的具體實現,可為英語學習提供有效幫助。