[torchlib] logcumsumexp underflows to -inf for prefixes far below the global max
I maintainer di solito rispondono entro 3 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 64/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- python
- Ambito
- backend, machine-learning
Direzione di ricerca
Start with the torchlib implementation of torch.logcumsumexp and its aten_logcumsumexp decomposition, then review the changes referenced by #904 and #327. Use the provided Python reproduction to compare the exported model with PyTorch eager. The work is done when prefixes far below the global maximum remain finite and match the eager result.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
torch.logcumsumexp exported through torchlib returns -inf for any prefix whose values sit far below the maximum of the whole dimension. aten_logcumsumexp subtracts a single ReduceMax over the dim before Exp, so those early entries underflow to 0 in float32 and their log becomes -inf.
import torch
class M(torch.nn.Module):
def forward(self, x):
return torch.logcumsumexp(x, 0)
x = torch.tensor([-200., -100., 100.])
p = torch.onnx.export(M(), (x,), dynamo=True)
print(p(x)[0])
print(M()(x))
Observed: tensor([-inf, -inf, 100.])
Expected (PyTorch eager): tensor([-200., -100., 100.])
This hits running log-probability sums (CTC or HMM style) where early steps are very negative. #904 closed #327 with the subtract-max trick and no Scan; this input needs a per-prefix max, which one global max cannot provide.
onnxscript 0.7.2 (the function is identical on main), torch 2.14.1+cpu, onnxruntime 1.31.0, Python 3.13, Windows 11.
- Lingua principale
- Python
- Stelle
- 456
- Fork
- 148
- Merge medio
- 3g 13h
- PR unite (30g)
- 21
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/onnxscript
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
microsoft/onnxscript#3003 · 3 commenti ·
I maintainer di solito rispondono entro 3 giorni
-
CI : Pin github actions to full commit SHAForse già presa @Aniketsy l’ha presa 179 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
microsoft/onnxscript#2903 · 6 commenti ·
I maintainer di solito rispondono entro 3 giorni
-
optimize() crashes when constant folding produces a string tensorForse già presa @nniiovoo l’ha presa 4 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
microsoft/onnxscript#3129 ·
I maintainer di solito rispondono entro 3 giorni
-
[torchlib] Float remainder is off by the divisor when the quotient rounds up, and nan for an infinite divisorForse già presa @usmanmateen l’ha presa 9 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
microsoft/onnxscript#3116 ·
I maintainer di solito rispondono entro 3 giorni
-
[torchlib] Float floor_divide is one too large when the quotient rounds up to a whole numberForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 57/100
microsoft/onnxscript#3115 ·
I maintainer di solito rispondono entro 3 giorni
Tutte le issue di microsoft/onnxscript
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
aws-samples/sample-per-model-bedrock#639 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 86/100
awslabs/visual-asset-management-system#937 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
project-codeflare/codeflare-sdk#1195 ·
I maintainer di solito rispondono entro 1 giorno
-
Bump numpy dependencyAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
pandas-dev/pandas-stubs#2051 ·
I maintainer di solito rispondono entro 1 giorno