Source code for onnx_diagnostic.reference.torch_ops.unary_ops
import torch
from . import OpRun, OpRunTensor
[docs]
class Abs_1(OpRun):
"""Abs"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(torch.abs(x.tensor))
[docs]
class Cos_1(OpRun):
"""Cos"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor.cos())
[docs]
class Erf_9(OpRun):
"""Erf"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor.erf())
[docs]
class Exp_1(OpRun):
"""Exp"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor.exp())
[docs]
class Identity_1(OpRun):
"Identity"
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor)
[docs]
class Log_1(OpRun):
"""Log"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor.log())
[docs]
class Neg_1(OpRun):
"""Neg"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(-x.tensor)
[docs]
class Not_1(OpRun):
"""Not"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(~x.tensor)
[docs]
class Reciprocal_1(OpRun):
"""REciprocal"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(1 / x.tensor)
[docs]
class Sigmoid_6(OpRun):
"""Sqrt"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(torch.sigmoid(x.tensor))
[docs]
class Sin_1(OpRun):
"""Sin"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor.sin())
[docs]
class Sqrt_1(OpRun):
"""Sqrt"""
[docs]
def run(self, x: OpRunTensor) -> OpRunTensor:
return OpRunTensor(x.tensor.sqrt())