用法:
cusignal.convolution.convolve.choose_conv_method(in1, in2, mode='full', measure=False)
找到最快的卷積/相關方法。
這主要存在於
convolve
和correlate
中的method='auto'
選項期間調用,但也可以在執行相同輸入形狀和 dtype 的許多卷積時使用,確定對所有這些使用哪種方法,或者避免 ‘auto’ 選項的開銷或使用準確的 real-world 測量。- in1:array_like
第一個參數傳入卷積函數。
- in2:array_like
第二個參數傳入卷積函數。
- mode:str {‘full’, ‘valid’, ‘same’},可選
指示輸出大小的字符串:
full
輸出是輸入的完全離散線性卷積。 (默認)
valid
輸出僅包含那些不依賴零填充的元素。
same
輸出與
in1
大小相同,以 ‘full’ 輸出為中心。
- measure:布爾型,可選
如果為 True,則使用這兩種方法運行
in1
和in2
的卷積並計算時間,並以最快的速度返回。如果為 False(默認),則使用預先計算的值預測最快的方法。
- method:str
指示哪種卷積方法最快的字符串,可以是‘direct’ or ‘fft’
- times:字典,可選
包含每種方法所需時間(以秒為單位)的字典。此值僅在
measure=True
時返回。
參數:
返回:
例子:
估計給定輸入的最快方法:
>>> import cusignal >>> import cupy as cp >>> a = cp.random.randn(1000) >>> b = cp.random.randn(1000000) >>> method = cusignal.choose_conv_method(a, b, mode='same') >>> method 'fft'
然後可以將其應用於具有相同 dtype 和形狀的其他數組:
>>> c = cp.random.randn(1000) >>> d = cp.random.randn(1000000) >>> # `method` works with correlate and convolve >>> corr1 = cusignal.correlate(a, b, mode='same', method=method) >>> corr2 = cusignal.correlate(c, d, mode='same', method=method) >>> conv1 = cusignal.convolve(a, b, mode='same', method=method) >>> conv2 = cusignal.convolve(c, d, mode='same', method=method)
相關用法
- Python cusignal.convolution.convolve.convolve2d用法及代碼示例
- Python cusignal.convolution.convolve.convolve1d3o用法及代碼示例
- Python cusignal.convolution.convolve.convolve1d2o用法及代碼示例
- Python cusignal.convolution.convolve.convolve用法及代碼示例
- Python cusignal.convolution.convolve.fftconvolve用法及代碼示例
- Python cusignal.convolution.correlate.correlate用法及代碼示例
- Python cusignal.windows.windows.hann用法及代碼示例
- Python cusignal.windows.windows.general_gaussian用法及代碼示例
- Python cusignal.waveforms.waveforms.chirp用法及代碼示例
- Python cusignal.windows.windows.gaussian用法及代碼示例
- Python cusignal.windows.windows.hamming用法及代碼示例
- Python cusignal.windows.windows.get_window用法及代碼示例
- Python cusignal.waveforms.waveforms.gausspulse用法及代碼示例
- Python cusignal.peak_finding.peak_finding.argrelmin用法及代碼示例
- Python cusignal.windows.windows.bartlett用法及代碼示例
- Python cusignal.spectral_analysis.spectral.welch用法及代碼示例
- Python cusignal.windows.windows.chebwin用法及代碼示例
- Python cusignal.windows.windows.general_cosine用法及代碼示例
- Python cusignal.peak_finding.peak_finding.argrelextrema用法及代碼示例
- Python cusignal.filtering.resample.resample_poly用法及代碼示例
注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cusignal.convolution.convolve.choose_conv_method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。