개발

FastAPI 스터디한 것 정리 Building Data Science Applications with FastAPI를 읽으며. Chapter 5: 의존성 주입 의존성 주입 장점 의도가 명확하다. a clear separation of concern between the logic of the endpoint and the more generic logic 명확한 관심의 분리가 가능하다 OpenAPI 스키마가 자동으로 제작되어서 어떤 파라미터가 필요한지 명확히 보여줄 수 있다. can clearly show which parameters are expected Creating and using a function dependency dependency는 function이나 callable class로 정..
min heap에서 2가지 원소를 pop 하고 a + 2 * b 의 등식을 적용 후 push 하는 문제였다. 파이썬의 heapq를 처음 사용해보았다. 파이썬의 heapq의 경우 일반 리스트를 min heap 처럼 사용할 수 있게 해주는 라이브러리이다. heapq.heapify(list): list가 min heap으로 변한다. (O(N), 제자리에서 정렬) heapq.heappop(list): heapify된 list에서 min 값을 리턴. heapq.heappush(list, item) push의 경우 이론에서 배웠던 heapify를 자동으로 수행해준다. 0번 인덱스에는 가장 작은 값, n번 인덱스의 2n + 1 인덱스에는 left child, 2n + 2 인덱스에는 right child ( paren..
시간 초과 답안. 비효율적으로 비교가 일어남 대략 생각해보면 복잡도 O(N^2) 효율성 테스트 1, 2, 3, 4를 모두 통과하지 못했다. def solution(prices): answer = [[0, False] for _ in prices] # q = deque(answer) # print(q) # print(q) for i, p in enumerate(prices): for j in range(i): if answer[j][1] == False: answer[j][0] +=1 if prices[j] > p: answer[j][1] = True answer = list(zip(*answer))[0] return answer 이후 문제 분류처럼 스택이나 큐로 풀어봐야겠다 생각하고 고쳐보았다. dequ..
주석을 통해 설명 작성. 데크를 이용하여 큐를 만들어서 품. 현재 문서보다 우선순위 높은 것을 찾을 때 any라는 함수를 이용해서 간결히 푸는 경우도 있었다. from collections import deque def solution(priorities, location): # 우선 순위 값과 인덱스를 데크에 저장. q = deque([ (p,i) for i, p in enumerate(priorities)]) # 문서의 인덱스를 저장해서 출력 순서를 기록. result = [] while len(q) > 0: # f: priority # idx: 문서의 인덱스(priorities list 내에서) f, idx = q.popleft() # 중요도 높은 문서가 있는지 탐색. => any로 하는 풀이도 있..
코딩테스트 고득점 Kit 스택/큐 문제 풀이 import collections def solution(progresses, speeds): # 진행 상황을 기록하는 큐 progress_que = collections.deque(progresses) # progress 증가 속도를 기록하는 큐 speed_que = collections.deque(speeds) days = 0 answer = [] # 큐가 빌 때까지 실행. while len(progress_que): first_feature = progress_que.popleft() speed = speed_que.popleft() # 첫 번째로 큐에 들어간(중요도 높은) 기능이 모두 진행이 된 경우 if speed * days + first_featu..
알고리즘 고득점 Kit 풀이중 .. from collections import deque def solution(bridge_length, weight, truck_weights): answer = 0 on_bridge_w = 0 # 대기 큐 q = deque(truck_weights) # 다리 b = deque() # 현재 시각 sec = 0 while q: # 대기 큐에서 트럭 pop t_w = q.popleft() # 다리 위에 차 있는 경우 제일 먼저 진입한 차량을 다리 길이만큼 움직였는지 확인. # w는 무게, s는 출발 시각 if len(b): w, s = b.popleft() if sec - s != bridge_length: b.appendleft((w,s)) else: on_bridge_..
· 개발/AI
Feasibility of Learning (Part 5) Ultimate goal of learning 처음 보는 데이터에 대해서도 잘 예측하는 것, 처음 보는 문제도 잘 푸는 것 learning produces a hypothesis g to approximate unknown f 만약 성공적이면, g should approximate f well E_out(g) = 0에 가까워야 함. 하지만 이것은 우리가 ascretain 하기 어려움 하지만 지금까지 E_out(g) = E_in(g)에 대해서 배워왔음.(호에프딩 부등식) => 이 과정이 잘 안 되는 경우가 오버 피팅 => regularizer, more data로 해결 E_in(g)를 0으로 보내야 함! => 이 과정이 잘 안 되는 경우 언더 피팅..
· 개발/AI
Topic 2 (PART 2) Learning Unknown Target Function Learning Unknown Target Function: Introduction 제한된 데이터셋에서 타깃 함수를 찾아낼 수 있을까? Learning the target function Inference outside training data 학습과정에서 학습 결과를 신뢰할 수 있을까? 학습되지 않은 새로운 데이터에서도 결과를 잘 도출할 수 있어야 feasible 그래서 다른 해결 방법이 없느냐? => deterministic, Rescue Plan: probabilityA 'bin' experiment 항아리가 모집단, 항아리에서 샘플을 추출해서 mu hat을 구하여 통계적인 method를 이용한 모집단의 mu를..
Woogie2
'개발' 카테고리의 글 목록 (2 Page)