如何透過Python切割訓練集及驗證集?(How to split training set and val set with Python?)

以前在切割dataset的過程中,曾經使用過split-folders這個程式來切割,只是會遇到label的隨機分布與image的分布不一樣的情形,導致train set和val set資料夾中的圖片和label無法對應。

有鑑於這個問題,我在網路上參考了其他人的程式後,客製化一個能夠一起將image和label進行隨機抽樣的python程式。程式碼目前都有註解,讀者需要根據自己的需求去修改資料夾路徑,且必須將所有的資料夾建立完成,除此之外,必須將所有的圖片放到train/images所有的label放到train/labels後再執行該程式。

運作原理就是把train/images和train/labels的檔案隨機抽取一定數量出來,移動到指定的資料夾當中。

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store