오늘날 많은 의료 기관들은 의료 시스템의 아주 작은 부분만 보고 있는 것 같아요. 헬스케어에 대한 통찰력을 얻기 위해 장기적인 관점에서 전체적인 접근 방식을 취하는 경우는 드물죠. 높은 비용의 대부분은 연결된 정보가 부족하기 때문에 발생한다고 해요.
개인의 건강 관리를 개선하기 위한 고품질 예측을 하려면 많은 데이터 포인트를 고려해야 한다는 의미겠죠. 헬스케어 영역에서는 그래프의 활용도가 다소 낮은 편인데, 헬스케어 데이터가 그래프 구조에 정말 잘 들어맞기 때문에 아쉬운 부분이에요.
이번 포스팅에서는 Optum의 저명한 엔지니어 분이 의료 데이터 연결을 더욱 발전시키는 방법에 대해 설명해 주실 거예요. 먼저 몇 가지 배경 설명을 해주실 텐데요. 그래프와 의료 데이터, 그리고 이 데이터가 어떻게 표현되는지에 대한 예시를 포함해서요. 또, 데이터가 매우 가변적이기 때문에 기존의 엄격한 관계형 데이터베이스에 저장하기 어려운 이유도 알아볼 거예요. 그런 다음 의료 데이터를 그래프에 저장하는 것의 이점과 데이터 세트 연결과 같은 그래프 데이터베이스의 기능도 보여주실 거예요.
뿐만 아니라, 오늘날 의료 분야의 도전 과제와 그래프 기술이 어떻게 도움이 될 수 있는지 알아볼 거고요. 또, 관리자에게 그래프를 설명할 수 있는 세 가지 은유도 제공해주신다고 해요. 마지막으로 그래프가 다른 기술과의 결합을 통해 의료 분야의 수많은 심각한 문제를 해결하는 데 핵심적인 역할을 하고 있다는 결론을 내릴 거예요.
전체 프레젠테이션: 연결된 의료
오늘 발표는 헬스케어 연결에 관한 내용이에요.
이번 포스팅에서는 의료 분야에서 직면한 과제와 과거에 Graph Database를 선택하지 않았던 이유를 자세히 살펴볼 거예요. 그런 다음 그래프가 의료 분야에서 어떻게 도움이 될 수 있는지 그림을 통해 보여드릴게요.
마지막으로 의료 경영진에게 Graph Database가 필요한 이유를 설명하기 위해 어떤 과정을 거쳤는지도 간단히 살펴볼게요. 이러한 경영진은 실제로 시스템을 구축하는 사람이 아니라 어떤 시스템을 구축할지 결정하는 사람들이기 때문에 이 부분이 중요하죠.
결국 중요한 건 우리가 그걸 이해하느냐가 아니라, 다른 사람에게 설명할 수 있는 적절한 비유가 있느냐 같아요. 앞으로 포스팅에서 이런 비유들을 좀 더 자세히 다뤄볼게요.
배경
Optum을 들어본 적이 없다면, 저희는 사실상 UnitedHealth Group의 IT 부서라고 할 수 있어요. 저희의 미션은 사람들이 더 건강하게 살도록 돕고, 모두를 위해 의료 시스템이 더 잘 작동하도록 만드는 것이죠.
UnitedHealth Group은 2017년에 약 2,000억 달러의 매출을 올렸고, 직원 수는 25만 명이 넘으며 IT 직원은 42,000명이나 돼요. 저희는 데이터 분석을 위해 연간 10억 달러 이상을 투자하고 있고, 데이터 과학 부서에는 3,000명이 넘는 직원이 근무하고 있답니다.
이들 대부분은 매우 전통적인 메인프레임과 관계형 DB에 익숙해요. 특히 저희가 최첨단 기술을 가진 의료 회사를 많이 인수하지 않았기 때문이기도 하죠. 하지만 저희는 데이터 때문에 그 회사들을 인수하는 거고, 이 데이터에 접근하는 것이 좋은 예측 모델을 만드는 데 핵심이에요.
Optum에서는 Advanced Technology Collaborative라는 프로젝트도 진행 중이에요. 여기서 "협업"이라는 단어가 특히 중요한데, 저희의 임무는 인수된 다양한 조직들이 모두 함께 작동하도록 만드는 것이기 때문이에요. UnitedHealth Group은 매년 20~30개의 새로운 회사를 인수하거든요.
이러한 조직과 회사들은 다양한 방식으로 데이터를 저장하기로 결정하죠. 아래 이미지에 보이는 것처럼 6가지 기본적인 고급 패턴을 식별할 수 있어요.
관계형 DB는 왼쪽 상단에 있는데, 여기에는 모든 것을 테이블 형식의 견고한 구조로 배치하죠.
모든 사실이 중간에 있는 분석도 있어요. 이건 집계 보고에 적합하지만, 아시다시피 집합은 지식이 아니잖아요.
그리고 키-값 저장소, 열 패밀리, 그래프, 문서라는 네 가지 NoSQL 패턴이 있어요.
저희가 많은 것을 연구했지만, 오늘날 의료 분야에서 가장 활용도가 낮은 것 중 하나는 Graph Database에요. 의료 데이터가 일반적으로 그래프 구조에 아름답고 정확하게 들어맞기 때문에 정말 안타까운 일이죠.
제가 과거에 본 것은 많은 조직이 하나의 기술에 의해 지배되고 있다는 거예요. 예를 들어, 솔루션 공간에 단일 관점만 가져오는 관계형 DB일 수 있죠.
지금 이야기하려는 건 빠르게 변화하는 의료 데이터 세상에서 경쟁력을 갖추려면 다양한 관점이 필요하다는 거예요. 단순한 그래프뿐만 아니라 키-값 저장소, 검색 엔진, 멀티 모델 시스템 등 다른 것들과 결합된 그래프 말이죠. 이런 점이 의료 분야 조직들이 경쟁력을 갖게 되는 이유랍니다.
아키텍처 접근 방식
그럼 이제 그 과정에 대해 조금 더 자세히 알아볼까요? 아래 이미지 맨 윗줄을 보면 특정 시스템의 요구 사항과 품질 특성을 결정하는 다양한 방법들을 확인할 수 있어요.
지금 보고 있는 건 맨 아래 행, 즉 아키텍처적 접근 방식이 포함된 중간 상자를 이러한 다양한 솔루션으로 채우려고 한다는 점이에요.
이건 Carnegie Mellon University에서 개발된 프로세스인데요, Architecture Tradeoff Analysis Method (ATAM)이라고 해요. 다양한 접근 방식의 순위를 매기고, 적합성을 분석하고, 장단점을 이해하는 데 도움이 되죠.
여기서 우리가 알 수 있는 점은 특정 접근 방식에는 고가용성 또는 복잡한 규칙을 관리하는 능력과 같은 중요한 요구 사항이 있는데, 이게 종종 그래프 시스템에 아주 적합하다는 거예요.
의료 분야의 과제
자, 이제 의료 분야의 큰 문제에 대해 이야기해 볼까요?
Optum에서는 완전히 다른 일을 하는 많은 회사를 인수해요. 예를 들어, 실험실 테스트를 하는 회사, MRI를 찍는 회사, 안과 검사를 하는 회사 같은 곳들이죠. 이 모든 데이터는 높은 가변성과 다양한 형식 때문에 완전히 달라요.
헬스케어에는 약품명, 증상, 질병 등 복잡한 용어가 엄청나게 많다는 것도 문제죠.
더욱 신뢰를 쌓기 위해 노력하고 있는데, 이건 그래프가 하도록 설계된 건 아니지만, 블록체인 및 블록체인 기술을 연구하면 의료 기관이 더 나은, 더 신뢰할 수 있는 방식으로 데이터를 교환하도록 돕기 위해 우리가 어떻게 노력하고 있는지 알 수 있을 거예요.
우리는 또한 엄청난 개인 정보 보호 문제도 안고 있어요. 의료 개인 정보 보호와 건강 보험 이동성 및 책임법 (HIPAA)에 대해서는 다들 아실 텐데요. 따라서 우리 시스템이 개인 건강 정보 (PHI) 데이터를 보관하는 방식을 엄격하게 감사해야 해요.
챗봇으로 작업도 시작하고 싶었어요. 환자가 챗봇을 열고 "독감 주사가 내 건강 보험에 포함되나요?"라고 물어볼 수 있다면 정말 좋겠죠?
마지막 두 가지 과제는 Machine Learning (ML) 확장성 문제뿐만 아니라 설명 가능성도 있다는 점이에요.
통합 과제
좋아요. 가장 먼저 해야 할 일은 통합 문제예요.
오늘날 우리는 서로 다른 회사에서 서로 다른 기술로 서로 다른 시점에 구축된 서로 다른 시스템을 실행하는 경우가 많아요. 우리는 이 모든 것을 사일로라고 생각하는데요. 사람들이 분석을 수행할 때 일반적으로 하나의 사일로에서만 수행하죠. 여러 사일로의 데이터를 병합하는 건 정말 어려운 일이에요.
우리가 하고 싶은 건 모든 헬스케어 관련 정보들이 제대로 연결되는 세상을 만드는 거예요. 바로 Knowledge Graph를 통해서죠. 모든 것을 통합하는 걸 엔티티 해결이라고도 부르는데요. 여기엔 요양원에 사람들을 데려다주는 운전기사님부터 복잡한 임상 시스템, 전자 의료 기록, 처방전, 약물 알레르기, 심지어 전체 게놈 정보까지 포함돼요. 이 모든 것들이 환자 개개인의 의료 기록에 데이터를 제공하는 거죠.
우리의 비전은 이 모든 정보가 결국 하나의 거대한 연결된 그래프에 담기는 거예요. 물론 장기적인 목표이긴 하지만, 우리가 추구하는 방향이기도 하답니다.
데이터 가변성
데이터 가변성에 대해 이야기해볼까요? 아래 이미지를 보시면 모든 회사에 총계정원장이 있지만, 그 구조가 꽤나 일관적이라 변동성이 낮다는 걸 알 수 있을 거예요.
반대로, 오른쪽 끝을 보면 임상 데이터는 변동성이 엄청 높다는 걸 알 수 있죠.
그래서 저희는 종종 조직들에게 데이터의 변동성에 대해 알려주고, 기록 중에 예외가 얼마나 있는지 측정해달라고 요청하곤 해요. 때로는 특정 항목을 포함하는 레코드가 단 1%밖에 안 되더라도 데이터베이스에 추가 컬럼을 만들어야 하고, 테이블이 너무 넓어져서 비효율적이 될 수도 있거든요.
게다가 미래의 변동성을 예측하는 건 정말 어려운 일이에요.
챗봇
저희는 챗봇을 만드는 과정도 진행 중이에요.
예를 들어, 출산을 앞둔 환자가 의료 시스템 챗봇을 통해 보험 적용 범위를 문의할 수 있겠죠. 이런 시나리오에서는 '신생아'와 '임산부 보험' 간의 연관성을 아는 챗봇이 필요해요. 이를 위해선 대체 단어와 레이블을 선택해서 연결해주는 작업이 필요하죠.
그럼 어떻게 해야 할까요? 그래프를 만들어서 해결하는 거죠!
위 예시에서는 모든 혜택 플랜에 대한 분류 체계를 구축했어요. 채팅과 질문이 들어올 때마다 해당 분류가 추가되는 방식이죠. 이러한 분류법은 두 가지 목적으로 사용하고 있어요.
첫 번째 목적은 새로운 혜택 계획이 게시될 때마다 그 안에 있는 단어를 보고 해당 분류의 올바른 부분과 연결하는 거예요. 이걸 우리는 문서 분류 문제, 즉 document classification 문제라고 부르죠.
두 번째 목적은 이 그래프의 패턴을 살펴보는 건데요. 예를 들어, 아기가 성장하면서 나무를 걸을 때, 이게 산모 관리 나무와 얼마나 밀접하게 관련되어 있는지를 나타낼 수 있어요.
이것이 검색에 도움이 되도록 그래프를 사용하기 시작하는 표준 방식이에요. 답변된 채팅이 많을수록 콜센터에 걸려오는 전화가 줄어들죠. 회사에서 전화를 받고 이와 같은 질문에 답변하는 데 일반적으로 10달러 정도의 비용이 들기 때문에 이건 정말 중요한 부분이에요.
하지만 현재는 모든 사람의 혜택 플랜, 공제액 및 자기부담금이 다르기 때문에 이걸 쉽게 수행할 수 없어요. 이런 방식으로 우리는 매우 동적인 데이터베이스를 찾아야 하는 거죠.
연결된 데이터의 가치
우리가 묻기 시작한 질문은 바로 이거였어요. 연결된 데이터는 왜 중요할까요?
얼마 전에 한 그룹이 우리를 찾아와 이전에 해본 적이 없는 새로운 유전자 검사를 받았는데, 점점 더 저렴해지고 있다고 말했어요. 그리고 그들은 또한 의료 기록과 관련된 ICD9 진단 코드를 가지고 있었죠. 그들은 어떤 유전자가 이러한 진단 코드와 연관되어 있는지 알아내기 위해 어떤 유전자 검사를 권장해야 하는지 알고 싶어했어요.
우리가 직면한 문제는 이러한 연결 중 일부는 있지만 전부는 아니라는 점이었어요. 우리가 보고 있는 것은 이러한 것들을 함께 매핑하는 데 도움이 되는 다른 온톨로지를 추가하고 싶다는 것이었죠.
우리는 개방형 링크 데이터 연결에서 이러한 온톨로지를 많이 발견해요. Unified Medical Language System이라는 시스템이 있는데, 개념과 연결된 ICD9 코드 데이터베이스가 있죠. 이걸 그래프에 넣으면 그래프 순회를 수행할 수 있고, 이제 올바른 ICD9 코드와 관련된 유전자 테스트를 추천할 수 있게 되는 거예요.
우리가 하려는 것은 의료 시스템에서 볼 수 있는 다양한 개체를 모두 포함하는 연결된 의료 네트워크 그래프를 구축하는 것이에요.
위 이미지는 제공자, 그리고 해당 제공자의 추천 등에 엄청 관심이 많은 그룹과의 일반적인 화이트보드 세션에서 얻은 메모예요.
종종 우리는 똑같은 정보 차트를 문서에 넣고 다른 그룹을 만나는데, 그들은 정확히 그게 그들이 원했던 거라고 말하면서 예를 들어 제공업체에 대한 순 추천 점수에도 관심이 있다고 해요. 이런 식으로 차트는 계속 커지고, 결국 이 모든 정보를 하나의 그래프에 추가해야 하는 거죠.
이렇게 많은 정보가 서로 연결된 적은 없었어요. 관계형 모델에서 이 작업을 수행하면 너무 복잡해지거든요. 이제 우리의 희망은 데이터를 그래프에 담음으로써 과거에는 한 번도 만들어지지 않았던 연결을 만드는 거예요.
그렇다면 우리는 무엇을 향해 나아가고 있을까요? 우리는 개인의 건강관리 기록을 개인의 Knowledge Graph에 저장하고 연결하는 방향으로 나아가고 있어요.
이제 ICD9 코드가 있는 진단이 있다면, 해당 코드를 개별 그래프에 저장할 수 있지만, 이는 의료에 대한 모든 지식이 포함된 엄청나게 큰 그래프를 가리키게 될 거예요.
우리는 기록과 이러한 보편적인 지식 사이에 풍부한 지침이 있을 거라고 기대하고 있어요. `Query`는 두 가지 모두에 액세스할 수 있어야 하죠. 하지만 특정 병원의 개별 환자를 잠가서 해당 환자에 대해서만 `Query`를 수행할 때 다른 환자를 볼 수 없도록 할 수도 있어야 해요.
여러 환자 풀에 걸쳐 높은 수준의 통계를 수행하는 경우도 있기 때문에, 모든 환자 기록에 대해 매우 강력한 역할 기반 액세스 제어가 필요하고, 여전히 이러한 보편적인 지식에 연결될 수 있어야 해요.
그래프는 도메인 간 솔루션을 홍보합니다.
여기서 우리가 실제로 하고 있는 일은 데이터를 보는 새로운 방법을 제시하는 거예요.
과거에 Optum 직원들은 관계형 데이터베이스 모델이 고정되어 있고 변경할 수 없다고 생각했어요. 새 `column`을 추가할 수는 있지만, 보고서가 10,000개라면 그 중 10,000개 모두에 대해 SQL을 변경해야 하죠. 그렇게 하려면 50만 달러나 들고요.
이제 우리는 사람들에게 그런 걱정은 하지 말라고 말하고 있어요. 누구나 데이터를 추가할 수 있어야 한다는 거죠. 우리 모두는 통화 기록에서 데이터를 수집하고, 이를 함께 추가하고, 공개 데이터 세트를 활용할 수 있어야 해요.
예를 들어, 우리 콜센터 중 한 곳에는 메디케어 혜택을 받고 은퇴한 분들이 많이 계신데, 그분들 대부분은 운전을 하지 않으세요. 그래서 버스 노선 근처에 있는 서비스 제공업체를 추천하고 싶어 했죠.
물론 우리는 버스 노선에 대한 공개 데이터에 접근할 수 있고, 버스 노선과의 거리를 기준으로 모든 제공업체의 순위를 매길 수 있어요. 버스 경로 데이터를 며칠 만에 빠르게 추가할 수 있었는데, 관계형 데이터베이스였다면 1년이나 걸리는 프로젝트였을 거고, 비용도 엄청났을 거예요.
언제든지 새로운 데이터 세트를 추가하고 서로 연결할 수 있다는 점이 더 나은 가치를 더 빠르게 제공하는 데 큰 도움이 되었죠.
설명 가능한 AI 모델
만약 여러분이 큰 Knowledge Graph를 가진 병원에 있다고 상상해 볼게요. 이 그래프에서 Machine Learning을 실행했을 때, 당뇨병 진단 테스트를 하라고 권장한다면 의사는 왜 그렇게 권장하는지, 왜 신뢰할 수 있는지 물어볼 수 있겠죠?
이게 바로 오늘날 우리가 전통적인 Deep Learning 모델을 사용할 때 마주하는 문제점이에요. 단순히 작동하는 것보다 Machine Learning 프로세스가 우리가 "설명 가능한 모델을 학습했다"라고 부르는 것을 업데이트하는 새로운 아키텍처를 향해 나아가고 싶은 거죠.
이 모델은 Machine Learning을 수행하면서 계속 업데이트되는 그래프에요. 덕분에 의사나 환자는 Bloom과 매우 유사한 인터페이스를 통해 질문을 할 수 있게 되죠. "왜 이걸 추천했나요?", "설명해주세요", "이게 왜 중요한지에 대한 가중치의 흔적을 보여주세요", "몇 가지 측정 항목을 알려주세요", "시스템에 어떻게 피드백을 줄 수 있나요?" 와 같은 질문들이요.
이러한 질문들은 설명 가능한 인공지능(AI) 모델이 신뢰도를 높이는 답변을 제공할 수 있도록 도와줄 거예요.
설명이 부족한 Deep Learning 알고리즘은 의료 시스템에서 사용하기 어렵겠죠. 그래서 우리는 그래프 모델을 사용하는 것이 설명 가능한 AI를 구축하는 훨씬 더 좋은 방법이라고 믿고 있어요.
모델 기반 Machine Learning
또 하나 살펴볼 것은 모델 기반 Machine Learning이에요.
오늘날 Machine Learning을 공부한다면, 일반적으로 많은 변수를 가져와 평면화해서 feature (일반적으로 테이블 형식 함수)에 넣을 거예요. 그리고 이 평탄화를 풀기 위해 복잡한 알고리즘들을 사용해야 하죠.
우리가 추구하는 것은 해당 데이터에 대한 가정을 인코딩하는 단일 그래프에 대한 아이디어예요. 이 아이디어를 사용하면 알고리즘이 훨씬 이해하기 쉬워질 거라고 생각해요.
이 모든 걸 모델 기반의 Machine Learning이라고 부르는데, 여기서 그래프는 학습 과정에 아주 중요한 역할을 해요.
마무리로, 이 모든 것을 경영진에게 설명하기 위해 사용했던 몇 가지 비유를 소개해 드릴게요. 실제로 이러한 비유 중 일부는 Neo4j의 교육 수업에서도 사용되고 있답니다.
그래프가 다른 방식이라는 걸 이해하는 데 도움을 주기 위해 우리가 사용해 온 세 가지 주요 비유가 있어요. 바로 동네 걷기, 열린 세계 가정, 그리고 지식 삼각형이죠.
동네 산책
여러분이 이웃집에 놀러 가고 싶다고 가정해 봐요. 어떻게 하시겠어요? 당연히 현관문을 열고 밖으로 나가서 그들의 집을 가리키며 그곳으로 걸어갈 거예요.
이건 정말 간단하고 직접적인 방법인데, 그래프 데이터베이스에 영구 포인터를 저장해서 관계를 저장하는 방식에 대한 비유가 될 수 있어요. 현실 세계에서 관계가 있는 모든 항목과 인접해 있고, 이걸 한 홉(hop) 떨어진 유선 포인터로 저장하는 거죠. 즉, 이웃집에 가기 위해 다른 어떤 것과도 상의할 필요가 없다는 뜻이에요.
그럼 이걸 어떻게 모델링할까요? 우리는 그걸 그래프로 모델링해요. 예를 들어, 아래 코드에서 Dan은 Ann 옆에 살고 있어요. 그래서 우리는 물리적 세계에서 아주 좋은 관계를 화이트보드에 그릴 수 있는 것으로 보는 거죠.
이걸 메모리에 영구 포인터를 저장하지 않는 관계형 데이터베이스에서 관계가 계산되는 방식과 비교해 볼게요. 실제로 인접할 때 "where" 절은 검색을 의미해요. 해당 검색은 검색을 완료하기 위해 중앙 시스템으로 들어가야 하죠.
여기 그림은 이웃집으로 직접 걸어갈 수 없다는 걸 보여줘요. 대신, 인덱스 타운으로 가려면 시내를 걸어가야 하는 거죠.
그렇다면 인덱스 타운은 뭘까요? 음, DMV처럼 줄을 서서 기다리는 거대한 관료적 건물인데, 정말 오랜 시간이 걸려요.
마침내 줄 맨 앞에 도착하면 123 Main Street으로 가고 싶다고 말하죠. 그러면 그들은 그 주소를 컴퓨터에 연결하고 이진 검색을 수행할 거예요. 데이터가 많을수록 검색 속도가 느려지죠. 또한 얼마나 많은 데이터를 갖게 될지 모르기 때문에 성능을 예측하기 어려워요. 마지막으로, 그들은 그 기록을 찾아 여러분에게 GPS 좌표를 제공하고, 여러분은 그 좌표를 여러분의 휴대폰에 연결한 다음 이웃집으로 걸어갈 수 있는 거예요.
정말 어리석은 이야기처럼 들리지만, 특히 여러분이 그걸 기억하길 바라기 때문에 일부러 어리석게 만든 이야기예요. 실제로 우리는 이걸 테스트해 봤어요. 2주 후에 누군가에게 그래프와 관계형 데이터베이스의 차이점을 설명할 수 있는지 묻는다면 이 이야기를 기억한다면 표현하려고 할 거예요.
돌아가서 메모를 살펴봐야 할 수도 있지만, 이건 효과가 있는 이야기예요. 이걸 테스트하고, 교육에서 이 작업을 수행한 지 2주 후에 설문조사를 보내서, 얼마나 많은 사람들이 이를 설명할 수 있는지 물어볼 수 있죠.
그래프를 독특하게 만드는 한 가지를 생각해 보면 인덱스 없는 인접성(index-free adjacency)을 이해하는 거예요. 하지만 아무도 그 용어를 기억하지 못하죠. 하지만 그들은 이 비유를 기억할 것이므로 이를 설명하기 위해 사용하도록 노력해 보세요. 특히 이걸 이해하고 싶지만 복잡한 기술 용어를 기억할 시간과 에너지가 없는 관리자가 있는 경우에는 더욱 그렇겠죠.
오픈 월드 시나리오
우리가 사용하는 두 번째 이야기는 오픈 월드 시나리오, 또는 오픈 월드 가정이라고 해요. 우리는 의미론과 기술 논리의 세계에서 이 용어를 빌려왔어요.
관계형 세계에는 닫힌 세계라는 것이 있어요. 모델링하지 않는 한 모든 것이 데이터베이스에 저장되는 것이 금지되어 있다는 의미에서 닫혀 있는 거죠. 즉, 이에 대한 규칙을 만들지 않으면 권한 규칙을 만들 때까지 모든 것이 금지돼요. 모델링하는 데이터만 추가할 수 있으며 해당 데이터를 추가하면 향후 모든 쿼리에 영향을 미칠 수 있어요. 이건 정말 지루한 작업이죠.
좋은 세상은 데이터 사용을 금지하는 특정 규칙을 넣지 않는 한 데이터베이스의 모든 것이 허용되는 열린 세상이에요.
관계형 데이터베이스와 Graph Database의 중요한 차이점은 Graph Database에서 특정 유형의 새로운 node를 생성할 때 를 사용한다는 점이에요. 따라서 query에서도 이러한 관계를 사용하고, 와일드카드는 사용하지 않죠.
일반적으로 오픈 월드 시나리오에서는 규칙이 없는 한 모든 것이 허용돼요. Query를 올바르게 작성하면 기존 보고서를 방해하지 않고 새 데이터를 추가할 수 있어서 세상이 완전히 달라져요. 이 모든 것이 우리의 그래프를 더욱 모듈식으로 만들고, 더욱 개방적으로 만들고, 구축하고 테스트하기 쉽게 만들어주죠. 열린 세상은 우리에게 민첩성을 제공해 준답니다.
지식의 삼각형
세 번째는 지식 삼각형이에요. 아래에 표시된 지식 삼각형은 하단에 시스템의 숫자 코드, 조회 테이블 및 선택 목록을 포함하는 낮은 수준의 이진 데이터가 있는 다른 경우에서 본 것과 매우 유사해요.
원천:위키피디아.
게다가 우리 세계의 명사라는 개념도 있죠. 그런 다음 그래프 수준의 패턴과 관계를 포함하는 지식을 갖게 돼요.
마지막으로, 우리는 프로젝트 전반에 걸쳐 재사용 가능한 방식으로 지식을 구조화할 수 있는지 묻는 지혜와 AI를 보유하고 있어요.
우리는 건축에 많은 돈을 썼어요 Data Lake 회사에서. Data Lake는 트랜잭션 시스템에서 데이터를 꺼내어 한 곳에 보관하여 트랜잭션 시스템을 지속적으로 방해하지 않는 방식으로 반복해서 query할 수 있는 유용한 메커니즘이었어요. 속도가 느린 관계형 데이터베이스의 부담을 덜어내고 저렴한 방법으로 저장했죠.
그러나 많은 조직에서는 Data Lake에 대한 BOM을 판매했어요. 그들은 그 자체가 데이터베이스일 것이라고 생각했지만, 우리가 그 숫자 코드를 모두 합쳤을 때, 우리는 그것을 해독할 도구가 없었죠.
이제 우리는 AI, Machine Learning, 복잡한 규칙 엔진을 포함한 완전히 새로운 세대의 도구가 필요하다고 말하고 있어요. 우리는 실제로 그래프 기술을 사용하여 Data Lake에서 데이터를 추출하고 이를 연결 해제 명사에 넣는 동시에 이를 검증하고 일관성을 유지하고 있죠.
거기에서 우리는 함께 모여 새로운 관계를 찾고 싶어해요. 엔터티 결의 캠프입니다. 에너지 분해능을 실제로 향상시키기 시작하는 몇 가지 환상적인 도구가 있어요. 이 데이터를 보고 연결을 시작할 수 있죠.
마지막 단계는 아래 이미지 맨 위에 나와 있어요. Google에서 전이 학습 개념을 검색해보면 AI 모델에서 어떻게 학습하고 캡처하는지 알 수 있을 거예요. 재사용할 수 있는 부분은 굳이 많은 교육을 할 필요가 없죠. 그런 다음 기본 모델이나 이미지 모델 위에 특정 유형의 이미지 및 사용자 정의를 위한 모델을 추가하는 거예요.
의료 분야에서는 용어와 관련된 전체 참조 데이터 세트를 가지고 있어요. 우리는 모든 애플리케이션에서 사용할 수 있는 균일한 그래프 구조로 모든 의료 용어를 표현하기 위해 열심히 노력하고 있답니다.
이건 야심찬 목표이긴 하지만, 우리가 인수한 조직 내에서 이미 이 데이터를 복제한 수백 명의 사람들이 있기 때문에 지금 당장은 정말 중요해요. 그리고 모든 데이터를 하나로 모으는 것이 우리의 임무랍니다.
외경암 유전자 이야기
그렇다면 여기서 중요한 건 뭘까요? 인과 관계에 대한 환상적인 이야기인 Dana Mackenzie와 Judea Pearl의 "The Book of Why"를 읽어보셨다면, 인과 관계 그래프를 작성해서 데이터를 훨씬 더 깊이 이해할 수 있는 방법을 이해하게 될 거예요.
왼쪽에 있는 이야기는 "The Smoking Gene"이라고 불리는 믿을 수 없는 이야기예요. 많은 담배 회사에서 홍보하면서 이렇게 말했죠: "아마도 당신의 몸 안에 담배를 피우고 싶게 만드는 유전자가 있을 거예요. 당신이 폐암에 걸리는 것도 우연이지만, 아마도 흡연 충동과 폐암 사이에는 직접적인 관계가 없을 거예요. 폐암은 동일한 근본 원인인 흡연 유전자에 의해 발생하기 때문에 발생하는 거죠."
불행하게도 거의 20년 후에 우리가 발견한 것은 흡연과 폐 타르 사이의 인과관계뿐 아니라 타르와 폐암 사이의 인과관계도 이해할 수 있다는 거예요. 이게 오른쪽에 보이는 그래프랍니다.
우리는 사람들이 효과적이지 않을 수 있는 의료 보장을 받으려고 하는 시나리오에서 이와 동일한 현상을 반복해서 보게 돼요. 비타민의 장점은 뭘까요? 동종요법과 침술의 이점은 뭘까요?
데이터 과학자로서 우리의 임무는 어떤 것이 가장 비용 효율적이고 어떤 것이 좋은 결과를 가져오는지 파악하는 거예요. 우리는 우리가 주장하는 것에서 실제 증거를 얻고 특정 약물을 복용하는 사람들의 맥락에서 그 효과를 이해하고 싶은 거죠.
더욱이 많은 약물 연구는 50세 남성을 대상으로만 수행되었어요. 이제 우리는 젊은 여성에 대해 알고 싶어요. 이 모든 것들은 서로 다른 인과관계를 갖고 있고 많은 데이터를 가지고 있지만, 이를 그래프로 저장하고 해당 데이터를 이해해야 해요. 이런 식으로 데이터 과학자는 이를 수행하기 위해 인과관계를 이해해야 하는 거랍니다.
그래프를 다른 기술과 결합
Optums의 많은 인턴들은 자연스럽게 그래프에 끌려요. 그들 중 다수는 실제로 Neo4j 인증을 받았고, 그래프를 사고의 근본적인 방법과 문제 해결 방법으로 보고 있죠.
우리는 그래프가 의료비를 낮추는 데 밑거름이 될 거라고 믿어요. 하지만 그래프만 있는 건 아니에요. 그래프를 기본적으로 알고, 그 위에 다른 기술을 겹칠 수 있는 사람이 필요한 거죠.
우리는 이 현상을 의료 분야의 사악한 문제라고 불러요. 연결되지 않은 데이터가 많아서 함께 모아서 의료 비용을 낮추고자 하는 거죠. 그리고 우리는 이미 그래프와 그래프 등 많은 것을 보았어요. Natural Language Processing (NLP), 그래프 및 Machine Learning, 그래프 및 , 그래프 및 의미론, 시각화, 분산 시스템, 보안, 통계 및 인과관계 등의 기술이 포함되죠.
이런 식으로 이를 수행하는 것은 그래프뿐만 아니라 그래프와 함께 사용되는 기술이기도 해요.
이 백서를 읽어보세요그래프 기반 검색의 힘, 더 많은 통찰력과 관련 데이터베이스 쿼리를 위해 Graph Database 기술을 활용하는 방법을 배웁니다.
그래프 기반 검색 살펴보기
Data Silos
Data Variability
GraphConnect
Machine Learning
에이치시스템즈의 LogTree는 Neo4j 기반 GraphRAG 플랫폼으로, 데이터를 자동으로 지식그래프화하고 자연어 질의로 즉시 답을 제공합니다.