1. What is Kaggle Titanic? Kaggle은 예측 모델 및 분석 대회를 하는 플랫폼이다. 일반적인 데이터 분석을 할 경우, 문제 정의부터 데이터 준비까지 각자 해결해야 한다. 그렇지만, Kaggle과 같은 사이트에서는 이런 사항이 마련되었기에 활용만 하면 된다. Machine Learning을 처음 다룰 때는 가장 다루기 쉬운 형태인 정형 데이터를 사용하는 것이 적합하다. 정형 데이터란 관계형 데이터베이스 관리 시스템(RDBMS)의 테이블에 저장된 데이터이다. 쉽게 말해, CSV 파일로 저장된 데이터를 정형 데이터라 한다. 여기서는, "Titanic: Machine Learning from Disaster"에 대한 주제로 머신러닝을 활용해서 타이타닉 호에서 생존한 승객을 예측하려 한다...
데이터 사이언스 사용 설명서 검색 결과
TensorFlow 모두를 위한 엔드 투 엔드 오픈소스 머신러닝 플랫폼입니다. 도구, 라이브러리, 커뮤니티 리소스로 구성된 TensorFlow의 유연한 환경입니다. www.tensorflow.org 1. 텐서플로우 이름의 뜻 텐서플로우(Tensorflow)에서 텐서(Tensor)는 "다차원 수학 배열(Multidimensional arry of numbers)라고 말한다. 우선 숫자 한 개는 스칼라(scalar)이다. 이 스칼라와 비슷한 성질을 가진 또다른 스칼라들을 같이 묶어 놓은, 1차원 배열을 벡터(vector)라고 하고, 이를 rank1 tensor 라고 한다. 또 이 벡터들을 여러개 묶어 놓은 2차원 배열을 매트릭스(Matrix)라고 하고, 이를 rank2 tensor라고 한다. 여기서 각각의 ..
Linear Regression(선형 회귀)란? 머신러닝은 지도학습과 비지도학습으로 나눠지고, 지도학습은 분류와 회귀(예측)으로 나눠진다. 우리는 이 글에서 회귀의 대표적인 알고리즘인 Linear Regression을 알아보고자 한다. Q: 당신은 이 그림의 별을 보고 어떤 식으로 나눴으면 좋겠는지 말해보시오. 대부분 별 모양을 중심으로 어떠한 선을 그릴 것이다. 그게 직선일수도 원일수도 곡선일수도 있다. 하지만 여기서 설명할 Linear Regression(선형 회귀)는 말 그대로 '선형'이다. 직선 형태의 함수를 그어 예측하는 것을 말한다. 앞서도 말했듯이 별들 사이로 간단한 직선을 그어 '예측'하는 것이 선형 회귀이다. 이렇게 regression(회귀)의 가장 큰 목적은 실제 데이터를 바탕으로 모델..
네이버 랭킹 뉴스 페이지가 개편되어 해당 코드로 기사를 가져올 수 없습니다. 해당 코드는 참고용으로만 봐주시기 바랍니다. ↓개편된 네이버 랭킹 뉴스 크롤링 네이버 랭킹 뉴스 크롤링 크롤링 (5), beautifulsoup4로 네이버 기사 크롤링하기 네이버 랭킹 뉴스 페이지가 개편되어 해당 코드로 기사를 가져올 수 없습니다. 해당 코드는 참고용으로만 봐주시기 바랍니다. (JY) 융합연구 1 - dsbook.tistory.com (JY) 융합연구 1 - 크롤링 (4), beautifulsoup4로 네이버 기사 크롤링하기 저번에 네이버 API를 통해 검색에서 네이버 기사를 긁어왔다면, 이번엔 python 모듈 중 하나인 beautifulsoup4로 네이버 주요뉴스를 크롤링하는 방법을 알아보기로 하자. 1. 조..
저번에 네이버 API를 통해 검색에서 네이버 기사를 긁어왔다면, 이번엔 python 모듈 중 하나인 beautifulsoup4로 네이버 주요뉴스를 크롤링하는 방법을 알아보기로 하자. 1. 조회수 별 랭킹 뉴스 살펴보기 네이버 랭킹뉴스는 총 4가지(조회수, 댓글 수, 공감 수, 공유 횟수)로 나누어 분류하고 있다. 그 중 조회수 순으로 정렬된 "많이 본 뉴스"에 대해서만 알아보자. 우선 뉴스는 전체적으로 정치, 경제, 사회, 생활/문화, 세계, IT/과학, 총 6가지 섹션으로 나뉘어져 있으며 시간대 별로 조회수를 집계하는 기준이 다르다. 오전 1시 ~ 오전 6시에는 별도의 집계없이 오전 1시 랭킹 결과의 노출을 유지하고, 오전 6시 ~ 오전 7시에는 오전 1시부터의 조회수를 합쳐서 집계한 랭킹을 노출하며 ..
Statistical analysis(통계적 분석)은 데이터 셋의 변수가 서로 어떤 연관이 있는지 그리고 다른 변수에 어떻게 영향을 받는지 이해하는 과정이다. 이 과정에서 시각화는 핵심 요소가 될 수 있다. 왜냐하면 시각화를 잘 했다면 한눈에 두 변수에 따른 변화,패턴을 쉽게 찾을 수 있기 때문이다. 이 글에서는 변수간의 상관관계를 찾기 위해 시각화 라이브러리 중 하나인 Seaborn의 relplot(), scatterplot(), lineplot() 3가지 함수를 다룰 것이다. scatterplot()는 산점도를 lineplot()은 선 그래프를 그려준다. relplot()은 쉽게 설명하면 scatterplot(), lineplot()의 상위 개념 즉 두 함수를 모두 포함하고 있다고 생각하면 된다. 일..
heatmap 이란? heatmap은 열을 의미하는 heat와 지도를 뜻하는 map을 합친 단어이다. 데이터들의 배열 을 색상으로 표현해주는 그래프이다. 왜 heatmap을 사용하는가 - heatmap을 사용하면 두 개의 카테고리 값에 대한 값 변화를 한눈에 알기 쉽다. - 대용량 데이터도 heatmap을 이용해 시각화 한다면 이미지 몇장으로 표현이 가능하다. heatmap 만들기 먼저 필요한 모듈과 라이브러리들을 import 해주었다. heatmap을 그리기위해 seaborn에 내장되어 있는 flights 데이터셋을 불러왔다. flights 데이터 셋은 1949~1960년간 월별 승객수를 담고 있다. 현재 데이터가 heatmap을 그리기에는 적합하지 않으므로 다음과 같이 데이터 셋을 바꿔주었다, 빨간색..
전 글에 이어서 진행됩니다. 조건에 맞는 데이터 선택하기(boolean indexing) x % 2 == 0을 사용해 데이터들을 boolean형태로 바꿔준다. even_mask라는 변수에 조건 대입 원래있던 변수인 x에 대괄호를 사용해 x[even_mask]를 사용하면 해당 조건에 True인 값들만 다시 ndarray 형태로 나타내준다. 변수를 생략하고 x[조건]을 사용해도 바로 나타낼 수 있다. 다중조건 사용해서 데이터 선택하기 앞서는 단일조건에 해당한 이야기이다. 다중조건을 사용할 경우가 많은데, numpy에서는 and, or, not같은 논리 연산자 사용이 불가능하다. 그래서 and - & , or - |(엔터키 위에 원화 shift)로 대체하여 사용할 수 있다. 마찬가지로 조건을 가로로 묶고(중요..
전 글에 이어서 진행됩니다. 기본 사칙연산하기(더하기, 빼기, 곱하기, 나누기) 기본적으로 numpy의 연산은 python에서 연산과 비슷한 개념을 갖고 있다. 단 주의해야할 점은 행렬의 갯수가 같아야 한다. m x n 의 데이터 형태면 연산할 데이터의 형태가 모두 같아야 한다. (broadcasting을 활용해 예외도 나올 수 있다. broadcasting은 다음에 알아보도록 하자) - np.add(x, y) -> 더하기 연산 : 이와 같은 내장함수 형태로 계산을 가능하고, x + y와 같이 연산해도 같은 값이 나온다. - np.substract(x, y) = x - y -> 빼기 연산 - np.multiply(x, y) = x * y -> 곱하기 연산 - np.divide(x, y) = x / y -..
전 글에 이어서 진행됩니다. 원하는 데이터 값(들) 가져오기 인덱싱(원하는 요소 추출, 차원축소의 기능) 1차원 데이터에서 값 가져오기 numpy에서 인덱싱은 파이썬 리스트의 인덱싱과 비슷한 원리이다. [ ]를 사용하여 값을 추출해온고, 항상 첫 번째 값은 0부터 시작이다. - 변수명[n] -> n+1번째 값을 가져온다. - 변수명[-1] -> 마지막 값을 가져온다. - 변수명[n] = 값 -> 원하는 위치에 값을 저장하여 데이터를 바꿀 수도 있다. 2차원 데이터에서 값 가져오기 2차원 데이터는 행과 열이 있느 데이터이다. (수학에서 x, y 좌표평면과 비슷한 개념이고 선형대수의 행렬이랑 같은 개념이다) - 변수명[m, n] -> m+1번째 행, n+1번째 열을 가져온다. (마찬가지로 0부터 시작이여서 ..
최근댓글