Lynn SHIN
Hot
-
[0강] 딥러닝 기초 이론 스터디 - CS231n
[0강] 딥러닝 기초 이론 스터디 - CS231n
2020.10.10Standford University 의 CS231n: Convolutional Neural Networks for Visual Recognition 강의를 매주 들으며 스터디한 내용 (번역 및 정리)을 매주 블로그에 포스팅 할 계획이다. 🕵️♂️ 강의 소개 컴퓨터 비전은 이제 우리 사회에서 어디서나 볼 수 있게 되었다 - 검색, 이미지 이해, 앱, 의학, 드론, 자율주행차 등... 이런 프로그램들의 핵심은 이미지 분류 (image classification = 단일 객체 분류), 로컬라이제이션 (localization = 단일 객체 위치 정보 파악), 인식 (detection = 여러 객체에 대해 classification과 localization 동시 수행)과 같은 시각적 인식(Visual Reco.. -
[3강] Loss Functions and Optimization
[3강] Loss Functions and Optimization
2020.10.30이번 시간에는 W를 어떻게 정할까를 고민하고 최적의 W를 구하는 방법에 대해 이야기할 예정이다. 지난시간 임의의 W를 가지고 이미지에 대한 10개의 클래스 스코어를 계산했다. 밑에 예시를 보면 왼쪽에 고양이 이미지에 대해 고양이 클래스는 2.9 스코어를 준 반면 개구리 클래스는 3.7 스코어를 줬다. 우리는 정답 클래스가 제일 높은 클래스 스코어를 주기를 바란다. 그러므로 임의의 W를 가지고 만든 이 분류기는 잘 동작하지 않는 것을 알 수 있다. 중간에 자동차 이미지에 대한 클래스들의 스코어를 보면 여기서는 자동차 클래스가 다른 클래스들 보다 6.04로 제일 높은 스코어를 줬는데 이것은 좋은 예시이다. 하지만 개구리 이미지는 개구리 클래스가 -4.34라는 다른 클래스의 점수보다도 낮은 점수를 줬기 때문에.. -
EfficientNet 모델 구조
EfficientNet 모델 구조
2021.01.12EfficientNet 정리 글 : [AI Research Paper Review/More] - EfficientNet 정리 EfficientNet 정리 이전글 : [AI/Self-Study] - EfficientNet 모델 구조 EfficientNet 모델 구조 EfficientNet - B0 baseline 네트워크 구조 EfficientNet B0 전체 모델 구조 파악 MBConv1 Block 구조 (= mobile inverted bottleneck.. lynnshin.tistory.com EfficientNet - B0 baseline 네트워크 구조 EfficientNet B0 전체 모델 구조 파악 MBConv1 Block 구조 (= mobile inverted bottleneck convolu..
New
-
[프로그래머스 연습] 더 맵게 (Python)
[프로그래머스 연습] 더 맵게 (Python)
2021.10.02https://programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr import heapq def solution(scoville, K): answer = 0 # 효율성 테스트 실패 # while min(scoville) < K: # scoville.sort() # scoville.append(scoville.pop(0) + (scoville.pop(0) * 2)) # answer += 1 # heapq 모듈을 사용.. -
[프로그래머스 연습] 수식 최대화 (Python)
[프로그래머스 연습] 수식 최대화 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/67257 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr from itertools import permutations def calc(priority, n, expression): if n == 2: return str(eval(expression)) if priority[n] == '*': res = eval('*'.join([calc(priority, n + 1, e) for e in expression.spl.. -
[프로그래머스 연습] 두 정수 사이의 합 (Python)
[프로그래머스 연습] 두 정수 사이의 합 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/12912 코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr def solution(a, b): answer = 0 min = a max = b if b < a: max = a min = b for i in range(min,max+1): answer += i return answer 엄청 간단한 다른 사람 풀이 (대단..) sum과 min/max 함수.. -
[프로그래머스 연습] 올바른 괄호 (Python)
[프로그래머스 연습] 올바른 괄호 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/12909 코딩테스트 연습 - 올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 programmers.co.kr def solution(s): stack = [] for c in s: if c == '(': stack.append(c) else: if stack and stack.pop() == '(': continue else: return False return len(stack) == 0 다른 풀이 def is_pair(s.. -
[프로그래머스 연습] 오픈채팅방 (Python)
[프로그래머스 연습] 오픈채팅방 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr * 2019 KAKAO BLIND RECRUITMENT 딕셔너리를 활용해 유저 아이디에 대한 유저 닉네임을 저장해주면 된다. def solution(record): answer = [] dict = {} for mes in record: # Enter나 Change인 경우 dict에 추가 if (mes.split(' ')[0] == 'Enter') | (mes... -
[프로그래머스 연습] 문자열 압축 (Python)
[프로그래머스 연습] 문자열 압축 (Python)
2021.09.04https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr * 2020 KAKAO BLIND RECRUITMENT 문제 def solution(s): cand = [len(s)] for i in range(1, len(s)): #size split = [s[j:j+i] for j in range(0,len(s),i)] cnt = 1 res = "" # check duplicate for k in range(1,l..