IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> Text Preprocessing Method Using ML - Social media Example -> 正文阅读

[人工智能]Text Preprocessing Method Using ML - Social media Example

Why we need to preprocess text?

在現實世界中取得的數據非常凌亂,因此在使用機器學習處理NLP問題前,首先需要將數據進行適當處理,才能過濾有效資料。

然而在文字預處理同時,也會做feature engineering,將一些重要的特徵保留下來,以便後續模型的訓練
?

General Text Preprocess

根據數據取得的平臺,處理的方式會有所不同。比如:twitter的tweets 會有@mention,#hashtag, URL…etc;Instagram有 #hashtag。另外,現今emoji、縮寫語和網路用語十分發達,這些文字與表情符號都需要經過一定程度的處理才能用來訓練模型。

基本上,一般文字預處理有以下幾個步驟:

  • remove punctuations/ emoji
  • remove numbers
  • lowercase
  • remove stopwords
  • stemming/ lemmatization
  • remove frequent and infrequent words
  • tokenization

以上是很簡略的敘述文字預處理,但就像我先前提過的不同的raw text會需要不同的處理方式才能更大地發揮數據的價值。在此以sentiment analysis - based on social media為例記錄下自己遇到的問題:

Emoji

😊😭😤😂emoji是一個重要的情感判定因素,因此remove all emojis 不是一個好方法,可以運用一些python package將其轉換為emoji description。(BTW 這是我在社群媒體上最常用的emoji: 😂,又哭又笑地是要逼死做sentiment analysis的人嗎哈哈哈)

Punctuations

在social media上,常有"what???" or "oh my god!!!"類似這種consequent punctuations出現的時候。通常會給人一種語氣加重/強調/驚訝的情感,因此remove all punctuations may not seem a good way. 另一個可能發生的問題是: hyphenated words. 例如: well-known, one-year-old,若將中間符號(-)移除,意義可能改變。在處理標點符號問題,因取決於文本分析問題的目的。

縮寫語/網路用語

以中文"爺青回"為例,進行分詞後變成:爺/青/回,三字單看無特殊意義,但實際上三字合在一起時,意思為:爺的青春回來了。以英文為例,像是"OMG","SOTY"也是一樣的。在這一類處理上,我目前想到的是透過一個dictionary來記錄所有縮寫語/網路用語,並透過mapping將其替換為日常用語。

Stop words/高頻詞&低頻詞

在一個句子中經常出現但並沒有帶出太多意義的詞,我們稱之為Stop words。在英文中常見的停用詞像是:a, is, the, not…etc. 在情感分析案例上,移除所有停用詞會是一個災難。舉個例子,“I am not happy to be with you"原意是負面的,但在移除全部停用詞後,整句只留下正面的"happy”。因此要視所解決的問題,和EDA之後了解所有Data,才決定停用詞的增減或去留。

而在高頻和低頻詞也是一樣的,建議將高頻和低頻詞移除,才能過濾出真實有效的數據。這裡可以使用TF-IDF model來做計算。

Conclusion

Text preprocessing(NLP in machine learning) 是一個需要花時間FEATURE ENGINEERING/FINE-TUNING的領域,如前言所提,文字真的太雜了XD。

*後記:這2年Deep learning興起,許多大規模的pre-trained models 像是 BERT, GPT-3在NLP上取得了相當大的進展。但我的hands-on experience相對較少,還得趕緊練功去!

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-07-16 11:17:35  更:2021-07-16 11:18:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/22 10:26:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码