분류 전체보기
[SciChart] Vanilla Javascript에서 SciChart 사용하기
Javascript에서 SciChart 사용하기 script를 가져오고 미리 필요한 것들 정의하기 ... const { SciChartSurface, NumericAxis, DateTimeNumericAxis, FastLineRenderableSeries, XyDataSeries, XyScatterRenderableSeries, EllipsePointMarker, EZoomState, SweepAnimation, SciChartJsNavyTheme, RolloverModifier, RubberBandXyZoomModifier, NumberRange, LegendModifier, MouseWheelZoomModifier, ZoomPanModifier, ZoomExtentsModifier } = SciCha..
[PostgreSQL] Windows 외부 접속 허용 설정 및 외부 접속 방법
postgresql.conf 수정 C:\Program Files\PostgreSQL\15\data_ 경로에 postgresql.conf listen_addresses = '*' 로 설정 - 모든 ip 주소에서 접속 허용 white list ip 설정하고 싶으면 ip 주소 쓰기 ps_hba.conf 수정 C:\Program Files\PostgreSQL\15\data 경로에 pg_hba.conf # IPv4 local connections: host all all 0.0.0.0/0 scram-sha-256 IPv4 local connection address 0.0.0.0/0 으로 수정(원래는 127.0.0.1) 방화벽 설정 고급 보안이 포함된 windows defender 방화벽 인바운드 규칙 - 새 규..
[라이트 딥러닝] 1. 넓은 시각으로 보는 머신러닝 개괄
2022년 11월 Chat GPT가 대중적으로 굉장히 넓게 알려지면서 서서히 붐이 오고 있던 인공지능 시장이 그야말로 전성기를 맞이했다는 생각이 드는 요즘입니다. LLM(Large Language Model) 뿐만 아니라 CV(Computer Vision) 분야에서는 저작권 문제가 대두되고 있기는 하지만 사진과 그림체를 학습시켜 그림체를 입은 새로운 그림을 만들어내고, 음성합성 분야에서는 인공지능을 활용해 TTS가 노래를 부르게 하기도 합니다. 눈에 보이는 서비스를 제공하는 위와 같은 분야를 제외하고도 인공지능을 통한 이상탐지 솔루션, 강화학습을 활용한 게임 봇(Bot) 생성 등 아직 저도 완벽히 쓰임을 다 알지 못하는 무궁무진한 분야에서 딥러닝이 사용되고 있습니다. 이번 포스팅에서는 AI를 공부하기로 ..
[강화학습] Dealing with Sparse Reward Environments - 희박한 보상 환경에서 학습하기
※ 아래 링크의 내용을 공부하며 한국어로 정리한 내용입니다. Reinforcement Learning: Dealing with Sparse Reward Environments Reinforcement Learning (RL) is a method of machine learning in which an agent learns a strategy through interactions with its environment… medium.com 1. Sparse Reward Sparse Reward(희박한 보상) : Agent가 목표 상황에 가까워졌을 때만 긍정 보상을 받는 경우 현재 실험 환경 세팅과 같음 Curiosity-Driven method agent가 관심사 밖의 환경에도 동기를 받도록 Curric..
[Obsidian] 커뮤니티 플러그인 추천 및 Git을 활용한 연동법
지난 포스팅에서는 Obsidian과 Notion을 비교하는 내용을 다뤘었는데, 이번 포스팅에서는 어차피 옵시디언으로 넘어온 거! 기깔나게 써봅세! 하는 마음가짐으로 커뮤니티 플러그인 소개를 하도록 하겠다. 이전에 말한 것처럼 옵시디언은 유저가 개발한 플러그인을 다운받아서 기능을 확장시킬 수 있는데, 이게 사실상 옵시디언을 사용하는 이유라고 해도 무방하다. 그럼 바로! 시작하도록 하겠다. 정렬 순서는 추천순은 아니고 생각난 대로이다. Git 활용법만 궁금하시면 1번은 생략하시고 2번으로 넘어가시면 된다. 1. Obsidian 커뮤니티 플러그인 추천 a. Calendar 안녕하세요, 데일리 노트 없이는 살 수 없는 사람입니다. 나와 같은 종류의 사람이라면 장담컨데 옵시디언으로 넘어와서 가장 먼저 찾은 게 캘..
[Obsidian] Notion vs Obsidian, 내가 Obsidian으로 이사한 이유
2~3주 전이었나? 업무시간 중간에 Notion 서버에 잠시간 장애가 발생했던 적이 있다. 나는 내 기억력을 안 믿는 편이라 해야할 업무부터 일하면서 리서치한 내용 등을 노션에 다 기록해두고 쓰고 있어서 아주, 아주, 아주 불편한 시간이었다. 그때 결심했다. 아, 대체제를 찾아야겠다. 그때 Obsidian을 알게 됐다. 노마드 코더의 영상을 보고(사실 봤다기엔 썸네일만 봤다) 처음으로 Obsidian을 접하게 되었고, 장단점을 비교한 여러 글들을 읽어보고 이사를 결심하게 되었다. 이사 과정이 조금 험난하기도 했고, 적응에도 시간이 필요해서 이제 조금 알 것 같은 기분이라 나처럼 이사를 고민 중인 분들을 위해서 기록을 남겨보려고 한다. 연동성, 디자인(이라 쓰고 사용자 경험), 확장성을 중심으로 비교해보자..
[강화학습] DDPG(Deep Deterministic Policy Gradient)
DQN의 차원의 저주 문제(고차원 action을 다루는 경우 연산 속도가 느려지고 memory space를 많이 요함)를 off-policy actor critic 방식으로 풀어낸다. 기존 DQN 방식의 insight들에 batch normalization replay buffer target Q network Actor-critic 파라미터화 된 actor function을 가짐 actor function : state에서 특정 action으로 mapping하여 현재 policy를 지정 policy gradient 방식으로 학습 여기에서 J가 Objective Function(목표함수) actor function이 목표 함수를 gradient asent로 최대화→ 이 때의 policy parameter..
[강화학습] Dueling Double Deep Q Learning(DDDQN / Dueling DQN / D3QN)
Dueling Double DQN https://arxiv.org/pdf/1509.06461.pdf https://arxiv.org/pdf/1511.06581.pdf Double DQN DQN에서 reward를 과대 평가하는 문제가 있음. Q Value가 agent가 실제보다 높은 리턴을 받을 것이라고 생각하는 경향 ⇒ Q learning update 방정식에 다음 상태(state)에 대한 Q value 최대값이 존재하기 때문 Q 값에 대한 max 연산은 편향을 최대화한다. 환경의 최대 true value가 0인데 agent가 추정하는 최대 true value가 양수인 경우에 성능 저하 해결을 위해 두 개의 network 사용. Q Next : action selection → 다음 액션으로 가장 좋은 ..
[Computer Science] CPU 작동원리
CPU 작동원리 CPU 구성 연산 장치(ALU) 산술 / 논리 연산 수행 데이터를 레지스터에서 읽어오고 다시 레지스터에 결과를 저장 제어 장치 명령어의 순서를 제어 주기억장치에서 명령어를 가져와 해독 → 실행을 위한 신호를 기억/연산/입출력 장치로 전송 레지스터 고속 기억 장치 명령어 주소, 코드, 데이터, 결과 등을 임시 저장함 종류 범용 레지스터 일반적인 데이터/연산결과 저장 특수목적 레지스터 특수 목적으로 사용되는 레지스터 특수목적 레지스터 MAR(Memory Address Register) : 읽기/쓰기 수행하는 주기억장치 주소 PC(Program Counter): 다음에 수행할 명령어 주소 IR(Instruction Register): 현재 실행중인 명령어 MBR(Memory Buffer Reg..
[라이트 딥러닝] 0. Intro
제 블로그에서 왠지는 모르겠지만 꾸준히 사랑받아온 라이트 머신러닝 시리즈를 쓴지도 벌써 3년 반이 지났습니다. 처음 이 시리즈를 쓸 때 저는 이제 막 컴퓨터공학 1학년 과정을 마친 학생이었고, 자료구조며 알고리즘도 모르는 주주주주주니어 개발자 시절이었습니다. 때문에 제가 봐도 ‘아, 이 녀석이 이해를 못하고 썼구나….’ 하는 부분들이 분명 존재합니다. 3년 반이 지났고, 저는 8개월 전에 학사 졸업을 했으며, 머신러닝 엔지니어 겸 이것저것 개발자로 경험을 쌓은지도 1년이 조금 넘었습니다. 사실 아직도 아는 게 많다고 느껴지지는 않습니다만, 저때의 저보다는 뭐가 되었든 나은 것도 사실입니다. 이제 한 주주니어 개발자쯤은 됐겠죠? 그리고 당시의 녀석은 몰랐겠지만 내년 후기 대학원 지원을 염두에 두고 있는 만..