본문 바로가기

공부/정보과학15

[개념] 조립이론(Assembly therory) - 조립의 관점으로 보는 생명현상 최근 안될과학에서 김응빈 교수님이 조립이론(Assembly Theory)를 언급하셨다(영상 11분 즈음). 예전 그래프 커뮤니티에서도 잠깐씩 봤던 키워드라 한 번 관련 글을 찾아볼까 했는데, 마침 콴타매거진에 이 이론을 다룬 기사가 있었다. A New Idea for How to Assemble Life - Philip all, Quantamagazine 조립 이론은 Cronin과 Walker의 고민으로부터 시작되었다는 설명이다. Cronin은 왜 원자들은 가능한 천문학적인 결합의 방법 중 어떤 분자는 만들고, 어떤 분자는 만들지 않을까를 고민했고, Walker는 살아있는 유기체의 분자가 우연히 조합되기에는 너무 복잡하다는 것을 고민했는데, 이 둘이 만나 토론하던 중 공통적으로 필요성을 느낀 것이 Ass.. 2023. 7. 6.
[통계] 베이지안 회귀분석 - 계층적선형모델(HLM) with PyMC3 계층적 선형 모델(Hierarchical linear mode)은 관측한 표본 데이터에 계층 구조가 있을 경우 적용해볼 수 있는 모델이다. 예를 들면, 전국에서 학생들의 특징(x)과 성적(y)에 관해 데이터를 모았다고 해보자. 이 때 나타나는 x와 y의 관계만으로는 올바른 설명이 이루어 질 수 없다. 전국에서 추출한 학생들의 특징은 '학생-반-학교-지역'으로 이루어 지는 계층 구조에 속해 있다. 이렇게 보면 전체 데이터에 나타난 집단 수준(반, 학교, 지역)의 차이에 의해 x와 y의 관계를 올바로 예측할 수 없다. 그래서 등장한 것이 계층적선형모델이다. 특히 오늘 소개할 베이지안 회귀분석을 이용한 계층적선형모델에서 유명한 예는 Gelman과 Hill에 의한 집으로 침투하는 라돈(Radon) 함유량 연구다.. 2020. 8. 30.
[통계] 베이지안 회귀분석 - 선형모델 with PyMC3 python 패키지인 PyMC3을 이용, 지난 글에서 소개한 베이지안 회귀분석을 해보는 예제를 정리해본다. PyMC3은 베이지안 회귀를 이용한 다양한 모델링을 가능케 해주는 package다. 사용법도 쉽고, 무엇보다 홈페이지에 다양한 예제가 자세히 소개 되어 있다. Install 시, 주의사항은 python3.6 보다 높은 버전에서는 에러가 난다는 점. python3.6 버전에서 설치하는 것이 안정적이다. (홈페이지에서도 그렇게 언급하고 있다.) PyMC3는 theano를 기반으로, PyMC4는 tensorflow를 기반으로 동작한다고 한다. 예제 데이터 생성 $y = 2x + 1 + \epsilon$ 위와 같은 모델을 통해 예제 데이터를 생성한다. 이 때, 기울기 $\theta_{1}$는 2, 절편 $.. 2020. 8. 28.
[통계] 베이지안 회귀분석 회귀는 데이터로부터 모델을 추정하는 한 방법이다. 최소자승법이 잔차를 최소화 시키는 방법이라면, 베이지안 회귀는 가능도 최대화가 목적이다. 이 글의 최종 목표는 베이지안 회귀의 원리를 이해하고, python package인 pymc3을 활용까지 다뤄보는 것이다. 이번 포스팅에서는 우선 원리를 이해하는 것을 목표로 한다. 모델 가장 기본적인 선형 모델은 다음과 같이 쓸 수 있다. $y = \theta_{1}x + \theta_{2}$ + $\epsilon$ 이 때 $\theta_{1}$, $\theta_{2}$는 모델의 파라미터, $x$, $y$는 관측 값, $\epsilon$은 오차를 나타낸다. $x$, $y$라는 관측값으로 부터 $\theta_{1}$, $\theta_{2}$를 추정해 나가는 것이 목표.. 2020. 8. 28.
[통계] 베이즈 추론 우리는 우리가 직접 알 수 없는 것들에 대해서 추론할 때, 모델을 상정하고 관측을 한다. 베이즈 추론은 관측이 추론으로 이어지는 과정을 담고 있다. 먼저, 베이즈 추론의 바탕이 되는 베이즈 정리를 살펴보자. 베이즈 정리는 사건 A와 B의 교집합의 확률에 관점을 부여하며 의미를 갖는다. A와 B의 교집합의 확률은 A와 B에게 있어서는 다음과 같다. $P(A{\cap}B) = P(A|B)P(B) = P(B|A)P(A)$ 이 공통 사건에 'B라는 조건에서 A가 발생할 확률'이라는 관점을 부여하면 다음과 같이 표현되고, 이를 베이즈 정리라고 부른다. $P(A|B) = \frac{P(A{\cap}B)}{P(B)} = \frac{P(B|A)P(A)}{P(B)}$ 베이즈 추론에서는, 위의 정리에서 관측할 수 있는 것.. 2020. 8. 27.
[통계] p-hacking, False discovery rate, power analysis Youtube에 'StatQuest'라는 통계관련 정말정말 좋은 채널이 있다. 최근 올라온 동영상 중 p-hacking이 어떤 것인지 피하려면 어떻게 해야 하는지에 관한 영상들이 있어 간단히 정리해본다. 가설 검정 실험이나 연구를 계획할 때는 조건에 따른 결과의 차이를 통해 인과관계를 탐색해 나가는 것이 일반적이다. 이 때 우리가 증명하고 싶은 가설은 '차이가 있음'에 있다. 예) '약을 투여했더니 증상이 호전되었다' 하지만 '차이가 있다'는 가설은 그 정도에 따라 무한으로 가설을 세울 수 있기 때문에, 유일하게 설정할 수 있는 '차이가 없다'를 가설로 내세워 기각하는 방식이 주로 이용된다. 이 때 기각하기 위해 설정하는 가설이 '귀무가설', 기각 시 채택되는 연구가설이 '대립가설'이라는 이름으로 사용된.. 2020. 5. 6.
[예제] 시계열 Data로부터 Transfer Entropy 구하기 정보 엔트로피를 소개하는 글에서 언급되었던 Transfer entropy. 수식과는 다르게 실제로 구하는 방법은 감이 쉽게 오지 않는다. 그래서 관련 예제를 정리해본다. 잠깐 복습을 하자면, Transfer entropy는 특정 시간의 data의 값이 이전 자신이 지녔던 값과 관련 있는지, 아니면 다른 data에 더 관련을 지니고 있는지 확률을 통해 정량화한 값이다. 더 간단히 예를 들어보자면, 두 시계열 데이터 X, Y가 있을 때, 특정 시간 t의 X의 값이 X의 이전 값보다 Y의 이전 값으로 설명이 더 잘된다면, Y의 값이 다음 time step의 X의 값에 영향을 미치고 있는 것으로 판단해 볼 수 있다. 식으로 나타내자면, 다음과 같다. X_t+1의 값이 X_t(k), 즉, 이전 X값을 k개 모아 .. 2019. 2. 19.
[예제] 라그랑즈 승수법을 이용한 최대 엔트로피 계산 몇일 전 라그랑즈 승수법과 최대엔트로피가 적절히 접합된 내용에 대해 생각해 볼 기회가 있어, 정리해본다. 각각의 가격이 1, 2, 3, 8인 물건이 있다. 어느 날 팔린 물건의 평균이 m일 때, 최대 엔트로피를 갖는 물건의 비율은 무엇인가? 각각의 물건이 차지하는 비율을 다음과 같이 두자. 그럼 이 때의 비율에 대한 정보 엔트로피는 다음과 같이 표현할 수 있다. 이 때의 제한 조건은 비율의 합이 1, 가격의 기대 값이 m이며, 다음과 같이 나타낼 수 있다. (v는 가격) 이제 최대엔트로피와 제한조건의 극값을 찾는 라그랑즈 미정 승수법을 적용한다. 이제 미분값을 0으로 만드는 확률을 계산하고 위의 식을 p에 대해 전개하면 다음과 같이 표현할 수 있다. 확률이 가격을 지수로 갖는 함수로 분포함을 알 수 있다.. 2018. 12. 15.
[확률과정] 푸아송 과정 실전편 - 발생 시간 간격의 관점에서 이전 푸아송 과정을 설명하는 글에 이은 실전편. 푸아송 과정을 사건 발생 시간 간격의 관점에서 분석해보자. 시간 간격의 관점에서 분석하는 이유 이전 푸아송 과정 글에서 최종적으로 유도한 식은 다음과 같다 한 step(t=1)에서 λ의 기대 값을 가지는 사건이 발생할 경우, 시간 간격 t 내에 k번의 사건이 발생할 확률을 나타내는 식이다. 이처럼 사건의 발생 원인을 확실히 알고 있는 경우, 즉, 사건이 step별로 독립적이며 λ라는 기대값을 가진다는 것을 알고 있는 경우라면, 위의 식이 기대값을 도출하는데 도움이 될 수 있다. 허나, 아무것도 모르는 상태에서 이 사건이 푸아송 과정인지 살펴보기 위해서는 위의 식으로는 불편한 점이 있다. 그래서 사건이 발생한 시간 간격의 관점에서 분석하는 것이 편리하다. 이.. 2018. 10. 10.