# How to interpret a complex Matrix as a Probability Matrix?

Tags:
1. Nov 22, 2016

### MaximeMusterFrau

Hello everyone,

I'have implemented a Maximum-Likelihood-Expectation-Maximization Algorithm in order to reconstruct a bild.
let say, we have such a system Ax=b, where A is a complex matrix, b is a complex vector.

A and b are known and we will iterately try to find the best x (which should be real) that fits that system.

The problem is taht the MLEM Algorithm is conceived to work for an A matrix that have real values between 0..1 (a probability matrix.). In my case, the A matrix is complex.
Does anyone know if this makes any sens ? How can I interpret my complex Matrix as a probability matrix?

I appreciate every suggestion :)

2. Nov 23, 2016

### Stephen Tashi

I understand that "bild" means "image". But I'm not familiar with what likelihood function is involved in the MLEM algorithm when the algorithm is applied to image reconstruction. Can you give a link that explains the algorithm - and how complex numbers become involved?

3. Nov 23, 2016

### Staff: Mentor

Wow, I didn't get this one, although the nick is a strong hint.

4. Nov 23, 2016

### ohwilleke

I think that what you are going after is something analogous to the CKM matrix or PMNS matrix in which the real probability of a transition is equal to the square of the absolute magnitude of the complex matrix element. But, it is honestly a bit hard to tell what you are getting at.

It also isn't clear if "bild" in your post is simply a misspelled "build" or has a specific meaning with which I am not familiar.

5. Nov 24, 2016

### MaximeMusterFrau

@ohwilleke @Stephen Tashi : Thank you very much for your answer. with bild I meant image, I am sorry. It is about an image-reconstruction algorithm.

http://ieeexplore.ieee.org/document/925290/
here is a link to a paper explaining what I am trying to do. In my case however, the c matrix is complex (which is no problem, as my image has to be real so I can just separate the real elements from the imaginary ones in my c matrix and just double the number of the rows )

My problem is that the elements of the matrix in my case can be also negative . So I am lookinbg for a way to make this algorithm work even for negative elements of the probability matrix. Can you help ? I have exhausted every idea I have..

6. Nov 24, 2016

### Stephen Tashi

I can only read the abstract of that paper.

Is the "c matrix" the matrix mentioned in eq 2, eq. 3 of the PDF:
ftp://kumulus.uzleuven.be/pub/nuyts/publications/jn_ieeetns99.pdf ?

7. Nov 24, 2016

### MaximeMusterFrau

This equation is a modiefied version of the one I am working on.
the C matrix is the one you find here :
https://arxiv.org/ftp/arxiv/papers/1504/1504.06889.pdf

it is the :probability of detecting an emission from the pixel j in projection’s bin i.
So my question is, what to do if some elements of C are negative ?
Thank you for your help!

8. Nov 24, 2016

### Stephen Tashi

I don't understand how an element of C (a probability) can be negative. Are you dealing with a different problem than the one described in https://arxiv.org/ftp/arxiv/papers/1504/1504.06889.pdf ?

9. Nov 25, 2016

### MaximeMusterFrau

I am dealing with a different image processing procedure. The matrix is measured and obtained from a FFT Transformation. And I am trying to find a way to transform the system (A x = b ) so that the the MLEM works.
In this case it doesn t work because the second derivative of the likelihood function is not always < 0 since the elements of A are not always positive.

So I was wondering if I could transform the system so it works ?

10. Nov 25, 2016

### Stephen Tashi

Before we consider procedure, we need to have the statement of the problem. What is the problem you are solving ? MLEM is often used to reconstruct 3-D anatomy from data collected by scanners. Is that what you are doing?

Where does probability come into play in the equation Ax = b. ?

"A" = matrix of complex numbers. Are these variables? - Is "A" the image ?
"x" = given data? - or is it variable?
"b" = given data ?

Are you trying to find the matrix "A" that makes "Ax" equal to "b" ?

11. Nov 25, 2016

### MaximeMusterFrau

the MLEM is supposed to work for Ax = b, where :
A: the probability matrix (it is given)
x: the image (which we are trying to figure out, real values)
b : given data (mesaered data)
In my case I have a system where A is not really a probability matrix, because it has negative values (they are measured so I can£t change them).
I wanted to adjust the MLEM Algorithm so that I can apply it in my case to find the image x.
Today I found AB-ML, which should consider the negative values, I implemented it in python but for some reason I can£t get the right result.
a link to the AB-ML : https://lirias.kuleuven.be/bitstream/123456789/485626/1/NEGML_TMI2014.pdf

Last edited: Nov 25, 2016
12. Nov 25, 2016

### Stephen Tashi

13. Nov 25, 2016

### MaximeMusterFrau

humm.. but I am a bit confused now.. because in the abstract it is cited that the elements of the system matrix also have to be positive. In the paper Pij>=0, which is equivalent to Aij >= 0 in the system : Ax = b .

In my case Xj >=0 but Aij can be positive as well as negative ..

Does this mean that I also cant use the ABML ?
Do you know which iterative algorithm alike MLEM or ABML I can use if my matrix A doesnt fulfill the condition of positiveness ?

14. Nov 25, 2016

### Stephen Tashi

I still have not heard a clear statement of the problem you are solving. You have only stated "Ax = b".
How does "Ax = b" relate to the paper by Byrne? Is "A" the same as "H" in that paper?

15. Nov 25, 2016

### MaximeMusterFrau

Yes it is..

16. Nov 25, 2016

### Stephen Tashi

Do the remarks in Byrne's paper "2. From general kernels to non-negative ones" apply to your problem?

17. Nov 25, 2016

### MaximeMusterFrau

okey, a more accurate situation:

we have
A =
[[ 5. 2. 3. ]
[ 0.4 0.1 5. ]
[ 5. 0.4 0.2]
[ 0.3 0.2 10. ]
[ 1. 0.3 2. ]
[ 0.3 0.7 0.4]]

b =
[[ 2. ]
[ 0.1]
[ 0.4]
[ 0.2]
[ 0.3]
[ 0.7]]

and we are looking for x that satisfies Ax =b .
In this situation the MLEM works very good and the x is found : [0 1 0]

now suppose we have an A, that is equal to :
A =
[[ 5. -2. 3. ]
[ 0.4 0.1 5. ]
[ 5. 0.4 0.2]
[ 0.3 0.2 10. ]
[ 1. 0.3 2. ]
[ 0.3 0.7 0.4]]
so we just took -2 instead of 2 .
b =
[-2. ]
[ 0.1]
[ 0.4]
[ 0.2]
[ 0.3]
[ 0.7]]

although there is a solution , which is [0 1 0], The MLEM doesnt work anymore and we are not able to find the x (because of the negative element -2 in A).

So my question is: if A has negativ elements, how can I transform the situation to find the x like in a MLEM Algorithm ?
I hope it is clear now :)
THANK YOU

18. Nov 25, 2016

### MaximeMusterFrau

The MLEM is to be seen in the picture uploaded, where aij are the elements of the matrix A and y is to be considered b in our case,.

#### Attached Files:

• ###### MLEM.png
File size:
26.4 KB
Views:
42
19. Nov 25, 2016

### Stephen Tashi

The example still leaves the general problem unclear. Is your general problem to solve an "overdetermined" system of equations? - or to solve a system of equations that has a unique solution?

You example has 6 equations and 3 unknowns. But you've chosen numbers so the system has an exact solution.

If you are solving a system of equations that has a unique solution, you can transform the equations by doing "row operations" without altering the solution. For example: multiply row 6 by 10 and add it to row 1:
So $(5. -2. 3.)$ is changed to $(5. +(10)(.3) ,\ -2. +(10)(. 7),\ 3. + (10)(.4) ) = (8., 5., 7.)$

If you are solving a system of "overdetermined" equations, then a solution is defined as a value x that minimizes a certain measure of "error" between Ax and b. What measure of error are you using? Is it $|| Ax - b||^2$ ? - i.e. x the "least square error" solution ? The measure of error must be considered because a row operation might not preserve the solution.

Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted