Probabilistic coherence measures are functions assigning real numbers to sets of binary random variable under some joint probability distribution. The assigned numbers are supposed to capture how good the respective pieces of information fit together or mutually support each other.
This repo contains a simple MATLAB framework for the calculation of probabilistic measures of coherence and Bayesian confirmation.
The framework was first introduced in the following paper:
A penultimate version of the paper can be found here:
Let
-
Shogenji's deviation from independence measure including Schupbach's subset-sensitive generalization:
$$\frac{P\left(\bigwedge\limits_{i=1}^{n}x_i\right)}{\prod\limits_{i=1}^{n}P(x_i)} $$ -
Carnap's relevance measure including Koscholke's generalization:
$$P\left(\bigwedge\limits_{i=1}^{n}x_i\right) - \prod\limits_{i=1}^{n}P(x_i) $$ -
Glass' and Olsson's relative overlap measure including Meijs' generalization:
$$\frac{P\left(\bigwedge\limits_{i=1}^{n}x_i\right)}{P\left(\bigvee\limits_{i=1}^{n}x_i\right)}$$ -
Douven and Meijs average mutual support recipe, where
$X'$ and$X''$ are non-empty, non-overlapping subsets of$X$ and$m=(3^{n}-2^{n+1})-1$ and$S$ can be any Bayesian confirmation measure:$$m^{-1}\sum\limits_{i=1}^{m}{S}\left(\bigwedge\limits_{x_j\in X'}x_j ,\bigwedge\limits_{x_k\in X''}x_k\right)_i$$
The implemented measures of Bayesian confirmation are the following:
-
Keynes relevance quotient:
$$\frac{P(x_1|x_2)}{P(x_1)}$$ -
Carnap's difference measure:
$$P(x_1|x_2)-P(x_1)$$ -
Carnap's relevance measure:
$$P(x_1\land x_2)-P(x_1)\times P(x_2)$$ -
Kemeny and Oppenheim's factual support measure:
$$\frac{P(x_2|x_1)-P(x_2|\neg{x_1})}{P(x_2|x_1)+P(x_2|\neg{x_1})}$$ -
Popper's corroboration measure:
$$\frac{P(x_2|x_1)-P(x_2)}{P(x_2|x_1)+P(x_2)}\times\left[1+P(x_1)\times P(x_1|x_2)\right]$$ -
Rescher's measure:
$$\left[\frac{\min{{P(x_1|x_2),P(x_1)}}}{P(x_1)}-\frac{\min{{P(\neg{x_1}|x_2),P(\neg{x_1})}}}{P(\neg{x_1})}\right]\times P(x_1|x_2)$$ -
Gaifman's confirmation rate:
$$P(\neg{x_1})/P(\neg{x_1}|x_2)$$ -
Nozick's counterfactual difference measure:
$$P(x_2|x_1)-P(x_2|\neg{x_1})$$ -
Mortimer's inverted difference measure:
$$P(x_2|x_1)-P(x_2)$$ -
Christensen's measure:
$$P(x_1|x_2)-P(x_1|\neg{x_2})$$ -
Crupi et. al's Z-measure:
$$\frac{\min{{P(x_1|x_2),P(x_1)}}}{P(x_1)}-\frac{\min{{P(\neg{x_1}|x_2),P(\neg{x_1})}}}{P(\neg{x_1})}$$ -
Shogenji's measure of epistemic justification:
$$\frac{\log_2 P(x_1|x_2)-\log_2 P(x_1)}{-\log_2 P(x_1)}$$
The framework consists of 3 simple MATLAB functions:
coh(X,P)
sup(x,y,P)
ams(X,P)
Here, X
is a row vector of index integers, x
and y
are integers and P
is a row probability vector, i.e. each cell is non-negative and all cells sum up to exactly 1.
The framework strongly relies on what is known as stochastic truth tables. For 3 binary random variables
0 | 0 | 0 | |
0 | 0 | 1 | |
0 | 1 | 0 | |
0 | 1 | 1 | |
1 | 0 | 0 | |
1 | 0 | 1 | |
1 | 1 | 0 | |
1 | 1 | 1 |
Here, the joint probability distribution
P = [1/16,2/16,2/16,3/16,1/16,4/16,2/16,1/16]
To calculate the degree of coherence of the set
coh([1,2,3],P)
Or if one would like the average degree of mutual Bayesian confirmation for the set
ams([1,2,3],P)
And if one is interested in the degree of Bayesian confirmation the variable
sup(1,2,P)
The above functions also process multiple probability distributions at the same time. Simply let P
be a matrix where each row corresponds to a joint probability distribution
- https://link.springer.com/article/10.1007/s11229-015-0887-x
- https://link.springer.com/article/10.1007/s11229-015-0996-6
- https://link.springer.com/article/10.1007/s10670-016-9820-z
- https://link.springer.com/article/10.1007/s11098-017-0943-0
- https://www.journals.uchicago.edu/doi/abs/10.1093/bjps/axx003?journalCode=bjps
- https://academic.oup.com/mind/article-abstract/128/512/1261/5104963