Linux 执行二进制文件
file 查看文件类型
1.更改文件权限:可以使用chmod命令更改文件的权限,例如:chmod +x /path/to/file将文件设置为可执行。
2.在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如:
error while loading shared libraries: libvtkRenderingCore8.2.so.1: cannot open shared object file: No such file or directory
3.修改环境变量
https://blog.51cto.com/u_15717531/5471391
激活函数
pytorch
torch.nn.Softplus
torch.nn.Sigmoid
torch.nn.ReLU
torch.nn.Tanh
numpy
numpy.tanh
###激活函数
import numpy as np
def sigmoid(x):
return 1 / (1 + np.exp(-x))
def tanh(x):
return (np.exp(x) - np.exp(-x)) / (np.exp(x) + np.exp(-x))
def relu(x):
return np.maximum(0, x)
def leakyRelu(x):
return np.maximum(0.01*x, x)
numpy.ufunc 对象
type(np.add)#返回的是 <class 'numpy.ufunc'> 即ufunc对象
###自定义ufunc对象 参数func指的是你要使用的函数,第二个参数为func中的参数个数,第三个参数为func中的返回值的个数
#### 。函数名、入参个数、返回值个数
import numpy as np
def my_ufunc(x, low, high): # 第一步,定义函数
if x < low:
return -1
elif x > high:
return 1
else:
return 0
my_func = np.frompyfunc(my_ufunc, 3, 1) # 第二步
x = np.arange(10)
y = my_func(x, 3, 6) # 3 使用
print(x) # [0 1 2 3 4 5 6 7 8 9]
np.frompyfunc()转换的函数返回值是object,故需要显式将其类型转换为所需要的类型,比如np.float等
使用frompyfunc(func,nin,nout)将单值计算函数转换成数组计算函数,其中func是单值计算函数,nin是func的输入参数的个数,nout是func的返回值的个数
numpy 向量化函数
ufunc函数即通用函数(universal function),是一种能够对数组中的所有元素进行操作的函数
使用frompyfunc或者vectorize可以将计算单个元素的函数转换成对数组中每个元素的ufunc函数
vectorize
vectorize()类似于frompyfunc(),只不过可以通过otypes指定返回的数组的元素类型
class numpy.vectorize(pyfunc=np._NoValue, otypes=None, doc=None, excluded=None, cache=False, signature=None)
向量化运算-Pandas
Pandas apply()函数允许用户传递一个函数并将其应用于Pandas系列的每个单个值
自定义的函数,还是匿名函数lambda
alist.sort(key=lambda f: float(f.split('/')[-1][0:-4]))
参考
https://numpy.org/doc/stable/reference/generated/numpy.tanh.html
[Python] Numpy函数与激活函数的实现 https://zhuanlan.zhihu.com/p/65417338
https://zhuanlan.zhihu.com/p/592133582
Python中对numpy库的学习(四)二元函数运算、广播以及自定义ufunc函数