Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture 29 of 42 Wednesday, 01 November.

Slides:



Advertisements
Similar presentations
CS188: Computational Models of Human Behavior
Advertisements

CS498-EA Reasoning in AI Lecture #15 Instructor: Eyal Amir Fall Semester 2011.
1 Chapter 5 Belief Updating in Bayesian Networks Bayesian Networks and Decision Graphs Finn V. Jensen Qunyuan Zhang Division. of Statistical Genomics,
Lauritzen-Spiegelhalter Algorithm
Exact Inference in Bayes Nets
IMPORTANCE SAMPLING ALGORITHM FOR BAYESIAN NETWORKS
Introduction of Probabilistic Reasoning and Bayesian Networks
Belief Propagation by Jakob Metzler. Outline Motivation Pearl’s BP Algorithm Turbo Codes Generalized Belief Propagation Free Energies.
Overview of Inference Algorithms for Bayesian Networks Wei Sun, PhD Assistant Research Professor SEOR Dept. & C4I Center George Mason University, 2009.
GS 540 week 6. HMM basics Given a sequence, and state parameters: – Each possible path through the states has a certain probability of emitting the sequence.
Bayesian Networks A causal probabilistic network, or Bayesian network,
Bayes Nets Rong Jin. Hidden Markov Model  Inferring from observations (o i ) to hidden variables (q i )  This is a general framework for representing.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Introduction to Graphical Models.
5/25/2005EE562 EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 16, 6/1/2005 University of Washington, Department of Electrical Engineering Spring 2005.
Kansas State University Department of Computing and Information Sciences CIS 830: Advanced Topics in Artificial Intelligence Monday, March 6, 2000 William.
1er. Escuela Red ProTIC - Tandil, de Abril, Bayesian Learning 5.1 Introduction –Bayesian learning algorithms calculate explicit probabilities.
Introduction to Bayesian Learning Ata Kaban School of Computer Science University of Birmingham.
Bayesian Networks Alan Ritter.
1 Bayesian Networks Chapter ; 14.4 CS 63 Adapted from slides by Tim Finin and Marie desJardins. Some material borrowed from Lise Getoor.
Machine Learning CUNY Graduate Center Lecture 21: Graphical Models.
Kansas State University Department of Computing and Information Sciences Kansas State University KDD Lab ( Graphical.
Computing & Information Sciences Kansas State University Lecture 28 of 42 CIS 530 / 730 Artificial Intelligence Lecture 28 of 42 William H. Hsu Department.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 26 of 41 Friday, 22 October.
Computing & Information Sciences Kansas State University Friday, 21 Nov 2008CIS 530 / 730: Artificial Intelligence Lecture 35 of 42 Friday, 21 November.
Computing & Information Sciences Kansas State University Lecture 27 of 42 CIS 530 / 730 Artificial Intelligence Lecture 27 of 42 William H. Hsu Department.
Undirected Models: Markov Networks David Page, Fall 2009 CS 731: Advanced Methods in Artificial Intelligence, with Biomedical Applications.
Kansas State University Department of Computing and Information Sciences Kansas State University KDD Lab ( Permutation.
Computing & Information Sciences Kansas State University Lecture 30 of 42 CIS 530 / 730 Artificial Intelligence Lecture 30 of 42 William H. Hsu Department.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 25 Wednesday, 20 October.
Bayesian Statistics and Belief Networks. Overview Book: Ch 13,14 Refresher on Probability Bayesian classifiers Belief Networks / Bayesian Networks.
Computing & Information Sciences Kansas State University Monday, 29 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 25 of 42 Wednesday, 29 October.
Computing & Information Sciences Kansas State University Wednesday, 22 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 22 of 42 Wednesday, 22 October.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 28 of 41 Friday, 22 October.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Friday, 29 October 2004 William.
Kansas State University Department of Computing and Information Sciences CIS 830: Advanced Topics in Artificial Intelligence Friday, March 10, 2000 William.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 25 of 41 Monday, 25 October.
Computing & Information Sciences Kansas State University Wednesday, 25 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 26 of 42 Wednesday. 25 October.
Ch 8. Graphical Models Pattern Recognition and Machine Learning, C. M. Bishop, Revised by M.-O. Heo Summarized by J.W. Nam Biointelligence Laboratory,
Computing & Information Sciences Kansas State University Data Sciences Summer Institute Multimodal Information Access and Synthesis Learning and Reasoning.
Computing & Information Sciences Kansas State University Monday, 06 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture 31 of 42 Monday, 06 November.
Chapter 6 Bayesian Learning
Slides for “Data Mining” by I. H. Witten and E. Frank.
INTRODUCTION TO MACHINE LEARNING 3RD EDITION ETHEM ALPAYDIN © The MIT Press, Lecture.
CPSC 422, Lecture 11Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 11 Oct, 2, 2015.
Kansas State University Department of Computing and Information Sciences CIS 732: Machine Learning and Pattern Recognition Wednesday, 21 February 2007.
Exact Inference in Bayes Nets. Notation U: set of nodes in a graph X i : random variable associated with node i π i : parents of node i Joint probability:
Computing & Information Sciences Kansas State University Friday, 27 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 27 of 42 Friday, 27 October.
1 CMSC 671 Fall 2001 Class #20 – Thursday, November 8.
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Graphical Models of Probability.
Computing & Information Sciences Kansas State University Wednesday, 08 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture 32 of 42 Wednesday, 08 November.
1 Machine Learning: Lecture 6 Bayesian Learning (Based on Chapter 6 of Mitchell T.., Machine Learning, 1997)
Kansas State University Department of Computing and Information Sciences CIS 730: Introduction to Artificial Intelligence Lecture 24 of 41 Monday, 18 October.
Bayesian Learning Bayes Theorem MAP, ML hypotheses MAP learners
Computing & Information Sciences Kansas State University Wednesday, 08 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture 32 of 42 Wednesday, 08 November.
Kansas State University Department of Computing and Information Sciences CIS 732: Machine Learning and Pattern Recognition Wednesday, 28 February 2007.
Kansas State University Department of Computing and Information Sciences CIS 830: Advanced Topics in Artificial Intelligence Wednesday, March 8, 2000 Jincheng.
Computing & Information Sciences Kansas State University Wednesday, 04 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 17 of 42 Wednesday, 04 October.
Computing & Information Sciences Kansas State University Friday, 03 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture 30 of 42 Friday, 03 November.
Kansas State University Department of Computing and Information Sciences CIS 732: Machine Learning and Pattern Recognition Monday, 01 February 2016 William.
Computing & Information Sciences Kansas State University Wednesday, 25 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 26 of 42 Wednesday. 25 October.
Computing & Information Sciences Kansas State University Friday, 31 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 26 of 42 Friday, 31 October.
INTRODUCTION TO Machine Learning 2nd Edition
Data Mining Lecture 11.
CSCI 5822 Probabilistic Models of Human and Machine Learning
Class #16 – Tuesday, October 26
Readings: K&F: 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7 Markov networks, Factor graphs, and an unified view Start approximate inference If we are lucky… Graphical.
Machine Learning: Lecture 6
Machine Learning: UNIT-3 CHAPTER-1
Markov Networks.
Chapter 14 February 26, 2004.
Presentation transcript:

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture 29 of 42 Wednesday, 01 November 2006 William H. Hsu Department of Computing and Information Sciences, KSU KSOL course page: Course web site: Instructor home page: Reading for Next Class: Sections 14.3 – 14.5, Russell & Norvig 2 nd edition Graphical Models of Probability 2 Discussion: Distributions, KA & Learning

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Lecture Outline Today and Friday’s Reading: Sections 14.3 – 14.5, R&N 2e Next Week’s Reading: Sections 14.6 – 14.8, Chapter 15 Today: Graphical models  Bayesian networks and causality  Inference and learning  BNJ interface (  Causality

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Bayes’s Theorem: Review Theorem P(h)  Prior Probability of Assertion (Hypothesis) h  Measures initial beliefs (BK) before any information is obtained (hence prior) P(D)  Prior Probability of Data (Observations) D  Measures probability of obtaining sample D (i.e., expresses D) P(h | D)  Probability of h Given D  | denotes conditioning - hence P(h | D) is a conditional (aka posterior) probability P(D | h)  Probability of D Given h  Measures probability of observing D given that h is correct (“generative” model) P(h  D)  Joint Probability of h and D  Measures probability of observing D and of h being correct

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Choosing Hypotheses Bayes’s Theorem MAP Hypothesis  Generally want most probable hypothesis given the training data  Define:  the value of x in the sample space  with the highest f(x)  Maximum a posteriori hypothesis, h MAP ML Hypothesis  Assume that p(h i ) = p(h j ) for all pairs i, j (uniform priors, i.e., P H ~ Uniform)  Can further simplify and choose the maximum likelihood hypothesis, h ML

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Graphical Models of Probability P(20s, Female, Low, Non-Smoker, No-Cancer, Negative, Negative) = P(T) · P(F) · P(L | T) · P(N | T, F) · P(N | L, N) · P(N | N) · P(N | N) Conditional Independence  X is conditionally independent (CI) from Y given Z iff P(X | Y, Z) = P(X | Z) for all values of X, Y, and Z  Example: P(Thunder | Rain, Lightning) = P(Thunder | Lightning)  T  R | L Bayesian (Belief) Network  Acyclic directed graph model B = (V, E,  ) representing CI assertions over   Vertices (nodes) V: denote events (each a random variable)  Edges (arcs, links) E: denote conditional dependencies Markov Condition for BBNs (Chain Rule): Example BBN X1X1 X3X3 X4X4 X5X5 Age Exposure-To-Toxins Smoking Cancer X6X6 Serum Calcium X2X2 Gender X7X7 Lung Tumor

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Semantics of Bayesian Networks Adapted from slides by S. Russell, UC Berkeley

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Markov Blanket Adapted from slides by S. Russell, UC Berkeley

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Constructing Bayesian Networks: The Chain Rule of Inference Adapted from slides by S. Russell, UC Berkeley

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Example: Evidential Reasoning for Car Diagnosis Adapted from slides by S. Russell, UC Berkeley

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence BNJ Visualization [2] Pseudo-Code Annotation (Code Page) © 2004 KSU BNJ Development Team ALARM Network

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence BNJ Visualization [3] Network © 2004 KSU BNJ Development Team Poker Network

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Graphical Models Overview [1]: Bayesian Networks P(20s, Female, Low, Non-Smoker, No-Cancer, Negative, Negative) = P(T) · P(F) · P(L | T) · P(N | T, F) · P(N | L, N) · P(N | N) · P(N | N) Conditional Independence  X is conditionally independent (CI) from Y given Z (sometimes written X  Y | Z) iff P(X | Y, Z) = P(X | Z) for all values of X, Y, and Z  Example: P(Thunder | Rain, Lightning) = P(Thunder | Lightning)  T  R | L Bayesian (Belief) Network  Acyclic directed graph model B = (V, E,  ) representing CI assertions over   Vertices (nodes) V: denote events (each a random variable)  Edges (arcs, links) E: denote conditional dependencies Markov Condition for BBNs (Chain Rule): Example BBN X1X1 X3X3 X4X4 X5X5 Age Exposure-To-Toxins Smoking Cancer X6X6 Serum Calcium X2X2 Gender X7X7 Lung Tumor

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Graphical Models Overview [2]: Markov Blankets and d-Separation Property Z XEY (1) (2) (3) Z Z From S. Russell & P. Norvig (1995) Adapted from J. Schlabach (1996) Motivation: The conditional independence status of nodes within a BBN might change as the availability of evidence E changes. Direction-dependent separation (d- separation) is a technique used to determine conditional independence of nodes as evidence changes. Definition: A set of evidence nodes E d-separates two sets of nodes X and Y if every undirected path from a node in X to a node in Y is blocked given E. A path is blocked if one of three conditions holds:

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Graphical Models Overview [3]: Inference Problem Adapted from slides by S. Russell, UC Berkeley Multiply-connected case: exact, approximate inference are #P-complete

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Other Topics in Graphical Models [1]: Temporal Probabilistic Reasoning Goal: Estimate Filtering: r = t  Intuition: infer current state from observations  Applications: signal identification  Variation: Viterbi algorithm Prediction: r < t  Intuition: infer future state  Applications: prognostics Smoothing: r > t  Intuition: infer past hidden state  Applications: signal enhancement CF Tasks  Plan recognition by smoothing  Prediction cf. WebCANVAS – Cadez et al. (2000) Adapted from Murphy (2001), Guo (2002)

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence General-Case BBN Structure Learning: Use Inference to Compute Scores Optimal Strategy: Bayesian Model Averaging  Assumption: models h  H are mutually exclusive and exhaustive  Combine predictions of models in proportion to marginal likelihood Compute conditional probability of hypothesis h given observed data D i.e., compute expectation over unknown h for unseen cases Let h  structure, parameters   CPTs Posterior ScoreMarginal Likelihood Prior over StructuresLikelihood Prior over Parameters Other Topics in Graphical Models [2]: Learning Structure from Data

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Propagation Algorithm in Singly-Connected Bayesian Networks – Pearl (1983) C1C1 C2C2 C3C3 C4C4 C5C5 C6C6 Upward (child-to- parent) messages  ’ (C i ’ ) modified during message-passing phase Downward  messages P ’ (C i ’ ) is computed during  message-passing phase Adapted from Neapolitan (1990), Guo (2000) Multiply-connected case: exact, approximate inference are #P-complete (counting problem is #P-complete iff decision problem is NP-complete)

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Inference by Clustering [1]: Graph Operations (Moralization, Triangulation, Maximal Cliques) Adapted from Neapolitan (1990), Guo (2000) A D BE G C H F Bayesian Network (Acyclic Digraph) A D BE G C H F Moralize A1A1 D8D8 B2B2 E3E3 G5G5 C4C4 H7H7 F6F6 Triangulate Clq6 D8D8 C4C4 G5G5 H7H7 C4C4 Clq5 G5G5 F6F6 E3E3 Clq4 G5G5 E3E3 C4C4 Clq3 A1A1 B2B2 Clq1 E3E3 C4C4 B2B2 Clq2 Find Maximal Cliques

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Inference by Clustering [2]: Junction Tree – Lauritzen & Spiegelhalter (1988) Input: list of cliques of triangulated, moralized graph G u Output: Tree of cliques Separators nodes S i, Residual nodes R i and potential probability  (Clq i ) for all cliques Algorithm: 1. S i = Clq i  (Clq 1  Clq 2  …  Clq i-1 ) 2. R i = Clq i - S i 3. If i >1 then identify a j < i such that Clq j is a parent of Clq i 4. Assign each node v to a unique clique Clq i that v  c(v)  Clq i 5. Compute  (Clq i ) =  f(v) Clqi = P(v | c(v)) {1 if no v is assigned to Clq i } 6. Store Clq i, R i, S i, and  (Clq i ) at each vertex in the tree of cliques Adapted from Neapolitan (1990), Guo (2000)

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Inference by Clustering [3]: Clique-Tree Operations Clq6 D8D8 C4C4G5G5 H7H7 C4C4 Clq5 G5G5 F6F6 E3E3 Clq4 G5G5 E3E3 C4C4 Clq3 A1A1 B2B2 Clq1 E3E3 C4C4 B2B2 Clq2  (Clq5) = P(H|C,G)  (Clq2) = P(D|C) Clq 1 Clq3 = {E,C,G} R3 = {G} S3 = { E,C } Clq1 = {A, B} R1 = {A, B} S1 = {} Clq2 = {B,E,C} R2 = {C,E} S2 = { B } Clq4 = {E, G, F} R4 = {F} S4 = { E,G } Clq5 = {C, G,H} R5 = {H} S5 = { C,G } Clq6 = {C, D} R5 = {D} S5 = { C}  (Clq 1 ) = P(B|A)P(A)  (Clq2) = P(C|B,E)  (Clq3) = 1  (Clq4) = P(E|F)P(G|F)P(F) AB BEC ECG EGF CGH CD B EC CGEG C R i : residual nodes S i : separator nodes  (Clq i ): potential probability of Clique i Clq 2 Clq 3 Clq 4 Clq 5 Clq 6 Adapted from Neapolitan (1990), Guo (2000)

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Inference by Loop Cutset Conditioning Split vertex in undirected cycle; condition upon each of its state values Number of network instantiations: Product of arity of nodes in minimal loop cutset Posterior: marginal conditioned upon cutset variable values X3X3 X4X4 X5X5 Exposure-To- Toxins Smoking Cancer X6X6 Serum Calcium X2X2 Gender X7X7 Lung Tumor X 1,1 Age = [0, 10) X 1,2 Age = [10, 20) X 1,10 Age = [100,  ) Deciding Optimal Cutset: NP-hard Current Open Problems  Bounded cutset conditioning: ordering heuristics  Finding randomized algorithms for loop cutset optimization

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Inference by Variable Elimination [1]: Intuition Adapted from slides by S. Russell, UC Berkeley

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Inference by Variable Elimination [2]: Factoring Operations Adapted from slides by S. Russell, UC Berkeley

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence [2] Representation Evaluator for Learning Problems Genetic Wrapper for Change of Representation and Inductive Bias Control D: Training Data : Inference Specification D train (Inductive Learning) D val (Inference) [1] Genetic Algorithm α Candidate Representation f(α) Representation Fitness Optimized Representation Genetic Algorithms for Parameter Tuning in Bayesian Network Structure Learning

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Tools for Building Graphical Models Commercial Tools: Ergo, Netica, TETRAD, Hugin Bayes Net Toolbox (BNT) – Murphy (1997-present)  Distribution page  Development group Bayesian Network tools in Java (BNJ) – Hsu et al. (1999-present)  Distribution page  Development group  Current (re)implementation projects for KSU KDD Lab Continuous state: Minka (2002) – Hsu, Guo, Li Formats: XML BNIF (MSBN), Netica – Barber, Guo Space-efficient DBN inference – Meyer Bounded cutset conditioning – Chandak

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence References: Graphical Models and Inference Algorithms Graphical Models  Bayesian (Belief) Networks tutorial – Murphy (2001)  Learning Bayesian Networks – Heckerman (1996, 1999) Inference Algorithms  Junction Tree (Join Tree, L-S, Hugin): Lauritzen & Spiegelhalter (1988)  (Bounded) Loop Cutset Conditioning: Horvitz & Cooper (1989)  Variable Elimination (Bucket Elimination, ElimBel): Dechter (1986)  Recommended Books Neapolitan (1990) – out of print; see Pearl (1988), Jensen (2001) Castillo, Gutierrez, Hadi (1997) Cowell, Dawid, Lauritzen, Spiegelhalter (1999)  Stochastic Approximation

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Terminology Introduction to Reasoning under Uncertainty  Probability foundations  Definitions: subjectivist, frequentist, logicist  (3) Kolmogorov axioms Bayes’s Theorem  Prior probability of an event  Joint probability of an event  Conditional (posterior) probability of an event Maximum A Posteriori (MAP) and Maximum Likelihood (ML) Hypotheses  MAP hypothesis: highest conditional probability given observations (data)  ML: highest likelihood of generating the observed data  ML estimation (MLE): estimating parameters to find ML hypothesis Bayesian Inference: Computing Conditional Probabilities (CPs) in A Model Bayesian Learning: Searching Model (Hypothesis) Space using CPs

Computing & Information Sciences Kansas State University Wednesday, 01 Nov 2006CIS 490 / 730: Artificial Intelligence Summary Points Introduction to Probabilistic Reasoning  Framework: using probabilistic criteria to search H  Probability foundations  Definitions: subjectivist, objectivist; Bayesian, frequentist, logicist  Kolmogorov axioms Bayes’s Theorem  Definition of conditional (posterior) probability  Product rule Maximum A Posteriori (MAP) and Maximum Likelihood (ML) Hypotheses  Bayes’s Rule and MAP  Uniform priors: allow use of MLE to generate MAP hypotheses  Relation to version spaces, candidate elimination Next Week: Chapter 14, Russell and Norvig  Later: Bayesian learning: MDL, BOC, Gibbs, Simple (Naïve) Bayes  Categorizing text and documents, other applications