测试已测试 | ✓ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最后发布 | 2016年11月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✓ |
由 akimach 维护。
Swift 中实现的朴素贝叶斯分类器
Swift3.x 中朴素贝叶斯分类器算法的实现,支持 高斯朴素贝叶斯、多项式朴素贝叶斯 和 伯努利朴素贝叶斯
SwiftNaiveBayes 与 Scikit learn 的接口相同。
import SwiftNaiveBayes
let nb = NaiveBayes()
// Positive tokens and the frequencies ["token A": Frequency of token A, ...]
let pos = ["computer": 3, "programming": 2, "python": 1, "swift": 2]
// Negative tokens ["token X": Frequency of token X, ...]
let neg = ["game": 2, "computer": 2, "video": 1, "programming": 1]
// Positive tokens for testing
let posTest = ["computer": 2, "ruby": 1, "swift": 1, "programming": 1]
// Train model
// ["Label A": ["token A": Frequency of token A, ...]]
nb.fit(["positive": pos, "negative": neg])
// Predicts log probabilities for each label
let logProbs = nb.predict(posTest)
print(logProbs) //=> ["positive": -8.9186205290602363, "negative": -10.227308671603783]
// Use method chaining
nb.fit(["positive": pos, "negative": neg]).predict(posTest)
// Save session
try! nb.save("nb.session")
// Restore session
let nb2 = NaiveBayes("nb.session")
Package.swift
:
import PackageDescription
let package = Package(
name: "MyApp",
targets: [],
dependencies: [
.Package(url: "https://github.com/akimach/SwiftNaiveBayes.git", majorVersion: 1),
]
)