-
Lv2. P-Stage 02Daily 2022. 3. 23. 02:22
오늘은 멜론 스터디가 있었다. 다른 두 분 께서 Training Deep AutoEncoders for Collaborative Filtering과 Neural Collaborative Filtering 논문을 각각 발표해주셨는데, 수업 때 들은 내용을 복습한다고 생각하고 들으니 이해가 더 잘 되었다.
Deep AutoRec을 사용하기 위해 Dropout을 0.8로 크게 줬다는 점과, 활성화 함수로 SELU라는 것을 적용 했다는 점, neural Collaborative filtering에서는 GMF와 MLP를 결합하는 구체적인 방법에 대해서 배웠다.
강의에서는 DL 모델의 장점과 한계, Autoencoder 기반의 CF, Rating prediction과 Top-k Ranking을 각각 딥러닝 모델로 어떻게 적용했는지, cold-start problem을 어떻게 완화했는지, 텍스트나 이미지, 오디오 같은 고차원 side-information을 어떻게 모델에 입력을 하는지를 배웠다.
피어세션 시간에는 앞으로 모델의 성능을 높이기 위해서 어떻게 해야하는가에 대해서 나의 의견을 제시했고, 어제 제출한 결과에 대해서 얘기를 해보는 시간을 가졌다.
그리고 어떤 모델이 성능을 높일 수 있을까에 대한 토의와 앙상블을 어떻게 구성할 것인가에 대한 토의를 거쳐서 아직 베이스라인과 추천시스템 모델에 대한 이해가 부족하다는 결론을 내리고 최대한 강의를 먼저 집중해서 듣기로 했다.
오늘 푼 문제는
https://www.acmicpc.net/problem/18917
18917번: 수열과 쿼리 38
3번째 쿼리가 끝난 이후 배열의 상태는 [0, 3, 1, 4]이다. 6번째 쿼리가 끝난 이후 배열의 상태는 [0, 3, 1, 4, 1]이다. 10번째 쿼리가 끝난 이후 배열의 상태는 [0, 3, 1]이다.
www.acmicpc.net
먼저 수열과 쿼리 38이다.
수열과 쿼리 문제를 처음 접하는데, 그 중 가장 난이도가 낮은 문제로 실버 4의 난이도이지만 xor에 대한 이해와 약간의 아이디어가 있어야 풀 수 있는 문제다.
문제에서 배열 A가 있다. 라고 설명을 하는데, 배열로 문제를 해결하려고 하면 아마도 시간초과가 나지 싶다.
xor을 생각해서 변수를 잘 두고 계산을 하면 간단히 해결 가능한 문제이다.
다음은
https://www.acmicpc.net/problem/10997
10997번: 별 찍기 - 22
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
www.acmicpc.net
별찍기 - 22 문제이다.
별찍기 문제를 안푼지 오래되기도 했고, 문제 설명이 규칙을 보고 출력을 하라... 라는 문제라서 실버2의 난이도 치고 꽤 오래 걸렸다.
결국 규칙을 찾아서 반복문이나 재귀로 푸는 것은 포기하고 n의 값이 1이 아니라면, 첫째 줄과 두번째 줄은 그냥 출력 한 다음에 배열을 사이즈에 맞게 만들어서 공백 위치의 점을 한 칸씩 이동하면서 별을 공백으로 바꿔주는 방법으로 해결했다.
'Daily' 카테고리의 다른 글
Lv2. P-Stage 04 (0) 2022.03.25 Lv2. P-Stage 03 (0) 2022.03.24 Lv2. P-Stage 01 (0) 2022.03.22 Lv2. Day 8 (0) 2022.03.18 Lv2. Day 7 (0) 2022.03.17