일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- login crawling
- 유튜브 API
- Retry
- GenericGBQException
- UDF
- API
- Counterfactual Explanations
- chatGPT
- tensorflow text
- Airflow
- subdag
- API Gateway
- integrated gradient
- 공분산
- GCP
- grad-cam
- hadoop
- top_k
- correlation
- session 유지
- 상관관계
- TensorFlow
- gather_nd
- spark udf
- airflow subdag
- BigQuery
- youtube data
- requests
- XAI
- flask
- Today
- Total
목록전체 글 (424)
데이터과학 삼학년
저장된 TensorFlow 모델을 불러와서 모델 서빙을 하는 코드를 파이썬으로 작성하는 방법은 크게 두 가지가 있습니다. 첫 번째는 TensorFlow Serving을 사용하는 것이고, 두 번째는 직접 Flask나 Django 같은 웹 프레임워크를 사용하여 API를 구현하는 것입니다. 다음은 두 가지 방법 모두에 대한 간단한 예제 코드입니다. TensorFlow Serving을 사용하는 방법 import tensorflow as tf from tensorflow_serving.apis import predict_pb2 from tensorflow_serving.apis import prediction_service_pb2_grpc # 모델을 불러올 서버의 주소와 포트를 지정합니다. server_addre..
airflow로 매일 아침 8시에 실행되는 parentDag이 있고, 그 안에 매달 1일 아침 10시에 실행되는 subDag을 구성하려고 해. 이 코드를 파이썬으로 작성해줄수 있겠어? 라고 ChatGPT에게 시켜보았습니다. 그랬더니... 이런 코드를. 네, airflow에서 매일 아침 8시에 실행되는 parent DAG과 매월 1일 아침 10시에 실행되는 sub DAG을 구성하는 파이썬 코드는 다음과 같습니다. from datetime import datetime from airflow import DAG from airflow.operators.dummy_operator import DummyOperator from airflow.operators.subdag_operator import SubDagO..
SubDag - SubDag는 Airflow DAG 안에 존재하는 작은 DAG - 이를 사용하면 하나의 큰 DAG를 여러 작은 DAG로 분리 가능 - 이렇게 작은 DAG로 분리함으로써, 개발, 테스트 및 유지보수가 더 쉬움 - 또한, SubDag는 DAG를 이해하기 쉬운 작은 단위로 나눌 수 있으며, 작은 단위별로 추적할 수 있어 일부 작업이 실패한 경우 재시작 가능 - SubDag는 DAG 생성 시 하위 레벨의 DagBag에 의해 생성 - 하위 레벨의 DAG는 SubDagOperator를 사용하여 DAG 내에서 호출 SubDag의 장단점 장점 큰 DAG를 여러 작은 DAG로 분리할 수 있으므로 개발, 테스트 및 유지보수가 더 쉬워집니다. 작은 DAG로 나누어짐으로써 DAG를 이해하기 쉬운 작은 단위로 ..
UDF (user defined function) - 사용자 정의 함수는 스파크에서 가장 강력한 기능 중 하나 - 파이썬이나 스칼라 그리고 외부 라이르브러리를 사용해 사용자가 원하는 형태로 트랜스포메이션을 만들 수 있게 함 - UDF는 한개 이상의 컬럼을 입력으로 받고 반환 가능 UDF 는 스파크의 드라이버 프로세스내에 저장되어 운용되며, 각 익스큐터에 전달하여 처리가 됨 pyspark sql 구문에서 udf를 사용하려면 정의한 udf를 sql 구문내 function으로 사용할 명령어를 아래와 같이 꼭 등록해야 사용 가능 >> 파이썬 함수를 SQL 함수로 등록!!! spark.udf.register("word_count", word_count) ### spark udf 생성 from pyspark.sql..
심슨의 역설 (Simpson's paradox)은 데이터의 세부 그룹별로 일정한 추세나 경향성이 나타나지만, 전체적으로 보면 그 추세가 사라지거나 반대 방향의 경향성을 나타내는 현상을 의미 이 현상은 사회과학이나 의학 통계 연구에서 종종 발생 예시 치료법결석 크기 치료법 A 치료법 B 효과 비교 치료법결석 크기 치료법A 치료법B 작은 결석 그룹 1 93% (81/87) 그룹 2 87% (234/270) 큰 결석 그룹 3 73% (192/263) 그룹 4 69% (55/80) 모두 78% (273/350) 83% (289/350) 작은 결석과 큰 결석 모두에서 치료법 A의 성공률이 높게 나왔지만, 결석의 크기를 구분하지 않고 합친 경우에는 치료법 B의 성공률이 높은 결과가 나왔다. 이 사례에서는 결석의 크..
pytorch 모델로 저장한 vocab을 load할 때 아래와 같은 오류가 난다면, vocab 생성시의 pytorch 버전과 vocab을 불러오는 pytorch 버전을 확인해보는 것이 좋다. 간혹 상향 버전이지만 이전 버전의 기능을 쓰기 원하면 패키지중 legacy를 지원해주는지 확인하면 된다. torch vocab을 이용할때 pretrained vector를 이용하여 구성하는 방법은 (개인적으로) torchtect 0.10 이전 버전들이 편하게 쓸 수 있었지만, 버전이 상향되면서 해당 기능 구현이 조금 변경되어…난감할때가 있었다. 이때, legacy를 이용하여 아래와 같이 제구성 했다. import torch from torchtext.vocab import Vectors #,Vocab #torchte..

WITH 문 -복잡한 쿼리를 sub-쿼리의 형태로 구조화하고 재사용하기에 용이한 구문 - with 문을 쓸 때 쿼리의 결과르 temp라는 임시 테이블에 쌓아놓기 때문에 재사용성이 있음 (RDMS, HIVE) WITH temp_a AS ( SELECT * FROM dataset.tableA ), temp_b AS ( SELECT * FROM dataset.tableB ) SELECT * FROM temp_b LEFT JOIN temp_a USING(id) - 너무 많은 서브쿼리 구성은 temp 테이블(with 전용) 의 메모리 over할 수 있기 때문에 지양해야함 - 이를 보완하기 위해 Crate temp Table을 사용함 CREATE TEMPORARY TABLE tmp2 AS SELECT c2, c3,..

Airflow Xcom - Xcom : cross-communication의 약자 - Airflow에는 task의 실행에서 야기되는 결과물을 xcom이라는 곳에 넣어두고 다른 task 실행시 해당 결과물을 참조해서 사용할 수 있도록 지원 - 쉽게 말해 Xcom이라는 주머니에 key:value 형태로 데이터를 저장해 놓고 각 task가 해당 데이터를 참조해서 사용하도록 하는 것 # xcom에 데이터 넣기! def _train_model(**context): model_id = "model_sample_1" context["task_instance"].xcom_push(key="model_id", value=model_id) task_train_model = PythonOperator( task_id="tr..