㈠ NLP中簡單的數據增強方法
訓練機器學習或深度學習模型時,良好的數據往往是影響模型的效果最重要的因素之一。而數據不足時數據增強是一個常用的方法。
數據增強的方法可以作為我們訓練nlp模型時一個快速改善 數據不平衡 或 數據缺失 的等問題。
1,增加訓練的數據量,提高模型的泛化能力
2,增加雜訊數據,提升模型的魯棒性
現有NLP的Data Augmentation大致有兩條思路,
(1) 同義詞替換(SR: Synonyms Replace): 不考慮stopwords,在句子中隨機抽取n個詞,然後從同義詞詞典中隨機抽取同義詞,並進行替換。
Eg: 「我非常喜歡這部電影」 —> 「我非常喜歡這個影片」,句子仍具有相同的含義,很有可能具有相同的標簽。
(2) 隨機插入(RI: Randomly Insert): 不考慮stopwords,隨機抽取一個詞,然後在該詞的同義詞集合中隨機選擇一個,插入原句子中的隨機位置。該過程可以重復n次。
Eg : 「我非常喜歡這部電影」 —> 「愛我非常喜歡這部影片」。
(3) 隨機交換(RS: Randomly Swap): 句子中,隨機選擇兩個詞,位置交換。該過程可以重復n次。
Eg: 「如何評價 2017 知乎看山杯機器學習比賽?」 —> 「2017 機器學習?如何比賽知乎評價看山杯」。
(4) 隨機刪除(RD: Randomly Delete): 句子中的每個詞,以概率p隨機刪除。
Eg: 「如何評價 2017 知乎看山杯機器學習比賽?" —> 「如何 2017 看山杯機器學習 」。
回翻方法中,我們用機器翻譯把一段中文翻譯成另一種語言,然後再翻譯回中文。
Eg: 「周傑倫是一位華語樂壇的實力唱將,他的專輯賣遍了全球。
" —>「Jay Chou is a strength singer in the Chinese music scene, his albums are sold all over the world.
」—>「周傑倫是中國音樂界的優秀歌手,他的專輯暢銷全世界。」
這個方法已經成功的被用在Kaggle惡意評論分類競賽中。反向翻譯是NLP在機器翻譯中經常使用的一個數據增強的方法,其本質就是 快速產生一些翻譯結果達到增加數據的目的 。
回譯的方法往往能 夠增加文本數據的多樣性 ,相比替換詞來說,有時可以改變句法結構等,並保留語義信息。但是,回譯的方法產生的數據依賴於 翻譯的質量 ,大多數出現的翻譯結果可能並不那麼准確。
採用深度學習模型的方法主要為 生成和原數據相類似的數據 。
(1)增加的數據要保證和原數據一致的語義信息。
(2)增加的數據需要多樣化。
抄自原文:
㈡ pytorch筆記01-數據增強
數據增強是擴充數據樣本規模的一種有效地方法。深度學習是基於大數據的一種方法,我們當前希望數據的規模瞎緩扒越大、質量越高越好。模型才能夠有著更好的泛化能力,然而實際採集數據的時候,往往很難覆蓋掉全部的場景,磨昌比如:對於光照條件,在採集圖像數據時,我哪行們很難控制光線的比例,因此在訓練模型的時候,就需要加入光照變化方面的數據增強。再有一方面就是數據的獲取也需要大量的成本,如果能夠自動化的生成各種訓練數據,就能做到更好的開源節流。
數據增強可以分為兩類,一類是離線增強,一類是在線增強。
pytorch中數據增強的常用方法如下:
torchvision中內置的transforms包含了這些些常用的圖像變換,這些變換能夠用Compose串聯組合起來。
原圖:
class torchvision.transforms.CenterCrop(size)
原圖像尺寸:(658, 411)
中心裁剪後尺寸:(200, 200)
class torchvision.transforms.ColorJitter(brightness=0, contrast=0, saturation=0, hue=0)
class torchvision.transforms.Grayscale(num_output_channels=1))
class torchvision.transforms.Pad(padding, fill=0, padding_mode='constant')
class torchvision.transforms.RandomCrop(size, padding=0, pad_if_needed=False)
class torchvision.transforms.RandomHorizontalFlip(p=0.5)
class torchvision.transforms.RandomVerticalFlip(p=0.5)
class torchvision.transforms.RandomRotation(degrees, resample=False, expand=False, center=None)
㈢ DL中圖像數據增強
改變亮度,對比度,飽和度,加噪(高斯、椒鹽、隨譽哪機)
隨機縮放,裁剪,翻轉,旋轉,扭曲(仿射變換)
隨機擦除
使用隨機值或者訓練集的平均像素值作為mask像素值,mask的形狀和位置可根據需要設定
cutout
和隨機擦除類似減少過擬合的方法,但cutout擦除矩形區域存在一定概率不完全在原圖像中
Hide and Seek
和隨機擦除類似,核心還是去掉一些區域,使得其他區域也可以識別出物體,增加特徵捕獲能力
Grid Mask
不同於隨機擦除、cutout和hide-seek在mask區域全部刪除或者全部保留,Grid Mask採用結構化mask,並控制mask密度和size參數
mixup
同時對輸入x及其對應label y做增強,對兩張圖片做融合,同時對他們的label做融合,其中yi,yj都是one-hot編碼的label,lambda是一個融合比例取值范圍為0到1。為對離散樣本空間增加連續化樣本,提高鄰域類別間的平滑性。
計算方式:取兩個batch的輸入做融合,融合結果送入前饋網路得到one-hot形式的y『,將該y』分別與融合前兩個圖像對應的label計算loss,再用以同樣的lambda融合loss作為最終loss。
CutMix
從一幅圖中剪切一個mask,粘貼到另外一幅圖中。在圖像生成過程中設置兩幅圖像的比例(例如0.4/0.6),得到對應比例的label。
FMix
不同於cutmix的矩形mask剪切粘貼,Fmix融合通道顏色將mask融入目標圖
paste
隨機選取一副源圖像中的目標,粘貼到一幅圖的隨機位置,過程中伴隨隨機隨機尺度變換。尤其適用OCR字元檢測場景。
類標簽平滑 label smooth
嚴格的one-hot label可能導致網路過擬合,因此對label進行soft化,使label有一定的概率來自均勻分布,如[0,0,1]變為[0,0,0.9]。相當於label上增加雜訊,讓模型訓練中不要過度集中於概率較高的類別,原理類似soft NMS。
馬賽克數據增強
採用4張(或其他偶數張)圖拼成一張新的樣本,達到:
(1)拼接縮放後,目標尺寸小於原尺寸,增加了小樣本的數量、形態和位置。
(2)拼接後每個batch的目標數量增加,BN的效果更好。
(a) 圖像經過一個正常的前饋訓練步驟獲得損失信號;
(b) 然後神經網路利用損失信號以一種對模型最有害的方式改變圖像(類似弊或添加微小擾動變成難樣本,很可能造成誤分類,如圖中紅星);
(c) 在隨後的訓練中,模型訓練學習修改後難樣本。
需要注意的是,對抗訓練對對抗樣本的抵抗力提升的同時,可能影響普通樣本的分類能力。
核心思想:通常檢測數據集中簡單樣本大大多於困難樣本,導致模型對簡單場景過擬慶卜碼合,困難場景欠擬合。因此先對候選RoI(Fast-RCNN)分類,選出更多難樣本進行訓練,提高參與訓練的難樣本的比例。
核心思想:CNN的feature maps冗餘很必要(從ResNet50的feature maps可視化效果中得到佐證),那相比用大量的標准卷積計算,採用更多cheap的方法來獲得冗餘的feature maps,可以減小計算量和內存需求,並提升網路性能。 Ghost Mole 對標准卷積結果進行一系列cheap操作來生成大量的feature maps,cheap操作包括仿射變換、小波變換、分組卷積(硬體支持更好)等,作為獨立模塊可封裝為 Ghost bottlenecks 。(思路清奇,一般考慮應該是冗餘需要去除,這里反向考慮增加,諾亞這位同學厲害)
Refs:
YOLOv4 中的數據增強_機器學習演算法那些事-CSDN博客
想讀懂YOLOV4,你需要先了解下列技術(一) - 知乎
label smooth、mixup理解 - 知乎
全網最全:盤點那些圖像數據增廣方式Mosiac,MixUp,CutMix等. - 知乎
㈣ 圖像處理和數據增強
前言:用CNN進行訓練模型的時候,通常需要對圖像進行處理,有時候也叫做數據增強,常見的圖像處理的Python庫:OpenCV、PIL、matplotlib、tensorflow等,這里用TensorFlow介紹圖像處理的過程
進行圖像的讀取昌棗和解碼,然後調用函數進行展示
結果如下:
圖片的大小為:(512, 512, 3)
結果:耐磨拆
圖片的大小為:(20, 20, 3)
注意:當放大時候,幾乎圖像不失真
上述為中間位置剪切或者填充,下面介紹任意位置剪切或者填充
這樣就可以截取任意圖像裡面的內容了
下面的圖像處理歸結到數據增強裡面了
當訓練數據有限的時候,可以通過一些變換來從已有的訓 練數據集中生成一些新的數據,來擴大訓練數據。數據增強的方法有:
以水平面為對稱軸如下:
轉置,相當於矩陣的轉置,90度轉換
注意:顏色空間的轉換必須講image的值轉換為float32類型,不能使用unit8類型
圖像基本格式:
rgb(顏色)0-255,三個255為白色,轉化為float32就是把區間變為0-1
hsv(h: 圖像的色彩/色度,s:圖像的飽和度,v:圖像的亮度)
grab(灰度)
這樣的方法,可以運用到車牌設別的過程中,對車牌自動進行截取。
高斯雜訊、模糊處理
樣本不均衡即有些類別圖像特別多,有些特別少。類別不平衡數據的處理:Label shuffle
具體步驟如下圖所示:
先按最多的類別進行游改隨機抽取序號,組數為label的數目,然後對每個label中的樣本書取模,然後分別對應自己序號的圖像,最後得到的樣本所有類別都一樣多。
㈤ 怎樣增強4g手機信號
如果您使用的是華為手機,手機狀態欄的信號格數時多時少時,建議採取以下方法嘗試解決:
1. 請避免使用磁吸/金屬保護殼、磁吸支架或磁力吸盤
金屬和磁性材質容易對信號造成干擾,導致手機信號變差。
2. 請更換其他手機卡嘗試
建議您將其他手機卡安裝到您的手機里查看,如果其他手機卡信號顯示正常 ,可能是您的手機卡出現了問題,建議您前往運營商營業廳更換新的手機卡。
3. 請移動當前所處地點嘗試
(1)一些較封閉的室內環境,例如樓棟間距密集的房屋內,手機信號可能會被遮擋,導致信號變差。您可以走出室外查看手機信號能否恢復正常。
(2)運營商網路覆蓋程度根據地域不同有差異,城市區域基本滿足覆蓋,但一些較偏遠的地區可能覆蓋能力不足,這樣就會導致手機信號差。
您可以通過是否只在同一區域時手機信號差,或者通過是否周邊使用相同運營商電話卡旦粗的手機也信號差,判斷是否為當前區域網路覆蓋差導致。
4. 檢查APN設置是否正確
APN設置不正確會影響網路的正常使用。
方法 1:
a.點擊設置;
b.在頂部搜索欄內輸入「APN」,點擊接入點名稱 (APN)進入移動數據頁面;
c.點擊接入點名稱 (APN),進入APN頁面;
d.打開右上角的三個點按鈕;
e.點擊重置為默認設置。
方法 2:
如果您的手機是EMUI 10.0及以上或Magic UI 3.0及以上的系統,或HarmonyOS 2.0及以上,您還可以按照以下步驟進行操作:
a.點擊設置;
b.點擊移動網路,隨後點擊移動數據;
c.在移動數據頁面毀遲和中點擊接入點名稱 (APN),進入APN頁面;
d.打開右上角的三個點按鈕;
e.點擊重置為默認設置。
溫馨提醒:
如果您的手機是EMUI 8.X 、EMUI 9.X或Magic UI 2.X的系統,您可以按以下步驟進行操作:
設置 > 無線和網路 > 移動網路 > 接入點名稱(APN) >纖盯 打開右上角的三個點按鈕 > 重置為默認設置。
5. 請還原網路設置嘗試
您可以進入設置,搜索還原網路設置,點擊 還原網路設置。
溫馨提示:還原網路設置會刪除WLAN和藍牙連接記錄,且需要輸入鎖屏密碼驗證。
如果以上排查無法解決您的問題,建議您聯系華為消費者服務熱線(950800)獲取更多幫助,或者提前備份好數據(微信/QQ等應用需單獨備份),並攜帶相關購機憑證,到附近的華為客戶服務中心檢測。
㈥ 數據增強疊加組合與序列組合哪個好
序列組合還不錯。
1、疊加隱並閉組合是將不同的數據增強方法結合在一起,如旋轉、翻轉、縮放、平移等,通過逐步組合實現復雜的數據變換,以達到使數據集更加豐富多樣的目的。這種方法可以有效灶裂地提高模型的魯棒性和穩定性,但需要針對具體問題進行合理設計和調整。
2、序列組合則是將不同的數據增強方法按照一定的順序組合起來,形成不同的序列數據變換方式。這種方法主要應用於與時間序列相關的蔽陸數據增強任務,如音頻信號處理、自然語言處理等領域。不同的序列組合方式可以產生不同的數據變換效果,從而提高模型的表現力和泛化能力。數據增強是深度學習領域中重要的技術之一,可以有效地解決數據不足和過擬合等問題,提高模型的性能和泛化能力。
㈦ 數據增強(解決過擬合)
為防止過擬合,除了正則化和Dropout還可以對樣本數據做增強。
1、一般對train集合做猛哪猜數據增強,對valid或test不做數據增強。當模型效果不好時,可以對test做多次,比如10次數據擴增,最後做平均。--這點不是特枝型別理解。
2、做Cross Validtion 比如5折交叉驗證,生成5個模型,最後投票緩鬧。
3、不同的訓練參數。聯合前面兩種方法。
4、keras中的方法,如果是圖像,可以通過ImageDataGenerator進行增強。
㈧ 試述數字圖像增強的主要方法。
【答案】:一空間域增強:①點運算:變換增強,如線性變換、直方圖均衡化、指數增強等②鄰域運算:濾波增強,氏槐如平滑/低通濾波、銳化/高通濾波二頻率域增強:濾波增強,如平滑/低通濾波、銳化/高通濾波、帶阻濾波和帶通濾波三彩色增強:假彩色卜核賀密度分割,彩色合成四型派圖像融合:多圖像代數運算、多光譜圖像增強五圖像特徵變換:壓縮圖像數據量,突出主要信息
㈨ yolov4-masaic數據增強方法
yolov4-masaic數據增強方法
原文鏈接: Mosaic數據增強_Alex-CSDN博客_mosaic數據增強
原理:Mosaic數據增強方式簡單來說就是把4張圖片,通過隨機縮放、隨機裁減、隨機排布的方式進行握態拼接。根據論文的說法,優點是豐富了檢源檔測物體的背景和小目標,並且在計算Batch Normalization的時候一次會計算四張圖片的數據,使得mini-batch大小不需要很大,一個GPU就可以達到比較好的效果。
流程圖:
優點:
豐富數據集:隨機使用4張圖片,隨機縮放,再隨機分布進行拼接,大大豐富了檢測數據集,特別是隨機縮放增加了很多小目標,讓網路的魯棒性更好
減少GPU:直接計算4張圖片的數據,使得Mini-batch大小並不需要很大,一個GPU就可以達到雹皮亂比較好的效果
缺點:
如果我們的數據集本身就有很多的小目標,那麼Mosaic數據增強會導致本來較小的目標變得更小,導致模型的泛化能力變差