3월 15일 수업 정리 (용어정리)
Framework 와 Library의 차이
공통점은 모두 일반적인 문제들을 더 쉽게 해결하기 위해 다른 개발자들이 작성한 재사용 가능한 코드이다. 객체라이프사이클에 대한 제어 흐름에 대한 권한이 어디에 있느냐의 차이가 중요.
프레임워크: 자체적인 흐름을 가지고 있으며 그 안에 필요한 코드 작성이 필요 / 제어의 역전(Inversion Of Control)
라이브러리: 사용자가 흐름에 대한 제어 필요, 필요한 상황에 코드를 가져다 씀
라이브러리를 사용할 때에는 어플리케이션 흐름을 직접 설정해야 한다. 라이브러리를 언제, 그리고 어디서 호출할 것인지는 사용자가 결정해야 한다. 그러나 프레임워크는 스스로 이러한 흐름을 담당한다. 프레임워크는 코드를 연결할 수 있는 위치를 제공하며, 필요에 따라 사용자가 연결한 코드를 호출한다.
Library
Library앞에는 보통 Class or Function이 붙는다!
즉, Class들이 모여있는것이 Library이다. 가져다쓰는 클래스들의 모임, 묶음이라고 보면 됨.
C는 객체지향이 아니고 구조적 언어인데 클래스대신 function 즉, 함수를 제공함 (함수중심)
라이브러리는 라이브러리를 가져다가 사용하고 호출하는 측에 전적으로 주도성이 있다.
라이브러리의 예 : React, JQuery
API
Application Programing Interface
interface는 기계간의 장치끼리 정보를 교환하기 위한 수단이나 방법이다. API는 어떠한 응용프로그램에서 데이터를 주고 받기 위한 방법을 의미한다. 어떤 특정 사이트에서 특정 데이터를 공유할 경우 어떠한 방식으로 정보를 요청해야 하는지, 그리고 어떠한 데이터를 제공 받을 수 있을지에 대한 규격들을 뜻함. API는 사용하는 방법과, 용도에 따라 오픈 API와, 비공개 API 정보가 있다.
Hadoop
Bigdata를 Nutch에 저장 / HDFS(저장)분산파일시스템, MapReduce(분석)
Hadoop은 일관성이 좋음, 일관작업, 사이즈가 큰 작업
실시간성을 높인 Spark을 개발, 실시간성이 좋음, 변동분, 이것만 쓰는 일은 없음 저장구조를 가지고 있지 않으므로 메모리에서만 동작 / 메모리가 커야함
AI는 HDFS를 가져다가 train후 model이 나오고 deploy한 후 model이 탑재된 service가 나온다.
context Awareness
Rack
네모 안에다가 1U넣음 (보통 2U 이상 넣음)
분산데이터방식
ScaleOut방식 (MySQL)방식이 더 유리 <-> ScaleUp방식
parsing 구문분석
2 phase commit
Q: What is 2 phase commit in SQL Server?
A: Two-phase commit (2PC) is a host server-installed protocol that ensures that updates to multiple instances of a database on a network either succeed or fail in their entirety. Host Integration Server supports 2PC over TCP/IP, enabling you to gain the security of a 2PC connection over the Internet.
OSD oracle sql developer insert/update...명령내림
-> oracle DBMS (DB) SQL parsing -> Optimizer (execution plan) cost가 가장 적은 안을 찾는다 (ex: A안, B안, C안 중에 time이 가장 적은것)
기술 통계
Population(모집단)
sampling(표본추출) -> sample(표본) -> (표본)통계량 : 평균, 분산.....
표본데이터의 특징이다
이 값이 모집단과 같지 않으므로 추정, 추론, 추측이 필요함
추론 통계
parameter(모수)
mean(평균)
variance(분산)
편차는 +,-가 있다 ----> 다 더하면 0이됨
(5명)
7천 8천 만원 만2천원 만3천원
평균10000원
-2000원 +2000원
-3000원 +3000원
분산은 중심으로 부터 떨어져있는 정도를 나타냄
알아야할 수학적 개념
관계대수(알면좋음)
집합개념
vector
선형대수(꼭알아야함) 거리, 공간(차원/변수)의 문제 / 선형1차 방정식 문제를 풀 수 있다
Residual rum of squares (RSS) 잔차제곱합
residual = error
데이터와 추정 모델 사이의 불일치를 평가하는 척도
Mean Squared Error (MSE) 평균제곱오차
잔차제곱합의 평균 / 추측값에 대한 정확성을 측정하는 방법
RMSE (루트 씌운것)
분산에 루트씌운것이 표준편차 = 시그마
데이터의 분포 -> 퍼짐의 정도를 결정
ex) 시그마 6.5보다 10이 더 퍼져있다
df (degree of freedom) 곡선의 정도
X**2(df) X는 그리스문자 (카이)
빅데이터 연산시 list쓰지 말고 numpy쓸것 (loop도 쓰지 않음)
행렬곱은 (np.dot())
앞의 열과 뒤의 행의 갯수가 같아야하고 결과는 앞의 행과 뒤의 열의 값으로 나타난다
3행 2열 * 2행 1열 = 3행 1열