Fonction PyTorch torch.searchsorted
Manuel de référence PyTorch torch
torch.searchsortedIl s'agit d'une fonction dans PyTorch utilisée pour rechercher la position où un élément doit être inséré dans un tenseur trié. La valeur renvoyée est la position d'index où l'élément doit être inséré.
Définition de fonction
torch.searchsorted(sorted_sequence, values, side='left', out_int32=False, right=False)
Description des paramètres :
sorted_sequence: Tenseur trié unidimensionnel ou multidimensionnelvalues: Valeur à rechercherside: 'left' ou 'right', détermine s'il faut renvoyer la position d'insertion à gauche ou à droiteout_int32: Indique s'il faut renvoyer le type int32right: Obsolète, utilisez side à la place
Exemple d'utilisation
Exemple
import torch
# Créer une séquence triée
sorted_seq = torch.tensor([1, 3, 5, 7, 9])
# Rechercher la position d'une valeur
values = torch.tensor([3, 6, 8])
y = torch.searchsorted(sorted_seq, values)
print(y)
# Créer une séquence triée
sorted_seq = torch.tensor([1, 3, 5, 7, 9])
# Rechercher la position d'une valeur
values = torch.tensor([3, 6, 8])
y = torch.searchsorted(sorted_seq, values)
print(y)
Le résultat de sortie est:
tensor([1, 3, 3]) </p> <div class="example"> <h2 class="example">实例</h2> <div class="example_code"> <span style="color: Green;font-weight:bold;">import</span> torch<br /> <br /> <span style="color: #a50"># 创建已排序的序列</span><br /> sorted_seq <span style="color: Gray;">=</span> torch.<span style="color: #05a;">tensor</span><span style="color: Olive;">(</span><span style="color: Olive;">[</span><span style="color: Maroon;">1</span><span style="color: Gray;">,</span> <span style="color: Maroon;">3</span><span style="color: Gray;">,</span> <span style="color: Maroon;">5</span><span style="color: Gray;">,</span> <span style="color: Maroon;">7</span><span style="color: Gray;">,</span> <span style="color: Maroon;">9</span><span style="color: Olive;">]</span><span style="color: Olive;">)</span><br /> <br /> <span style="color: #a50"># 使用 side='right' 搜索</span><br /> values <span style="color: Gray;">=</span> torch.<span style="color: #05a;">tensor</span><span style="color: Olive;">(</span><span style="color: Olive;">[</span><span style="color: Maroon;">3</span><span style="color: Gray;">,</span> <span style="color: Maroon;">6</span><span style="color: Gray;">,</span> <span style="color: Maroon;">8</span><span style="color: Olive;">]</span><span style="color: Olive;">)</span><br /> y <span style="color: Gray;">=</span> torch.<span style="color: #05a;">searchsorted</span><span style="color: Olive;">(</span>sorted_seq<span style="color: Gray;">,</span> values<span style="color: Gray;">,</span> side<span style="color: Gray;">=</span><span style="color: #a11;">'right'</span><span style="color: Olive;">)</span><br /> <span style="color: Green;font-weight:bold;">print</span><span style="color: Olive;">(</span>y<span style="color: Olive;">)</span><br /> </div> </div> <p>输出结果为:</p> <pre> tensor([2, 3, 4])
Exemple
import torch
# Pour les tableaux multidimensionnels
sorted_seq = torch.tensor([[1, 3, 5], [2, 4, 6]])
values = torch.tensor([[1.5], [3.5]])
y = torch.searchsorted(sorted_seq, values)
print(y)
# Pour les tableaux multidimensionnels
sorted_seq = torch.tensor([[1, 3, 5], [2, 4, 6]])
values = torch.tensor([[1.5], [3.5]])
y = torch.searchsorted(sorted_seq, values)
print(y)
Le résultat de sortie est:
tensor([[1],
[1]])
Autres extensions