Здесь у меня есть группа данных, которые следуют гамма-распределению, и теперь я хочу использовать метод наивного Байеса, чтобы подогнать эти данные. Я попробовал оригинальную функцию под названием «fitcnb» и зная, что она обеспечивает 4 типа распределения: «ящик», «епанечник», «нормальный» и «треугольник». Теперь я хочу пересмотреть эту функцию fitcnb, добавив ядро ​​дистрибутива Gamma в исходный код. Но я не уверен, как это реализовать, может ли кто-нибудь дать мне подсказку или пример кода?

Большое спасибо за это.

ПРИМЕЧАНИЕ. 

Matlabsolutions.com предоставляет последнюю Помощь по домашним заданиям MatLab, Помощь по заданию MatLab для студентов, инженеров и исследователей в различных отраслях, таких как ECE, EEE, CSE, Mechanical, Civil со 100% выходом. Код Matlab для BE, B.Tech ,ME,M.Tech, к.т.н. Ученые со 100% конфиденциальностью гарантированы. Получите проекты MATLAB с исходным кодом для обучения и исследований.

Если ваши функции следуют гамма-распределению, вы должны быть в порядке, просто используя «нормальное» сглаживающее ядро. Чтобы обеспечить некоторую интуицию, априорное ядро ​​​​использует функцию сглаживания ядра для аппроксимации распределения функций из дискретных данных. Вы можете думать об этом как о попытке накрыть гистограмму скатертью, чтобы сгладить скачки, создаваемые гистограммой.

Чтобы проиллюстрировать это, давайте возьмем образец из гамма-распределения.

dataSamp = gamrnd(9,0.5,1e5,1); % Gamma Samples.
histogram(dataSamp,'Normalization','pdf') % Visualize pdf

Установите распределение ядра (скатерть) с ограничением, что поддержка является положительной (как в случае с гамма-распределением).

dist = fitdist(dataSamp,'kernel','Kernel','normal','Support','positive');

Оценить PDF распределения и построить на гистограмме

xVals = linspace(0,15,1000); % x Values to evaluate the pdf
yFit = pdf(dist,xVals); % pdf values at each xVals
hold on
plot(xVals,yFit,'LineWidth',2) % Plot the fitted pdf.
hold off

Это именно то, что происходит в fitcnb, когда вы используете те же вызовы

СМОТРИТЕ ПОЛНЫЙ ОТВЕТ НАЖМИТЕ НА ССЫЛКУ