NLP项目实战02:英文文本识别
簡介:
歡迎來到本篇文章!今天我們將討論一個新的自然語言處理任務——英文短文識別。具體而言,即通過分析輸入的英文文本來判斷其是比較消極的還是比較積極的。
展示:
1、項目界面
如下所示是項目啟動后用戶使用使用界面
2、布局介紹
首先可以看到用戶使用界面上存在這么幾個部分:
2.1、最左邊的功能欄
2.2、最上面的添加識別文本的輸入框
2.3、一個start model按鈕
2.3、Test & Result
2.4、Wordcloud
2.5、WordFrequency
3、功能介紹
3.1、最左邊的功能欄
這部分暫時沒有功能接入,可以根據(jù)個人需求進行功能接入
3.2、最上面的添加識別文本的輸入框
在這里輸入需要模型進行識別的文本,這里需要注意,由于本項目是關于英文文本識別的,所以這里輸入的文本需要是英文才可以。如果輸入的是其他語言的文本,可能模型沒有辦法進行識別,或者說會出現(xiàn)識別出錯的情況。此外由于是英文文本識別,所以用戶使用界面,我也全用英文寫的
3.3、一個start model按鈕
當我們輸入好了文本以后,我們就可以點擊這個Start model進行文本的識別了
3.3、Test & Result
當模型識別以后,用戶界面會將識別結果進行展示,Test & Result的結果TaoTao這里使用的圖表的形式展示的,圖表有兩個屬性,一個是Positive還有一個是Negative,其中Positive表示輸入的識別文本是積極的一類,而Negative則表示消極
3.4、Wordcloud
這里屬于詞云的范疇了,也就是說這里會給我們輸入的文本進行統(tǒng)計,并給數(shù)據(jù)以詞云的方式展示出來。單個詞在文本中出現(xiàn)的次數(shù)多,則詞云的字體就越大。相反當單個單詞在文本中出現(xiàn)的次數(shù)越少,則詞云的字體就越小
3.5、WordFrequency
這里統(tǒng)計的是輸入文本中每一個單詞出現(xiàn)的單詞頻率。
詳細的界面效果如下所示
4、項目設計思路
本項目的實現(xiàn)思路如下流程圖所示:
這里的model采用的是深度學習中比較基礎的全連接網(wǎng)絡實現(xiàn)的。
數(shù)據(jù)使用的是開源數(shù)據(jù)數(shù)據(jù)集IMDB,然后用戶界面采用的是Flask結合著echarts實現(xiàn)的??梢钥吹綌?shù)據(jù)和模型算法都是比較容易實現(xiàn)的。所以我建議大家還是需要多多練習實踐,只有實踐,才可以對代碼有更加深刻的理解。
5、運行環(huán)境介紹
環(huán)境:windows+anaconda
主要的python庫如下:
Flask 3.0.0
torch 1.8.2+cu102
torchaudio 0.8.2
torchdata 0.7.1
torchtext 0.9.2
torchvision 0.9.2+cu102
說明:運行本項目cpu版本的torch也是可以運行的,但是建議使用GPU進行
6、運行項目:
首先在項目目錄下打開cmd,然后輸入:python model.py
當然了,你也可以在pycharm中直接run
等待項目啟動就可以了。項目啟動可能會慢一點,這是由于代碼需要加載數(shù)據(jù)集和模型,但是之后的使用還是比較快的,包括模型的識別速度。
之后,在terminal中會有一個url,如下所示:
http://127.0.0.1:5000/
我們給這個url輸入到網(wǎng)頁中回車,就可以訪問了
之后正常使用就可以了
最后說明:
由于筆者能力有限,所以在描述的過程中難免會有不準確的地方,還請多多包含!
更多NLP和CV文章以及完整代碼請到"陶陶name"獲取。
總結
以上是生活随笔為你收集整理的NLP项目实战02:英文文本识别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP如何使用正则替换中文?
- 下一篇: 3D 高斯喷溅 为什么图形永远不会相同