Categories
程式開發

利用AWS SageMaker BlazingText 對不均衡文本進行多分類


背景

文本分類(Text Classification) 屬於自然語言處理領域,是指計算機將載有信息的一篇文本映射到預先給定的某一類別或某幾類別主題的過程。然而在現實問題中,經常會遇到數據樣本的類別不平衡(class imbalance) 現象,嚴重影響了文本分類的最終結果。所謂樣本不均衡指的是給定數據集中有的類別數據多,有的數據類別少,且數據佔比多的數據類別樣本與占比小的數據類別樣本兩者之間達到較大的比例。

BlazingText 是AWS SageMaker 的一個內置算法,提供了Word2vec 和文本分類算法的高度優化的實現。本文使用了Sagemaker BlazingText 實現了文本多分類。在樣本不均衡問題上,使用了回譯和EDA 兩個方法對少類別樣本進行了過採樣處理,其中回譯方法調用了AWS Translate 服務進行了翻譯再翻譯,而EDA 方法主要使用同義詞替換、隨機插入、隨機交換、隨機刪除對文本數據進行處理。本文也使用了AWS SageMaker 的自動超參數優化來為BlazingText 的文本分類算法找到最優超參數。

本文使用基於DBpedia 的公開數據集處理生成的含有14個類別的不均衡文本數據,並進行了不做任何樣本不均衡處理的Baseline 實驗和包含回譯和EDA 兩個方法的過採樣實驗。

原文鏈接:【https://www.infoq.cn/article/xbSAYuJcQrm048GHl5dJ】。未經作者許可,禁止轉載。