본문 바로가기
728x90
반응형

분류 전체보기352

[DL] Tensor에서 maximum, minimum 찾기 NumPy 의 ndarray에서 np.max 와 np.min 함수를 이용하여 최대, 최소인 값을 구함. 특정 축을 axis parameter로 지정하여 구할 수 있음 (결과는 해당 axis가 1이 됨.) np.argmax 와 na.argmin 함수를 이용하여 최대, 최소인 값의 index를 반환함. PyTorch 의 tensor 에서 torch.max와 torch.min 함수를 사용하여 최대값과 최소값을 구함. 특정 축을 dim parameter로 지정하여 구할 수 있음 (결과는 해당 축이 1이 됨.). 특정 축을 지정할 경우, torch.max와 torch.min은 indices를 같이 반환함. torch.argmax 와 torch.argmin 함수를 이용하여 최대, 최소값의 indices를 반환함. .. 2024. 3. 28.
[Python] Enum (열거형, Enumeration Type) Enum은 Enumeration type의 abbreviation. 한정된 수의 가능한 값을 value로 가질 수 있는 데이터 타입 을 가르킴. (보통 프로그래머가 가질 수 있는 값들의 집합을 정의해줌.) 프로그래밍에서 Enum을 사용하면 코드의 가독성과 안정성이 향상됨. 요일, 월, status code 등과 같이 한정된 갯수의 고정된 상수들 중에서 value 가 선택 되는 variable 을 위해 Enum이 사용됨. Enum을 사용하면 "다양한 값을 가지는 int, float나 str 을 사용하는 경우"보다 오류 가능성이 줄어들며, 프로그래머가 해당 타입의 variable이 가질 수 있는 값의 범위를 보다 명확하게 이해할 수 있도록 해줌. PyQt 또는 PySide 등과 같은 GUI 라이브러리에서 정.. 2024. 3. 24.
[OOP] Example: MObject, Point, and Class 그려지는 객체를 추상화한 MObject 를 super-class로 하고, "점"을 추상화한 Point 클래스와 Point 클래스를 상속하여 "원"을 추상화한 Circle 클래스를 간단히 만들어 봄. 사실 Circle 클래스는 Point 클래스와 is-a 관계 보다는 has-a 관계가 어울리지만, 연습을 위해서 만들어 봄. Environment matplotlib를 사용하여 그릭기 때문에 해당 라이브러리는 설치되어야 함. (Test 된 환경은 Python 3.12.1과 matplotlib 3.8.3임.) Files src 파일들의 구성은 다음과 같음. oop_test.py oop ├── Circle.py ├── MObject.py └── Point.py oop_test.py test를 위한 main scr.. 2024. 3. 23.
[DL] PyTorch: Autograd (Basic) Autograd 사용하기. 1. requires_grad 를 True로 설정. 편미분을 구할 Tensor 인스턴스에 대해 requires_grad=True 가 되도록하여, 해당 Tensor 인스턴스에 대한 연산을 추적하고, 자동으로 gradient를 계산할 수 있도록 수행. x = torch.tensor([2.0], requires_grad=True) autograd와 관련된 attributes는 다음과 같음. x.requires_grad : grad 를 구하기위해 forward propagation에서 gradient를 구하기 위해 필요한 연산 및 중간값을 추적하여 기록할지 여부를 나타냄 x.is_leaf: 계산 그래프에서 “leaf node"인지 여부를 나타냄. leaf node는 다른 tensor를.. 2024. 3. 22.
[DL] PyTorch: view, data, and detach PyTorch에서 tensor.view()와 tensor.data를 제공하며 이들은 다음과 같은 용도로 사용됨. tensor.view() tensor.view(*shape) 메서드는 tensor 인스턴스의 dimension을 수정하는데 사용됨. 이 메서드는 새로운 shape를 가진 같은 데이터의 새로운 tensor 인스턴스를 반환하지만, 원본 tensor 인스턴스와 underlying memory를 공유하여 같은 데이터를 공유함. 즉, 메모리를 재할당하지 않고 tensor의 shape와 각 축의 stride만이 바뀜. view()를 사용할 때 반환되는 tensor 인스턴스는 기본 텐서 인스턴스와 데이터를 공유하기 때문에, 하나를 변경하면 다른 하나도 변경됨. 이는 Nueral Network를 구축할 때,.. 2024. 3. 22.
[DL] PyTorch: TPU사용하기 https://github.com/pytorch/xla GitHub - pytorch/xla: Enabling PyTorch on XLA Devices (e.g. Google TPU) Enabling PyTorch on XLA Devices (e.g. Google TPU). Contribute to pytorch/xla development by creating an account on GitHub. github.com 다음 문서도 참고할 것. https://github.com/pytorch/xla/blob/master/API_GUIDE.md TPU로 PyTorch를 사용하기 위해서는 PyTorch / XLA 를 이용한다. PyTorch / XLA PyTorch로 구현된 model 및 PyTorch co.. 2024. 3. 21.
728x90
반응형