본문 바로가기

Data Science : Study

3강-2. Spotify Web API 썸네일 Spotify Web API - 우리가 만들 app이 spotify의 데이터를 가져와서 사용한다. - 우리가 만들 app은 Baseic Auth로, Spotify에 동의를 얻은 후 필요 정보를 받아온다. Spotify API에 대한 설명 https://developer.spotify.com/documentation/web-api/ document - API에 어떤 방식으로 접근할 수 있는지 알려주는 문서 - Rate limiting - 특정 시간 내에 보낼 수 있는 request의 수 - 몇 초에 몇 만개의 request를 보낸다면, 서버에 과부하가 걸리기 때문에 안정성 위해 rate limiting 확인 필수! - 앱마다 권한이 다르기 때문에 자신이 개발한 앱에서 확인. reference - A.. 더보기
3강-1. API 개요, REST API, web API, API 접근권한 썸네일 1. API 개요 Resource - API를 통해 리턴되는 정보 - 하나의 resource 안에 여러개의 endpoint가 존재할 수 있다. Endpoint - 리소스에 access하는 경로/방법 - method resource (ex. get/campaigns/(campaign_id)/actions/send ) Method 해당 리소스에 접근하는 방식 - get : 해당 리소스를 조회하고 정보를 가져온다(많이 사용) - head : 응답코드와 head만 가져온다 (API가 잘 작동하는지 확인할 때 사용) - post : 데이터를 해당 API에 새로 생성하는 것 - put : 데이터를 해당 API에 업데이트하는 것 - delete Parameter endpoint를 통해 요청할 때 같이 전달하는.. 더보기
2강-2. AWS CLI(Command Line Interface) - 커멘드 창에서 AWS 제어하기 썸네일 AWS 명령줄 인터페이스(CLI) - AWS 서비스를 관리하는 통합 도구 - 도구 하나만 다운로드하여 구성하면 AWS website에 들어와서 console을 작동시키는게 아니라, linux 상에서 command로 통신하여 여러 AWS 서비스를 제어할 수 있다. Install cmd 창에서 해당 명령 실행 (Successfully~~~ 나오면 OK) Configure 1. AWS web에서 IAM에 들어간다 : 내가 누구이고, 어떤 access를 가졌는지 관리 2. 사용자 선택 3. 사용자 추가 선택 4. 사용자 이름: 원하는 대로 설정 액세스 유형: 프로그래밍 방식 액세스(CLI 사용 위해) 5. Permission Setting(권한 설정) - 어떤 프로젝트를 하는데 해당 AWS account.. 더보기
2강-1. 기본적인 Unix / Shell Commands 썸네일 ▶ Navigating Files and Directions cd path path로 경로 이동 ls path path 내의 파일 확인 pwd 현재 경로 확인 .. 뒤로 . 현재 ▶ Files and Directories cp old new new 위치에 old 이동, 복사(파일) mkdir path path 만들기(폴더) rm path 제거(파일) cp -r 복사 rm -r 제거(폴더) ▶ Pipes and Filters cat 파일내용 전체 print head 상위 내용 확인 tail 하위 내용 확인 command > file command 실행결과를 file에 저장(기존 내용 전부 지우고 새로 생성) command >> file command 실행결과를 field에 저장(기존 내용에 appe.. 더보기
1강. 데이터 엔지니어링 개요 1. 데이터 시스템 옵션 관계형 데이터베이스 (ex. mysql) - 목적: 데이터의 저장. 어떤 형식으로 저장할건지. ex. sql:데이터를 어떻게 열람하고 유지할건지에 대한 방식. NoSQL 데이터베이스 (ex. dynamo) - 목적: 스키마(틀)가 없는 데이터의 저장. ex. 메신저 spark - 오픈소스 클러스터 컴퓨팅 프레임워크 - 리얼타임 데이터를 프로세싱하기에 좋다. - java, python, scala, sql 환경 서포트하기 때문에 API 사용에 용이하다. 서버리스 프레임워크 - 유지, 관리해야 하는 서버를 띄워놓지 않아도 된다. - function 같이 특정 trigger가 들어오면 실행됨. 2. 데이터 파이프라인 - 데이터를 한 장소에서 다른 장소로 옮기는 것. (API - DB,.. 더보기
BigQuery : BigQuery 비용 문제 방지하기 BigQuery는 저장소의 비용은 저렴하지만, 빈번한 select 이용 시 많은 비용이 발생할 수 있다. 1. 비용 측정기 활용 GCP에서 쿼리를 입력하면 예상 비용을 알 수 있다. 2. LIMIT 사용하지 말 것 BigQuery는 데이터를 테이블 단위가 아닌 column 단위로 저장하기 때문에, column의 윗 부분만 읽고자 해도 해당 column 전체를 가져온다. 그래서 가져오는 데이터가 적어도 큰 비용이 발생할 수 있다. → 리소스 > 프로젝트 > 데이터셋 > 테이블 선택하여 테이블 내용 미리보기가 가능(order by 는 불가) 3. 필요한 컬럼만 SELECT 매번 제대로 신경쓰지 못할 수 있어 사용 자제할 것 4. 파티션 이용 불필요한 부분은 읽지 않는 것으로, RDBMS의 INDEX와 비슷하.. 더보기
하이퍼파라미터 튜닝 : Coarse & Fine Search 모델의 가장 성능의 좋은 파라미터를 선택하기 위해, 하이퍼파라미터 튜닝 작업을 거친다. 이 때 Coarse & Fine Search를 사용하여 파라미터를 찾는다. Coarse Search Random Search를 하되, 이론상으로 존재 가능한 모든 하이퍼파라미터 범위를 집어넣는다. 가장 좋은 하이퍼파라미터를 찾는 것은 어렵지만, 좋지 않은 하이퍼파라미터를 정렬해서 후순위로 높을 수 있다. Fine Search Coarse Search를 통해 좋지 않은 하이퍼파라미터를 버린 뒤 다시 한 번 Random Search를 진행한다. Kaggle의 샌프란시스코 범죄발생율 데이터를 이용하여 하이퍼파라미터 튜닝 과정을 확인해보자. ▶ 샌프란시스코 범죄발생율 예측? 캐글 샌프란시스코 범죄발생률 예측 : train &.. 더보기
모델 : LightGBM Light Gradient Boosting Machine (LightGBM) 1. 특징 머신러닝 부스팅 알고리즘 중 하나로, 가중치를 경사하강법으로 진행한다. ※ 머신러닝 부스팅 알고리즘: 앙상블 부스팅 기법으로, 틀린 부분에 가중치를 더하면서 진행하는 알고리즘. machine learning ensemble, ensemble boosting 등이 있다. ※ 경사하강법: 1차 근삿값 발견용 최적화 알고리즘. 기본 개념은 함수의 기울기(경사)를 구하고, 경사의 절댓값이 낮은 쪽으로 계속 이동시켜 극값에 이를 때까지 반복시킨다. leaf wise 트리분할 트리의 균형을 맞추지 않고 특정 리프 노드를 지속적으로 분할하여, 깊이가 늘어난 트리 생성. 어떤 리프 노드를 분할할까? max delta loss 값을 .. 더보기