일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- REACT
- ML
- web
- GAN
- pytorch
- PRML
- SSL
- nlp
- Depth estimation
- 자료구조
- clean code
- cs
- CV
- 알고리즘
- FGVC
- Front
- classification
- Meta Learning
- 딥러닝
- math
- dl
- Vision
- Python
- computervision
- Torch
- algorithm
- 머신러닝
- nerf
- FineGrained
- 3d
- Today
- Total
목록Python (18)
KalelPark's LAB
Abstract 본 논문은 label 없이, model을 학습하는 Self-Supervised Learning을 분석합니다. 본 논문은 3가지 method를 비교합니다. (BiGAN, RotNet, DeepCluster). 데이터가 상당히 많더라도, Supervision과 같이 학습하는 것은 불가능합니다. 1) 본 논문은 초기 layer에서는 natural images의 통계에 대한 정보를 갖는 것이 힘들다는 것을 설명하고, 2) self-supervision에서는 그러한 표현력을 Self-supervision을 통해서, 학습될 수 있다고 설명합니다. 그리고, 대규모 데이터셋을 사용하는 것 대신 합성 변환을 활용하여, low-level statistics를 포착할 수 있습니다. Introduction 본..
import torch from PIL import Image import numpy as np from torchvision.transforms import transforms tf = transforms.ToPILImage() # Load image image = Image.open("/content/img.jpeg") image = np.array(image) tensor_image = torch.tensor(image) tensor_image = tensor_image.float() mask = torch.zeros_like(tensor_image) # Create binary mask mask[50:300, 200:300, :] = 1.0 # column, row mask[50:300, 420:..
Python에서의 일반적으로 자주 활용되는 메소드(Magic Method)인 __str__ 메서드와 __repr__ 메서드의 차이 두 메소드 간에는 미묘한 차이가 있습니다. 따라서 차이점을 명확하게 아는게 좋습니다. 공통점 - 두 메소드는 모두 "객체를 문자열로 반환"한다는 공통점이 존재 아래의 코드를 활용해보면 __repr__ 와 __str__이 겹친다는 것을 알 수 있습니다. import torch import torch.nn as nn class model(nn.Module): def __init__(self): super().__init__() self.linear1 = nn.Linear(10, 100) self.linear2 = nn.Linear(100, 100) self.linear3 = nn..
파이썬 프로그래밍의 상당 부분은 데이터를 포함하는 클래스를 정의하고, 클래스에 속하는 객체들이 서로 상호작용하는 방법을 기술하는 것으로 여겨집니다. 모든 파이썬 클래스는 함수와 attribute를 함께 캡슐화하는 일종의 컨테이너라고 할 수 있습니다. 파이썬은 데이터를 관리할 때 사용할 수 있도록, 리스트, 튜플, 집합, 딕셔너리 등에서 활용됩니다. * FrequencyList를 리스트(list)의 하위 클래스로 만듦으로써, 리스트가 제공하는 모든 표준 함수를 FrequencyList에서도 사용할 수 있습니다. class FrequencyList(list): def __init__(self, members): super().__init__(members) def frequency(self): counts ..
itertools 효율적인 루핑을 위한 이터레이터를 만드는 함수이다. 자체적으로 혹은 조합하여 유용하고 빠르고 메모리 효율적인 도구의 핵심 집합을 표준화합니다. 순수 파이썬에서 간결하고 효율적으로 특수화된 도구를 구성할 수 있도록 이터레이터 대수(iterator algebra)를 형성합니다. chain : 여러 iteration을 하나의 순차적인 이터레이터로 합칠 때 사용합니다. it = itertools.chain([1, 2, 3], [4, 5, 6]) for i in it: print(i) print(list(it)) repeat : 한 값을 게속 반복해 내놓고 싶을 때 사용합니다. it = itertools.repeat("안녕", 3) print(list(it)) cycle : 어떤 이터레이터가 원..
Dictionary - 일반적으로, Dictionary의 원소 삽입 순서와 iteration 순서는 일치하지 않는다. 이러한 일이 발생하는 이유는, Dictionary의 구현이 내장 hash와 난수 씨앗값(seed)을 사용하는 해시 테이블 알고리즘이기 때문이다. - 만약 dictionary를 순서에 의존하고 싶다면, 아래와 같은 명령어를 사용하면 됩니다. baby_names = { "cat" : "kitten", "dog" : "puppy" } print(baby_names.keys()) print(baby_names.values()) print(baby_names.items()) print(baby_names.popitem()) 기존 방법에서는, dictionary에서 값을 불러올 때, 순서대로 불러오..
Packing & Unpacking Packing : 인자로 받은 여러개의 값을 하나의 객체로 합쳐서 받을 수 있도록 합니다. tuple은 *를 사용하여, 나타냅니다. 반면에 **의 경우, dictionary로써 사용됩니다. def func(*args): print(args) print(type(args)) // func(1, 2, 3, 4, 5, 6, 'a', 'b') // result // (1, 2, 3, 4, 5, 6, 'a', 'b') // def kwpacking(**kwargs): print(kwargs) print(type(kwargs) // kwpacking(a=1, b=2, c=3) // result // {'a': 1, 'b': 2, 'c': 3} // Unpacking : 함수를 호..
PEP(Python Enhancement Proposal) 8이란? - Python 코드를 어떤 형식으로 작성할지 알려주는 가이드라인이다. * 파이썬 커뮤니티에서 자주 활용되는 방안이기에, 참조하시기 바랍니다. https://peps.python.org/pep-0008/ PEP 8 – Style Guide for Python Code | peps.python.org PEP 8 – Style Guide for Python Code Author: Guido van Rossum , Barry Warsaw , Nick Coghlan Status: Active Type: Process Created: 05-Jul-2001 Post-History: 05-Jul-2001, 01-Aug-2013 Table of Con..