Home

Scrapy 웹 크롤링 02 - Spider, Scrapy selectors, Items

Spider Spider의 종류 (참고로, 아래 3가지 종류의 Spider는 잘 사용되지 않는다.) CrawlSpider XMLFeedSpider CSVFeedSpider SitemapSpider 12# 여러사이트를 크롤링하기 위한 spider를 생성scrapy genspider many_site hub.scraping.com spider 폴더의

Scrapy 웹 크롤링 01 - 환경설정 및 기초

Scrapy VS Beautiful SoupBeautiful Soup Beautiful Soup는 웹 상의 정보를 빠르게 크롤링 하기위한 도구이며, 정적인 정보를 가져 올 수 있다. 즉, 해당 API(URL)에 요청했을때 바로 가져올수 있는 정보들만 가져올 수 있다. 시간이 좀 더 걸린 후에 나오는 정보들은 가져올 수 없다는 것이다. 진입 장벽이 매우 낮고

모형 성능 평가 지표

회귀(regression) 평가 지표 회귀의 평가를 위한 지표는 실제 값과 회귀 예측값의 차이 값을 기반으로 한 지표가 중심이다. 실제값과 예측값의 차이를 그냥 더하면 잔차의 합은 0이므로 지표로 쓸 수 없다. 이 때문에 잔차의 절대값 평균이나 제곱, 또는 제곱한 뒤 다시 루트를 씌운 평균값을 성능 지표로 사용한다. 평가 지표 수식 MAE(

Regression(02) - 다중선형회귀 및 다중공선성

다중 선형 회귀 다중회귀방정식에서 회귀계수에 대한 해석은 자주 혼동되는 것 중 하나이다. 단순회귀방정식은 직선을 표현하지만 다중회귀방정식은 평면(독립(설명)변수가 두개인 경우) 혹은 초평면(독립(설명)변수가 두개보다 많은 경우)을 표현한다. 위의 예에서 회귀계수의 해석은 다른 변수들이 고정되어 있을때 TV가 1단위 증가할 때 매출액은 0.046단위 증

NLP를 공부하는데 도움되는 사이트 모음

자연어 처리 관련 자료 자연어 처리에 대해 공부할 수 있게 도움이 될 만한 사이트 자연어 처리 강의 딥러닝을 이용한 자연어 처리:https://www.edwith.org/deepnlp 자연어 처리 오프라인 스터디 모임 DeepNLP(모두의연구소 자연어 처리 스터디):http://www.modulabs.co.kr/information 바벨피쉬(싸이그래머

Regression(01) - 회귀의 종류 및 회귀계수

회귀분석이란? 지도 학습은 두 가지 유형으로 나뉘는데, 바로 분류(classification)와 회귀(regression)이다. 이 두 가지 기법의 가장 큰 차이는 분류는 예측값이 카테고리와 같은 이산형 클래스 값이고, 회귀는 연속형 숫자 값이라는 것이다. 회귀(regression)은 현대 통계학을 떠받치고 있는 주요 기중 중 하나이다. 여러분이 회

머신러닝의 개요

Machine learning Machine Learning으로 할 수 있는 것들 독립변수 반응변수 모형 고객들의 개인 정보 및 금융 관련 정보 대출 연체 여부 대출 연체자 예측 탐지 모델, 대출 연체 관련 주요 feature 추출 게임 유저들의 게임 내 활동 정보 게임 이탈 여부. 어뷰징 여부 이상 탐지 모델(anomaly detectio

data engineering (DB에 table 만들기)

Spotify가 국내에 음원 진출을 확정지었다는 기사를 보면서 다시 한번 이 토이프로젝트에 대해 동기부여가 되었다. Spotify API를 통해 AWS에 만들어 놓은 DB에 입력해 볼 것이다. Spotify API를 이용해서 DB 구축하기 먼저, 혹시라도 필자의 토이 프로젝트의 목표가 무엇인지 모르실 분들을 위해 말하자면, Spotify data를 통

data engineering (AWS로 DB 만들기)

AWS RDB 만들기 Spotify data를 크롤링 하고난 후에 AWS RDB에 저장하기 위해서 먼저 DB를 만들어 줄 것이다.Youtube 초보자를 위한 AWS 시작하기! AWS RDS 생성 개발자나 필자 처럼 데이터를 분석하는 분들을 제외한 분들은 아마 Amazon이라는 단어를 듣게 된다면, 물건을 사고파는 뭐 그런 웹사이트 페이지를 떠올리는 분들이

선형 대수 공부할 때 도움되는 사이트

기초 선형 대수 공부할 때 도움되는 사이트 아래의 설명들은 사이트들에 대한 주관적인 의견이므로, 개인마다 차이가 있을 것이다. 영어가(도) 편하신 분들을 위한 자료 선형대수 cheat sheet 엄청 기본적인 개념들을 모르는 분들께만 추천 Gilbert Strang 교수님 강의 기본적인 개념부터 차근차근 그리고 조금은 직관적으로 선형대수를 공부하고

추천시스템(Recommendation System)

1) 추천 시스템(Recommendation System)이란?위키백과의 정의를 통해 먼저 정리해보자! 정보 필터링 (IF) 기술의 일종 특정 사용자가 관심을 가질만한 정보 (영화, 음악, 책, 뉴스, 이미지, 웹 페이지 등)를 추천하는 것 ㄴ.종류(Different Types of Recommendation Engines) :1) 협업 필터링 기법(C

data engineering (API는 무엇인가?!?)

REST API의 정의와 예제들API(Application Programming Interface) 두 개의 시스템이 서로 상호 작용하기 위한 인터페이스 데이터를 주고 받는 인터페이스 API라고 하면 보통 REST API를 지칭 웹사이트는 HTTP(S)프로토콜을 사용하는 REST API 기반으로 구축 API 접근 권한Authentication V

Basic ConvNN(VGG-16모방한 기본)구현

Basic ConvNN 구현 참고로 저는 mac을 사용하기에 local에서말고 GPU를 사용하게끔 Google Colab을 사용하였다. 제가 구현한 방식은 tensorflow 2.0 version이므로(tf.function을 사용하느라) colab의 tensorflow의 version이 뭔지 먼저 확인했습니다. 1.15 version이어서 2.0으로 설치를

Convolution Neural Network(1)

합성곱 연산과 이미지 필터 아날로그 신호처리는 선형이고 시불변인 시스템에 의존해서 개발이 되게 되는데, Noise가 있는 입력이 들어왔을 때 넣어주면 Noise가 제거된 출력이 나오는 이런 시스템을 모두 LTI system이라고 부른다. 디지털 신호가 아닌 아날로그 신호로부터 LTI system이 정의되어있다. 선형이라는 것은 대부분 알고 있듯이 선형대수

data engineering basic(SQL Basic)

SQL(Structured Query Language)DB (Database) 데이터를 통합하여 관리하는 데이터의 집합 DBMS (Database Management system) DB를 관리하는 미들웨어 시스템을 의미 Database 분류 RDBMS(Relational Database Management System) NoSQL - 데이터

data engineering basic(Unix환경 및 커맨드)

Pipes and Filterscat : 해당 파일 전체를 printhead : 해당 파일 앞의 10줄 정도를 printtail : 해당 파일 뒤의 20줄 정도를 print command > file : 기존의 파일 내용은 지우고 현재 command한 결과 파일에 저장command >> file : 기존의 파일에 덮붙여서 결과를 저장(pyt

심층 신경망의 구조

심층 신경망의 구조 은닉 계층 추가 = 특징의 비선형 변환 추가!!선형 변환의 이해 선형대수의 선형 변환을 함수의 개념에서 보았을때, 입력 차원(n)이 출력 차원(m)보다 크다면 Onto(전사함수: 모든 공역이 치역이 되있는 상태)가 될 수 있지만, 그 반대인 경우는 적은 차원을 갖는 입력벡터의 차원으로 일부분의 출력 벡터의 차원을 커버하는 것이

쉽게 배우는 경사하강 학습법

쉽게 배우는 경사하강 학습법 어떤 손실 함수를 사용하느냐에 따라서 학습이 어떻게 이루어질 것인지, 그리고 학습을 할 때 정답의 형태를 결정하기 때문에 손실 함수는 중요하다! Traning Data를 Model에 입력해 우리가 학습시키고자 하는 Trainable Parameters를 얻게 되는데 Trainable Parameters들을 inpu

가장 단순한 신경망을 통한 작동원리

Node가 단일 뉴런 연산을 의미한다고 했는데 여기서의 단일 뉴런 연산이란 input에 가중치를 곱하고 합계를 낸 후에 activation function까지 통과시키는 과정을 의미한다. 위의 식에서 편향을 잊어버리지 말자!! 예를들면, 편향이 없다면 원점을 지나는 선만 표현할 수 있지만 편향을 통해 원점을 지나지 않는 선들도 표현

딥러닝이 무엇인가?

딥러닝의 이해 기계학습의 경우에는 위의 고양이와 개를 구분하기 위해서 이진 분류기를 구현할 것인데, 이런 이진 분류기를 구현하기 위해서는 Feature Extractor가 필요하다. 여기서 말하는 Feature Extractor 란 구분에 용이한 특징을 추출하여 feature vector를 만드는 데 사용하는 것이다. 이렇게 잘 추출한 특징 벡터를

data engineering basic

데이터 분석가와 엔지니어링 차이점 데이터 분석가는 갖춰진 데이터 시스템과 데이터를 통해서 다양한 분석을 하는 업무이며, 엔지니어링은 그와 다르게 비즈니스에 맞는 데이터를 추출하고 그에 따라 분석하는 환경을 만들어 나가는 업무라고 생각할 수 있을 것이다. 특히, 데이터 전처리나 추출, 정제를 담당하는 업무이다. 데이터 엔지니어링이 중요한 이유 비즈니스 모델

Requests 모듈 사용하기(HTTP 통신)

Requests 모듈 http request/response를 위한 모듈 HTTP method를 메소드 명으로 사용하여 request 요청 예)GET, POST 가장 우리가 흔하게 크롤링을 하는데 사용하는 방식이며, API만 알고 있다면 쉽게 사용할 수 있다!

웹 기본 지식 이해하기 01(chrome을 이용하여 웹페이지 분석하기)

HTTP HyperText Transfer Protocol: HTML(HyperText Markup language) 문서 등의 리소스를 전송하는 프로토콜(규약) 클라이언트에서 서버로 HTTP 요청을 하는데 이 요청 방식으로는 Get, Post, Put, delete, Option등이 있는데 이 중 크롤링에서 가장 많이 쓰이는 두가지(Get, Post)

colab & Kaggle 연동 및 기초 사용법

Kaggle Korea에서 진행중인 대회에서 Kaggle Kernel을 사용하다 보니 커널이 자꾸 죽는 이유는 도대체 무엇인지… competition에 늦게 참여한 관계로 더 시간이 촉박하기만 한데…. 그래서 google colab으로 바꾸려고 생각하였다. 캐글은 예측모델 및 분석 대회를 하는 플랫폼이다. 개인 및 단체에서 해결하고 싶은 과제와 데이터를 등

[수리통계학] 나혼자 정리하는 통계생의 수리통계학 00

먼저, 이 글은 data science라는 분야를 공부하며 원래 통계학을 전공했던 나였지만 학부과정에서 배웠던 그리고 부끄럽지만 석사 때 배웠다고 기억하고 있는 조각들을 모아 수리통계학을 간단히 정리하기 위해 쓰는 글이다. 확률과 확률분포여러 가지 조사 연구들은 동일한 조건에서의 반복 실험이 대체적으로 표준이 된다는 것이 특징이다. 예를 들어, 의학 연구에

[CS231n]Lecture09-CNN_Architectures

LeNet 산업에 아주 성공적으로 적용된 최초의 ConvNet이다. 이미지를 입력으로 받아 Stride = 1인 5x5필터를 거치고 몇 개의 Conv Layer와 Pooling Layer를 거친다. 그리고 마지막 출력 노드 전에 Fully Connected Layer가 붙는다. 엄청 간단한 모델이지만 숫자 인식에서 엄청난 성공을 거두었다. Al

내가 정리하는 C/C++ 00

개발환경 구축하기C와 C++1) C++는 기본적으로 C의 기능을 확장한 형태의 프로그래밍 언어이다.2) 따라서 C 언어의 기능을 포함하고 있다는 점에서 C++프로젝트로 .C 확장자를 갖는 파일을 생성하여 코딩해도 정상적으로 동작한다. 개발환경 구축하기 나는 개인적으로 IDE(Integrated Development Environment) 중에서 Atom을

[CS231n]Lecture08-Deep learning Software

GPU Graphics card 또는 Graphics Processing Unit이라고 하는데 결국엔 우리가 아는 사실 처럼 computer graphics를 랜더링하기 위해 더 와닿게 말하자면 게임을 더 최적의 환경에서 하기 위해 만들어 졌다고 할 수 있다. # Cores Clock speed Memory Price CPU 4 4.4 G

[CS231n]Lecture07-Training Neural Networks2

지난 6강에서는 activation function을 중점적으로 다루어 보았는데, 10년전 까지만 해도 sigmoid가 아주 유명했다. 허나, Vanishing gradient가 생기는 문제로 인해 최근에는 Sigmoid와 tanh 보다는 ReLU를 쓴다라고 했다. 대부분의 경우 normalize나 zero-centered로 데이터를 처리해 주지 않으면,