基本信息
源码名称:贝叶斯基本分类
源码大小:0.11M
文件格式:.zip
开发语言:C#
更新时间:2017-03-24
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 3 元×
微信扫码支付:3 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
基本的贝叶斯分类方法
/* ==================================================================== * Copyright (c) 2006 Erich Guenther (erich_guenther@hotmail.com) * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. This code must not be used in commercial products * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. */ using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace BayesClassifierDemo { public partial class Form1 : Form { BayesClassifier.Classifier m_Classifier = new BayesClassifier.Classifier(); public Form1() { InitializeComponent(); } private void buttonTest_Click(object sender, EventArgs e) { string file = @"..\..\Test.txt"; // Cat1 is a match with the file itself m_Classifier.TeachCategory("Cat1", new System.IO.StreamReader(file)); // Cat2 is a match with totally different Data m_Classifier.TeachPhrases("Cat2", new string[] { "Hi", "Ho Ho" }); // Cat3 is again a perfect match and should give the same results as cat1 m_Classifier.TeachCategory("Cat3", new System.IO.StreamReader(file)); // Cat4 is a match with double the original data m_Classifier.TeachCategory("Cat4", new System.IO.StreamReader(file)); m_Classifier.TeachCategory("Cat4", new System.IO.StreamReader(file)); // Cat5 does not match (but trained with less Data then Cat2 m_Classifier.TeachPhrases("Cat5", new string[] { "B" }); this.listBox1.Items.Clear(); Dictionary<string, double> score = m_Classifier.Classify(new System.IO.StreamReader(file)); foreach (string c in score.Keys) { this.listBox1.Items.Add(c ":" score[c].ToString()); } } } }