---
source_url: https://docs.dolphindb.cn/zh/funcs/m/multinomialNB.html
fetched_at: 2026-05-19T09:32:51Z
category: funcs
title: multinomialNB
sha1: 75e5ceffa30883693c99955bde7f9e34934ef47b
---

# multinomialNB

## 语法

`multinomialNB(Y, X, [varSmoothing=1.0])`

## 详情

使用多项式朴素贝叶斯（Multinomial Naive Bayes）算法对数据进行分类训练。

## 参数

**Y** 是一个长度与 *X* 的行数相等的向量，表示 *X* 中每个样本对应的标签。

**X** 是一个表，表示训练集。表中每一行表示一个样本，每一列表示一个特征。

**varSmoothing** 是0到1之间的浮点数，表示平滑系数。

## 返回值

返回一个字典，包含以下key：

- modelName：模型名称，为字符串 "MultinomialNB"。
- model：multinomialNB 的内部模型。
- varSmoothing：训练时使用的平滑系数。

## 例子

本例所用数据集 iris.data 可从 <https://archive.ics.uci.edu/ml/datasets/iris> 下载。

```dolphindb
DATA_DIR = "C:/DolphinDB/Data"
t = loadText(DATA_DIR+"/iris.data")
t.rename!(`col0`col1`col2`col3`col4, `sepalLength`sepalWidth`petalLength`petalWidth`class)
t[`classType] = take(0, t.size())
update t set classType = 1 where class = "Iris-versicolor"
update t set classType = 2 where class = "Iris-virginica"

training = select sepalLength, sepalWidth, petalLength, petalWidth from t
labels = t.classType

model = multinomialNB(labels, training);

predict(model, training);
```
