Implement Bayesian inference using PHP, Part 1
- Download the source code used in this article. Find updates to the code at phpmath.com.
- Read "SMART HEURISTICS"
by Gerd Gigerenzer. This study of fast and frugal decision-making looks
at smart heuristics people actually use to make good decisions.
- Look at the paper "Teaching Bayesian Reasoning in Less Than Two Hours." Authors Gerd Gigerenzer and Peter Sedlmeier present and test a new method of teaching Bayesian reasoning.
- Discover one of the oldest (but still powerful) computer science references, "An Essay towards solving a Problem in the Doctrine of Chances" by Thomas Bayes (1763) as it covers the Bayes's Theorem.
- Explore the development of a new concept for aggregating items of evidence in classification problems in "Multiplicative Adjustment of Class Probability: Educating Naive Bayes."
- Read "A Decomposition
Of Classes Via Clustering To Explain And Improve Naive Bayes"
for a method to improve the probability estimates made by Naive Bayes
and avoid the effects of poor class conditional probabilities based on
product distributions when each class spreads into multiple regions.
- In "An analysis of data characteristics that affect naive Bayes performance," identify some data characteristics for which naive Bayes works well.
- Take the "Web site user modeling with PHP" tutorial and learn how to construct a user-modeling platform that can use clickstream data to build Web site user models (developerWorks, December 2003).
- Explore "An autonomic computing roadmap"
for more about the Agent Building and Learning Environment (ABLE) that
provides Learning Beans that implement Bayesian reasoning (developerWorks, February 2004).
- Halt spam with these two Bayesian-based techniques in "Spam filtering techniques".
- In "Apply probability models to Web data using PHP," discover how to fit the benefits of probability modeling into Web application development (developerWorks, October 2003).
- Get good ideas on how to apply Bayesian inference to database technology in these data mining publications by Rakesh Agrawal, an IBM Fellow recently recognized as an ACM Fellow for his pioneering research in data mining.
- Explore the Hugin Expert site for such Bayesian networking software tools as BayesCredit, a tool for risk protection.
- See what Norsys offers with Netica, a Bayesian network development software that helps manage uncertainty.
- Visit Bayesia for products that facilitate knowledge modeling and data mining, and
can help developers add the power of a Bayesian decision engine to
- Get a good start on topics in probability with the textbook Introduction to Probability by Charles Grimstead and J. Laurie Snell (American Mathematical Society, 2nd Ed., available in PDF).
- For excellent coverage of more advanced Bayesian reasoning techniques, read Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig (Prentice Hall, 2003).
- If you're interested in applying Bayesian inference to data mining problems, Data Mining: Concepts and Techniques by Jiawei Han and Micheline Kamber is a good starting point (Morgan Kaufmann Publishers, 2000).
- Learn the conceptual basis of programming in this well-know text, Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman, and Julie Sussman (MIT Press, 2nd. Ed., 1996).
- Check out Statistical Methods, Experimental Design, and Scientific Inference, a single volume that brings together the classical works of R.A. Fisher: Statistical Methods for Research Workers, Statistical Methods and Scientific Inference (mentioned in this article), and The Design of Experiments (Oxford University Press, 1990).
- Browse the developerWorks bookstore for titles on this and other related subjects.
- Visit developerWorks Web Architecture zone for a range of articles on the topic of Web architecture and usability.
First published by IBM developerWorks