전체 글 46

머신러닝/딥러닝 수학

머신러닝, 딥러닝에서 기본적으로 중요한 것은 수학이다. 물론 CS(컴퓨터 공학) 지식, domain knowledge도 필요한 건 맞지만 가장 필요한 것은 이것이다. 그래서 앞으로 이런 내용에 대해서 더 쓰고자 한다. 다룰 내용들은 다음과 같다. Linear Algebra Geometry Vector Calculus Probability Theory 이 책의 장점은 기본기가 되는 수학들을 심도있게 다룬다는 점이다. 동시에 후반부에는 수학을 활용한 응용들을 다룬다는 것이다. 머신러닝에서 알아야 하는 PCA(차원축소), EM(기대값 최대화) 등을 잘 다룬다.

T test (T 검정)

T test란 무엇인지 알아보도록 하자. 모집단의 분산이나 표준편차를 알지 못할 때, 모집단을 대표하는 표본으로부터 추정된 분산이나 표준편차를 가지고 검정하는 방법 위와 같이 정의할 수 있겠다. 즉 t test란 어떤 두 집단의 평균을 비교하고자 할 때, 모집단이 아닌 샘플 집단에서 시행되는 것을 말한다. 예를 들어, 학교에 반 A와 B가 있는데 두 반의 평균 키를 비교한다고 하면 이것은 t test가 된다. 두 집단의 평균이 실제적으로 얼마나 차이가 있는지, 차이가 유의한지 여부를 확인하는 것이다. T-test의 종류 대표적으로 t-test는 두 가지로 나눠볼 수 있겠다. independent t-test paired t-test 각각에 대해서 서술해보자면, independent t test 위에서 예..

Medical Statistics 2021.11.04

python에서 virtual environment(가상환경) 만들기

파이썬 코딩을 하다보면 가상환경을 만드는 것에 대해서 알게된다. 가상환경이란, 말그대로 환경셋팅을 해주는 것을 말하는데, 특히 python 버전 셋팅이나 필요한 라이브러리 셋팅을 위해서 많이 이용된다. python3 -m venv my_virtual_environment #위와 같이 터미널에 적어주면 된다 #my_virtual_environment는 이름이다. 내가 만들고 싶은 이름을 적어주면 된다. 명령은 상당히 간단하다! 그렇다면 가상환경 속에 들어가려면 어떻게 해야 할까? source my_virtual_environment/bin/activate 위와 같이 source 명령을 해주고 my_virtual_environment(내가 만든 가상환경의 이름)을 activate 해주면 된다. 그렇게 하면 ..

python(파이썬) 2021.11.03

Cohort Study(코호트 연구)

실험-대조군 연구와 비슷하지만 다른 연구 설계인 코호트 연구에 대해서 적어보고자 한다. 일단 구도는 노출군 vs 비노출군(un-exposed)으로 진행된다. 예를 들어서 담배에 노출된 집단과 그렇지 않은 집단을 비교하여 질병 발생의 연관성을 연구한다면 이것은 코호트 연구가 된다. 하지만, 실험-대조군과 사실 헷갈리는 것은 나만 그런걸까? 그래서 교수님께 이 이슈에 대해서 질문을 해보았더니 교수님께서는 목표하는 바가, 그러니까, 관찰하고자 하는 바(outcome)가 확실한 상태에서 집단을 나눈다면 이것은 실험-대조군 연구라고 하셨다. 예를 들어 우리가 담배를 피는 사람들과 그렇지 않은 사람들의 폐암 발생률을 비교하겠다고 한다면 이것은 실험-대조군 연구라는 것이다. 하지만 만일 우리가 단순히 담배를 피는 사..

Medical Statistics 2021.11.03

Case-Control study 실험-대조군

임상시험 설계 중에서 case-control study에 대해서 알아보자. 가장 간단한 실험 설계이긴 한데, 가장 대표적인 예시가 질병군(case)과 비질병군(control)으로 나누어 비교 연구를 진행하는 것이다. 이 연구에서 이루어지는 일은 exposure와 질병 발생과의 관계를 조사하는 것이다. 이 연구는 연구가 rare일 때 효율적이다. 보통, 질병과 관련있다고 생각되는 어떤 배경 인자나 위험 요인에 대해 노출된 정도를 상호비교하는 연구 설계라고 보면 될 것 같다. 관련 이슈사항은 아래와 같다. Issues case, control 선택하는 데 있어서 머리를 많이 써야 할 수 있음 연관성이 있다고 해서 반드시 인과 관계로 결론 지을 순 없음.

Medical Statistics 2021.11.01

RCT의 장점과 단점

의학통계에서 중요한 연구 설계 중 하나, RCT(Randomized Clinical Trial)의 장점과 단점에 대해서 알아보도록 하자. 먼저 장점은 최적의 증거 연구 설계 최소 편향(블라인딩 이용) --> 어떤 편견 없이 객관적으로 접근할 수 있다! 가능한 교란 요인을 control 할 수 있음. 비교 가능한 그룹이 있다는 것 이처럼 RCT는 알고자 하는 바를 명확하게 알 수 있다는 점에서 굉장히 큰 장점을 가지고 있지만, 이런 새로운 지식을 발견하기 위해서는 많은 값을 지불해야 한다. 이제 단점에 대해서 알아보자. 비용이 많이 들고 시간이 많이 소요된다. 대상이 대표적이지 않을 가능성이 있음 윤리적으로 어려운 연구일 수 있음 사실 RCT는 나쁘게 보면 생체 실험이다. (나쁘게 보면.. 말이다) 약을 ..

Medical Statistics 2021.10.31

표준편차(standard deviation)와 표준오차(standard error)

비슷한 것 같지만 서로 다른 개념인 표준편차와 표준오차에 대해서 적어보겠다. 표준편차(standard deviation)는 데이터상의 분산 정도를 알 수 있게 해주는 척도이다. 예를 들어, 어떤 집단의 평균 키를 구한다고 했을 때, 평균 키의 분산 정도(variability, 퍼져있는 정도)를 알 수 있는 방법이 표준편차를 통해서다. $$ standard deviation = \sqrt (E(X^2) - [E(X)]^2) $$ 표준오차는 추정치의 standard deviation을 의미한다. 즉, 진짜 값에서 얼마나 떨어져 있는지를 나타내는 지표이다. 예를 들어, 추정된 평균에서의 오차.

Medical Statistics 2021.10.30

파이썬 버전 리눅스에서 확인하는 법(python version)

오늘은 파이썬 버전 확인하는 간단한 방법에 대해서 알아보도록 한다. $python --version #혹은 python3 --version 위와 같이 shell을 입력해주면 결과가 나온다. 나의 경우 파이썬 3.8.5를 사용하는 것을 볼 수 있다! 이 외에도 파이썬 스크립트에서 확인할 수 있는 방법이 있다. import sys print(sys.version_info) print(sys.version) 이렇게 스크립트를 작성해준다면 다음과 같이 결과가 나온다. 이런 식으로 파이썬 스크립트를 활용해서 버전을 확인하는 방법도 가능하다! 그렇다면 오늘은 여기까지다.:)

python(파이썬) 2021.10.29

인공신경망

딥러닝에 대해서 적어보고자 한다. 딥러닝, 인공지능 얘기가 나오면 빠지지 않는 이야기가 있다. 2016년에 바둑 초고수 이세돌과 알파고의 싸움이었다. 지금도 많이 회자되고 있고, 많은 사람들이 인공지능의 능력을 실감하게된 계기가 되기도 했다. 놀라운 인공지능의 성능은 어떻게 이렇게 나오게 된 것일까? 그것은 바로 인경신경망에 있다. 인공신경망(neural network)이라는 개념은 사실 굉장히 오래된 개념이다. 1970년대서부터 이미 통계학에서 regression 모델로서 제시되었다. 하지만 당시에는 인공신경망이 크게 각광받지 못했다. 인공신경망을 활용한 다양한 연구들도 있었고 인공신경망을 이용해서 할 수 있는 태스크도 제안이 되었었지만, 당시에는 computing power도 굉장히 약했고, 인공신경..

파이썬 설치방법

오늘은 굉장히 핫한 코딩 언어인 파이썬 설치 방법에 대해서 알아보도록 하자. 파이썬은 2.x 버전과 3.x 버전이 있다. 나는 개인적으로 3.x 버전 중에서 3.6을 쓰는 것을 추천한다. 파이썬도 시간에 따라서 계속 보강되고 수정되기 때문에 시간이 지날수록 높은 버전이 나오긴 한다. 하지만 대부분의 프로그램들은 안정적인 언어 환경을 추구하고 있기 때문에 출시되고 시간이 조금 지난 것을 사용한다. 1. 먼저 www.python.org를 들어간다. 2. 다운로드 배너에서 자신에게 맞는 운영체제를 선택한다. windows 혹은 macos 3. 자신에게 맞는 버전을 다운로드 한다. 4. 다운로드를 하고 나서 파일을 클릭해서 설치를 진행해주면 끝이다! 여기서 64, 32중에서 헷갈릴 수 있는데 보통 왠만하면 64..

python(파이썬) 2021.10.28