순환 알고리즘, 함수의 수행 중 자기 자신을 다시 호출하는 방법 문제의 정의 자체가 순환적으로 구성되어있는 경우에 적합한 문제 해결 방식이다. 이번 chapter에서는 순환 알고리즘을 적용하여 문제를 해결하는 대표적인 사례 4가지를 살펴 볼 예정이다. - 팩토리얼 https://he-kate1130.tistory.com/26 - 거듭제곱 https://he-kate1130.tistory.com/27 - 피보나치 수열 https://he-kate1130.tistory.com/28 - 하노이의 탑 문제
분류 전체보기
Decision Tree 머신 러닝에서 Decision Tree는 데이터를 분류하거나 예측하는 알고리즘 중 하나이다. 이 방식은 Classification과 Regression에 모두 사용 가능하다 Decision Tree가 어떻게 생겼는지 살펴본다. Root node와 Leaf node에 해당하는 사각형에는 feature가 들어간다. Branch의 경우 위의 feature에 대한 내용이 된다. Classification 먼저, Decision tree를 통해 classification 문제를 어떻게 해결할 수 있는지 알아본다. 이번 포스팅에서 예시로 드는 data와 classification 문제는 아래와 같다. Start 먼저 feature를 outlook으로 하여 decision tree를 작성해보..
우리는 혼자서 프로젝트를 통해 소프트웨어 개발을 할 수도 있지만, 사실상 대부분 팀 단위의 프로젝트를 수행한다. 팀 단위로 여러명의 개발자가 소프트웨어를 개발하게 되면, 혼자 프로젝트를 개발할 때 보다 더 많은 사항들을 고려하고, 계획하고, 관리해야한다. 이번 포스팅에서는 프로젝트의 계획에 대한 부분을 알아보도록 하자. Project Planning 프로젝트 계획은팀원들과 고객이 소통할 때와프로젝트의 진행상황을 평가하는데에 사용한다. 프로젝트의 계획에는 다음과 같은 작업이 포함된다. 작업을 여러 부분으로 나누어 프로젝트 팀 구성원에게 할당 발생할 수 있는 문제를 예상하고 해결방안을 준비 Planning stages 언제 project planning을 해야할까? 프로젝트의 계획은 초기에 한번만 세우고 끝..
베이즈 정리 P(A|B): 사건 B가 주어졌을 때 사건 A의 조건부 확률 (A가 일어날 확률) P(B|A): 사건 A가 주어졌을 때 사건 B의 조건부 확률 (B가 일어날 확률) P(A): 사건 A의 사전 확률 (B에 대한 어떠한 정보도 없을 때 A가 일어날 확률) P(B): 사건 B의 사전 확률 (A에 대한 어떠한 정보도 없을 때 B가 일어날 확률) 베이즈 정리는 조건부 확률 P(A|B)를 알고 싶을 때, P(B|A)의 확률을 이용하여 알아낼 수 있다는 점에서 유용하다 Generative learning algorithm generative learning algorithm에서 베이즈 정리를 통해 모델을 추정하는 방식을 사용한다. generative learning algorithm에서는 데이터의 기반이..
우리 팀은 이번 프로젝트를 시작하기에 앞서 팀원들 간 꼭 지켜야 할 team ground rule을 간단히 정하기로 하였다. 이번 프로젝트는 일년간 함께하는 나름 장기간의 프로젝트가 될 예정이기 때문에 다들 진지하고 열정적으로 참여했던 것 같다. 그라운드 룰의 양식은 구글링 한 결과를 참고하여 우리 팀에 맞게 어느정도 조정하여 만들었으며(사실 진짜 별것 없다), 그라운드 룰의 특성을 고려하여 지속적으로 수정/업데이트 하는 방향으로 결정하였다. * 이외로는 오프더레코드로 팀의 목표와 방향성을 함께 논의하며 프로젝트를 시작하였다. 그라운드 룰의 양식은 아래와 같다. 1. 의사소통 2. 의사결정 3. 회의예절 4. 프로젝트 전반 5. 주기적인 검토와 업데이트 Ground Rule 의사소통 카카오톡 알림 확인을..
네트워크의 구조에서 살펴보았던 network edge와 access network에 대한 개괄적인 이야기를 해보자. 네트워크의 구성을 network edge(+ access network) + network core로 앞선 포스팅에서 알아본 바 있다. https://he-kate1130.tistory.com/11 1. Internet Internet 이번 포스팅에서는 인터넷에 대하여 두가지 관점을 통해 간단하게 알아보도록 한다. 첫번째는 인터넷의 구성과 동작에 대한 관점이고, 두번째는 서비스로서의 인터넷에 대해 집중한다. I he-kate1130.tistory.com Network Edge network edge는 네트워크의 가장자리에 위치한 수믾은 end system을 통틀어 말한다. 아래의 그림을 예..
Protocol에 대한 개괄적인 이야기를 해보자. Protocol의 역할 Protocos define format, order of messages sent and received among network entities, and actions taken on massage transmission, recipt. 프로토콜은 소프트웨어 모듈 사이의 동작을 정의한 것으로, 그 두 소프트웨어는 반드시 같은 계층에 속한 모듈이어야 한다. 프로토콜은 주고 받는 메세지의 형식,순서, 주고받기 전 후에 해야 할 일을 정의한 것. 프로토콜의 대표적인 에시로는 HTTP, TCP, IP등을 생각할 수 있다. 예시: TCP의 3way handshake Protocol TCP를 사용하는 네트워크 커넥션의 예시를 들어 프로토콜..
Background 이미 알 법한 간단한 내용이지만, GDA를 이해하기 위한 background는 다음과 같다. ❓Multivariate normal distribution https://en.wikipedia.org/wiki/Multivariate_normal_distribution ❓Bernoulli distribution https://en.wikipedia.org/wiki/Bernoulli_distribution ❓Generative learning algorithm ❓Maximum Likelihood Estimation Gaussian Discriminant Analysis ❗ Assumption ❗ p(x|y) is distributed according to a multivariate nor..