본문 바로가기

전체 글

(1178)
random forest // isolation forest 공부한한 내용 정리 1. random forest 의사결정 트리가 여러 개 모인 것. 하나의 의사결정 트리는 훈련 데이터에 오버 피팅되는 경향이 있다. 오버 피팅을 해결하기 위해 여러 개의 결정 트리를 모아 random forest가 나왔다. 1.1 동작 Bagging : training set의 부분집합을 활용하여 트리 형성 (각각의 부분집한의 인스턴스는 중복될 수 있다) bagging features : training set의 feature별로 트리를 형성한다. classiify : 2번에서 여러 개의 트리를 통해 ground truth(경계선)을 형성한다. 랜덤 포레스트가 생성한 일부 트리는 overfitting 될 수 있지만, 많은 수의 트리를 생성함으로써 overfitting이 예측하는 데 있어 큰 영향을 미치지..
LeetCode sql 문제, 유저별 월별 집계 https://leetcode.com/problems/reformat-department-table/ Reformat Department Table - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 쉬운 문제인데, 푸는데 너무 오래 걸렸다. sql은 언제나 수행이 부족하다. 아래와 같이 테이블이 있을 때 Department table: +------+---------+-------+ | id | revenue | month | +------+---------+-..
RNN // LSTM 공부한 내용 제가 공부한것을 끄적인 내용입니다. 자세한 내용은 아래 링크를 참조하는게 더욱 좋습니다. 1. RNN Recurrent Neural Network 순환신경망 히든 노드가 directed cycle 형성 인공신경망의 종류 음성 / 문자등 순차적인 데이터에 적합 1.2 내부 구조 내부에 루프를 가진 네트워크 == 정보의 지속성 상황에 맞게 RNN을 붙여서 사용한다. 1.3 RNN의 내부 구조식 ht (히든 노드)= tanh ( 이전 히든 노드 + 현재 input + bh) yt (출력값) = ht(히든노드) + by 1.4. RNN의 장기 의존성 문제 (the problem of long term dependencies) 적절한 정보와 그 정보가 필요한 곳과의 차이(Gap)가 적을 경우 RNN은 과거 정보를..
Auto-created primary key used when not defining a primary key type, by default 'django.db.models.AutoField'. - django 3.2 version up 기존 django 2.*에서 3.2로 업데이트 시 실행을 하면 다음과 같은 wanning이 나옵니다. Auto-created primary key used when not defining a primary key type, by default 'django.db.models.AutoField'. HINT: Configure the DEFAULT_AUTO_FIELD setting or the VendorsConfig.default_auto_field attribute to point to a subclass of AutoField, e.g. 'django.db.models.BigAutoField'. django 3.2부터는 모델의 primary key의 속성을 설정해 줘야 합니다. 기본 키의 설정은 DEF..
How Django process a request https://www.b-list.org/weblog/2006/jun/13/how-django-processes-request/ 의 글을 번역한 글입니다. 해당 글은 2006년에 쓰여진 글로 현재 django 버전과 다를 수 있습니다. 들어온다!! 핸들러가 있어 그린라이트! 이제부터 시작. 미들웨어 1 라운드 해결할 시간 미들웨어 2라운드 Into the view 템플릿 django의 템플릿 구조 응답시간(Response time) 미들웨어 처리 3 예외 아직도 응답하지 않았어? 미들웨어 처리 4: 마지막 단계 응답 1. 들어온다!! 2가지 방법으로 장고 서버를 호출한다. 아파치/모드파이선(apache/mod_python) 서버가 셋업되어있을 경우, 모드 파이선이 리퀘스트를 장고에게 전달하고 django..
JWT에서 Django request.user 까지의 여정 Django에서 request의 유저를 알기 위해선 request.user를 통해 알 수 있다. Django에서 지원하는 session 방식의 로그인 / rest_framework에서 지원하는 JWT 등 로그인을 하면 request.user의 정보를 가져올 수 있다. 이번 글은 request.user에 정보가 들어가기까지 어떤 동작을 하는지 살펴보는 글입니다. django == 2.1.2 // djangorestframework == 3.9.0 에서 진행하였습니다. 해당 버전에 따라 소스 코드가 달라질 수 있습니다. 1 번은 일반 로그인 방식이며, 2번은 JWT 방식이다. 1번 일반 로그인 방식은 먼저 cookie에 있는 세션값을 request.session에 저장하고 session 값을 통해 유저 정보..
집을 구하면서 알게된 사실들 (feat. 직방 앱 탐험기) (2023.05 업데이트 완료, 2년이 지났지만 변하질 않는다.) 나의 추천 방식은 앱으로 매물의 가격과 갯수를 확인 후 매물 근처의 부동산에 연락해보는걸 추천한다. 의외로 안올린 매물이 많이 있으므로, 발로 뛰어야 한다. 결론은 앱에 올린 방은 절대 믿으면 안된다. 1. 대부분의 집들은 불법으로 지어져있다. - 그래서 집주인들이 전세 대출을 거부한다. - 세입자가 전세 대출을 갚지 못할 경우 집주인이 갚아야 하는 판례 때문일수도 있다. - 혹은 집주인의 모든 정보가 까발리는게 싫다거나? 2. 매물은 피터팬 -> 네이버 부동산 -> 다방 -> 직방 순으로 많다. (2023. 05 업데이트) - 피터팬이 가장 많은것이 의외다. - 직방은 2년만에 정말 매물이 없어졌다. (여기 망했나?? 싶을 정도..) -..
postGIS 쿼리 튜닝 자체 서버에서 돌고 있던 postgreSQL을 aws의 RDS로 이관하는 작업을 하였다. RDS로 이관 후 CPU가 99%에서 내려오질 않는 현상을 발견했다. 해당 테이블은 데이터도 적을 뿐더러, 기존 자체 서버의 성능이 워낙 좋았던 탓에 누구도 쿼리를 손보지 않고 돌리고 있었던 것으로 판단하였다. (기존 서버에서는 cpu성능이 좋아서 30%을 넘지 않았다) 쿼리 변경전 RDS CPU 모니터링 상황 해당 쿼리는 GIS 관련 쿼리로 하나의 포인트 지점에서 가장 가까운 5곳에 해당하는 데이터를 가져오는 쿼리였다. 테이블 : wstn 테이블내 데이터 갯수 : 1567 공간칼럼이름 : loc 기존 쿼리는 ST_Distance_Sphere를 이용해서 작성되었었다. 1. ST_Distance_Sphere 두 개의 ..