I did a small project to classify certain tropical fishes. The import of images worked well, but again, I faced a similar issue in handling large image archives.
(keeping three different classes of the image in separate folders)
SetDirectory[NotebookDirectory[]];
C01 = FileNames[All, "Fishes\\Guppy"];
C02 = FileNames[All, "Fishes\\Sword"];
C03 = FileNames[All, "Fishes\\Zebra"];
(define the association between the file path and the class)
Data01 = C01[[#]] -> "Guppy" & /@ Range[Length@C01];
Data02 = C02[[#]] -> "Sword" & /@ Range[Length@C02];
Data03 = C03[[#]] -> "Zebra" & /@ Range[Length@C03];
(union all defined associations)
Data = Union[Data01, Data02, Data03];
(Perform imports)
myData = Import@Data[[#]][[1]] -> Data[[#]][[2]] & /@Range[Length@Data];
(Train)
myClassify = Classify[myData, TargetDevice -> "CPU"]