使用sklearn训练语种识别模型

分析:

        训练语种识别模型使用的是sklearn的MultinomialNB方法,MultinomialNB是一种基于贝叶斯定理的分类算法,特别适用于处理具有离散特征的分类问题,如文本分类中的单词计数。它属于朴素贝叶斯算法的一种,主要应用于高维度的特征空间,常见于文档分类、垃圾邮件识别等领域‌。

        识别结果与模型的内容和大小有关,结果不一定准确,仅供参考。

代码:

import joblib
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.pipeline import make_pipeline
from sklearn.model_selection import train_test_split


texts = [
    'ケーブルタイプ', 'コネクタタイプ', 'シェルタイプ', '対応デバイス', '対応電話モデル', '材質',
    'Connector Type', 'Display Type', 'Finish Type', 'Outer material', 'Model name', 'Grip type'
]
langs = [
    'ja', 'ja', 'ja', 'ja', 'ja', 'ja',
    'en', 'en', 'en', 'en', 'en', 'en'
]

# 划分训练集、测试集
X_train, X_test, y_train, y_test = train_test_split(texts, langs, test_size=0.1, random_state=42)
model = make_pipeline(CountVectorizer(ngram_range=(1, 3), analyzer='char'), MultinomialNB())
model.fit(X_train, y_train)
accuracy = model.score(X_test, y_test)

# 保存模型
joblib.dump(model, 'model.joblib')
# 加载模型
load_model = joblib.load('model.joblib')

print(f"Model accuracy: {accuracy:.4f}")
print(load_model.predict(['Color', 'スタイル']))

运行结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值