본문 바로가기

분류 전체보기55

[프로그래머스] N으로 표현 (LEVEL 3) programmers.co.kr/learn/courses/30/lessons/42895 코딩테스트 연습 - N으로 표현 programmers.co.kr [프로그래머스] N으로 표현 (LEVEL 3) 동적 프로그래밍 문제. 쉽게 생각했는데 생각보다 고민한 문제. 처음에는 dp[n] = dp[n-1] + ['+N', '-N', '/N', '*N'] 계산을 한 결과만 구해나가면 될줄 알았지만, dp[n] = dp[i] + dp[n-i]; i : 1~n-1 라고 생각하고 풀어야한다. 조건이 많아서(max deep이 8) DFS로 풀어도 시간초과가 나지 않고 풀리긴 한다. def solution(N, number): adds= lambda x,y: map(int,[x+y,x-y,x/y,x*y]) dp = [0] .. 2021. 4. 18.
[정리] DeepFM: A Factorization-Machine based Neural Network for CTR Prediction 논문 링크: arxiv.org/pdf/1703.04247v1.pdf 도입 이용자가 추천된 아이템을 클릭할 확률을 추정하는 추천 시스템에서, Click-trhough Rate (CTR)을 바르게 예측하는 것은 필수적이다. CTR prediction에서, 이용자의 클릭하는 행동에 숨어있는 implicit feature의 상호작용을 학습하는 것은 중요하다. 앱 마켓에 대한 연구에서, 사람들은 주로 식사시간에 음식 배달앱을 다운로드 한다는 것을 알아냈다. 이는 곧, 앱 카테고리와 time-stamp와의 (2차원)상호작용을 CTR의 신호로 사용할 수 있다는 것을 말한다. 구글의 Wide & Deep model [Cheng et al., 2016]로부터 얻은 인사이트에 의하면, 저차원과 고차원 feature들의 상.. 2021. 4. 17.
Semaphore와 Mutex? Semaphore & Mutex - 세마포어와 뮤텍스는 모두 공유 자원에 대한 프로세스/쓰레드의 접근 제어 방법이다. Semaphore - 세마포어는 특정 변수 값의 갯수만큼 프로세스가 공유된 자원에 접근할 수 있도록 허용한다. - 기본적으로 Semaphore 변수, semWait 함수, semSignal 함수가 있다. Semaphore 변수 : 양수 값 (1일 경우 Binary Semaphore, 2 이상일 경우 General/Counting Semaphore) semWait 함수 : Semaphore 변수 값을 감소시키고 변수 값이 음수가 되면 semWait을 호출한 프로세스는 queue에 넣고 블록 상태로 들어간다. 음수가 아니라면 프로세스를 계속 수행한다. semSignal 함수 : Semapho.. 2021. 3. 24.
Deadlock의 개념 / 해결 방법 Deadlock 이란? - 두 개 이상의 작업이 서로 상대의 작업이 끝나기만을 기다리고 있어 더 이상 다음 단계로의 진행이 불가한 상태. - 한정된 자원을 둘 이상의 작업이 동시에 이용하려고 할 때 발생할 수 있다. - ex) Process1이 Resource1을 사용하고 있고, Resource2를 필요로 하고 Process2는 Resource2를 사용하고 있고, Resource1을 필요로 할 때, Process1은 Resource2를 Process2에 할당되어 있기 때문에 가져올 수 없다. 또한, Process2 역시 같은 이유로 Resource1을 가져올 수 없다. 그래서, 두 프로세스는 해당 자원을 받을 때 까지 무한정 대기하는 상황이 발생하는데, 이를 Deadlock이라고 한다. Deadlock .. 2021. 3. 24.