일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 소수 판정
- 강의정리
- 논문리뷰
- numpy
- zerodivide
- paper review
- 글또8기
- 코테공부
- 에스토스테네스의 체
- 추천시스템 입문
- BruteForceSearch
- 알고리즘
- CS224W
- graph
- 수학
- allow_pickle
- 질문 정리
- 추천시스템
- 이코테
- BruteForchSearch
- #이코테2021
- 그래프란
- Graph Representation Learning
- 유클리드 호제법
- 백준
- 파이썬 머신러닝 완벽가이드 공부
- 나동빈
- #나동빈
- nan값
- 데이콘 필사
- Today
- Total
목록분류 전체보기 (28)
꾸준히 써보는 공부 기록

정말 사소하지만,,, 궁금해서 찾아봤던 내용이다. 연구를 하던 중에 Element-wise sum과 Concatenate가 어떤 차이가 있는지, 사용해야되는 상황이 어떻게 다른지에 대해 찾아보았다. 예를 들면, A,B,C가 각각 3000원, 2000원, 5000원을 가지고 있다. Add는 단순하게 총합이 10000원인 것을 의미한다. 위치에 대한 정보를 고려하지 않는다. Concat은 각각 A,B,C가 가진 돈의 위치가 그대로 보존한다. 즉, Concat은 추출된 feature의 본래 위치를 보존한다. 즉, Add는 A+B 일 때 더해지는 값 한 가지를 residual로 인식하고, Concat은 두 입력이 밀접하게 관련되어 있지 않을 때 사용하는 것이 자연스럽다.
구현이란, 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다. 흔히 알고리즘 대회에서 구현 유형의 문제란? ⇒ 풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제를 지칭 완전 탐색 : 모든 경우의 수를 다 계산하는 해결 방법 시뮬레이션 : 문제에서 제시한 알고리즘을 한 단계씩 차례대로 수행해야 하는 문제 유형 파이썬에서 리스트 크기 리스트를 이용할 때에 고려해야 할 사항 -> 코딩 테스트의 메모리 제한 대체로 코딩 테스트에서는 128~512MB로 메모리를 제한한다. 메모리 제한을 염두로 두고 코딩!! 데이터 개수(리스트 길이) 메모리 사용량 1,000 약 4KB 1,000,000 약 4MB 10,000,000 약 40MB
간단한 질문들 !! Q) 컨텐츠 필터링을 이렇게 이용하는 경우가 가능할까요? 예를 들자면, A형 혈액형을 가진 유저에 대한 문서 doc와 남산타워 데이트에 대한 문서 doc가 다른 문서들보다 유사성이 높게 나왔다고 할 때, A형 혈액형 유저에게 남산 타워 데이트를 추천하는 것이 적절한가요? (이것은 아까 설 명하셨듯이 상관관계가 인과관계를 함축하지 않는다에 위배되는 것 같기는 합니다만, -- 만약 이것이 좋지 않은 접근이라면 -- 위 예 같은 A) 이건 상관관계 인과관계 예시가 아닌거 같다. 그래서 추천 시스템 알고리즘은 여러개 사용한다. 하나만 사용하면 놓칠 수 있기 때문이다. 그래서 후보군을 여러개 사용하고 그 중에서 골라서 사용하게 되다. 결과적으로 더 좋은거 쓴다는 의미이다. 예를 들면, 추천 시..
정보 필터링 정보의 양이 폭증함에 따라 정보 소비자가 "원하는" 정보를 얻는데 시간과 노력이 많이 필요하다. 추천시스템은 정보 소비자에게 원하는 정보를 쉽게 얻도록 도와주는 분야이다. 정보 필터링의 대표적인 분야 !! 검색 추천 시스템 추천 시스템 정보 소비자가 "원하는" 정보를 찾아 소비자에게 추천하는 시스템이다. 추천은 특별한 행위 없이도 정보 전달이 가능하다.(passive) 추천 시스템 분류 시나리오에 따른 분류 연관된 아이템 추천 (연관되어 있는건 structure적 특징이고) - 마켓컬리 개인화 아이템 추천 (개인화는 feature적 특징이지 않을까..) - 유튜브 피드백 종류에 따른 분류 명시적 피드백을 사용하는 추천시스템 평점/좋아요,싫어요와 같이 소비자가 "명시적으로" 자신의 선호를 표현..
Machine Learning Machine Learning이란 어플리케이션을 수정하지 않고도 데이터를 기반으로 패턴을 학습하고 결과를 추론하는 알고리즘 기법을 통칭한다 그렇다면 Machine Learning은 왜 필요한가 ? 현실 세계의 복잡한 업무와 규칙을 구현하기 위해서는 매우 복잡하고 방대한 코드가 필요하다. 그리고 수시로 변하는 업무 환경, 정책, 사용자 성향에 따라야 하기 때문에 어플리케이션 개발 또한 어렵다. 여러 변형으로 인해 숫자 인식에 필요한 여러 특징(feature)들을 일일이 고려하기가 힘들다. ⇒ 머신러닝은 이러한 복잡한 문제를 데이터를 기반으로 숨겨진 패턴을 인지해 해결한다. 머신러닝 알고리즘은 데이터를 기반으로 통계적인 신뢰도를 강화하고 예측 오류를 최소화하기 위한 다양한 수학..

참고자료: Hamilton-Graph Representation Learning, CS224W Lecture Note 3. Link Prediction Task and Features Link-Level Prediction Task as Task 존재하는 link들을 기반으로 새로운 link를 예측하는 task이다. Test를 할 때, 모든 노드 pair들의 Rank를 매긴다. (존재하는 link는 제외한다.) 그리고 Rank가 높은 top K node pair들을 예측한다. 이 때 핵심은, node들의 pair의 feature들을 design하는 것이다. Link prediction은 두 가지 formulation들로 나타낼 수 있다. Two formulations of the link predic..
https://covenant.tistory.com/131 그리디 알고리즘(Greedy Algorithm) 및 백준 문제 추천 조감도 탐욕 알고리즘 아이디어를 활용한 알고리즘(문제들) 입니다. 도입 제주 카카오에서 일하고 있던 무지는 판교 카카오에 있는 라이언이 빨리 오라는 카톡을 보고 판교 카카오로 이동하려 covenant.tistory.com 위 블로그 저자분의 글을 참고하여서 공부를 할 예정이다!! 꼼꼼하게 공부를 하셔서 많은 도움이 되고 있다!! 그리디 알고리즘이란 현재 상황에서 지금 당장 좋은 것만 고르는 방법을 의미한다. 아직 그리디 알고리즘의 풀이법을 바로 생각해내는데 어려움이 있다... 그리디는 기준에 따라 좋은 것을 선택하는 알고리즘이므로 문제에서 '가장 큰 순서대로', '가장 작은 순서..

1. Traditional Methods for ML in Graphs Graph에서의 ML task들은 다음과 같다. Node-level prediction Link-level prediction Graph-level prediction Traditional ML Pipeline의 경우에는 node / link / graph에 대한 feature들을 각각 design하게 된다. 그리고 모든 training data에 대해서 feature들을 포함하고 있다. ML model을 training하는데는 Random Forest, SVM, Neural Network를 사용한다. 주어진 새로운 node / link / graph에 대해서, feature를 이용해서 prediction을 한다. 결론적으로 좋은 성..
문제 M 이상 N 이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력 한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 예제 입력 1 3 16 예제 출력 1 3 5 7 11 13 해결 방법 에라토스테네스의 체를 이용해서 해결하였다. 에라토스테네스의 체 알고리즘 다수의 자연수에 대하여 소수 여부를 판별할 때 사용하는 대표적인 알고리즘 에라토스테네스의 체는 N보다 작거나 같은 모든 소수를 찾을 때 사용 에라토스테네스의 체 알고리즘의 구체적인 동작 과정은 다음과 같다. 2부터 N까지의 모든 자연수를 나열한다. 남은 수 중에서 아직 처리하..
문제 한 변의 길이가 1cm인 정사각형 모양의 타일이 있다. 이 타일들을 가로가 xcm, 세로가 ycm인 직사각형 모양의 벽에 빈틈없이 붙였다. x와 y는 정수이다. 이 직사각형에 하나의 대각선을 그렸다. 직사각형에 붙어 있는 x*y개의 타일 중에는 대각선이 그려진 타일도 있고, 그렇지 않은 타일도 있다. x*y개의 타일 중에서 대각선이 그려져 있는 타일의 개수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 가로의 길이 xcm와 세로의 길이 ycm가 주어진다. x와 y는 1,000,000,000 이하의 자연수이다. x와 y 사이에는 빈칸이 하나 이상 있다. 출력 첫째 줄에 대각선이 그려져 있는 타일의 개수를 출력한다. 예제 입력 1 8 12 예제 출력 1 16 해결 방법 타일 위에서의 직선을 생각해보았..