342 14 Bayesian Networks
- Machine learning. The PDs and CPDs are most commonly found by us-
ing statistical methods. There are a large number of such techniques. - Component-based techniques. A BN could be built from standard com-
ponents or modules. - Ontologies. Ontologies can be used as the basis for the graph structure of
the BN. - Design patterns. A BN development methodology has been introduced
in (Neil et al. 2000) that is based on design patterns. - Validating and revising. As with any development activity, one must
validate BNs. When testing uncovers a problem with a BN, it is necessary
to adjust its CPDs or its structure. Revising the structure of a BN can also
improve the design of a BN.
14.3.1 BN Requirements
Before embarking on any development project, it is important to have an
understanding of its purpose. We saw this already in section 12.1 for the
development of ontologies. The purpose of the BN should include the fol-
lowing:
- Whythe BN is being developed. One of the most common reasons for
building a BN is to support diagnostic inference. However, BNs can also
be used for combining information from different sources at different times.
Yet another reason why one might build a BN is to analyze a domain,
making independence assumptions more explicit. This allows these as-
sumptions to be tested. - Whatwill be covered by the BN. This is also called itsscope. A clear def-
inition of the scope will prevent the development effort from expanding
unnecessarily. - Whowill be using the BN. As with ontology development, this will affect
the amount of effort that should be devoted to the design of the BN.
Analyzing the requirements of a BN not only involves acquiring an un-
derstanding of the domain, it should also determine the required accuracy,
performance, and interfaces. BN development typically ignores these re-
quirements. Indeed, the notion of a BN interface is only now beginning to be