전체 글

[ML] 머신러닝 용어 및 개요
·
Artificial Intelligence/Machine Learning
기본 용어 및 표기법 기본적으로 머신러닝을 특정 값을 예측하기 위해 사용한다고 생각하면 기본 용어 및 표기법에 익숙해지기 쉬울 것이다.특정 값을 예측하기 위해 사용되는 나머지 변수들을 특징(features)이라 하고, 예측하고자 하는 변수를 레이블(labels)이라 한다. 이를 위해 사용하는 데이터가 샘플(samples) 혹은 훈련 데이터셋(training dataset)이다. 기본적으로 자료는 지도학습이라는 가정 하에 특징과 레이블이 같이 존재한다.데이터셋에서 나타나는 특징들을 $ x $ 로 표기하고, 타겟 레이블을 $ y $ 라 표기한다. 예측된 레이블(predicted labels)은 $ \hat{y} $ 를 사용한다. 특징이나 레이블 값이 많아 행렬이나 벡터를 이용하여 $ \mathbf{X} $,..
[Causal Inference] 인과추론(causal inference) 및 실험연구(experiments)와 관찰연구(observational study)
·
Economics/Causal Inference
인과추론 (Causal Inference) 통계학을 배우면 상관관계에 대해 배우게 된다. 상관관계를 나타내는 피어슨 상관계수는 두 변수 간의 선형적 관계를 측정하는데, 여기서 가장 주의해야 할 점은 비선형적인 관계는 포착하지 못한다는 것과 인과관계를 보여주는 것이 아니라는 점이다.상관관계는 $X \leftrightarrow Y$ 로 표현할 수 있다. 이는 어느 한쪽이 다른 한쪽에 일방적으로 영향을 주는 것이 아니라, 서로 영향을 주고받는 관계이기 때문이다. 반면, 인과관계는 $X \rightarrow Y$ 처럼 한 방향으로 표현할 수 있다. 즉, 명확하게 $Y$ 에 영향을 주는 $X$ 를 찾는 것이 목표이다. 예를 들어, 건강보험이 건강에 미치는 영향이나, 소득이 교육에 미치는 영향을 분석하는 것은 $X..
[Algorithm] 알고리즘 개념 및 시간복잡도(time complexity)
·
Computer Science/Algorithm
알고리즘 주어진 값 또는 값 집합을 입력(input)으로 받아 다른 값 또는 값의 집합을 출력(output)으로 생성하는 잘 정의된 계산 절차이다. 즉 알고리즘을 구성하기 위해서는 입력(input)과 출력(output)이 명확하게 정의되어야 한다. 알고리즘을 통해 입력부터 출력까지의 과정을 설명할 수 있다. 일종의 문제 해결 지침으로 생각할 수도 있다.바람직한 알고리즘은 명확해야 하고, 이해하기 쉬워야 하며, 간결해야 한다. 과도한 기호 표기는 명확성을 저해할 수 있기 때문에 지양된다. 다양한 표현 방법이 있지만, 명확성을 해치지 않는 한 자연어를 사용하는 것도 가능하다. 가장 중요한 것은 알고리즘은 효율적이어야 한다는 것이다. 동일한 문제를 해결하는 알고리즘이라도 실행 시간 차이가 수백만배까지 날 수 ..
[Regression Analysis] 상관분석(correlation analysis) 및 분산분석(ANOVA, analysis of variance)
·
Statistics/Regression Analysis
상관분석 (Correlation Analysis) 두 변수 $X $ 와 $ Y $ 사이 선형관계(linear relationship)를 설명하는 상관계수(coefficient of correlation)을 이용한 분석이다. 상관계수 $ r $ 은 결정계수(참고링크) $ r^2 $ 를 통해 다음과 같이 구할 수 있다.$$ r = \pm \sqrt{r^2} $$$ r $ 의 부호는 회귀선의 기울기인 $ \hat{beta}_1 $ 을 따라간다. $ \hat{\beta}_1 $ 이 양수이면 $ r $ 도 양수이고, 음수이면 $ r $ 도 음수이다. 따라서 $ r $ 의 범위는 $ [-1, 1] $ 이다. 만약 $ r = 0 $ 이면 두 변수간 선형관계가 없다고 말할 수 있다.단 지금까지는 $ Y $ 는 확률변수..
[Regression Analysis] 단순회귀분석 회귀선 적합(fitting the regression line) 및 정밀도(precission)
·
Statistics/Regression Analysis
회귀선 추정 (Regression Line Estimation) 단순회귀분석모형인 $ Y= \beta_0 + \beta_1 X + \epsilon $ 을 얻기 위해 추정을 진행한다면 다음과 같은 직선을 얻을 것이다.$$ \hat{y} = \hat{\beta}_0 + \hat{\beta}_1 x $$이와 같은 직선을 추정된 회귀직선, 간단하게 회귀선이라 한다. 여기서 $ \hat{\beta}_0, \hat{\beta}_1, \hat{y} $ 는 각각 $ \beta_0, \beta_1, E(Y \mid X= x) $ 의 추정값(estimate)이다. 이를 좌표평면에 그리면 $ \hat{\beta}_0 $ 가 절편이 되고, $ \hat{\beta}_1 $ 이 기울기가 되서 이를 각각 회귀선의 절편, 기울기라 ..
[DB] 데이터베이스(database) 및 데이터(data)
·
Computer Science/Database
데이터베이스 (Database) 일반적으로 데이터(data)라는 말을 여기저기 사용하지만, 조금 엄밀하게 분리하면 데이터는 현실을 기반으로 측정, 수집된 사실이나 값을 의미하고, 이를 가공한 것은 정보(information)라 한다. 즉 데이터는 원시자료만을 의미한다.데이터에서 정보를 추출하는 과정이나 방법을 정보 처리(information processing)이라 한다. 예를 들어 "온라인 주문 내역"이라는 데이터에서 "분기별 매출"이라는 정보를 추출하는 것을 정보 처리라 할 수 있을 것이다. 물론 일반적으로는 데이터 처리(data processing)이라 하기도 한다.정보 시스템(information system)은 데이터르 수집 및 처리하고 필요할 때 유용한 정보로 만들어주는 수단이다. 이 정보 시..
[Regression Analysis] 단순회귀분석(simple regression analysis) 및 기본 가정
·
Statistics/Regression Analysis
회귀분석 (Regrassion Analysis) 많은 연구에서의 관심사는 특정 변수 간의 관계를 파악하는 것이다. 인공지능이나 머신러닝에서 특정 변수를 예측하는 것 역시 다른 변수와의 관계를 모델링하여 특정 변수를 예측하는 것과 무관하지 않다.회귀분석은 이러한 변수 간의 관계를 모델링하고 예측하는 통계적 방법론이다. 예측하고자 하는 변수를 일반적으로 종속변수(dependent variable) 또는 반응변수(response variable)라고 하고, 이에 영향을 주는 변수를 독립변수(independent variable) 또는 설명변수(explanatory variable)라고 한다.가장 간단하게는 독립변수 하나, 종속변수 하나, 그리고 그 둘의 선형관계(linear ralation)를 탐색하는 단순회..
[Pandas] 데이터프레임 피벗 테이블(pivot table)
·
Data Science/Data Processing
피벗 테이블 (Pivot Table) 쉽게 말하면 특정 열의 관점에서 다른 특정 열의 정보를 확인하고 싶을 때 사용한다. 예를 들어서 각 부서의 평균 연봉이라던가, 각 계절의 판매량 등을 확인하고 싶은데, 내가 원하는 정보로 데이터가 있는 것이 아니라 부서 칼럼이 있고, 연봉 칼럼이 있던가, 계절 칼럼이 있고, 판매량 칼럼이 있던가 해서 계산해야 할 때 사용 가능하다.pivot_table(참고링크)을 활용해서 계산한다. 주요한 매개변수는 당연히 있어야 할 data, 인덱스가 될 행을 선택하는 index, 집계할 열을 선택하는 values, 피벗 테이블의 열로 사용할 columns, 집계 함수인 aggfunc이 있다.data는 말 그대로 데이터로 피벗 테이블을 생성할 원본 데이터프레임을 말한다.values..
[Web] 웹 서버(web server)와 WAS(web application server)
·
Web Programing/Web
웹 서버 (Web Server) 웹 서버는 브라우저와 같은 클라이언트로부터 HTTP 요청을 받아, HTML 문서와 같은 정적 웹 페이지를 제공하는 역할을 하는 프로그램 및 하드웨어로서의 서버를 의미한다.단 이때 웹 서버는 HTTP 요청을 받아 파일을 그대로 전달하기에 단독으로는 내부 로직에 의한 동적 구현이 어렵다. 즉 웹 서버를 통한 전달은 정적 자료만을 제공할 수 있기 때문에 동적으로 웹을 구성해야 하는 경우 다른 수단을 이용해야 한다.단 일반적으로 정적 파일을 전달하는 속도는 빠르고, 동적 구현이 필요 없는 경우 구현이 간단하고, 로드 밸런싱, 즉 부하 분산 기능을 제공한다는 장점이 있다.대표적인 웹 서버로는 Apache, Nginx, Microsoft IIS 등이 있다. WAS (Web Appli..
[CSS] CSS 적용 방법 및 적용 우선순위
·
Language/HTML & CSS
적용 방법 크게 세 가지 방법으로 나뉜다. 하나는 외부 적용, 하나는 내부 적용, 하나는 태그 마다 적용이다. • 외부 (External CSS)외부에서 CSS 파일을 불러와서 태그로 적용하는 방법으로 가장 많이 사용되고, 권장된다.위와 같이 적용하며, 주로 위와 같이 태그 안에 CSS를 넣어 적용한다. • 인라인 (Inline CSS)각 태그마다도 적용시킬 수 있다. 빨간색, 20px위와 같이 HTML 태그 안에 style 속성을 직접 설정하여 CSS를 적용한다. 적용 우선순위 1. !important    모든 CSS 규칙을 초과하여 우선순위가 가장 높다.2. style 속성을 이용한 inline    HTML 태그에 직접 지정하면 다른 스타일시트에서 정의한 규칙보다 우선한다.3. id 선..
애스터로이드
인공지능은 전기양의 꿈을 꾸는가