-
[PyTorch] .detach()Data/Machine learning 2021. 1. 28. 16:42
Tensor가 기록을 추적하는 것을 중단하게 하려면, .detach()를 호출하여 연산 기록으로부터 분리(detach)하여 이후 연산들이 추적되는 것을 방지할 수 있습니다. (출처) Example (Source: here) modelA = nn.Linear(10, 10) modelB = nn.Linear(10, 10) modelC = nn.Linear(10, 10) x = torch.randn(1, 10) a = modelA(x) b = modelB(a.detach()) b.mean().backward() print(modelA.weight.grad) print(modelB.weight.grad) c = modelC(a) c.mean().backward() print(modelA.weight.grad) ..
-
[PyTorch] .detach() in Loss FunctionData/Machine learning 2021. 1. 28. 14:15
What happens if you put .detach() in a loss function? Like in the SimSiam algorithm: Example 1 Let's say, we have the following equations: $$ J = y_1 y_2 $$ $$ y_1 = 2 x $$ $$ y_2 = 3 x $$ Then, naturally, the derivatives of $J$ w.r.t the $x$ are: $$ J = (2x) (3x) = 6x^2 = 12x $$ However, if .detach() is applied to $y_1$, we treat $y_1$ as a constant when computing derivatives: $$ \frac{\partial..
-
Conditional ExpectationMathematics 2021. 1. 27. 17:22
$$ E(X | Y) $$ The above equation means the conditional expected value of a random variable $X$ given a condition, $Y$. Example The following equation is from the BYOL paper: $$ q^{*} = \mathbb{E}[z_{\xi}^{\prime} | z_{\theta}] $$ It means the conditional expected value of $z_{\xi}^{\prime}$ given $z_{\theta}$.
-
논문 읽는 습관 길들이기Daily lives 2021. 1. 27. 11:58
석사학위를 취득한 이 시점, 논문 읽는 법은 어느정도 터득이 되었다. 새로운 논문을 읽는대한 두려움도 많이 줄어들었다. 하지만, 효율적으로 하루에 기본으로 10개씩의 논문을 읽을만큼의 숙련도를 기르기 위해서는 연습이 필요한 시점이다. 논문읽기를 어디서 시작해야할까, 그리고 어떻게 해나가야할까? 처음 발을 들이는 연구분야라면 관련 키워드로 인용이 많이된 최신 논문을 1~2개 선정한다. 선정된 논문의 참고문헌을 통해 관련 논문을 최대한 많이 찾는다. (약 10개 이상) 찾은 논문을 Mendeley에 넣고, sync 한다. 이후, 더 많은 관련 키워드들을 찾아나가며, 선행연구논문들을 찾고, 정리하고, 읽는 절차를 가지처럼 뻗어나간다. 이러한 방법으로 계속 의식적인 연습을 통해, 하루에 기본적으로 5~10개의 ..