일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- login crawling
- top_k
- flask
- integrated gradient
- gather_nd
- Airflow
- 유튜브 API
- airflow subdag
- Counterfactual Explanations
- Retry
- chatGPT
- correlation
- UDF
- 상관관계
- requests
- API
- subdag
- API Gateway
- spark udf
- youtube data
- grad-cam
- XAI
- TensorFlow
- GenericGBQException
- GCP
- session 유지
- 공분산
- BigQuery
- tensorflow text
- hadoop
- Today
- Total
목록전체 글 (424)
데이터과학 삼학년
동적 계획법(DP, Dynamic Programming) 입력 크기가 작은 부분 문제들을 해결한 후, 해당 부분 문제의 해를 활용하여 보다 큰 크기의 부분 문제를 해결 위 단계를 반복하며 전체 문제를 해결하는 알고리즘 상향식 접근법으로, 가장 최하위 해답을 구한 후 이를 저장해 다음 결과값을 풀어나가는 방식 Menoization(메모이제이션) 프로그램 실행시 이전에 계산한 값을 저장하여, 다시 계산하지 않도록 해 실행 속도를 빠르게 하는 기술 예) 피보나치 수열 def fibo_dp(num): cache = [0 for ind in range(num+1)] cache[0] = 0 cache[1] = 1 for ind in range(2, num+1): cache[ind] = cache[ind-1] + c..

GAN for Tabular Data tabgan을 이용해 tabular data를 augmentation 해보자. gan은 이미지 데이터 생성에 매우 잘 알려져 있지만, tabular data에서는 잘알려져있지않다. tabgan의 원리를 이해하고, 샘플 코드를 통해 tabular 데이터를 증식(with GAN)하는 방법에 대해 알아보자. 1. What is GAN - GAN은 두개의 deep neural network로 구성됨(generator, discriminator) - 두개의 모델은 동시에 학습됨. 일반적으로 모델의 구성도와 학습 절차는 아래 사진과 같음 - generator의 역할은 real sample과 거의 유사한 sample을 만들어내는 것 - discrimator은 generator가 ..

AdaBoost - 이전 모델이 과소적합(under fit)했던 학습 샘플의 가중치를 더 높여 다음 모델에서 다시 학습을 시키는 개념 - 새로운 예측기(모델)은 학습하기 어려웠던 데이터(샘플)에 대해 점점 더 잘 맞춰지는 모델로 만들 수 있음 - Adaboost 데이터 가중치 부여 예시 - stumps라는 작은 가지(max_depth=1)의 앙상블 형태라고 생각하면 됨 -> weak ensemble Boosting VS Bagging 여기서, ensemble(bagging)과 다른점은 10개의 모델을 이용해 학습을 한다고 할때, bagging은 같은 (가중치가 부여되지 않은)학습 데이터에 대해 동시 학습하고, 예측결과를 종합하는 반면, boosting인 Adaboost는 순차적으로 모델을 학습시키고, 각..

스태킹 - 앙상블 모델 중 하나로 stacked generailzation (stacking)을 소개한다. - 앙상블 모델들은 대게 여러개의 모델의 결과를 종합하여 최종 결과를 낸다. - 여기서, 여러개의 모델의 결과를 종합하는 방법은 최빈값, 평균값 등으로 예측결과를 나타내는데. - stacking은 앙상블에서 여러 개의 모델의 결과를 단순히 종합하는 것이 아닌 결과 종합 모델을 두는 것은 어떨까? 라는 아이디어에서 시작됐다. - 즉, 앙상블에서 여러개의 모델의 결과를 종합하는 최종 모델 레이어를 하나 더 추가하는 개념이다. 블렌더(blender or meta learner) - 스태킹에서 각기 다른 모델의 결과값을 이용해 다시 최종 결과를 내놓는 예측기를 블렌더 혹은 메타 학습기라고 함 블렌더를 학습..

centrality centrality란 네트워크 상에서 중요한 노드를 찾기 위한 일종의 metric 으로 확인 밀도의 개념 : node가 n개 주어졌을때 방향을 무시한 총 그을 수 있는 edge수는 n(n-1)/2 이다. 전체 그을수 있는 edge수 중에 해당 node에 들어온 edge수를 기반으로 밀도를 구할 수 있음 degree centrality degree centrality는 각 node별로 직접 연결된 edge 수를 고려함 -> 해당 node를 통해야 연결되게 되는 것. 즉 해당 노드가 가진 영향력을 확인할 수 있음 밀도의 개념이라고 생각하면 됨 weighted degree centrality 노드와 노드를 잇는 edge의 weight는 모두 다르게 설정할 수 있다. 예를 들어 재화의 이동을..

네트워크 원리 - 1. 웹 브라우저가 메시지를 만든다. HTTP 리퀘스트 메시지를 작성한다. 웹 서버의 IP 주소를 DNS 서버에 조회한다 전 세계의 DNS 서버가 연대한다. 프로토콜 스택에 메시지 송신을 의뢰한다. 2. 웹 서버의 IP 주소를 DNS서버에 조회한다. HTTP 메시지를 만들면 이것을 OS에 의뢰하여 액세스 대상의 웹 서버에게 송신함 OS에 송신을 의뢰할때는 도메인명이 아니라 IP주소로 메시지를 받을 상대를 지정함 즉, 도메인명에서 IP주소를 조사하는 동작이 이루어짐TCP/IP 인터넷이나 사내 LAN은 TCP/IP의 개념에 기초하여 만들어짐 00동 00번지라고 있을때, 동에 해당하는 것이 서브넷, 번지에 해당하는 것이 컴퓨터 번호 동에 해당하는 것 : 네트워크 번호 번지에 해당하는 것 : ..

텐서플로1 버전에서는 그래프가 API의 핵심으로 피할 수가 없었고...이때문에 더 복잡했다. 텐서플로2에서도 그래프가 있긴 하지만, 사용하기 매우 쉬워짐 텐서플로 함수 변환 일반 함수를 @tf.function 으로 데커레이터 싸거나, tf.function()함수안에 넣음으로써 그래프를 반영한 함수로 사용할 수 있음 def cube(x): return x ** 3 cube(tf.constant(2.0)) cube라는 함수가 있다면 아래와 같이 텐서플로 함수로 변환이 가능하다. tf_cube = tf.function(cube) tf_cube(2) @tf.function def tf_cube(x): return x ** 3 원본 파이썬 함수가 필요하다면 python_function을 호출하여 확인할 수 있다 ..

DBSCAN 과 HDBSCAN 의 차이점은 무엇일까? HDBSCAN - DBSCAN을 기반으로 실행시키는 클러스터링 방법 - DBSCAN은 하이퍼파라미터로 최소 클러스터 사이즈와 밀도 거리인 threshold epsilon 을 지정해주어야 함 - 그러나, HDBSCAN은 다양한 epsilon값을 기반으로 실행시키기 때문에 최소 클러스터 사이즈만 사용자가 지정해주면 된다는 장점이 있음(즉, 가변의 밀도를 가진 클러스터를 찾는 방법) - 그러나, 최소 epsilon을 사용자가 정하는 것이 여전히 이득이 되는 경우들이 존재한다는 것을 명심 While DBSCAN needs a minimum cluster size and a distance threshold epsilon as user-defined input..