본 포스팅은 충남대 이종률 교수님의 강의자료를 바탕으로 작성한 글입니다. '상관관계'라고 하면 데이터간 관계가 있음을 나타내는 말이라고 생각할 것이다.이걸 좀 자세히 다뤄보겠다. Correlation, 상관분석상관계수는 어떻게 쓰이냐면,두 수치형 변수간 관계를 측정하고 묘사하며,한 변수가 변하면 나머지 변수도 변한다.그치만 인과관계라고 할 수는 없고, 공변량이다. (공유하는 변화량 이라고 생각하면 된다.) 가장 흔히 쓰이는 상관계수는 피어슨 상관계수이다.이렇게 계산하는 것이고, n은 데이터의 개수, 알파벳 위의 _는 bar라고 읽으며 그 알파벳으로 나타내진 데이터의 평균을 의미한다.분모에 있는 동그랗게 생긴 기호는 sigma이고, 데이터의 표준편차를 나타낸다. 표준편차의 제곱이 분산이다.두 변수가 정규분..
본 포스팅은 충남대 이종률 교수님의 강의자료를 바탕으로 작성한 글입니다.Faithfulness, 충실성데이터가 현실성을 얼마나 잘 포착할 것인가에 대한 내용이다. 1. 내 데이터가 비현실적이거나 잘못된 값을 가지고 있는가? ex), 오타, 큰 이상치, 비존재하는 것, 잘못 기록된 날짜 등..2. 내 데이터가 명백한 종속성을 위반하는가? ex), 출생년도와 나이가 맞지 않는 경우3. 손으로 입력한 것인가? ex) 스펠 오류, 칸 밀려씀, 필수 항목을 빼놓진 않았는지4. 데이터 위조의 근거가 있는지? ex) 같은 이름이 여러 개, 이상한 이메일 주소 등5. 잘린 데이터, 철자 오류, 시간 불일치, 중복된 행 또는 열, 단위가 특정되지 않거나 불일치, NaN/Null -> 이런 경우의 이상한 데이터를..
본 포스팅은 충남대 이종률 교수님의 강의자료를 바탕으로 작성한 글입니다.Box and whisker plot양적 변수에 대한 그래프!First or lower quartile은 25%, Second quartile은 50%, Third or Upper quartile은 75%따라서 First & Third quartile은 항상 middle 50%의 데이터를 포함하고 있다.데이터 분포를 볼 때 자주 쓰이는 box plot의 IQR은, Q3-Q1로 계산된다. 여기서 Whiskers는 이상치 기준선을 나타내는데, Q1-1.5*IQR 부분과 Q3+1.5*IQR 부분을 말한다.이 Whisker를 넘어가는 부분을 이상치로 정한다. HistogramRug plot을 아는가? 이는 1차원 데이터를 쭉 나열한 그래프라..
본 포스팅은 충남대 이종률 교수님의 강의자료를 바탕으로 작성한 글입니다. 정규표현식은 어떤 문장에서 특정한 형태의 문자열을 뽑고 싶을 때 사용하는 것이다.여러 방식이 있으니, 추출하려는 문자열의 특징을 잘 파악해서 사용해야 한다. [표 정리]//Re pattern/[abcd]대괄호 안의 문자들 중 하나++ 앞의 문자를 하나 이상gGlobally match^^ 뒤의 문자로 시작되는 문자열$$ 앞의 문자로 끝나는 문자열?? 앞의 문자가 하나 또는 없음** 앞의 문자가 없거나 그 이상a|ba 또는 b()()안의 문자들을 그룹으로 처리()()괄호 그룹의 집합.어떤 문자든 하나\s공백\S공백 아닌 문자[^abcd]abcd가 아닌[a-z0-9가-힣]저 범위의 문자들 [실습]이런 다양한 정규표현식을 사용하려면, r..
2024.10.16 - [AI/강화학습] - Markov Decision Process Markov Decision Process본 포스팅은 충남대 김현 교수님의 강의자료를 바탕으로 쓴 글입니다. 우선 MDP를 들어가기에 앞서, 간단히 강화학습이 무엇인지 알아보고자 한다. 강화학습이란 에이전트(A)가 어떤 환경(S)에bin-dax.tistory.com강화학습의 기초 내용과 MDP에 관한 내용이 담긴 글이다. 본 포스팅은 충남대 김현 교수님의 강의자료를 바탕으로 쓴 글입니다. 환경에 대한 모델, MDP 모델을 아는 상태에서 이 환경 모델을 이용해 최선의 정책을 찾는 것은 계획이다.환경을 모를 때 s에서 a를 취해보고 정보를 얻어 환경과 지속적으로 상호작용하며 최선의 정책을 찾는 것은 강화학습이다. 1. ..
본 포스팅은 충남대 김현 교수님의 강의자료를 바탕으로 쓴 글입니다. 우선 MDP를 들어가기에 앞서, 간단히 강화학습이 무엇인지 알아보고자 한다. 강화학습이란 에이전트(A)가 어떤 환경(S)에서 누적보상(return)을 최대화할 수 있도록 행동(A)을 취하는 순차적 의사결정 문제를 해결하는 학습방법이다.이 과정은 1. 환경을 관찰하고, 2. 관찰된 환경으로부터 현재 상태를 알아낸 후, 3. 최선의 행동을 결정하고, 4. 결과(보상)를 확인한 후, 5. 상태 정보를 변경하는 순서로 이루어진다. 행동을 취하게 되는 두 가지 방법이 있는데, 활용(Exploitation)과 탐색(Exploration)이다.활용은 알고 있는 정보를 활용해 최선의 행동을 하는 것이고, 탐색은 알려지지 않은 행동을 시도해 새로운 경험..
유클리드 호제법두 수 a, b가 있을 때, 서로 상대 수를 나눠서 원하는 수를 구할 수 있다.만약 a>b이고, a%b==r이라면, a와 b의 최대공약수는 b와 r의 최대공약수이다.최대공약수는 보통 gcd라 쓰는데, def gcd(a, b): while b!=0 : tmp = b b = a%b a = tmp return a 이렇게 구현하면 된다.최소공배수는 두 수의 곱/최대공약수를 하면 된다. 에라토스테네스의 체소수 알고리즘을 풀 때,시간복잡도를 줄이는 방법 중 하나.체로 걸러내는 것.어떻게? [과정] - 모든 정수를 놓고, - 그 중 가장 작은 소수의 배수들을 모두 지운다. 이 두 단계 반복!
우선 import pandas as pd를 해줍니다. 1. 0행이 데이터프레임의 열이름인 경우sep인 구분자를 " "로 봅니다. 이 구분자는 \t, | 등 다른 것이 될 수 있습니다. df = pd.read_csv("데이터의/경로/파일이름.txt", sep = " ")이 경우, 코드에는 작성돼있지 않지만, 기본적으로 read_csv 함수의 인자인 header가 0으로 설정되어 있습니다. 2. 열이름을 생성하고 싶은 경우df = pd.read_csv("경로/와/데이터/이름.txt", sep = "\t", names = ['name', 'age', 'height'], header = None)header인자를 None으로 주고, names를 설정하고 싶은 열이름의 리스트로 정의해줍니다. 3. 열이름 없이..