1.绝对值、求和、三角函数
a = torch. Tensor( [ - 1 , 0 , 1 ] )
print ( torch. abs ( a) )
print ( torch. add( a, 3 ) )
print ( torch. cos( a) )
print ( torch. acos( a) )
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ 1 . , 0 . , 1 . ] )
tensor( [ 2 . , 3 . , 4 . ] )
tensor( [ 0.5403 , 1.0000 , 0.5403 ] )
tensor( [ 3.1416 , 1.5708 , 0.0000 ] )
2.相乘再相加、相除再相加
a = torch. Tensor( [ - 1 , 0 , 1 ] )
b = torch. Tensor( [ 1 , 2 , 3 ] )
c = torch. Tensor( [ 4 , 5 , 6 ] )
x = torch. addcdiv( a, 0.1 , b, c)
print ( x)
y = torch. addcmul( a, 0.1 , b, c)
print ( y)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ - 0.9750 , 0.0400 , 1.0500 ] )
tensor( [ - 0.6000 , 1.0000 , 2.8000 ] )
3.向上取整、向下取整、夹逼函数、乘法、取相反数、取倒数、取平方根倒数和平方根
x = torch. Tensor( [ [ - 1.5 , 0 , 1.1 ] , [ 1.2 , 2.8 , 3.6 ] ] )
print ( torch. ceil( x) )
print ( torch. floor( x) )
print ( torch. clamp( x, - 1.5 , 1.5 ) )
print ( torch. mul( x, 0.1 ) )
print ( torch. neg( x) )
print ( torch. reciprocal( x) )
print ( torch. rsqrt( x[ x> 0 ] ) )
print ( torch. sqrt( x) )
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ [ - 1 . , 0 . , 2 . ] ,
[ 2 . , 3 . , 4 . ] ] )
tensor( [ [ - 2 . , 0 . , 1 . ] ,
[ 1 . , 2 . , 3 . ] ] )
tensor( [ [ - 1.5000 , 0.0000 , 1.1000 ] ,
[ 1.2000 , 1.5000 , 1.5000 ] ] )
tensor( [ [ - 0.1500 , 0.0000 , 0.1100 ] ,
[ 0.1200 , 0.2800 , 0.3600 ] ] )
tensor( [ [ 1.5000 , - 0.0000 , - 1.1000 ] ,
[ - 1.2000 , - 2.8000 , - 3.6000 ] ] )
tensor( [ [ - 0.6667 , inf, 0.9091 ] ,
[ 0.8333 , 0.3571 , 0.2778 ] ] )
tensor( [ 0.9535 , 0.9129 , 0.5976 , 0.5270 ] )
tensor( [ [ nan, 0.0000 , 1.0488 ] ,
[ 1.0954 , 1.6733 , 1.8974 ] ] )
4.除法、余数、取小数、四舍五入、指数运算
x = torch. Tensor( [ 4 , 9 ] )
print ( torch. div( x, 3 ) )
q = torch. Tensor( [ 2.1 , 2.5 , 2.7 ] )
print ( torch. fmod( q, 2 ) )
print ( torch. remainder( q, 2 ) )
print ( torch. frac( q) )
print ( torch. round ( q) )
print ( torch. exp( torch. Tensor( [ 0 ] ) ) )
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ 1.3333 , 3.0000 ] )
tensor( [ 0.1000 , 0.5000 , 0.7000 ] )
tensor( [ 0.1000 , 0.5000 , 0.7000 ] )
tensor( [ 0.1000 , 0.5000 , 0.7000 ] )
tensor( [ 2 . , 2 . , 3 . ] )
tensor( [ 1 . ] )
5.自然对数、平滑对数、幂运算
x = torch. Tensor( [ math. e, math. e** 2 ] )
print ( torch. log( x) )
print ( torch. log1p( x) )
print ( torch. log2( x) )
print ( torch. log10( x) )
print ( torch. pow ( x, 1 ) , torch. pow ( x, 2 ) )
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ 1 . , 2 . ] )
tensor( [ 1.3133 , 2.1269 ] )
tensor( [ 1.4427 , 2.8854 ] )
tensor( [ 0.4343 , 0.8686 ] )
tensor( [ 2.7183 , 7.3891 ] ) tensor( [ 7.3891 , 54.5982 ] )
6.线性插值
x = torch. zeros( 10 )
print ( x)
y = torch. arange( 10 ) . float ( )
print ( y)
z = torch. lerp( x, y, 0.5 )
print ( z)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ 0 . , 0 . , 0 . , 0 . , 0 . , 0 . , 0 . , 0 . , 0 . , 0 . ] )
tensor( [ 0 . , 1 . , 2 . , 3 . , 4 . , 5 . , 6 . , 7 . , 8 . , 9 . ] )
tensor( [ 0.0000 , 0.5000 , 1.0000 , 1.5000 , 2.0000 , 2.5000 , 3.0000 , 3.5000 , 4.0000 ,
4.5000 ] )
7.Sigmoid函数,sign函数,截断值
x = torch. arange( - 5 , 5 , 1 ) . float ( )
print ( x)
print ( torch. sigmoid( x) )
print ( torch. sign( x) )
print ( torch. trunc( torch. Tensor( [ - 0.9 , - 1.2 , - 1.9 , 0 , 2.2 , 2.9 ] ) ) )
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
result:
tensor( [ - 5 . , - 4 . , - 3 . , - 2 . , - 1 . , 0 . , 1 . , 2 . , 3 . , 4 . ] )
tensor( [ 0.0067 , 0.0180 , 0.0474 , 0.1192 , 0.2689 , 0.5000 , 0.7311 , 0.8808 , 0.9526 ,
0.9820 ] )
tensor( [ - 1 . , - 1 . , - 1 . , - 1 . , - 1 . , 0 . , 1 . , 1 . , 1 . , 1 . ] )
tensor( [ - 0 . , - 1 . , - 1 . , 0 . , 2 . , 2 . ] )