전체 글

전체 글

    시스템 프로그래밍, Pipes and Redirection

    1. 프로세스간의 커뮤니케이션 UNIX pipes는 IPC(InterProcess Communication, 프로세스간의 협동을 위함)의 형태! POSIX 시스템에서의 IPC폼의 예시 : Pipes, Sockets, Shared memory, Signals, Process return values, Enviroment variables, etc... 이 중에서 특히 UNIX Pipes를 살펴보자. 2. Pipes A. Pipes란? 한 데이터 처리 단계의 출력이 다음 단계의 입력으로 이어지는 형태로 연결된 구조 file-like abstraction for IPC, Reading과 writing엔 UNIX I/O 함수들을 사용한다. 파일 디스크립터로 표현된다. 처음에는 이 Pipe가 뭐 어떤 프로세스든 ..

    TensoFlow를 활용한 DQN 실습 Breakout 적용 - 2

    3. Game Wrapper Game Wrapper 객체의 의미? 역할? Game enviroment, emulator의 역할을 할 것이다. 이 Game Wrapper는 두 가지 중요한 것을 제공할 것이다 1. enviroment 그 자체 2. agent에게 학습될 상태 s breakout의 예시로 들자면, 볼과 블락 등 상태 s의 연속과 행동a를 이해하는 것이 매우 중요하다. 그렇기 때문에 다중 상태 (multiple states)를 Q-network에 학습시켜야 한다. 이 코드에서는 4개의 과거 프레임을 Q-network에 학습 시켜볼 것이다. 각 프레임에 대해서 프레임 차를 둬야지 더 충분한 움직임을 확인할 수 있을것이다. 따라서 각 프레임 당 4개의 프레임을 스킵함으로써 계산량을 줄이고 더 인간같..

    TensoFlow를 활용한 DQN 실습 Breakout 적용 - 1

    medium.com/analytics-vidhya/building-a-powerful-dqn-in-tensorflow-2-0-explanation-tutorial-d48ea8f3177a Building a Powerful DQN in TensorFlow 2.0 (explanation & tutorial) And scoring 350+ by implementing extensions such as double dueling DQN and prioritized experience replay medium.com 이걸 참조하여 실습을 진행해보자. 1. Frame Processor 스크린에 표현된 픽셀데이터를 이용해서 학습할것이다. 아타리의 스크린 데이터는 210x160 RGB으로 각 캡쳐 당 표현해야할 데이터..

    Convolutional layer (ConvNet, CNN)

    1. Convolutional layer (ConvNet, CNN)란? dense(fully connected) layer로만 이루어진 뉴럴넷, MLP의 한계를 극복한 layer MLP의 한계? MLP를 통해 효과적으로 비선형 함수를 모사할 수 있었고, 이 단순한 비선형 함수는 선형 함수 모형보다 성능이 좋았다. 하지만, 복잡한 구조가 필요할 경우에는 다음과 같은 한계가 존재했었다. 1. MLP에서는 별도의 feature enginnering 없이 raw feature를 곧바로 입력층에 넣었다. ->이미지의 경우 앞서 말한대로 데이터의 차원이 너무 높아진다. 이는 컴퓨팅 속도 뿐만 아니라 오버피팅으로 부정확한 모델을 만들 위험이 있다. 2. MLP에서는 각 샘플이 등장한 맥락을 고려하지 않았다 -> 샘플..

    DQN 논문 해석, 분석

    아무것도 모르는 학생이 쓴 글입니다... 고냥 이런것도 하는구나 하고 넘어가주십쇼 1. Introduction 과거에 RL에서 어려웠던 부분 : 비전, 소리 등 고차원의 감각형 인풋 왜 어려웠나? : 이전의 RL의 결과는 손수 만든 features 표현이 잘 되었는지에 지나치게 의존하였기 때문에 deep learning의 등장으로 가공되지 않은 감각형 데이터로 부터 고차원의 features를 추출하는게 가능해 졌다 neural network architectures(convolution networks, multiplayer perceptions, restricted Boltzmann machines, recurrent network -> 나중에 알아보자) 하지만 deep learning의 관점으로 보았..