Loading...
2024. 11. 21. 18:27

unity의 컴포넌트 패넌(+MonoBehaviour)

1. 클래스의 상속 한계 부모 클래스에서 자식 클래스에 공통적으로 필요한 기능을 구현 그러나 나중에 구현할 자식 클래스에 무엇이 필요한지 처음부터 정확하게 추측하기 어려움 부모 클래스의 기존 기능이 나중에 구현한 자식 클래스의 기능과 오히려 충돌 가능 또 상속에만 의존하면 기획자가 새로운 오브젝트를 만들 때 매번 프로그래머에게 부탁해야하는 문제 2. 컴포넌트 패턴 미리 만들어진 부품을 조립하여 완성된 오브젝트를 만드는 방식 미리 만들어진 부품은 컴포넌트이고 컴포넌트는 저마다의 대표적인 기능을 가짐 기본적으로 게임 오브젝트는 속이 빈 껍데기이며 개발자는 빈 게임 오브젝트에 컴포넌트를 조립하여 기능을 추가 동물을 만들고 싶다면 게임에 등장할 모든 동물을 사전에 기획할 수 없으므로 동물에 사용할 다양한 종류의..

neural network에서의 low rank approximation은 무엇이 있는가

1. filter decomposition network의 filter를 decomposition하여 계산량을 줄이면서 decomposition하기 전의 결과에 approximation시키는 방법 depthwise separable convolution은 depthwise convolution을 수행하고 pointwise convolution을 수행하여 일반적인 convolution보다 계산량을 줄이고 원래 일반적인 convolution의 결과에 거의 approximation할 수 있다.. (같지 않나 아닌감)   2. low rank tensor approximation 이미 학습된 network의 filter가 차원이 너무 높아 계산비용이 너무 많이 드는 경우 하지만 input을 받아 output을 ..

머신러닝과 컴퓨터의 문제 해결 방법 차이

1. 머신러닝의 정체? 개와 고양이가 뒤섞인 사진이 주어진 상태가 initial state이고 개와 고양이 사진을 완벽하게 분류한 상황이 바라는 terminal state 머신러닝 모델은 개와 고양이가 뒤섞인 사진을 받아 완전히 분류된 상태로 만들어주는 problem solving을 위한 도구    2. 컴퓨터의 deductive process 컴퓨터는 모든 가능한 조합을 고려하여 순간 최적인것이 나오면 update를 하고 다시 조합을 고려하는 것을 반복함 순간 순간에서는 최적을 고려했다고 하더라도 반드시 정답이라는 보장은 없지만 모든 경우를 다 고려한 최종 결과에서는 반드시 optimal한 결과 이 과정은 생각해보면 유한 상태 기계인 deterministic finite automata로 나타낼 수 있..

가로 세로 선 3개만 그어서 모든 점을 덮을 수 있는가?

5884번: 감시 카메라 n개의 점이 있는데 수직선이나 수평선으로 3개만 그어서 모든 점을 덮을 수 있는지 체크하는 문제 점의 좌표 범위가 10^9이다 보니 하나하나 다 그어보면 당연히 시간초과 날것이고 X좌표를 기준으로 그룹을 묶고, Y좌표를 기준으로 그룹을 묶는다 그러면 어떤 X = x좌표를 기준으로 수직선을 그어보면, 해당하는 y좌표들을 알 수 있다 그러면 그러한 y좌표가 여러개 있다면?  Y = y로 수평선을 또 그어야할 것이다   근데 해당하는 Y = y2가 하나만 존재한다면 Y = y2로 수평선을 그을 필요가 없다   그러므로 모든 X = x에 대해 순회해봐서 x에 대응하는 y들을 다시 하나씩 순회해본 다음 해당하는 y좌표값들 개수가 2개 이상인 경우가 존재하면 그 쪽으로 수평선을 그어야하므로..

수천개의 점들 중에서 가장 넓이가 큰 정사각형을 찾는 방법

9015번: 정사각형 점이 n개  그냥 한다면 O(N^4)이겠지만 당연히 안될거고 O(N^3)인 방법도 있긴한데 N  정사각형 성질을 이용하면.. 임의의 두 점 A(x1,y1), B(x2,y2)을 먼저 잡고 벡터 AB를 구한다 벡터 AB = OB - OA = (x2-x1, y2-y1)으로 구할 수 있다   다음 벡터 AB를 시계방향으로 90도 회전하면 벡터 AD를 구할 수 있다 90도 회전하는 방법은? (x,y) >> (-y,x)로 되므로 벡터 AD = (-y2+y1, x2-x1)이 된다 https://deepdata.tistory.com/1388 벡터 (x,y)를 90도 회전하는 방법1. 회전 행렬 벡터 (x,y)는 극좌표계를 이용하면 $(rcos \theta , rsin \theta)$   이 상황에..

2024. 11. 16. 01:21

벡터 (x,y)를 90도 회전하는 방법

1. 회전 행렬 벡터 (x,y)는 극좌표계를 이용하면 $(rcos \theta , rsin \theta)$   이 상황에서 A만큼 회전시킨다면... Q의 좌표는 $(rcos (\theta + A), rsin (\theta + A))$   삼각함수의 덧셈정리를 이용하면 $cos (\theta + A) = cos \theta * cosA - sinA * sin \theta $이고  $sin (\theta + A) = sin \theta * cos A + cos \theta * sin A$ $x = rcos \theta, y = rsin \theta$이므로 이를 대입하면... $x' = rcos (\theta + A) = x cos A - y sin A, y' = rsin (\theta + A) = ycosA..