목록전체 글 (85)
working_helen
교육 프로그램명 : 혁신융합대학 프로그래머스 PCCP(Python) 대비 교육 교육 일시 : 2023.08.24 10:00~15:00 강사명 : 김태원 강사님 1. BFS 2. DFS 1. BFS - 큐 자료형을 이용해 구현 - 시작 노드에서 가까운 노드들부터 우선 방문하는 방식 => 최단거리 or 최소 횟수문제, 특정 지점에 도착하는 최소경로 or 최거리를 구하는 문제에서 주로 사용된다. - 연습 문제 : BFS로 이진트리 탐색 - while문 한번마다, Q 내 현재 level의 모든 노드에서, 가능한 다음 노드를 찾아 Q에 넣고, level을 1 증가한다. from collections import deque def BFS(): Q=deque() Q.append(1) # 1 level의 root 노드..
교육 프로그램명 : 혁신융합대학 프로그래머스 PCCP(Python) 대비 교육 교육 일시 : 2023.08.23 10:00~15:00 강사명 : 김태원 강사님 1. 정렬 함수 2. Stack 스택 구현 3. Queue 큐 구현 1. 정렬 함수 1) sort method - list나 array를 정렬하는 method - 새로운 list 객체를 리턴하지 않고 기존 list를 변화시킨다. list.sort()# 오름차순 list.sort(reverse = True)# 내림차순 - key를 지정한 정렬 : 정렬시 사용할 기준값 key를 지정하여 정렬한다. list = [(x1, y1), (x2, y2),,,] 형식일때 # x값을 기준으로 내림차순 정렬 list.sort(key = lambda v : -v[0]..
논문 리뷰 과정에서 접한 경사하강법에 대해 학습해본다. 1. 경사하강법 1) loss function 2) 경사하강법 3) 수식 표현 4) 경사하강법의 문제점 2. Epoch, Iteration, Batch 3. 배치 경사하강법 4. 확률적 경사 하강법 5. 미니배치 확률 경사 하강법 1. 경사하강법 1) loss function - loss function 손실 함수 : 모델의 파라미터 θ에 따른 예측값과 실제값 사이의 차이인 loss를 계산하는 함수 - loss function 값이 낮아질수록 예측값과 실제값 사이의 차이가 적으므로 더 좋은 모델 파라미터라고 할 수 있다. 즉 loss function 값을 최소화함으로써 최적의 모델 파라미터를 얻을 수 있다. 2) 경사하강법 Gradient Desce..
데이터 수집 단계에서 학습한 내용 중 네번째로 주소 데이터를 위도/경도 값으로 전환하는 방법에 대해 공부해본다. 1. Geocoding 지오코딩 2. 위경도 변환 코드 분석 1. Geocoding 지오코딩 - 주소와 관련된 텍스트 데이터 (주소, 도로명, 산 이름 등 고유명칭)를 위도/경도 좌표 정보로 변환하는 것 - 네이버, 구글, 다음 등 위도와 경도 관련 서비스를 해주는 다양한 geocoding 오픈 API 존재한다. - 본 프로젝트에서는 네이버 클라우드 플랫폼 지도 API(Geocoding OpenAPI)를 활용했다. NAVER CLOUD PLATFORM에 접속해 네이버 지도 Geocoding에 대한 Application 활용 등록으로 API 사용을 위한 ID와 Key 정보를 발급받는다. [네이버..
논문명 : Factorization Machines 저자명 : Steffen Rendle 팀명 : 시고르자브종 파일 본 논문에서는 Factorization Machines(FM) 모델에 대해 설명한 후, SVM(Support Vector Machines)과의 비교와 다른 factorization model로의 확대 가능성을 보임으로써 FM 모델의 장점을 보여주고자 한다. ✏️ 논문 내용 요약 1. FM은 SVM와 factorization model의 장점을 결합한 새로운 모델이다. 2. FM은 아래와 같은 장점이 있다. - sparse data에도 적용가능하다. - linear 방정식을 가지며, linear time 내에 연산이 가능하다. - general predictor이다. 3. FM은 sparse..
논문 리뷰 과정에서 접한 SVM 모델에 대해 학습해본다. 1. SVM Support Vector Machine 1) 개념 2) 결정 경계 3) margin 4) SVM의 종류 2. Linear hard margin SVM 1) 라그랑주 승수법 2) Primal form과 Dual form 3. Linear soft margin SVM 1) slack varibles와 C 2) Dual form 4. Kernel SVM (Non-Linear SVM) 1. SVM Support Vector Machine 1) 개념 : 패턴 인식, 분류, 그리고 회귀 분석 등에 사용되는 머신러닝 알고리즘 주어진 데이터에서 class를 나누는 기준선을 정의하고, 분류되지 않은 새로운 데이터가 어떤 class에 속할지 판단 📌 ..
교육 프로그램명 : 혁신융합대학 프로그래머스 PCCP(Python) 대비 교육 교육 일시 : 2023.08.22 10:00~15:00 강사명 : 김태원 강사님 1. string에서 문자 counting 1) string.count 2) Counter 클래스 2. 시간복잡도와 Hash table 1) defaultdict 1. string에서 문자 counting 1) string.count(char, start, end) - 주어진 string에서 특정 문자 하나의 빈도수를 출력한다. - char를 검색할 검색 구간을 지정할 수 있다. start : 검색을 시작할 index / end : 검색을 끝낼 index 2) Counter 클래스 - string에 등장하는 각 char를 key로, char의 등장..
교육 프로그램명 : 혁신융합대학 프로그래머스 PCCP(Python) 대비 교육 교육 일시 : 2023.08.21 10:00~15:00 강사명 : 김태원 강사님 1. 4/8방향 탐색 2. 90도 회전이동 1. 4/8 방향 탐색 - row 방향, col 방향 이동 pair list 생성하기 - 4방향 탐색 # 위 / 오 / 아래 / 왼 => 시계방향 회전 dr=[-1, 0, 1, 0] #행방향 이동 dc=[0, 1, 0, -1] #열방향 이동 - 8방향 탐색 # 위 / 대각선 / 오 / 대각선 아래 / 대각선 / 왼 / 대각선 => 시계방향 회전 dr = [-1, -1, 0, 1, 1, 1, 0, -1] #행방향 이동 dc = [0, 1, 1, 1, 0, -1, -1, -1]] #열방향 이동 - 도전문제 :..
추천 시스템의 첫번째 구현 방법으로 인코딩 기반 추천 시스템을 구현하였다. 1. 인코딩 기반 추천시스템 과정 2. 도서 벡터화 1) CountVectorizer 2) One-hot encoding 3. 유사도 측정 4. 추천 리스트 작성 5. 한계 및 개선방안 1. 인코딩 기반 추천시스템 과정 [구성] 키워드에서 각 단어의 등장 여부를 1과 0의 값으로 두고 도서를 벡터화 → 도서 간 코사인 유사도 계산 → 유사도 기반 베스트셀러 추천 리스트 작성 벡터화 : CountVectorizer 이용 / One-hot encoding 유사도 : 코사인 유사도 [결과] - One-hot encoding 기반 DTM 선택 - 가중합 코사인 유사도 이용 (4 : 5 : 1 비율) - 최종 추천 함수 find_sim_b..
추천시스템 모델링 과정에서 접한 CountVectorizer와 TfidfVectorizer, KoNLPy에 대해 공부해본다. 1. 문서-단어 행렬 2. CountVectorizer 문서 벡터화 3. TfidfVectorizer 문서 벡터화 4. 문서 벡터화에서 한국어 처리 1) tokenizer 설정 2) 한국어 형태소 분석기 KoNLPy 1. 문서-단어 행렬 (document-term matrix) (위키백과) 문서 -용어 매트릭스는 문서 모음에서 발생하는 용어의 빈도를 설명하는 수학적 매트릭스 입니다. 문서 용어 행렬에서 행은 컬렉션의 문서에 해당하고 열은 용어에 해당합니다. 각 ij 셀은 문서 i 에서 단어 j가 나타나는 횟수입니다 . 따라서 각 행은 해당 행에 해당하는 문서의 내용을 나타내는 용어..