-
Notifications
You must be signed in to change notification settings - Fork 21.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feature request] conjugate transpose operator #45063
Comments
We can (and should) add a hermitian operator; but I'm pretty unconvinced that we should silently assume the user meant H when they say T, in contravention of mathematics. |
cc @boeddeker |
I think most people know numpy. When reading the literature, many people say "conjugate transpose" (e.g. [1]), so implementing the A hermitian operator could help to reduce the overhead to zero for complex gradients, when they are used for real data. |
Tensorflow allows conjugation in |
transpose
doing conjugation for complex input by default
I agree with @boeddeker here. I think we should follow the numpy semantics and only perform conjugate transpose when user calls As Ed pointed out, I think tensorflow's behavior to return conjugate transpose for |
For conjugate transpose, I suggest introducing the method Adjoint is specific to square matrices. |
My favorite is
|
In Julia, the conjugate transposition operation is called adjoint and it's not specific to square matrices. |
If |
Exactly, I would not expect |
I think support would be ok, but not by default. |
|
From a general perspective, While |
I like |
This is also the rationale for why numpy never added I'd go with |
Hermitian could be confusing in my opinion as it has the meaning akin symmetric for real matrices. |
A few things:
|
From the discussion, it seems like the general consensus is to call the conjugate transpose operator |
My two cents on this: I completely agree with the On the naming of the full operation, I prefer I think that "taking the Hermitian of a matrix" is a somewhat odd thing to say. I have personally never encountered it in maths writings. If I read In this sense, the term adjoint is more general and offers no confusion. It is clear that, in the real case, it refers to |
Here's an incomplete list how this operation is called in different popular programs: |
sold.
|
This PR follows the discussion in #45063 (comment) Fixes #45063 cc @ezyang @anjali411 @dylanbespalko @mruberry @lezcano @nikitaved @rgommers @pmeier @asmeurer @leofang @AnirudhDagar @asi1024 @emcastillo @kmaehashi @heitorschueroff [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc @ezyang @anjali411 @dylanbespalko @mruberry @lezcano @nikitaved @rgommers @pmeier @asmeurer @leofang @AnirudhDagar @asi1024 @emcastillo @kmaehashi @heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc @ezyang @anjali411 @dylanbespalko @mruberry @lezcano @nikitaved @rgommers @pmeier @asmeurer @leofang @AnirudhDagar @asi1024 @emcastillo @kmaehashi @heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc @ezyang @anjali411 @dylanbespalko @mruberry @lezcano @nikitaved @rgommers @pmeier @asmeurer @leofang @AnirudhDagar @asi1024 @emcastillo @kmaehashi @heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc @ezyang @anjali411 @dylanbespalko @mruberry @lezcano @nikitaved @rgommers @pmeier @asmeurer @leofang @AnirudhDagar @asi1024 @emcastillo @kmaehashi @heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 ghstack-source-id: d469234318e753ca0f97823fb4c26a3dfa0676cc Pull Request resolved: #64179
… properties" This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry @lezcano nikitaved rgommers pmeier asmeurer leofang @AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Differential Revision: [D30730483](https://our.internmc.facebook.com/intern/diff/D30730483) [ghstack-poisoned]
Summary: Pull Request resolved: #64179 This PR follows the discussion in #45063 (comment) Fixes #45063 cc ezyang anjali411 dylanbespalko mruberry Lezcano nikitaved rgommers pmeier asmeurer leofang AnirudhDagar asi1024 emcastillo kmaehashi heitorschueroff Test Plan: Imported from OSS Reviewed By: bertmaher Differential Revision: D30730483 Pulled By: anjali411 fbshipit-source-id: 821d25083f5f682450f6812bf852dc96a1cdf9f2
🚀 Feature
As per title
Motivation
Much needed for backward methods with complex support in forward.
cc @ezyang @anjali411 @dylanbespalko @vincentqb @vishwakftw @jianyuh @nikitaved @pearu
The text was updated successfully, but these errors were encountered: