avatar
Untitled

Guest 86 29th Apr, 2024

MARKUP 1.77 KB
                                           
                         % Wczytanie danych
filename = 'ścieżka_do_pliku/iris.data';
opts = delimitedTextImportOptions("NumVariables", 5, ...
    "DataLines", [1, Inf], ...
    "Delimiter", ",", ...
    "VariableTypes", ["double", "double", "double", "double", "categorical"], ...
    "VariableNames", ["sepal_length", "sepal_width", "petal_length", "petal_width", "species"]);

irisData = readtable(filename, opts);
% Konwersja etykiet gatunków na liczby
irisData.species = grp2idx(irisData.species);

% Podział danych na cechy i etykiety
inputData = irisData(:, 1:4);
outputData = irisData.species;% Wyświetlenie pierwszych kilku wierszy danych
head(irisData)

% Podział danych
cv = cvpartition(size(inputData,1),'HoldOut',0.3);
idx = cv.test;

% Zbiór uczący
trainInput = inputData(~idx,:);
trainOutput = outputData(~idx,:);

% Zbiór testowy
testInput = inputData(idx,:);
testOutput = outputData(idx,:);
% Przygotowanie danych dla ANFIS
trainFIS = [trainInput{:,:}, table2array(trainOutput)];

% Tworzenie początkowej struktury FIS
numMFs = 2;
mfType = 'gaussmf';
fis = genfis1(trainFIS, numMFs, mfType);

% Uczenie modelu ANFIS
numEpochs = 100;
[trainedFis, trainError] = anfis(trainFIS, fis, numEpochs);
% Testowanie ANFIS
testFIS = [testInput{:,:}, table2array(testOutput)];
predicted = evalfis(testFIS(:,1:4), trainedFis);

% Konwersja wyników i ocena
predictedLabels = round(predicted);
confMat = confusionmat(testFIS(:,5), predictedLabels);
accuracy = sum(diag(confMat)) / sum(confMat(:));
disp(['Accuracy: ', num2str(accuracy * 100), '%']);
                      
                                       
To share this paste please copy this url and send to your friends
RAW Paste Data
Ta strona używa plików cookie w celu usprawnienia i ułatwienia dostępu do serwisu oraz prowadzenia danych statystycznych. Dalsze korzystanie z tej witryny oznacza akceptację tego stanu rzeczy.
Wykorzystywanie plików Cookie
Jak wyłączyć cookies?
ROZUMIEM