Select your font size 
 
about us products & services consulting & support news & events contact us
The Bayes.php class implements the Bayes theorem calculation. An important aspect of Bayesian inference involves examining the effect of

Implementing the calculation with Bayes.php - Alaska

print this article 
 

The Bayes.php class implements the Bayes theorem calculation. The getPosterior method is where most of the mathematically interesting code resides.

Listing 5. Implementing the calculation with the Bayes.php class
<?php

/**
* Bayes
*
* Calculates posterior probabilities for m hypotheses and n evidence 
* alternatives.  The code was inspired by a procedural TrueBasic version 
* (Bayes.tru) bundled with Grimstead and Snell's excellent online 
* textbook "Introduction to Probability".
*/
class Bayes {

  /**
  * Number of evidence alternatives (that is, number of rows).
  */
  var $m;

  /**
  * Number of hypothesis alternatives (that is, number of columns).
  */
  var $n;

  /**
  * Output labels for evidence alternatives.
  */
  var $row_labels = array();
  
  /**
  * Output labels for hypothesis alternatives.
  */  
  var $column_labels = array();

  /**
  * Vector container for prior probabilities.
  */
  var $priors = array();

  /**
  * Matrix container for likelihood of evidence e given hypothesis h.
  */
  var $likelihoods = array();

  /**
  * Matrix container for posterior probabilties.
  */
  var $posterior = array();

  /**
  * Vector container for evidence probabilties.
  */
  var $evidence = array();

  /**
  * Initialize the Bayes algorithm by setting the priors, likelihoods 
  * and dimensions of the likelihood and posterior matrices.
  */
  function Bayes($priors, $likelihoods) {
    $this->priors = $priors;
    $this->likelihoods = $likelihoods;
    $this->m = count($this->likelihoods);  // num rows
    $this->n = count($this->likelihoods[0]); // num cols
    return true;
  }
  
  /**
  * Output method for setting row labels prior to display.
  */
  function setRowLabels($row_labels) {
    $this->row_labels = $row_labels;
    return true;
  }

  /**
  * Output method for setting column labels prior to display.
  */
  function setColumnLabels($column_labels) {
    $this->column_labels = $column_labels;
    return true;
  }

  /**
  * Compute the posterior probability matrix given the priors and 
  * likelihoods.
  *
  * The first set of loops computes the denominator of the canonical 
  * Bayes equation. The probability appearing in the denominator 
  * serves a normalizing role in the computation - it ensures that 
  * posterior probabilities sum to 1.
  *
  * The second set of loops:
  *
  *   1. multiplies the prior[$h] by the likelihood[$h][$e]
  *   2. divides the result by the denominator
  *   3. assigns the result to the posterior[$e][$h] probability matrix
  */
  function getPosterior() {
    // Find probability of evidence e
    for($e=0; $e < $this->n; $e++) {
      for ($h=0; $h < $this->m; $h++) {
        $this->evidence[$e] += $this->priors[$h]
           * $this->likelihoods[$h][$e];
      }
    }
    // Find probability of hypothesis given evidence
    for($e=0; $e < $this->n; $e++) {
      for ($h=0; $h < $this->m; $h++) {
        $this->posterior[$e][$h] = $this->priors[$h
           * $this->likelihoods[$h][$e] / $this->evidence[$e];
      }
    }
    return true;
  }
  
  /**
  * Output method for displaying posterior probability matrix
  */
  function toHTML($number_format="%01.3f") {
    ?>

    <table border='1' cellpadding='5' cellspacing='0'>
      <tr>
        <td> </td>
        <?php
        for ($h=0; $h < $this->m; $h++) {
          ?>

          <td align='center'>

             <b><?php echo $this->column_labels[$h] ?></b>
          </td>
          <?php
        }
        ?>
      </tr>

      <?php
      for($e=0; $e < $this->n; $e++) {
        ?>

        <tr>
          <td><b><?php echo $this->row_labels[$e] ?></b></td>

          <?php
          for ($h=0; $h < $this->m; $h++) {
            ?>

            <td align='right'>
               <?php printf($number_format, $this->posterior[$e][$h]) ?>
            </td>

            <?php
          }
          ?>
        </tr>
        <?php
      }
      ?>

    </table>
    <?php
  }
}
?>

Sensitivity analysis

An important aspect of Bayesian inference involves examining the effect of small changes to your prior and likelihood distributions. If the prior probability values you are using are viewed as best guesses, then you might want to see what happens when you adjust the prior probabilities of each hypothesis slightly. You may notice that this significantly changes the posterior distribution values or it might have little effect. It is good to know how sensitive your results are to the exact prior values (or likelihood values) used.

The final screen of the Bayes diagnosis wizard gives you the options to

  • Start again
  • Re-enter labels
  • Re-enter your priors
  • Re-enter your likelihoods

If you decide to re-enter your priors, the wizard remembers your previously entered likelihoods. After you re-enter your priors, you can click forward to Step 5 without having to re-enter your likelihood values (or you can modify the likelihoods as well). In other words, the design of the Bayes wizard encourages you to engage in sensitivity analysis prior to drawing any final conclusions.



Page:   1  2  3  4  5  6  7  8  9  10  11 Next Page: It's only a beginning

The content shown in this page was first published by IBM developerWorks and is reprinted with permission from Paul Meagher (www.datavore.com)


Most Recent Website and Regional Updates

 Transparen Toronto Office Locations
Addresses of Transparen Corporation offices in Toronto, Ontario.

 
 High Scalability - Large Systems Optimization
Transparen Corporation lends its expertise to clients experiencing rapid and sudden growth in traffic or server utilization, bottlenecks, systems instability, downtime during peak traffic, or which would like to plan to avoid such issues.

 
 Throughput (or Bandwidth) vs. Latency
This document uses the example of Bill Gates purchasing Google to explain the difference between bandwidth (or throughput) and latency.

 
 Emergency Management Services
The prototypical emergency involves a shutdown of essential services for a finite period of time. What will your organization do when a world-wide financial crisis strikes?

 
 Fast RAID Server Data Recovery Service
Transparen's Vancouver International Response Team provides the option in Canada and USA to get a raid server back running in hours - eliminating costly waiting associated with typical RAID recoveries.

 
 Data Recovery Service
Have you deleted a mission critical file? Accidentally dropped a computer, or formatted a hard drive? No recent backup? Mistakes can happen, but the data might still be there.

 
 About Transparen
Transparen is committed to serving its clients.

 
 Short Term Forecast - Cape Fairweather to Cape Suckling Coastal Area (Alaska)
Short Term Forecast Issued At: 2009-01-07T14:45:00 Expired At: 2009-01-07T20:00:00 Issuing Weather Forecast Office Homepage: http://paya.arh.noaa.gov

 
 Special Weather Statement - Cape Fairweather to Cape Suckling Coastal Area (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Taiya Inlet, Klondike Highway (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Taiya Inlet, Klondike Highway (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Weather Advisory - Taiya Inlet, Klondike Highway (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-08T15:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Haines Borough, Lynn Canal (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Haines Borough, Lynn Canal (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Haines Borough, Lynn Canal (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-10T03:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Weather Advisory - Haines Borough, Lynn Canal (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-08T15:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Glacier Bay (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Glacier Bay (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Wind Advisory - Glacier Bay (Alaska)
URGENT - WEATHER MESSAGE Issued At: 2009-01-07T16:05:00 Expired At: 2009-01-08T06:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Glacier Bay (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-10T03:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Eastern Chichagof Island (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Eastern Chichagof Island (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Salisbury Sound to Cape Fairweather Coastal Area (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Salisbury Sound to Cape Fairweather Coastal Area (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Cape Decision to Salisbury Sound Coastal Area (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Cape Decision to Salisbury Sound Coastal Area (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Eastern Baranof Island, Southern Admiralty Island (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Eastern Baranof Island, Southern Admiralty Island (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Juneau Borough, Northern Admiralty Island (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Juneau Borough, Northern Admiralty Island (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Wind Advisory - Juneau Borough, Northern Admiralty Island (Alaska)
URGENT - WEATHER MESSAGE Issued At: 2009-01-07T16:05:00 Expired At: 2009-01-08T06:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Juneau Borough, Northern Admiralty Island (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-10T03:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Inner Channels from Kupreanof Island to Etolin Island (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:55:00 Expired At: 2009-01-07T22:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Special Weather Statement - Inner Channels from Kupreanof Island to Etolin Island (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Wind Advisory - Inner Channels from Kupreanof Island to Etolin Island (Alaska)
URGENT - WEATHER MESSAGE Issued At: 2009-01-07T16:05:00 Expired At: 2009-01-08T06:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Inner Channels from Kupreanof Island to Etolin Island (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-09T09:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Dixon Entrance to Cape Decision Coastal Area (Alaska)
Short Term Forecast Issued At: 2009-01-07T12:00:00 Expired At: 2009-01-07T18:00:00 Issuing Weather Forecast Office Homepage: http://pant.arh.noaa.gov

 
 Special Weather Statement - Dixon Entrance to Cape Decision Coastal Area (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Dixon Entrance to Cape Decision Coastal Area (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-09T09:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Southern Inner Channels (Alaska)
Short Term Forecast Issued At: 2009-01-07T12:00:00 Expired At: 2009-01-07T18:00:00 Issuing Weather Forecast Office Homepage: http://pant.arh.noaa.gov

 
 Special Weather Statement - Southern Inner Channels (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Southern Inner Channels (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-09T09:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Misty Fjords (Alaska)
Short Term Forecast Issued At: 2009-01-07T12:00:00 Expired At: 2009-01-07T18:00:00 Issuing Weather Forecast Office Homepage: http://pant.arh.noaa.gov

 
 Special Weather Statement - Misty Fjords (Alaska)
Special Weather Statement Issued At: 2009-01-07T00:29:00 Expired At: 2009-01-08T01:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Winter Storm Watch - Misty Fjords (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T14:17:00 Expired At: 2009-01-09T15:00:00 Issuing Weather Forecast Office Homepage: http://pajk.arh.noaa.gov

 
 Short Term Forecast - Northeast Prince William Sound (Alaska)
Short Term Forecast Issued At: 2009-01-07T13:45:00 Expired At: 2009-01-07T20:00:00 Issuing Weather Forecast Office Homepage: http://pavw.arh.noaa.gov

 
 Wind Chill Advisory - Northeast Prince William Sound (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T13:29:00 Expired At: 2009-01-09T21:00:00 Issuing Weather Forecast Office Homepage: http://pafc.arh.noaa.gov

 
 Wind Chill Advisory - Copper River Basin (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T13:29:00 Expired At: 2009-01-09T21:00:00 Issuing Weather Forecast Office Homepage: http://pafc.arh.noaa.gov

 
 Wind Chill Advisory - Susitna Valley (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T13:29:00 Expired At: 2009-01-09T21:00:00 Issuing Weather Forecast Office Homepage: http://pafc.arh.noaa.gov

 
 Short Term Forecast - Kuskokwim Delta (Alaska)
Short Term Forecast Issued At: 2009-01-07T13:21:00 Expired At: 2009-01-07T19:00:00 Issuing Weather Forecast Office Homepage: http://pabe.arh.noaa.gov

 
 Wind Chill Advisory - Kuskokwim Delta (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T13:14:00 Expired At: 2009-01-08T02:00:00 Issuing Weather Forecast Office Homepage: http://pafc.arh.noaa.gov

 
 Short Term Forecast - Pribilof Islands (Alaska)
Short Term Forecast Issued At: 2009-01-07T15:17:00 Expired At: 2009-01-07T21:00:00 Issuing Weather Forecast Office Homepage: http://pasn.arh.noaa.gov

 
 Short Term Forecast - Northern Arctic Coast (Alaska)
Short Term Forecast Issued At: 2009-01-07T13:48:00 Expired At: 2009-01-07T19:00:00 Issuing Weather Forecast Office Homepage: http://pabr.arh.noaa.gov

 
 Wind Chill Advisory - Lower Yukon Valley (Alaska)
URGENT - WINTER WEATHER MESSAGE Issued At: 2009-01-07T13:11:00 Expired At: 2009-01-08T03:00:00 Issuing Weather Forecast Office Homepage: http://pafg.arh.noaa.gov

 
 Dense Fog Advisory - Middle Tanana Valley (Alaska)
URGENT - WEATHER MESSAGE Issued At: 2009-01-07T12:01:00 Expired At: 2009-01-08T15:00:00 Issuing Weather Forecast Office Homepage: http://pafg.arh.noaa.gov

 
 Short Term Forecast - Middle Tanana Valley (Alaska)
Short Term Forecast Issued At: 2009-01-07T16:41:00 Expired At: 2009-01-07T21:00:00 Issuing Weather Forecast Office Homepage: http://pafg.arh.noaa.gov

 

Google
 
Web transparen.com

Contact Information

Related Information

 
   
 
E C M | © 2003-2007 Transparen Corp.      

Standardized Services: Data Recovery Service / Creative Services / Premium Web Hosting Services / System Administration Tech Support Services
Recent Projects: Full-Service Mortgage and Financing Company / System to manage flights from Vancouver to Tofino / Photo exchange verification service
Our Vancouver BC Server Proudly Hosts: automated parking and revenue control systems, leafside lane at southlands, cost effective alternative power sources, Higher Grade Learning Centres, pacific forage bag supply, sunburst medical, neosonic design, roger mahler photography - passionate, intriguing, desirable, the connection between east and west, affordable flights to victoria and tofino, low interest mortgage brokers in vancouver, richmond, surrey, toronto, Toronto Calgary and Vancouver IT staffing and talent search
* Adak * Akhiok * Akiak * Akutan * Alakanuk * Aleknagik * Allakaket * Ambler * Anaktuvuk Pass * Anchorage (municipality) * Anderson * Angoon * Aniak * Anvik * Atka * Atqasuk * Barrow * Bettles * Bethel * Brevig Mission * Buckland * Chefornak * Chevak * Chignik * Chuathbaluk * Clark's Point * Coffman Cove * Cold Bay * Cordova * Craig * Deering * Delta Junction * Dillingham * Diomede * Eagle * Eek * Egegik * Ekwok * Elim * Emmonak * Fairbanks * False Pass * Fort Yukon * Galena * Gambell * Golovin * Goodnews Bay * Grayling * Gustavus * Haines * Holy Cross * Homer * Hoonah * Hooper Bay * Houston * Hughes * Huslia * Hydaburg * Juneau (City and Borough) * Kachemak * Kake * Kaktovik * Kaltag * Kasaan * Kenai * Ketchikan * Kiana * King Cove * Kivalina * Klawock * Kobuk * Kodiak * Kotlik * Kotzebue * Koyuk * Koyukuk * Kupreanof * Kwethluk * Larsen Bay * Lower Kalskag * Manokotak * Marshall * McGrath * Mekoryuk * Mountain Village * Napakiak * Napaskiak * Nenana * New Stuyahok * Newhalen * Nightmute * Nikolai * Nome * Nondalton * Noorvik * North Pole * Nuiqsut * Nulato * Nunam Iqua (formerly Sheldon Point) * Nunapitchuk * Old Harbor * Ouzinkie * Palmer * Pelican * Petersburg * Pilot Point * Pilot Station * Platinum * Point Hope * Port Alexander * Port Heiden * Port Lions * Quinhagak * Ruby * Russian Mission * St. George * St. Mary's * St. Michael * St. Paul * Sand Point * Savoonga * Saxman * Scammon Bay * Selawik * Seldovia * Seward * Shageluk * Shaktoolik * Shishmaref * Shungnak * Sitka (City and Borough) * Skagway * Soldotna * Stebbins * Tanana * Teller * Tenakee Springs * Thorne Bay * Togiak * Toksook Bay * Unalakleet * Unalaska * Upper Kalskag * Valdez * Wainwright * Wales * Wasilla * White Mountain * Whittier * Wrangell * Yakutat (City and Borough)