SciPy常用函数简介

在这里介绍几个函数,由于近来需要用到,网上找了一下,只有英文文档,很少有中文文档,在这里简单介绍一下,有兴趣可以浏览,仅当参考,希望能提升大家的学习速率。

1、scipy.interpolate 内插

2、scipy.spatial.transform.Rotation 三维旋转

3、scipy.optimize.dual_annealing 退火优化方法

模拟退火算法常用于组合优化问题,当有多个参数,参数的变化方向又不确定时,常使用这类方法解决。

函数签名如下:(源码地址:https://github.com/scipy/scipy/blob/v1.3.0/scipy/optimize/_dual_annealing.py#L428-L689)

scipy.optimize.dual_annealing(func, bounds, args=(), maxiter=1000, local_search_options={}, initial_temp=5230.0, restart_temp_ratio=2e-05, visit=2.62, accept=-5.0, maxfun=10000000.0, seed=None, no_local_search=False, callback=None, x0=None)

参数说明:

func: 

目标函数,或者说打分函数,即优化的目的是使得func的值最小,该函数在定义的时候有一定的要求,func函数必须是以下形式:

def func(x,*args)

其中x表示的是一个一维向量,是所有参数组成的向量,打分函数func需要根据这个参数向量来打分,*args是一个可变参数,是完成该函数功能所需要的其他参数,这些参数对分数无影响。

bounds:

参数的取值范围,是以列表的形式给出,列表中包含元组,每个元组表示每个参数的取值范围,有顺序要求。

args:

对应目标函数中的可变参数,以元组或者列表的形式传递。

4、scipy.spatial.distance.cdist

scipy.spatial.distance.cdist(XA, XB, metric='euclidean', *args, **kwargs)

计算两个输入集合的每对之间的距离。

参数说明:

XA:ndarray

XB:ndarray

metric:str or callable, optional(默认为'euclidean'即欧拉距离)

要使用的距离度量。如果是字符串,距离函数可以是‘braycurtis’, ‘canberra’, ‘chebyshev’, ‘cityblock’, ‘correlation’, ‘cosine’, ‘dice’, ‘euclidean’, ‘hamming’, ‘jaccard’, ‘jensenshannon’, ‘kulsinski’, ‘mahalanobis’, ‘matching’, ‘minkowski’, ‘rogerstanimoto’, ‘russellrao’, ‘seuclidean’, ‘sokalmichener’, ‘sokalsneath’,‘sqeuclidean’, ‘wminkowski’, ‘yule’.

*args:tuple. 弃用.

**kwargs:dict, optional

返回:Y:ndarray

 

 

你可能感兴趣的:(Python,scipy,interpolate,rotation,dual_annealing)