본문 바로가기
728x90

전체 글56

Basic Derivative(미분) 미분 미분은 데이터 사이언스 분야의 다양한 핵심 개념을 이해하는데 있어 필수불가결적인 수학 개념입니다. 머신러닝 ,딥러닝의 핵심은 결국 모델 최적화입니다. 최적화란 모델이 예측을 더 잘할 수 있게 모델의 파라미터를 조정하는 것인데요. 이러한 최적화를 하기 위해선 미분은 필수적입니다. 머신러닝에서 미분은 어떻게 쓰이는가? → 실제 값과 예측값의 오차를 줄여나가기 위해서 오차들로 이루어진 함수를 그리는데 그 함수가 0이 될 때가 가장 오차자 적은 즉, 정확도가 높은 모델인 것이므로. → 그 0이 되는 지점을 찾기 위해 '미분'이라는 개념이 쓰인다. 편미분을 하는 이유 머신러닝에서는 일반적인 미분상황과는 달리 변수가 여러개가 들어가게 된다. 예를 들어, 금융 데이터에서 자본총계와 EPS 등의 변수들로 →매출액..
Data Manipulation Data Manipulation 정의 : 데이터 조작 언어(영어: Data Manipulation Language, DML)은 데이터베이스 사용자 또는 응용 프로그램 소프트웨어가 컴퓨터 데이터베이스에 대해 데이터 검색, 등록, 삭제, 갱신을 위한, 데이터베이스 언어 또는 데이터베이스 언어 요소이다. 2007년 현재 가장 대중적 데이터 조작 언어는 SQL 데이터 조작 언어이다. 출처 : https://ko.wikipedia.org/wiki/데이터_조작_언어 why? : 현실에서는 여러 개로 쪼개진 파일들을 한꺼번에 사용 하는 경우가 더 많습니다. 이러한 경우 결국 하나의 데이터 셋을 만들기 위한 작업이 필요합니다. 핵심 키워드 concat 데이터 프레임 붙이는 방법( axis =0/1로 행/열 중 붙이는 ..
[Feature Engineering]변수 인덱싱, 결측값 생성 Feature Engineering 🏆 학습 목표 Feature Engineering 의 목적을 이해 할 수 있다. pandas를 통해 문자열(string)을 다룰 수 있다. → replace(',' , '')함수로 콤마 제거 후, 문자열 → 숫자 데이터프레임에 .apply()를 사용하여 행을 수정하거나 새로 작업 할 수 있다. → 데이터프레임 변수에 한번에 적용할 수 없는 함수를 df['변수1'].apply(함수)로 적용 데이터프레임에서 변수 인덱싱 두개 이상의 컬럼을 추출할 때 # df[['변수1', '변수2']] -> 1개 이상의 컬럼을 추출하는 경우에는 대괄호를 2번( [[]] ) 사용* df[['영업이익률', '영업이익률2']].head() 숫자로 인덱싱 → iloc[] df.iloc[:,[3,..
EDA 데이터 로드 .csv 파일 → pd.read_csv( ) .xlsx 파일 → pd.read_excel( ) df = 'https://ds-lecture-data.s3.ap-northeast-2.amazonaws.com/stocks/Travel.xlsx' df1 = pd.read_excel(df) # *강의 파일과는 달리 엑셀 파일이므로 read_excel 함수를 활용한다. 데이터 프레임 전치 → .transpose() 🔥 도전과제 → 데이터를 원핫 인코딩 방식으로 나누지 않고 색깔 별로 지정할 수는 없나? More 박스, 막대, 히스토그램, 산점도 등의 플롯들 통계학개론 읽기
카이제곱검정 카이제곱 검정 : 범주 변수간의 관계성을 보기 위한 검정 방법 일원 카이제곱 검정 : 한개의 범주를 대상으로 함 이원 카이제곱 검정 : 두개 이상의 범주를 대상으로 검정 이원 카이제곱 검정 핵심 질문 : 두개 범주변수 간 관계가 존재하는가? H0 : 두 범주변수 간에 연관이 없다. H1 : 두 볌주변수 간에 연관관계가 있다. 공식 (카이제곱 통계량) = sum( (관찰횟수 - 기대횟수)^2 / 기대횟수 ) 카이제곱 통계량은 이원분류표에서의 실제 관찰 횟수에서 기대횟수를 뺀 차이를 제곱한 후 이를 기대횟수로 나눠준 값들의 합이다. 카이제곱통계량은 기대횟수로부터 벗어난 관찰횟수의 거리를 측정한 값이라고 생각하자. (어느 거리와 마찬가지로 관찰 횟수가 기대횟수와 완벽하게 일치할 경우에만 0이 되기 때문이다. ..
[데이터 과학을 위한 파이썬 프로그래밍]연습문제 9장.< 파이썬 스타일 코드 II > 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 # 9장 연습문제 # #1.f = lambda x,y: x**yf(2,3) # 8 #2f = lambda x: x**2ex =[1,2,3,4,5]list(map(f,ex)) #3from functools import reduceprint(reduce(lambda x,y : x*y,[1,2,3])) #5def t_list(two_list): return[row for row in zip(*two_list)] t_list([[1,4,7], [2,5,8], [3,6,9]]) #6date_info = {'year':"2019", 'mo..
[Feature Engineering] object로 이루어진 네이버 금융 데이터 변환 재무제표 데이터 위와 같은 네이버 금융의 재무재표 데이터를 다운받아 파이썬으로 불러오면 숫자형이 아니라, 콤마가 있는 문자열로 인식하는 문제가 발생한다. 이럴 경우 문자열을 다루는 함수인 replace 함수와 컬럼에 함수를 전체 적용하는 apply함수를 사용하여 컬럼을 숫자형으로 변환한다. object -> int 변환하기 매출액과 영업이익 피쳐에 있는 ','를 ''로 대체하여 삭제하고 int형으로 변환하기 위해 이를 문자열에 적용하는 toInt함수를 정의하고 이를 apply함수로 두 피쳐(매출액과 영업이익)에 적용하였다. 이후 object였던 두 피쳐가 int형으로 변환된 것을 확인할 수 있다. 여러 변수 변환하기 적용하기 object인 변수 확인 변수들 중 object인 변수를 확인하고 이들의 인덱스..
[Feature Engineering] 형 변환 형변환이란 데이터의 타입을 변경하는 것 예를 들어, '200'이라는 정수형인 int 타입의 숫자를 저장할 때 0과 1로 이루어지는 bit 값은 아래와 같다. 반대로, 같은 200이라는 값이지만 실수형의 float타입인 '200.0'으로 저장했을 때의 bit값은 아래와 같다. 같은 200이지만 완전이 다른 bit값을 가짐. 이렇게 다른 형식의 데이터를 다른 타입으로 전환하는 것을 '형 변환(implicit Conversion)'이라고 한다. 출처 : youtu.be/FWAHBg28zeY 형 변환을 하는 이유 integer vs float 데이터 타입에 따라서 퍼포먼스가 영향을 받는 다는 내용의 논문 https://www.researchgate.net/publication/224258253_Fine-Grai..
728x90