<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://devhrxoobm.itwiki.kr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%ED%8C%8C%EC%9D%B4%EB%9F%AC%EB%84%88</id>
	<title>IT 위키 - 사용자 기여 [ko]</title>
	<link rel="self" type="application/atom+xml" href="https://devhrxoobm.itwiki.kr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%ED%8C%8C%EC%9D%B4%EB%9F%AC%EB%84%88"/>
	<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/w/%ED%8A%B9%EC%88%98:%EA%B8%B0%EC%97%AC/%ED%8C%8C%EC%9D%B4%EB%9F%AC%EB%84%88"/>
	<updated>2026-09-16T05:25:28Z</updated>
	<subtitle>사용자 기여</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41683</id>
		<title>틀:Infobox function</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41683"/>
		<updated>2025-11-04T20:02:45Z</updated>

		<summary type="html">&lt;p&gt;파이러너: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;width:380px; font-size:90%; border:1px solid #aaa; background-color:#f9f9f9; float:right; margin:0 0 1em 1em;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;font-weight:bold; font-size:110%; background:#ccccff; text-align:center;&amp;quot; | 함수 정보&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:90px; white-space:nowrap;&amp;quot; | 이름&lt;br /&gt;
| {{{name|}}}&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:90px; white-space:nowrap;&amp;quot; | 라이브러리&lt;br /&gt;
| {{{library|}}}&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:90px; white-space:nowrap;&amp;quot; | 도입 시기&lt;br /&gt;
| {{{introduced|}}}&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:90px; white-space:nowrap;&amp;quot; | 시그니처&lt;br /&gt;
| {{{signature|}}}&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width:90px; white-space:nowrap;&amp;quot; | 설명&lt;br /&gt;
| {{{description|}}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
이 틀은 프로그래밍 함수 정보를 요약 표시하는 인포박스입니다.&lt;br /&gt;
&lt;br /&gt;
== 사용 예시 ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{{Infobox function&lt;br /&gt;
| name = topk&lt;br /&gt;
| library = PyTorch&lt;br /&gt;
| introduced = PyTorch 0.x&lt;br /&gt;
| signature = torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)&lt;br /&gt;
| description = 주어진 차원을 따라 입력 텐서에서 상위 또는 하위 k개의 원소와 그 인덱스를 반환한다.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41682</id>
		<title>틀:Infobox function</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41682"/>
		<updated>2025-11-04T19:58:37Z</updated>

		<summary type="html">&lt;p&gt;파이러너: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;width:350px; font-size:90%; border:1px solid #aaa; background-color:#f9f9f9; float:right; margin:0 0 1em 1em;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;font-weight:bold; font-size:110%; background:#ccccff; text-align:center;&amp;quot; | 함수 정보&lt;br /&gt;
|-&lt;br /&gt;
! 이름&lt;br /&gt;
| {{{name|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 라이브러리&lt;br /&gt;
| {{{library|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 도입 시기&lt;br /&gt;
| {{{introduced|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 시그니처&lt;br /&gt;
| &amp;lt;div style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&amp;lt;code style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;{{{signature|}}}&amp;lt;/code&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! 설명&lt;br /&gt;
| {{{description|}}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
이 틀은 프로그래밍 함수 정보를 요약 표시하는 인포박스입니다.&lt;br /&gt;
&lt;br /&gt;
== 사용 예시 ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{{Infobox function&lt;br /&gt;
| name = topk&lt;br /&gt;
| library = PyTorch&lt;br /&gt;
| introduced = PyTorch 0.x&lt;br /&gt;
| signature = torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)&lt;br /&gt;
| description = 주어진 차원을 따라 입력 텐서에서 상위 또는 하위 k개의 원소와 그 인덱스를 반환한다.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=PyTorch_topk&amp;diff=41681</id>
		<title>PyTorch topk</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=PyTorch_topk&amp;diff=41681"/>
		<updated>2025-11-04T19:57:39Z</updated>

		<summary type="html">&lt;p&gt;파이러너: 새 문서: {{Infobox function  | name = topk  | library = PyTorch  | introduced = PyTorch 0.x  | signature = torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)  | description = 주어진 차원을 따라 입력 텐서에서 상위 또는 하위 k개의 원소와 그 인덱스를 반환한다.  }}  &amp;lt;code&amp;gt;topk&amp;lt;/code&amp;gt;은 PyTorch에서 텐서의 주어진 차원(dim)에서 상위 k개의 값을 추출하고 그 인덱스를 함께 반환하는 함수이다.&amp;lt;ref&amp;gt;https://...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox function&lt;br /&gt;
| name = topk&lt;br /&gt;
| library = PyTorch&lt;br /&gt;
| introduced = PyTorch 0.x&lt;br /&gt;
| signature = torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)&lt;br /&gt;
| description = 주어진 차원을 따라 입력 텐서에서 상위 또는 하위 k개의 원소와 그 인덱스를 반환한다.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;topk&amp;lt;/code&amp;gt;은 PyTorch에서 텐서의 주어진 차원(dim)에서 상위 k개의 값을 추출하고 그 인덱스를 함께 반환하는 함수이다.&amp;lt;ref&amp;gt;https://pytorch.org/docs/stable/generated/torch.topk.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
==함수 개요==&lt;br /&gt;
*함수명: &amp;lt;code&amp;gt;torch.topk&amp;lt;/code&amp;gt; 또는 텐서 객체에서 &amp;lt;code&amp;gt;Tensor.topk&amp;lt;/code&amp;gt; 메서드&lt;br /&gt;
*기능: 입력 텐서에서 특정 차원을 따라 &#039;&#039;&#039;k개의 최댓값 또는 최솟값&#039;&#039;&#039;과 그 인덱스를 반환&lt;br /&gt;
*반환형: &amp;lt;code&amp;gt;namedtuple(values, indices)&amp;lt;/code&amp;gt;&lt;br /&gt;
*기본 동작: &amp;lt;code&amp;gt;largest=True&amp;lt;/code&amp;gt;이면 큰 값부터, &amp;lt;code&amp;gt;sorted=True&amp;lt;/code&amp;gt;이면 정렬된 결과를 반환&lt;br /&gt;
==매개변수==&lt;br /&gt;
*&#039;&#039;&#039;input&#039;&#039;&#039; (Tensor): 입력 텐서&lt;br /&gt;
*&#039;&#039;&#039;k&#039;&#039;&#039; (int): 추출할 요소 개수&lt;br /&gt;
*&#039;&#039;&#039;dim&#039;&#039;&#039; (int, optional): 연산할 차원. 기본은 마지막 차원&lt;br /&gt;
*&#039;&#039;&#039;largest&#039;&#039;&#039; (bool, optional): &amp;lt;code&amp;gt;True&amp;lt;/code&amp;gt;면 큰 값, &amp;lt;code&amp;gt;False&amp;lt;/code&amp;gt;면 작은 값 반환&lt;br /&gt;
*&#039;&#039;&#039;sorted&#039;&#039;&#039; (bool, optional): &amp;lt;code&amp;gt;True&amp;lt;/code&amp;gt;면 정렬된 값 반환&lt;br /&gt;
*&#039;&#039;&#039;out&#039;&#039;&#039; (tuple, optional): 출력 텐서 (&amp;lt;code&amp;gt;values, indices&amp;lt;/code&amp;gt; 형식)&lt;br /&gt;
==반환==&lt;br /&gt;
*&amp;lt;code&amp;gt;values&amp;lt;/code&amp;gt; (Tensor): 상위 k개의 값&lt;br /&gt;
*&amp;lt;code&amp;gt;indices&amp;lt;/code&amp;gt; (Tensor): 원본 텐서에서 값의 위치 인덱스&lt;br /&gt;
==사용 예시==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
import torch&lt;br /&gt;
x = torch.tensor([1., 2., 3., 4., 5.])&lt;br /&gt;
values, indices = torch.topk(x, 3)&lt;br /&gt;
print(values)   # tensor([5., 4., 3.])&lt;br /&gt;
print(indices)  # tensor([4, 3, 2])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;2차원 예시:&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
x = torch.tensor([[1., 3., 2.],&lt;br /&gt;
                  [4., 0., 5.]])&lt;br /&gt;
values, indices = torch.topk(x, 2, dim=1)&lt;br /&gt;
print(values)&lt;br /&gt;
# tensor([[3., 2.],&lt;br /&gt;
#         [5., 4.]])&lt;br /&gt;
print(indices)&lt;br /&gt;
# tensor([[1, 2],&lt;br /&gt;
#         [2, 0]])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==활용==&lt;br /&gt;
*분류 문제의 &#039;&#039;&#039;top-k 정확도&#039;&#039;&#039; 계산 시 유용&lt;br /&gt;
*이상치 탐지 또는 작은 값 필터링 시 &amp;lt;code&amp;gt;largest=False&amp;lt;/code&amp;gt; 설정&lt;br /&gt;
*다차원 전체에서 추출하려면 &amp;lt;code&amp;gt;flatten()&amp;lt;/code&amp;gt; 후 적용 필요&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# 전체 텐서에서 상위 5개 값 추출&lt;br /&gt;
x = torch.randn(3, 4, 5)&lt;br /&gt;
flat = x.flatten()&lt;br /&gt;
vals, inds = torch.topk(flat, 5)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==유의사항==&lt;br /&gt;
*동일한 값이 있을 경우 &amp;lt;code&amp;gt;indices&amp;lt;/code&amp;gt; 순서는 보장되지 않음&lt;br /&gt;
*&amp;lt;code&amp;gt;sorted=False&amp;lt;/code&amp;gt;로 설정하면 성능이 더 좋을 수 있음&lt;br /&gt;
*&amp;lt;code&amp;gt;k&amp;lt;/code&amp;gt;가 해당 차원 크기보다 클 경우 오류 발생&lt;br /&gt;
==관련 함수==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.kthvalue&amp;lt;/code&amp;gt;: 정확히 k번째 값&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sort&amp;lt;/code&amp;gt;: 전체 정렬&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.argsort&amp;lt;/code&amp;gt;: 정렬된 인덱스 반환&lt;br /&gt;
==같이 보기==&lt;br /&gt;
*[[PyTorch 텐서(Tensor)]]&lt;br /&gt;
*[[PyTorch 모델 분류(Classification)]]&lt;br /&gt;
*[[Top‑k 정확도(Top‑K Accuracy)]]&lt;br /&gt;
*[[PyTorch 정렬(Sort) 연산]]&lt;br /&gt;
*[[torch.kthvalue]]&lt;br /&gt;
==참고 문헌==&lt;br /&gt;
*PyTorch 공식 문서: https://pytorch.org/docs/stable/generated/torch.topk.html&lt;br /&gt;
*GeeksforGeeks. “How to find the k‑th and the top &#039;k&#039; elements of a tensor in PyTorch?” https://www.geeksforgeeks.org/how-to-find-the-k-th-and-the-top-k-elements-of-a-tensor-in-pytorch/&lt;br /&gt;
*PyTorch GitHub Issue #88184. https://github.com/pytorch/pytorch/issues/88184&lt;br /&gt;
==각주==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
[[분류:프로그래밍]]&lt;br /&gt;
[[분류:파이썬]]&lt;br /&gt;
[[분류:인공지능]]&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41680</id>
		<title>틀:Infobox function</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41680"/>
		<updated>2025-11-04T19:57:18Z</updated>

		<summary type="html">&lt;p&gt;파이러너: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;width:350px; font-size:90%; border:1px solid #aaa; background-color:#f9f9f9; float:right; margin:0 0 1em 1em;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;font-weight:bold; font-size:110%; background:#ccccff; text-align:center;&amp;quot; | 함수 정보&lt;br /&gt;
|-&lt;br /&gt;
! 이름&lt;br /&gt;
| {{{name|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 라이브러리&lt;br /&gt;
| {{{library|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 도입 시기&lt;br /&gt;
| {{{introduced|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 시그니처&lt;br /&gt;
| &amp;lt;code&amp;gt;{{{signature|}}}&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! 설명&lt;br /&gt;
| {{{description|}}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
이 틀은 PyTorch 또는 기타 프로그래밍 함수의 정보를 요약해 보여주는 정보 상자입니다.&lt;br /&gt;
&lt;br /&gt;
== 사용 예시 ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{{Infobox function&lt;br /&gt;
| name = topk&lt;br /&gt;
| library = PyTorch&lt;br /&gt;
| introduced = PyTorch 0.x&lt;br /&gt;
| signature = torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)&lt;br /&gt;
| description = Returns the k largest (or smallest) elements of the input tensor along a given dimension, along with their indices.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41679</id>
		<title>틀:Infobox function</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=%ED%8B%80:Infobox_function&amp;diff=41679"/>
		<updated>2025-11-04T19:52:24Z</updated>

		<summary type="html">&lt;p&gt;파이러너: 새 문서: &amp;lt;includeonly&amp;gt; {| class=&amp;quot;infobox&amp;quot; style=&amp;quot;width:350px; font-size:90%; border:1px solid #aaa; background-color:#f9f9f9; float:right; margin:0 0 1em 1em;&amp;quot; |+ style=&amp;quot;font-weight:bold; font-size:110%; background:#ccccff; text-align:center;&amp;quot; | 함수 정보 |- ! 이름 | {{{name|}}} |- ! 라이브러리 | {{{library|}}} |- ! 도입 시기 | {{{introduced|}}} |- ! 시그니처 | &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{{signature|}}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; |- ! 설명 | {{{description|}}} |} &amp;lt;/includeonly&amp;gt; &amp;lt;noinclude&amp;gt;...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
{| class=&amp;quot;infobox&amp;quot; style=&amp;quot;width:350px; font-size:90%; border:1px solid #aaa; background-color:#f9f9f9; float:right; margin:0 0 1em 1em;&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;font-weight:bold; font-size:110%; background:#ccccff; text-align:center;&amp;quot; | 함수 정보&lt;br /&gt;
|-&lt;br /&gt;
! 이름&lt;br /&gt;
| {{{name|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 라이브러리&lt;br /&gt;
| {{{library|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 도입 시기&lt;br /&gt;
| {{{introduced|}}}&lt;br /&gt;
|-&lt;br /&gt;
! 시그니처&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{{signature|}}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! 설명&lt;br /&gt;
| {{{description|}}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
이 틀은 PyTorch 또는 기타 프로그래밍 함수의 정보를 요약해 보여주는 정보 상자입니다.&lt;br /&gt;
&lt;br /&gt;
== 사용 예시 ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{{Infobox function&lt;br /&gt;
| name = topk&lt;br /&gt;
| library = PyTorch&lt;br /&gt;
| introduced = PyTorch 0.x&lt;br /&gt;
| signature = torch.topk(input, k, dim=None, largest=True, sorted=True, *, out=None)&lt;br /&gt;
| description = Returns the k largest (or smallest) elements of the input tensor along a given dimension, along with their indices.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=%EB%8B%A8%EC%9C%84_%ED%96%89%EB%A0%AC&amp;diff=41436</id>
		<title>단위 행렬</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=%EB%8B%A8%EC%9C%84_%ED%96%89%EB%A0%AC&amp;diff=41436"/>
		<updated>2025-10-03T21:26:05Z</updated>

		<summary type="html">&lt;p&gt;파이러너: 새 문서: 단위 행렬(영어: identity matrix, 일명 단위원행렬)은 정사각 행렬 중 대각 성분이 모두 1이고 나머지 성분이 모두 0인 행렬이다. ==정의== 단위 행렬은 n×n 크기의 행렬로, 대각선 성분은 모두 1이고 그 외 성분은 모두 0으로 정의된다. ==기호와 표기== *보통 I 또는 Iₙ으로 표기하며, 문맥상 크기가 명확하면 단순히 I로 쓰기도 한다. &amp;lt;ref&amp;gt;“Identity matrix”, Encyclopedia of Mathemati...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;단위 행렬(영어: identity matrix, 일명 단위원행렬)은 정사각 행렬 중 대각 성분이 모두 1이고 나머지 성분이 모두 0인 행렬이다.&lt;br /&gt;
==정의==&lt;br /&gt;
단위 행렬은 n×n 크기의 행렬로, 대각선 성분은 모두 1이고 그 외 성분은 모두 0으로 정의된다.&lt;br /&gt;
==기호와 표기==&lt;br /&gt;
*보통 I 또는 Iₙ으로 표기하며, 문맥상 크기가 명확하면 단순히 I로 쓰기도 한다. &amp;lt;ref&amp;gt;“Identity matrix”, Encyclopedia of Mathematics&amp;lt;/ref&amp;gt;&lt;br /&gt;
*대각 성분만이 비제로인 대각 행렬(diagonal matrix)의 특수한 형태이다. &amp;lt;ref&amp;gt;Anton, H., &amp;amp; Rorres, C. (2010). *Elementary Linear Algebra*. Wiley.&amp;lt;/ref&amp;gt;&lt;br /&gt;
==성질==&lt;br /&gt;
단위 행렬은 다음과 같은 성질을 가진다.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;항등원 성질&#039;&#039;&#039;&lt;br /&gt;
*임의의 m×n 행렬 A에 대해 Iₘ·A = A, A·Iₙ = A 가 성립한다.&lt;br /&gt;
&#039;&#039;&#039;역원&#039;&#039;&#039;&lt;br /&gt;
*단위 행렬은 자기 자신의 역행렬이다. 즉 Iₙ⁻¹ = Iₙ 이다.&lt;br /&gt;
&#039;&#039;&#039;멱등성&#039;&#039;&#039;&lt;br /&gt;
*단위 행렬을 제곱해도 자기 자신이 된다. (Iₙ·Iₙ = Iₙ)&lt;br /&gt;
&#039;&#039;&#039;고유값과 랭크&#039;&#039;&#039;&lt;br /&gt;
*고유값은 모두 1이고, 랭크(rank)는 n이다.&lt;br /&gt;
&#039;&#039;&#039;행렬식과 트레이스&#039;&#039;&#039;&lt;br /&gt;
*행렬식(determinant)은 1, 궤적(trace)은 n이다.&lt;br /&gt;
==예시==&lt;br /&gt;
1×1 단위 행렬&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|}2×2 단위 행렬&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|1||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1&lt;br /&gt;
|}3×3 단위 행렬&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1&lt;br /&gt;
|}&lt;br /&gt;
==응용 및 중요성==&lt;br /&gt;
단위 행렬은 선형대수학에서 기본적인 개념이며,&lt;br /&gt;
*선형 변환에서 항등 변환(identity transformation)을 나타낸다.&lt;br /&gt;
*역행렬의 정의와 성질을 기술할 때 기준점이 된다.&lt;br /&gt;
*행렬 대수, 군론 등에서 항등원 개념을 일반화한 형태로 사용된다.&lt;br /&gt;
==같이 보기==&lt;br /&gt;
*[[역행렬]]&lt;br /&gt;
*[[대각 행렬]]&lt;br /&gt;
*[[정사각 행렬]]&lt;br /&gt;
*[[항등원 (수학)]]&lt;br /&gt;
==참고 문헌==&lt;br /&gt;
*Anton, H., &amp;amp; Rorres, C. (2010). *Elementary Linear Algebra*. Wiley.&lt;br /&gt;
*Lang, S. (1987). *Linear Algebra*. Springer.&lt;br /&gt;
*Encyclopedia of Mathematics, &amp;quot;Identity matrix&amp;quot;&lt;br /&gt;
==각주==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
[[분류:수학]]&lt;br /&gt;
[[분류:선형대수]]&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=PyTorch_eye&amp;diff=41435</id>
		<title>PyTorch eye</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=PyTorch_eye&amp;diff=41435"/>
		<updated>2025-10-03T21:20:20Z</updated>

		<summary type="html">&lt;p&gt;파이러너: 새 문서: torch.eye(영어: eye)은 주대각선이 1이고 나머지가 0인 2차원 텐서(단위 행렬)를 생성하는 PyTorch의 함수이다. ==개요== *&amp;lt;code&amp;gt;torch.eye&amp;lt;/code&amp;gt;는 크기 &amp;lt;code&amp;gt;n×m&amp;lt;/code&amp;gt;(&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; 미지정 시 &amp;lt;code&amp;gt;n×n&amp;lt;/code&amp;gt;)의 단위 행렬을 반환한다. *반환 텐서는 기본적으로 밀집(dense) 레이아웃이며, 주대각선 원소는 1, 그 외는 0이다. ==시그니처== *&amp;lt;code&amp;gt;torch.eye(n, m=None, *, out=None, dtype=None, layout=torch.st...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;torch.eye(영어: eye)은 주대각선이 1이고 나머지가 0인 2차원 텐서(단위 행렬)를 생성하는 PyTorch의 함수이다.&lt;br /&gt;
==개요==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.eye&amp;lt;/code&amp;gt;는 크기 &amp;lt;code&amp;gt;n×m&amp;lt;/code&amp;gt;(&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; 미지정 시 &amp;lt;code&amp;gt;n×n&amp;lt;/code&amp;gt;)의 단위 행렬을 반환한다.&lt;br /&gt;
*반환 텐서는 기본적으로 밀집(dense) 레이아웃이며, 주대각선 원소는 1, 그 외는 0이다.&lt;br /&gt;
==시그니처==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.eye(n, m=None, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False)&amp;lt;/code&amp;gt;&lt;br /&gt;
==매개변수==&lt;br /&gt;
*&amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt;: 행(row) 수.&lt;br /&gt;
*&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt;: 열(column) 수. 생략하면 &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt;과 동일한 정사각 행렬을 생성.&lt;br /&gt;
*&amp;lt;code&amp;gt;dtype&amp;lt;/code&amp;gt;: 반환 텐서의 자료형.&lt;br /&gt;
*&amp;lt;code&amp;gt;layout&amp;lt;/code&amp;gt;: 기본값은 &amp;lt;code&amp;gt;torch.strided&amp;lt;/code&amp;gt;(밀집). 희소 레이아웃은 지원되지 않는다.&lt;br /&gt;
*&amp;lt;code&amp;gt;device&amp;lt;/code&amp;gt;: 생성할 장치(CPU/CUDA 등).&lt;br /&gt;
*&amp;lt;code&amp;gt;requires_grad&amp;lt;/code&amp;gt;: 자동미분 기록 여부.&lt;br /&gt;
==사용 예시==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
import torch&lt;br /&gt;
&lt;br /&gt;
# 3×3 단위 행렬 (float32, CPU)&lt;br /&gt;
I = torch.eye(3)&lt;br /&gt;
# 4×2 &#039;직사각&#039; 단위 행렬 (대각선 길이는 min(4,2)=2)&lt;br /&gt;
R = torch.eye(4, 2)&lt;br /&gt;
&lt;br /&gt;
# dtype / device 지정&lt;br /&gt;
I64 = torch.eye(5, dtype=torch.int64, device=&#039;cpu&#039;)&lt;br /&gt;
&lt;br /&gt;
print(I)&lt;br /&gt;
print(R)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==배치 단위 행렬 생성==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
import torch&lt;br /&gt;
&lt;br /&gt;
n = 4&lt;br /&gt;
batch = 3&lt;br /&gt;
&lt;br /&gt;
# 방법 1) diag_embed로 배치 단위 행렬 만들기&lt;br /&gt;
ones = torch.ones(batch, n)          # 각 배치마다 길이 n의 1 벡터&lt;br /&gt;
I_batched = torch.diag_embed(ones)   # (batch, n, n)&lt;br /&gt;
&lt;br /&gt;
# 방법 2) eye를 확장 (메모리 관점 주의)&lt;br /&gt;
I_batched2 = torch.eye(n).expand(batch, n, n)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==희소(sparse)와의 관계==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.eye&amp;lt;/code&amp;gt;는 밀집 텐서를 생성하며, &amp;lt;code&amp;gt;layout&amp;lt;/code&amp;gt;에 희소를 지정하는 것은 공식적으로 지원되지 않는다.&lt;br /&gt;
*희소 단위 행렬이 필요하면 COO 인덱스와 값을 사용해 직접 생성해야 한다.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
import torch&lt;br /&gt;
&lt;br /&gt;
def sparse_eye(n, device=None, dtype=None):&lt;br /&gt;
    idx = torch.arange(n, device=device)&lt;br /&gt;
    indices = torch.stack([idx, idx])            # 2×n&lt;br /&gt;
    values = torch.ones(n, device=device, dtype=dtype)&lt;br /&gt;
    return torch.sparse_coo_tensor(indices, values, (n, n))&lt;br /&gt;
&lt;br /&gt;
S = sparse_eye(5)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==관련 함수==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.diagonal&amp;lt;/code&amp;gt;: 텐서의 대각 성분을 뷰(view)로 반환.&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.diag_embed&amp;lt;/code&amp;gt;: 벡터(또는 배치 벡터)를 대각 성분으로 갖는 행렬(또는 배치 행렬) 생성.&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.diagonal_scatter&amp;lt;/code&amp;gt;: 주어진 입력의 대각 위치에 소스 값을 삽입.&lt;br /&gt;
==주의 사항==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.eye&amp;lt;/code&amp;gt;는 2차원 텐서를 반환한다(스칼라/벡터/고차 텐서 아님).&lt;br /&gt;
*희소 레이아웃(&amp;lt;code&amp;gt;torch.sparse_coo&amp;lt;/code&amp;gt; 등)로 직접 생성하려면 &amp;lt;code&amp;gt;torch.sparse_coo_tensor&amp;lt;/code&amp;gt;를 사용한다.&lt;br /&gt;
==같이 보기==&lt;br /&gt;
*[[PyTorch]]&lt;br /&gt;
*[[희소 행렬]]&lt;br /&gt;
*[[torch.diagonal]]&lt;br /&gt;
*[[torch.diag_embed]]&lt;br /&gt;
*[[희소 텐서]]&lt;br /&gt;
==참고 문헌==&lt;br /&gt;
*[https://pytorch.org/docs/stable/generated/torch.eye.html torch.eye — PyTorch 문서]&lt;br /&gt;
*[https://github.com/pytorch/pytorch/issues/46705 torch.eye not supported for sparse layout — GitHub 이슈 #46705]&lt;br /&gt;
*[https://pytorch.org/docs/stable/generated/torch.diagonal.html torch.diagonal — PyTorch 문서]&lt;br /&gt;
*[https://pytorch.org/docs/stable/generated/torch.diag_embed.html torch.diag_embed — PyTorch 문서]&lt;br /&gt;
*[https://pytorch.org/docs/stable/generated/torch.diagonal_scatter.html torch.diagonal_scatter — PyTorch 문서]&lt;br /&gt;
==각주==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
[[분류:프로그래밍]]&lt;br /&gt;
[[분류:파이썬]]&lt;br /&gt;
[[분류:딥 러닝]]&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
	<entry>
		<id>https://devhrxoobm.itwiki.kr/index.php?title=PyTorch_sparse&amp;diff=41434</id>
		<title>PyTorch sparse</title>
		<link rel="alternate" type="text/html" href="https://devhrxoobm.itwiki.kr/index.php?title=PyTorch_sparse&amp;diff=41434"/>
		<updated>2025-10-03T21:14:14Z</updated>

		<summary type="html">&lt;p&gt;파이러너: 새 문서: &amp;#039;&amp;#039;&amp;#039;torch.sparse&amp;#039;&amp;#039;&amp;#039;은 PyTorch에서 희소 텐서(sparse tensor)를 다루기 위한 기능 집합이다. ==개요== 희소 텐서는 대부분의 원소가 0인 고차원 배열을 효율적으로 표현하기 위한 자료구조이다.  PyTorch에서는 여러 희소 표현(layout) 방식을 지원하며, &amp;lt;code&amp;gt;torch.sparse&amp;lt;/code&amp;gt; 모듈 및 관련 함수들이 이 기능을 제공한다. ==표현 방식 및 레이아웃== PyTorch는 여러 희소 레이아웃을 지원한다....&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;torch.sparse&#039;&#039;&#039;은 PyTorch에서 희소 텐서(sparse tensor)를 다루기 위한 기능 집합이다.&lt;br /&gt;
==개요==&lt;br /&gt;
희소 텐서는 대부분의 원소가 0인 고차원 배열을 효율적으로 표현하기 위한 자료구조이다.  PyTorch에서는 여러 희소 표현(layout) 방식을 지원하며, &amp;lt;code&amp;gt;torch.sparse&amp;lt;/code&amp;gt; 모듈 및 관련 함수들이 이 기능을 제공한다.&lt;br /&gt;
==표현 방식 및 레이아웃==&lt;br /&gt;
PyTorch는 여러 희소 레이아웃을 지원한다. 주요 레이아웃과 특징은 다음과 같다.&lt;br /&gt;
===COO (좌표형, Coordinate)===&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_coo_tensor(indices, values, size)&amp;lt;/code&amp;gt; 함수를 통해 생성할 수 있다. &lt;br /&gt;
*&amp;lt;code&amp;gt;indices&amp;lt;/code&amp;gt;는 크기 (ndim × nnz)의 정수 텐서로, 각 열이 하나의 비제로(nonzero) 원소의 좌표를 나타낸다.&lt;br /&gt;
*&amp;lt;code&amp;gt;values&amp;lt;/code&amp;gt;는 크기 (nnz, *dense_dims)의 텐서로 비제로 원소 값을 저장한다.&lt;br /&gt;
*희소 텐서는 일반적으로 비정합(uncoalesced) 상태일 수 있으며, &amp;lt;code&amp;gt;.coalesce()&amp;lt;/code&amp;gt; 메서드를 통해 동일한 좌표들이 합쳐진 상태로 만들 수 있다.&lt;br /&gt;
*텐서의 &amp;lt;code&amp;gt;sparse_dim()&amp;lt;/code&amp;gt;과 &amp;lt;code&amp;gt;dense_dim()&amp;lt;/code&amp;gt; 메서드로 희소 차원과 밀집 차원을 구분할 수 있다.&lt;br /&gt;
===CSR / CSC (압축 행 / 압축 열)===&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_csr_tensor(crow_indices, col_indices, values, size)&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_csc_tensor(ccol_indices, row_indices, values, size)&amp;lt;/code&amp;gt;&lt;br /&gt;
*CSR 방식은 행 인덱스를 압축 형태(&amp;lt;code&amp;gt;crow_indices&amp;lt;/code&amp;gt;)로 저장하고, 각 행 내의 열 인덱스(&amp;lt;code&amp;gt;col_indices&amp;lt;/code&amp;gt;)와 값 배열을 저장하는 방식이다. &lt;br /&gt;
*CSC는 열 중심의 압축 표현 방식이다.&lt;br /&gt;
*CSR/CSC 방식은 특히 행 또는 열 기반 연산 (예: 행 단위 순회)에 효율적이다.&lt;br /&gt;
===BSR / BSC (블록 압축형)===&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_bsr_tensor(crow_indices, col_indices, values, size)&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_bsc_tensor(ccol_indices, row_indices, values, size)&amp;lt;/code&amp;gt;&lt;br /&gt;
*이 방식은 텐서를 일정 블록(block) 단위로 나누어 블록 단위의 압축 표현을 허용한다. &lt;br /&gt;
*대형 희소 행렬을 블록 단위로 처리할 때 유리하다.&lt;br /&gt;
===일반 압축 희소 텐서 생성 함수===&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_compressed_tensor(...)&amp;lt;/code&amp;gt; 함수를 통해 &amp;lt;code&amp;gt;layout&amp;lt;/code&amp;gt; 인자를 지정하는 방식으로 CSR, CSC, BSR, BSC 등을 생성할 수 있다. &lt;br /&gt;
==주요 메서드 및 연산==&lt;br /&gt;
*&amp;lt;code&amp;gt;.to_dense()&amp;lt;/code&amp;gt; : 희소 텐서를 밀집(dense) 텐서로 변환&lt;br /&gt;
*&amp;lt;code&amp;gt;.indices()&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;.values()&amp;lt;/code&amp;gt; : COO 방식의 희소 텐서에서 좌표 인덱스와 값 반환&lt;br /&gt;
*&amp;lt;code&amp;gt;.coalesce()&amp;lt;/code&amp;gt; : 중복 좌표의 항목을 병합&lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse.mm(mat1, mat2)&amp;lt;/code&amp;gt; : 희소 행렬과 밀집 또는 희소 행렬 간의 곱셈 연산. COO 또는 CSR 포맷 지원 &lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse.addmm(mat, mat1, mat2, *, beta, alpha)&amp;lt;/code&amp;gt; : &amp;lt;code&amp;gt;mat + alpha * (mat1 @ mat2)&amp;lt;/code&amp;gt;를 계산하며, &amp;lt;code&amp;gt;mat1&amp;lt;/code&amp;gt;이 희소인 경우 backward를 지원 &lt;br /&gt;
*&amp;lt;code&amp;gt;is_sparse&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;is_sparse_csr&amp;lt;/code&amp;gt; 등 속성 메서드로 현재 텐서가 어떠한 희소 레이아웃을 사용하는지 판단 가능 &lt;br /&gt;
==제약 및 주의점==&lt;br /&gt;
*모든 연산이 모든 희소 레이아웃에 대해 지원되는 것은 아니다. 예를 들어, CSR 방식에 대한 미분(gradient) 지원은 제한적일 수 있다. &lt;br /&gt;
*&amp;lt;code&amp;gt;torch.sparse_csr_tensor()&amp;lt;/code&amp;gt;로 생성된 텐서는 역전파 시 gradient가 차단(stopped)되는 문제가 보고된 바 있다. &amp;lt;ref&amp;gt;[https://github.com/pytorch/pytorch/issues/98929 GitHub 이슈: “torch.sparse_csr_tensor stops gradients” (#98929)]&amp;lt;/ref&amp;gt;&lt;br /&gt;
*희소 방식은 메모리 절약과 연산 효율을 제공하지만, 빈번한 인덱스 접근, 슬라이싱, 변경 등의 작업에는 오버헤드가 클 수 있다.&lt;br /&gt;
*일부 고성능 희소 연산을 위해 외부 라이브러리 (예: &amp;lt;code&amp;gt;torch_sparse&amp;lt;/code&amp;gt; 패키지)가 사용된다. 이 패키지는 sparse-dense 곱, sparse-sparse 곱, 전치(transpose) 등의 최적화된 연산을 제공한다. &lt;br /&gt;
==활용 예시==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
import torch&lt;br /&gt;
&lt;br /&gt;
# COO 희소 텐서 생성 예&lt;br /&gt;
i = torch.tensor([[0, 1, 1], [2, 0, 2]])  # 좌표 인덱스 (2×3)&lt;br /&gt;
v = torch.tensor([3, 4, 5], dtype=torch.float32)  # 값&lt;br /&gt;
s = torch.sparse_coo_tensor(i, v, [2, 3])&lt;br /&gt;
dense = s.to_dense()  # 밀집 텐서로 변환&lt;br /&gt;
&lt;br /&gt;
# CSR 희소 텐서 생성 예&lt;br /&gt;
crow = torch.tensor([0, 2, 3])&lt;br /&gt;
cols = torch.tensor([0, 2, 1])&lt;br /&gt;
vals = torch.tensor([3, 4, 5], dtype=torch.float32)&lt;br /&gt;
s_csr = torch.sparse_csr_tensor(crow, cols, vals, size=(2, 3))&lt;br /&gt;
out = s_csr.matmul(torch.randn(3, 4))  # 희소 × 밀집 연산&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==관련 기술 및 라이브러리==&lt;br /&gt;
*&amp;lt;code&amp;gt;torch_sparse&amp;lt;/code&amp;gt; 패키지는 PyTorch의 희소 텐서 연산을 확장한 외부 라이브러리로, 자동 미분(sparse autograd) 및 더 많은 커널을 제공한다. &amp;lt;ref&amp;gt;torch-sparse PyPI / GitHub&amp;lt;/ref&amp;gt;&lt;br /&gt;
*PyTorch 내부의 희소 텐서 지원은 계속 개발 중이며, 차후 더 많은 레이아웃과 연산이 확대될 가능성이 있다.&lt;br /&gt;
==같이 보기==&lt;br /&gt;
*[[PyTorch]]&lt;br /&gt;
*[[희소 행렬]]&lt;br /&gt;
*[[희소 기법 (딥러닝)]]&lt;br /&gt;
*[[torch_sparse]]&lt;br /&gt;
*[[Autograd]]&lt;br /&gt;
==참고 문헌==&lt;br /&gt;
*[https://pytorch.org/docs/stable/sparse.html PyTorch 공식 문서, “torch.sparse”]&lt;br /&gt;
==각주==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
[[분류:프로그래밍]]&lt;br /&gt;
[[분류:파이썬]]&lt;br /&gt;
[[분류:딥 러닝]]&lt;/div&gt;</summary>
		<author><name>파이러너</name></author>
	</entry>
</feed>