数据集= imageDatastore (“数据集”,“IncludeSubfolders”,真的,“LabelSource”,“foldernames”);
[Training_Dataset, Validation_Dataset, Testing_Dataset] = splitEachLabel(数据集,0.7,0.15,0.15);
网= googlenet;
analyzeNetwork(净)
Input_Layer_Size = net.Layers (1) .InputSize (1:2);
resize_training_dataset = augmentedImageDatastore(Input_Layer_Size,Training_Dataset);
resize_validation_dataset = augmentedImageDatastore(Input_Layer_Size,Validation_Dataset);
resize_testing_dataset = augmentedImageDatastore(Input_Layer_Size, Testing_Dataset);
Feature_Learner = net.Layers . name (142);
Output_Classifier = net.Layers . name (144);
Number_of_Classes =元素个数(类别(Training_Dataset.Labels));
New_Feature_Learner = fullyConnectedLayer (Number_of_Classes,...
“名字”,“光伏特性的学习者”,...
“WeightLearnRateFactor”10...
“BiasLearnRateFactor”10);
New_Classifier_Layer = classificationLayer (“名字”,“光伏分类器”);
Network_Architecture = layerGraph(净);
New_Network = replaceLayer(Network_Architecture, Feature_Learner, New_Feature_Learner);
New_Network = replaceLayer(New_Network, Output_Classifier, New_Classifier_Layer);
analyzeNetwork (New_Network)
Minibatch_Size = 4;
Validation_Frequency =地板(元素个数(Resized_Training_Dataset.Files) / Minibatch_Size);
Training_Options = trainingOptions (“个”,...
“MiniBatchSize”Minibatch_Size,...
“MaxEpochs”15岁的...
“InitialLearnRate”3的军医,...
“洗牌”,“every-epoch”,...
“ValidationData”Resized_Validation_Dataset,...
“ValidationFrequency”Validation_Frequency,...
“详细”假的,...
“阴谋”,“训练进步”);
net = trainNetwork(resize_training_dataset, New_Network, Training_Options);