Mixup 정리 및 구현
·
ML & DL/Deep Learning
Mixup모델을 학습할 때 Overfitting을 방지하기 위해 다양한 규제(Regularization) 기법이 존재합니다.Mixup은 그 중 데이터 증강(Data Augmentation)과 관련된 기술 중 하나로, 학습 데이터에서 두 개의 샘플 데이터를 혼합(Mix)하여 새로운 학습 데이터를 만드는 기술입니다.위 그림처럼 개와 고양이 이미지 데이터를 mixup 한 뒤, image 데이터 뿐만 아니라 label 데이터 또한 mixup 합니다. mixup은 간단하게 수식으로 표현할 수 있습니다.$$ \hat{x} = \lambda x_i + (1-\lambda) x_j $$$$ \hat{y} = \lambda y_i + (1-\lambda) y_j $$\(x\) : image 데이터 (\(x_i\)는 고양..
[Ubuntu] Docker Container 한글 깨짐 해결
·
Dev/Linux
1. locales 설치 $ apt-get install locales 2. 한글 설치 확인 $ locale -a ko_KR.utf8 이 없는 것을 확인할 수 있다. 3. 한글 패키치 다운로드 $ apt-get install language-pack-ko 다시 2번을 확인하면 ko_KR.utf8 을 확인할 수 있다. 4. 한글 locale 구성하기 $ locale-gen ko_KR.utf8 5. 한글 locale 설정하기 $ dpkg-reconfigure locales 엔터를 누르며 ko.KR.UTF-8 에 해당하는 number를 찾습니다 (ubuntu 18.04의 경우 298번 이였습니다.) 엔터를 누르다 Locales to be generated가 뜨면 298을 입력해주고, Default locale..
[Ubuntu] Matplotlib 한글 폰트 설정
·
Dev/Linux
1. Nanum Font Install apt-get install fonts-nanum* 2. matplotlib 경로 확인 print(matplotlib.__file__) 3. Nanum Font copy to matplotlib cp /usr/share/fonts/truetype/nanum/Nanum* /opt/conda/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf/ 4. matplotlib Font cache 삭제 rm -rf ~/.cache/matplotlib/* 5. Font 목록 확인 import matplotlib.font_manager font_list = matplotlib.font_manager.findSystemFonts(f..
[Ubuntu] wget 으로 구글 드라이브 파일 Download
·
Dev/Linux
1. 링크 생성 2. 명령어 수정 wget --load-cookies ~/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies ~/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id={FILEID}' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id={FILEID}" -O {FILENAME} && rm -rf ~/cookies.txt 위 명령어에서 {FILEDID} 2개를 내 링크의 FILEDID로 변경한다..
[프로그래머스] / [Level 1] / [Python] 공원 산책
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(park, routes): # E, W, N, S direct = {'E': [0, 1], 'W': [0, -1], 'S': [1, 0], 'N': [-1, 0]} x, y = 0, 0 # 열 행 n, m = len(park[0]), len(park) # 열 행 maps = [] for idx1, p in enumerate(park): map = [] for idx2, p..
[프로그래머스] / [Level 3] / [Python] 등굣길
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/42898 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr DFS를 사용하여 해결하려 하였지만, 시간 초과가 떠서 해결하지 못하였다. 더보기 def solution(m, n, puddles): answer = 0 # m = 열, n = 행 maps = [[0 for _ in range(m)] for _ in range(n)] for puddle in puddles: maps[puddle[1]-1][puddle[0]-1] = -1 # 오른쪽과 아래쪽으로만 ..
[프로그래머스] / [Level 3] / [Python] 야근 지수
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr heapq 모듈을 사용하여 해결하였다. import heapq def solution(n, works): answer = 0 if sum(works)
[프로그래머스] / [Level 3] / [Python] 이중우선순위 큐
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/42628 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Heap 모듈을 사용해서 해결하였다. import heapq def solution(operations): answer = [] h = [] for oper in operations: order, index = oper.split(' ') index = int(index) if order == 'I': heapq.heappush(h, index) else: if h: if index == 1: h..
욱근욱
개미는 오늘도 열심히 일을하네