分類予測 | MATLAB が NGO-CNN オオタカ アルゴリズムを実装して、畳み込みニューラル ネットワーク データの分類予測を最適化
分類効果
基本的な説明
1.Matlab は、畳み込みニューラル ネットワーク データ分類予測、多機能入力モデル、実行環境 Matlab2018b 以降を最適化するために、NGO-CNN ノーザン オオタカ アルゴリズムを実装しています; 2. ノーザン オオタカ アルゴリズム (NGO) に基づいて畳み込みニューラル ネットワーク (CNN) 分類を最適化します
。予測および最適化パラメータは、学習率、バッチ処理、および正則化パラメータです;
3. 複数の特徴入力と単一出力を備えた 2 分類モデルおよび多分類モデル。プログラム内のコメントは詳細であり、データを直接置き換えて使用できます。
プログラミング言語は matlab で、プログラムは分類効果図、反復最適化図、および混同行列図を生成できます。4.
データはデータ セットであり、入力です。 12 の機能は 4 つのカテゴリに分かれており、メインはメイン プログラム、残りは関数ファイルであり、実行する必要はなく、データとプログラム コンテンツはダウンロード エリアで取得できます。
プログラミング
- 完全なプログラムとデータ取得方法: NGO-CNN ノーザン オオタカ アルゴリズムを実装して畳み込みニューラル ネットワーク データ分類予測を最適化するために、ブロガーに MATLAB に返信するプライベート メッセージを送信します。
%% 优化算法参数设置
SearchAgents_no = 3; % 数量
Max_iteration = 5; % 最大迭代次数
dim = 3; % 优化参数个数
%% 建立模型
lgraph = [
convolution2dLayer([1, 1], 32) % 卷积核大小 3*1 生成32张特征图
batchNormalizationLayer % 批归一化层
reluLayer % Relu激活层
dropoutLayer(0.2) % Dropout层
fullyConnectedLayer(num_class, "Name", "fc") % 全连接层
softmaxLayer("Name", "softmax") % softmax激活层
classificationLayer("Name", "classification")]; % 分类层
%% 参数设置
options = trainingOptions('adam', ... % Adam 梯度下降算法
'MaxEpochs', 10,... % 最大训练次数
'MiniBatchSize',best_hd, ...
'InitialLearnRate', best_lr,... % 初始学习率为0.001
'L2Regularization', best_l2,... % L2正则化参数
'LearnRateSchedule', 'piecewise',... % 学习率下降
'LearnRateDropFactor', 0.1,... % 学习率下降因子 0.1
'LearnRateDropPeriod', 400,... % 经过800次训练后 学习率
%% 训练
net = trainNetwork(p_train, t_train, lgraph, options);
%% 预测
t_sim1 = predict(net, p_train);
t_sim2 = predict(net, p_test );
参考文献
[1] https://blog.csdn.net/kjm13182345320/article/details/129036772?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128690229