Both sides previous revision
Previous revision
Next revision
|
Previous revision
Next revision
Both sides next revision
|
en:dydaktyka:problog:lab1 [2017/05/30 09:13] msl [Learning + Priors] |
en:dydaktyka:problog:lab1 [2017/06/04 12:13] msl [Probabilistic Programming -- Medical Cases] |
====== Probabilistic Programming --- Medical Cases ====== | ====== Probabilistic Programming — Medical Cases ====== |
| |
This class will cover use cases of the Bayesian methods in the medical domain. First part of the class is based on article: "Local computations with probabilities on graphical structures and their application to expert systems" by Lauritzen, Steffen L. and David J. Spiegelhalter. Second part is inspired by "An intercausal cancellation model for bayesian-network engineering. International Journal of Approximate Reasoning" by S.P. Woudenberg, L. C. van der Gaag, and C. M. Rademaker. | This class will cover use cases of the Bayesian methods in the medical domain. First part of the class is based on article: "Local computations with probabilities on graphical structures and their application to expert systems" by Lauritzen, Steffen L. and David J. Spiegelhalter. Second part is inspired by "An intercausal cancellation model for bayesian-network engineering. International Journal of Approximate Reasoning" by S.P. Woudenberg, L. C. van der Gaag, and C. M. Rademaker. |
* logical or in Problog: <code prolog>a_or_b :- a. | * logical or in Problog: <code prolog>a_or_b :- a. |
a_or_b :- b. </code> | a_or_b :- b. </code> |
* you can have lung cancer even if you are not smoker, so you should add include in model something similar to the line below. Analogically other diseases ;) <code prolog>0.01::smoker.</code> | * you can have lung cancer even if you are not a smoker, so don't forget to mention this fact in the model. There are two ways to do that: |
| * classical (Bayesian network):<code prolog>0.1::cancer :- smoker. |
| 0.01::cancer :- \+ smoker.</code> |
| * pros: it's a classical approach with clean Bayesian semantics |
| * cons: including new variables into the model can grow number of rules exponentially; also it may be required to modify already existing rules |
| * Problog 'additive way':<code prolog>0.1::cancer :- smoker. |
| 0.01::cancer.</code> |
| * pros: including new variable doesn't involve change of the old rules; you just add new rule per variable |
| * cons: the probabilities will be different than in the Bayesian network; so you can't just copy the Bayesian network structure ;) |
* x-ray can be positive even if you're healthy | * x-ray can be positive even if you're healthy |
| |
- write a corresponding Problog program: | - write a corresponding Problog program: |
* you may have to introduce additional variables for every kind of treatment to indicate if the treatment is inhibited, e.g. calcium effects in **something** that treats the osteoporosis | * you may have to introduce additional variables for every kind of treatment to indicate if the treatment is inhibited, e.g. calcium effects in **something** that treats the osteoporosis |
- what is the chance of successful treatment when we use both calcium and bisphosphonates | - what is the chance of successful treatment when we use both calcium and bisphosphonates? |