더북(TheBook)

노드 추가하기

노드는 모두 4개, 즉 환자의 나이, 흡연 여부, 투병 기간, 외과 수술 결과다. 각 노드를 그래프에 연결하는 코드가 필요하다. 각각의 노드를 만들고, 그래프에 연결할 코드가 필요하다. 다음은 나이 노드에 대한 자바 코드다.


InferenceGraphNode age = BayesNetHelper.createNode(inferenceGraph,"under55", "<55", ">55");

 

InferenceGraphNode는 노드를 그래프 클래스와 연결한다. 노드에는 ‘under55’라는 이름을, 그리고 두 결과에는 ‘<55’와 ‘>55’라는 이름을 부여한다. 결과는 노드의 참/거짓 상태를 가진다. 결과에 간단히 값을 지정할 것이다. 노드를 만들기 위해 BayesNetHelper 클래스의 createNode() 메서드를 사용한다.

하나의 노드에 노드 세 개가 붙는다. 다음은 나머지 노드 세 개의 자바 코드다.


InferenceGraphNode smoker = BayesNetHelper.createNode(inferenceGraph, "smoker", "smokes", "doesnotsmoke");
InferenceGraphNode duration = BayesNetHelper.createNode(inferenceGraph, "duration", "<2Y", ">2Y");
InferenceGraphNode surgical = BayesNetHelper.createNode(inferenceGraph, "surgicalOutcome", "positive", "negative");

 

현재 노드는 서로 알고 있는 상태가 아니다. 노드를 연결하는 에지가 아직 없기 때문이다. 다음 절에서 에지를 다뤄보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.