How to interpret a complex Matrix as a Probability Matrix?

AI Thread Summary
The discussion revolves around the challenges of applying the Maximum-Likelihood-Expectation-Maximization (MLEM) algorithm to a complex matrix system where some elements can be negative. The user is attempting to reconstruct an image from a complex matrix A and a complex vector b, but the MLEM algorithm typically requires a probability matrix with values between 0 and 1. They seek suggestions on how to adapt the algorithm for matrices with negative values, as the presence of negatives disrupts the algorithm's functionality. The conversation also touches on related iterative algorithms and the need for a clear problem statement to find a suitable solution. The user is looking for guidance on transforming their system to enable the MLEM algorithm to work effectively despite the negative elements.
MaximeMusterFrau
Messages
9
Reaction score
0
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 :)
 
Technology news on Phys.org
MaximeMusterFrau said:
I'have implemented a Maximum-Likelihood-Expectation-Maximization Algorithm in order to reconstruct a bild.

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?
 
Stephen Tashi said:
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?
Wow, I didn't get this one, although the nick is a strong hint.
 
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 http://www.regentsprep.org/regents/math/algtrig/ato6/absvlecomlesson.htm 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.
 
@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..
 
MaximeMusterFrau said:
I can only read the abstract of that paper.

the c matrix is complex
My problem is that the elements of the matrix in my case can be also negative .
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 ?
 
Stephen Tashi said:
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 ?

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!
 
MaximeMusterFrau said:
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 ?

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 ?
 
Stephen Tashi said:
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 ?

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
MaximeMusterFrau said:
I am dealing with a different image processing procedure.

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?

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.

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
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:
  • #13
Stephen Tashi said:
And I think this is the original AB-ML paper: http://faculty.uml.edu/cbyrne/byr98b.pdf

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 can't use the ABML ?
Do you know which iterative algorithm alike MLEM or ABML I can use if my matrix A doesn't fulfill the condition of positiveness ?
 
  • #14
MaximeMusterFrau said:
Do you know which iterative algorithm alike MLEM or ABML I can use if my matrix A doesn't fulfill the condition of positiveness ?

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
Stephen Tashi said:
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?

Yes it is..
 
  • #16
Do the remarks in Byrne's paper "2. From general kernels to non-negative ones" apply to your problem?
 
  • #17
Stephen Tashi said:
Do the remarks in Byrne's paper "2. From general kernels to non-negative ones" apply to your problem?
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 doesn't 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
Stephen Tashi said:
Do the remarks in Byrne's paper "2. From general kernels to non-negative ones" apply to your problem?

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,.
 

Attachments

  • MLEM.png
    MLEM.png
    12.4 KB · Views: 454
  • #19
MaximeMusterFrau said:
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]

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.
 
Back
Top