KR20130140847A - 질의-응답 시스템을 사용하는 문제 해결을 위한 의사결정-지원 애플리케이션 및 시스템 - Google Patents
질의-응답 시스템을 사용하는 문제 해결을 위한 의사결정-지원 애플리케이션 및 시스템 Download PDFInfo
- Publication number
- KR20130140847A KR20130140847A KR1020137025361A KR20137025361A KR20130140847A KR 20130140847 A KR20130140847 A KR 20130140847A KR 1020137025361 A KR1020137025361 A KR 1020137025361A KR 20137025361 A KR20137025361 A KR 20137025361A KR 20130140847 A KR20130140847 A KR 20130140847A
- Authority
- KR
- South Korea
- Prior art keywords
- query
- evidence
- responses
- computer
- problem case
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/20—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Z—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
- G16Z99/00—Subject matter not provided for in other main groups of this subclass
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/20—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for electronic clinical trials or questionnaires
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Public Health (AREA)
- Medical Informatics (AREA)
- Biomedical Technology (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Pathology (AREA)
- Software Systems (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Measuring And Recording Apparatus For Diagnosis (AREA)
Abstract
문제 해결을 위한 의사결정-지원 시스템은 컴퓨터 판독가능 매체상에 구현된 소프트웨어 모듈들을 포함하고, 상기 소프트웨어 모듈들은 입력/출력 모듈 및 질의-응답 모듈을 포함한다. 본 방법은 상기 입력/출력 모듈을 사용하여 문제 사례 정보를 수신하고, 상기 문제 사례 정보에 기초하여 질의를 생성하고, 상기 질의-응답 모듈을 사용하여 상기 질의에 대한 복수의 응답들을 생성한다. 상기 방법은 또한 상기 질의-응답 모듈을 사용하여 상기 응답들의 각각에 대한 증거 소스들로부터 다수의 증거 차원들에 대한 수치들을 계산하고 상기 질의-응답 모듈을 사용하여 각 증거 차원의 상기 수치에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값을 계산한다. 또한, 상기 방법은 상기 입력/출력 모듈을 사용하여 상기 응답들, 상기 대응 신뢰도 값들, 및 상기 하나 또는 그 이상의 선택된 응답들에 대한 각 증거 차원의 수치들을 출력한다.
Description
본 출원의 질의-응답 시스템(a question-answering system)을 사용하여 특정한 영역에서 문제를 해결하는 데 인간 전문가를 지원하는 것에 관한 것이고, 더 구체적으로는 질의-응답 시스템을 사용하여 문제 해결을 위한 의사결정-지원 애플리케이션 및 시스템(a decision-support application and system)에 관한 것이다.
의사결정-지원 시스템은 인간 전문가들이 정보를 검색하고 분석하는 데 지원을 필요로 하는 여러 다른 산업들에 존재한다. 이 애플리케이션 전반에 걸쳐 사용될 예는 의료 산업에서 사용되는 진단 시스템이다.
진단 시스템은 구조화된 지식(structured knowledge)을 사용하는 시스템, 구조화되지 않은 지식(unstructured knowledge)을 사용하는 시스템, 및 임상 의사결정(clinical decision) 공식(formulas), 규칙(rules), 트리(trees), 또는 알고리즘(algorithms)을 사용하는 시스템으로 분류할 수 있다. 초창기 진단 시스템은 구조화된 지식 기반 또는 고전적인 수동 구축된 지식 기반을 사용했다. 1970년대에 개발된 Internist-I 시스템은 질환이 있으면서 소견(finding)을 보이는 환자들의 비율(fraction)인, 민감도(sensitivity) 같은 수치와 연관된 질환-소견(disease-finding) 관계 및 질환-질환 관계를 사용한다(Myers, J.D. The background of INTERNIST-I and QMR. In Proceedings of ACM Conference on History of Medical Informatics (1987), 195-197).
또한 1970년대에 개발된, 전염성 질환 진단을 위한 MYCIN 시스템은 "만일 어떤 사실들이 참이라면, 주어진 확신도(certainty factor)로 어떤 다른 사실들을 결론 내릴 수 있음"을 명시하는 생성 규칙(production rules)의 형식으로 구조화된 지식을 사용한다(Buchanan, B.G. and Shortliffe, E. H. (Eds.) Rule-Based Expert Systems: The MYCIN Experiments of the Stanford Heuristic Programming Project. Addison-Wesley, Reading, MA, 1984). 1980년대 초에 개발된 DXplain은 Internist-I의 것과 유사한 구조화된 지식을 사용하지만, 계층적인 소견 어휘목록(a hierarchical lexicon of findings)을 추가한다(Barnett, G.O., Cimino, J.J., Hupp, J.A., Hoffer, E.P. DXplain: An evolving diagnostic decision-support system. JAMA 258, 1 (1987), 67-74).
1990년대 초에 개발된 Iliad는 더 정교한 확률적 추론(more sophisticated probabilistic reasoning)을 추가한다. 각각의 질환은, 그 질환이 있으면서 소견을 보이는 환자들의 비율(민감도)과 그 질환이 없으면서 소견을 보이는 환자들의 비율(1 - 특이도(specificity))과 함께, 그 질환의 연관된 선험적 확률(an associated a priori probability of the disease)(Iliad가 설계된 인구집단에서)과, 소견들의 목록(a list of findings)을 갖는다(Warner, H.R., Haug, P., Bouhaddou, O., Lincoln, M., Warner, H., Sorenson, D., Williamson, J.W. and Fan, C. ILIAD as an expert consultant to teach differential diagnosis. In Proc. Annu. Symp. Comput. Appl. Med. Care. (1988), 371-376). DiagnosisPro(http://en.diagnosispro.com)는 온라인으로 질의 및 검색할 수 있는 구조화된 지식 기반이다.
2000년에, 구조화되지 않은 지식(unstructured knowledge)을 사용하는 진단 시스템들이 나타나기 시작했다. 이 시스템들도 지식의 일부 구조화(some structuring of knowledge)를 사용한다. 예를 들면, 소견들(findings) 및 장애들(disorders) 등의 항목들(entities)을 문서들 내에서 태그하여 검색을 용이하게 할 수 있다. ISABEL은 Autonomy 정보 검색 소프트웨어(Autonomy information retrieval software)와 의학 서적들의 데이터베이스를 사용하여서 입력된 소견들에 관한 적절한 진단들(appropriate diagnoses)을 검색한다(Ramnarayan, P., Tomlinson, A., Rao, A., Coren, M., Winrow, A. and Britto, J. ISABEL: A web-based differential diagnostic aid for paediatrics: Results from an initial performance evaluation. Archives of Disease in Childhood 88, 5 (2003), 408-413).
Autonomy Auminence는 Autonomy의 기술을 사용하여 입력된 소견들에 관한 진단을 검색하고 그 진단을 신체 시스템 별로 정리한다 (http://www.autonomyhealth.com). First CONSULT는 가능한 진단들(possible diagnoses)에 도달하기 위해 주요 증상들(chief complaints)과 연령대(age group) 별로 방대한 양의 의학 서적, 저널, 및 안내서들을 검색할 수 있게 해준다(http://www.firstconsult.com). PEPID DDX는 PEPID의 독립적인 임상 콘텐츠 기반 진단 생성기(diagnosis generator)이다 (http://www.pepid.com/products/ddx/).
많은 장애들(disorders)에 대하여 임상 의사결정 규칙들(clinical decision rules)이 개발되었고, 의사들(practitioners)과 환자들이 그 규칙들을 적용하는 데 도움을 줄 수 있도록 컴퓨터 시스템들이 개발되었다. ACI-TIPI(Acute Cardiac Ischemia Time-Insensitive Predictive Instrument)는 임상 및 ECG 특징들을 입력(input)으로 취하고 급성 심장 허혈(acute cardiac ischemia)의 확률을 출력(output)으로 생성한다(Selker, H.P., Beshansky, J.R., Griffith, J.L., Aufderheide, T.P., Ballin, D.S., Bernard, S.A., Crespo, S.G., Feldman, J.A., Fish, S.S., Gibler, W.B., Kiez, D.A., McNutt, R.A., Moulton, A.W., Ornato, J.P., Podrid, P.J., Pope, J.H., Salem, D.N., Sayre, M.R. and Woolard, R.H. Use of the acute cardiac ischemia time-insensitive predictive instrument (ACI-TIPI) to assist with triage of patients with chest pain or other symptoms suggestive of acute cardiac ischemia: A multicenter, controlled clinical trial. Annals of Internal Medicine 129, 11 (1998), 845-855).). 예를 들면, ACI-TIPI는 시판되는 심장 감시장치/제세동기에 도입되어 있다.
CaseWalker 시스템은 주요 우울 장애를 진단하는 데 4개 항목의 설문지를 사용한다(Cannon, D.S. and Allen, S.N. A comparison of the effects of computer and manual reminders on compliance with a mental health clinical practice guideline. Journal of the American Medical Informatics Association 7, 2 (2000), 196-203). PKC Advisor는 복통(abdominal pain)과 구토(vomiting) 등의 98개의 환자 문제에 대해 지침을 제공한다(http://www.pkc.com/software/advisor/).
현재의 진단 시스템들의 장점은 이 시스템들이 임상의사(clinician)들의 진단 가설을 개선시킨다는 것(Friedman, CP., Elstein, A.S., Wolf, F.M., Murphy, G.C., Franz, T.M., Heckerling, P.S., Fine, P.L., Miller, T.M. and Abraham, V. Enhancement of clinicians' diagnostic reasoning by computer-based consultation: A multisite study of 2 systems. JAMA 282, 19 (1999), 1851-1856)과, 임상의사들이 중요한 진단을 놓치는 것(missing)을 방지하는 데 도움을 줄 수 있다는 것이다(Ramnarayan, P., Roberts, G.C., Coren, M., Nanduri, V., Tomlinson, A., Taylor, P.M., Wyatt, J.C. and Britto, J.F. Assessment of the potential impact of a reminder system on the reduction of diagnostic errors: A quasi-experimental study. BMC Med. Inform. Decis. Mak. 6, 22 (2006)).
현재의 진단 시스템들은 널리 사용되지는 못하는데(Berner, E.S. Diagnostic Decision Support Systems: Why aren't they used more and what can we do about it? AMIA Annu. Symp. Proc. 2006 (2006), 1167-1168, 이후 Berner, 2006으로 참조됨) 그 이유는 의료기관들의 매일-매일의 수술에 이 시스템들을 이용하는 것을 방해하는 제한들 때문이다 (Coiera, E. Guide to Health Informatics (Second Edition). Hodder Arnold, 2003; and Shortliffe, T. Medical thinking: What should we do? In Proceedings of Medical Thinking: What Do We Know? A Review Meeting (2006), http://www.openclinical.org/ medicalThinking2006Summary2.html, 이후 Shortliffe, 2006으로 참조됨).
다른 많은 의료 종사자들이 환자를 진찰하고, 환자 데이터는 구조화된 형식과 구조화되지 않은 두 가지 형식으로 다른 많은 컴퓨터 시스템들에 걸쳐 분산될 수 있다. 또한, 이들 시스템들은 상호간에 상호작용(interaction)하기가 어렵다(Berner, 2006; Shortliffe, 2006). 환자 데이터의 입력도 어렵고, 진단 제안내용들(diagnostic suggestions)의 목록은 너무 길며, 진단 제안내용들 이면의 추론과정(the reasoning behind diagnostic suggestions)도 항상 명료하지는 않다. 더욱이, 상기 시스템들은 그 다음 조치들에 관해서 충분히 준비되어있지 않아서, 임상의사(clinician)가 환자를 돕기 위해 해야 하는 것을 생각해내는 데 도움을 주지 못한다(Shortliffe, 2006). 상기 시스템들은 또한 의사에게 진단의 신뢰성을 높일 수 있는 미싱 정보(missing information)를 요청할 수도 없고, 시스템들은 항상 최신의 고급 의학적 증거(evidence)에 기초하지도 않으며, 최신 상태를 유지하는 데에도 어려움이 있다(Sim, I., Gorman, P., Greenes, R.A., Haynes, R.B., Kaplan, B., Lehmann, H. and Tang, P.C. Clinical decision support systems for the practice of evidence-based medicine. J. Am. Med. Inform. Assoc. 8, 6 (2001), 527-534).
이러한 문제들을 고려하여, 본 출원의 개시되는 실시 예들은 개선된 의학적 진단 시스템을 제공한다.
본 출원의 하나의 예시적인 방법 실시 예는 문제 해결을 위한 의사결정-지원 시스템을 제공한다. 상기 시스템은 컴퓨터 판독가능 매체상에 구현된 소프트웨어 모듈들을 포함하고, 상기 소프트웨어 모듈들은 입력/출력 모듈과 질의-응답 모듈을 포함한다. 상기 방법은 상기 입력/출력 모듈을 사용하여 문제 사례 정보(problem case information)를 수신하고, 상기 문제 사례 정보에 기초하여 질의(query)를 생성하고, 상기 질의-응답 모듈을 사용하여 상기 질의에 대한 복수의 응답들(answers)을 생성한다. 상기 방법은 또한 상기 질의-응답 모듈을 사용하여 상기 응답들의 각각에 대한 증거 소스들(evidence sources)로부터 다수의 증거 차원(multiple evidence dimension)들에 대한 수치(numerical value)들을 계산하고 상기 질의-응답 모듈을 사용하여 상기 각 증거 차원의 수치에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값(confidence value)을 계산한다. 또한, 상기 방법은 상기 입력/출력 모듈을 사용하여 상기 응답들과, 상기 대응 신뢰도 값들과, 상기 하나 또는 그 이상의 선택된 응답들에 대한 각 증거 차원의 수치들을 출력한다.
본 출원의 하나의 예시적 시스템 실시 예는 문제 사례 정보를 유지하는 제1 저장소(repository), 상기 제1 저장소에 동작적으로 연결된(operatively connected) 컴퓨터 프로세서, 및 상기 컴퓨터 프로세서에 동작적으로 연결된 제2 저장소를 포함한다. 상기 컴퓨터 프로세서는 상기 제1 저장소로부터 상기 문제 사례 정보를 수신하도록 구성된다(configured). 상기 컴퓨터 프로세서는 또한 상기 문제 사례 정보에 기초하여 질의를 생성하고, 상기 질의에 대한 복수의 응답들을 생성하도록 구성된다. 상기 컴퓨터 프로세서는 상기 응답들의 각각에 대한 증거 소스들로부터 다수의 증거 차원들에 대한 수치들을 계산하고, 상기 각 증거 차원의 수치들에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값들을 계산하도록 더 구성된다. 또한, 상기 컴퓨터 프로세서는 상기 질의들, 상기 응답들, 상기 대응 신뢰도 값들, 및 상기 각 증거 차원의 수치들을 상기 제2 저장소에 출력하도록 구성된다.
본 출원의 또 다른 실시 예는 컴퓨터 프로그램 제품을 포함하며, 상기 컴퓨터 프로그램 제품은 컴퓨터 디바이스(computerized device)에 의해 실행 가능한 명령들을 포함하는 컴퓨터 판독가능 프로그램 코드를 저장하는 컴퓨터 판독가능 스토리지 매체를 포함한다. 상기 컴퓨터 프로그램 코드는 문제 사례 정보를 수신하는 입력/출력 모듈(an input/output module), 의미 개념들(semantic concepts)을 식별하기 위해 상기 문제 사례 정보를 분석하는 문제 사례 분석 모듈(a problem case analysis module), 상기 의미 개념들로부터 질의를 생성하는 질의 생성 모듈(a question generation module), 상기 질의에 대한 복수의 응답들을 생성하는 질의-응답 모듈(a question-answering module)을 포함한다. 상기 질의-응답 모듈은 상기 응답들의 각각에 대한 증거 소스들로부터 다수의 증거 차원들에 대한 수치들을 계산한다. 상기 질의-응답 모듈은 상기 질의-응답 모듈을 사용하여 상기 각 증거 차원의 수치에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값들을 계산한다. 상기 입력/출력 모듈은 상기 질의들, 상기 응답들, 상기 대응 신뢰도 값들, 및 다수의 증거 차원들에 대한 상기 수치들을 출력한다.
도 1은 본 출원의 일 실시 예에 대한 시스템 아키텍처 차트를 도시하는 계통도이다.
도 2는 의사결정 지원 프로세스 흐름을 도시하는 계통도이다.
도 3은 의학 영역(medical domain)에 대한 의미 모델(semantic model)을 도시하는 계통도이다.
도 4는 4 가지 질환의 응답들에 대한 현재 질병(present illness), 가족력(family history), 소견(findings), 및 인구통계특성(demographics)의 차원들에 따른 증거의 한계 기여도(marginal contribution of evidence)를 도시하는 계통도이다.
도 5는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 6은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 7은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 8은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 9는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 10은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 11은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 12는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 13은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 14는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 15는 본 출원의 일 실시 예에 따른 컴퓨팅 노드를 도시하는 계통도이다.
도 16은 본 출원의 일 실시 예에 따른 클라우드 컴퓨팅 환경을 도시하는 계통도이다.
도 17은 본 출원의 일 실시 예에 따른 추상 모델 계층을 도시하는 계통도이다.
도 2는 의사결정 지원 프로세스 흐름을 도시하는 계통도이다.
도 3은 의학 영역(medical domain)에 대한 의미 모델(semantic model)을 도시하는 계통도이다.
도 4는 4 가지 질환의 응답들에 대한 현재 질병(present illness), 가족력(family history), 소견(findings), 및 인구통계특성(demographics)의 차원들에 따른 증거의 한계 기여도(marginal contribution of evidence)를 도시하는 계통도이다.
도 5는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 6은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 7은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 8은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 9는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 10은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 11은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 12는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 13은 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 14는 의학 영역에 응용되는 본 출원의 일 실시 예를 도시하는 계통도이다.
도 15는 본 출원의 일 실시 예에 따른 컴퓨팅 노드를 도시하는 계통도이다.
도 16은 본 출원의 일 실시 예에 따른 클라우드 컴퓨팅 환경을 도시하는 계통도이다.
도 17은 본 출원의 일 실시 예에 따른 추상 모델 계층을 도시하는 계통도이다.
다음의 내용은 특정한 영역에서 문제 해결을 위한 의사결정-지원 애플리케이션에 대한 설명이다. 상기 영역은, 아래에서 논의되는 바와 같이, 예를 들어 의학 영역의 감별 진단(differential diagnosis)과 같은 특정 영역일 수 있고, 또는 더 넓은 범위의 영역일 수도 있다. 의사결정-지원 애플리케이션의 목적은, 대상 사례에서 기술되는 바와 같이, 어떤 문제에 관련된 맥락 정보에 기초하여 문제 해결 프로세스(problem solving process)를 알려주는 것이다. 이러한 문제 사례 입력 정보는 구조화되어 있거나(structured), 구조화되어 있지 않거나(unstructured) 또는 다른 형식으로 되어 있을 수 있다. 의사결정 지원은 질의들(questions or queries)을 접수하고 응답들(answers) 및 연관 신뢰도들(associated confidences)의 목록을 되돌려주는(return) 질의-응답 시스템을 사용하여 제공된다.
방법에서 질의-응답 시스템에 관해 언급할 때는, 자연어(natural language), 구조화된 언어(structured language) 또는 다른 많은 수단들을 포함하는, 많은 가능한(possible) 형식들로 표현되는 입력 질의(an input query)를 취할 수 있는 시스템을 의미한다. 응답은 (사람, 장소 또는 사물과 같은) 단일 "원자적(atomic)" 개념인 것으로 한정될 필요는 없으며, 복잡한 실체(complex entity)가 될 수 있다는 것에 유의한다. 복잡한 실체들의 몇 가지 예들은 유저의 의도한 목표(goal)를 달성하기 위해 필요한 복잡한 추론(reasoning)이나 일련의 프로세스 단계들을 통해서 도달한 정교한 설명들이다. 본 출원의 실시 예들은 인간 전문가들이 문제들을 해결해야 할 필요가 있는 복잡한 시스템들을 포함하는 여러 영역에 적용될 수 있다. 예를 들면, 상세한 설명이 (많은 영역들 중 하나의 예로서) 의학 영역에서 감별 진단과 치료를 목적으로 하는 의사결정 지원 애플리케이션을 위해 제공된다. 이 기술분야에서 통상의 지식을 가진 자는 이해할 수 있는 바와 같이, 이 시스템은 다른 복잡한 시스템들에도 사용될 수 있다.
본 출원의 한 실시 예는 "혼합 주도형(mixed-initiative)" 대화를 가능하게 한다. 예를 들면, 유저는 질의들을 하고 상기 애플리케이션으로부터 응답들을 받을 수 있다. 추가로, 상기 애플리케이션은 자동으로, "푸쉬(push)" 통지(예를 들어, 일부 중요한 변경사항의 알림)들을 유저에게 제공하거나 상기 애플리케이션이 제공하는 응답들에서 시스템 신뢰도를 변경하는 데 도움이 될 수도 있는 질의들을 유저에게 할 수 있다. 사실, 상기 시스템은 계속해서, 관련된 사례 입력을 모니터할 뿐 아니라 특정한 사례에 관하여 지시된 질의들을 취할 수 있다.
도 1은 본 출원의 일 실시 예의 시스템 아키텍처 차트에서 광의의 의사결정 맥락(a broader decision-making context)을 도시하는 계통도이다. 의사결정자(decision-maker)(108)은 휴대폰, 태블릿, 컴퓨터, 가전기기 등을 포함한 다양한 디바이스들을 통해서 정보를 입력할 수 있다. 이 정보는 다양한 형식으로 입력될 수 있으며, 이 형식에는 구두(spoken) 형식, 타이프된(typed) 형식, 일련의 GUI 상호작용들(interactions)을 통해 구성된(constructed) 형식 등이 포함될 수 있다. 상기 정보는 문제 사례 정보이거나 또는 질의도 될 수 있다. 상기 질의는 자연어, 구조화된 언어의 형식이거나, 또는 다른 질의 포맷일 수 있다. 상기 시스템이 사용하는 문제 사례 정보는 다중 모드(multimodal)일 수 있고 텍스트, 이미지, 오디오의 형태 또는 다른 매체 형식을 취할 수 있다.
일반적으로, 본 출원의 실시 예들은 일정 시간 기간 동안 상호작용(interaction)이 일어나게 하여 반복적 보정 기법(iterative refinement approach)을 지원하도록 구성된다. 따라서, 본 출원의 실시 예들 중 한 형태(aspect)는 현재까지 작성된 모든 관련 분석 및 결정들(decisions)의 저장소(repository)이다. 이 저장소(106)은 추론 및 의사결정 프로세스의 표현(a representation of the reasoning and decision process)을 효율성 메커니즘(efficiency mechanism)으로서 보유할 뿐 아니라, 시스템이 사례와 관련된 새로운 증거에 입각하여 가정들과 결정들을 재평가할 수 있게 해준다. 이것은 유저들이 이 표현과 상호작용하도록 하는데, 이 상호작용에서 유저들이 필요하다고 생각하는 대로 이 표현을 수용하거나, 거부하거나, 또는 수정할 수 있으며, 이는 증거 또는 추론 사슬(reasoning chain)의 유효성 또는 중요성에 대한 유저의 통찰(insights)에 기초하여 대안적 해결책들을 탐색하기 위함이다. 이 저장소(106)은 현재 진화하고 있는 의사결정 상호작용(evolving decision making interaction)에서 유용할 뿐 아니라, 과거에 이루어졌던 결정들의 출처(provenance)를 추적하기 위해 사용될 수도 있고, 결정들이 내려진 지 수년이 지난 후에 올 수 있는 새로운 정보(newly arriving information)에 기초하여 취할 조치들의 통지를 가능하게 한다. 예를 들면, 만일 새로운 연구가 주어진 상황에서 어떤 약물(drug)에 대한 투약금기(contraindication)를 보고한다면, 상기 시스템은 이 저장소(106)의 이전 분석(prior analysis)을 사용하여 그 분석의 결론들을 재평가하고 수년 동안 이 약물을 투약 받아온 환자에게 대안적인 치료법들에 대한 관련 통지를 제공할 수 있을 것이다.
끝으로, 여기서 설명하는 본 출원의 모든 실시 예들은, 일반적으로, 의사결정 프로세스(the decision making process)를 통지하면 의사결정자(108)이 대안들 및 제안된 응답들 내 그와 연관된 신뢰도를 볼 수 있게 해서, 결론들에 도달하기 위해 시스템이 사용한 증거 및 추론 프로세스를 탐색하도록 하고, 그 결과 어떤 추가적인 정보가, 제공된다면, 응답들을 변경하는 결과를 가져올 수 있는지에 관한 피드백을 얻도록 구성된다.
의학 영역에서 사용되는 진단이라는 말은 다른 영역들에서는 "알리다(inform)"를 의미하는 것으로 일반화될 수 있다. 본 출원에서 예시하는 의학적 예들은 진단을 예시하는데, 응답들(answers), 신뢰도들(confidences), 증거의 차원들(dimensions of evidence), 연관된 증거 문구들(associated evidence passages), 및 이 증거가 발견되는 문서들을 통해서뿐만 아니라 증거 소스의 신뢰도(reliability of the evidence source)를 통해서 예시한다. 의학 영역에서, 본 출원의 실시 예들은 환자에게 치료를 제공하는 의사들(physicians)에 의한 임상 의사결정 지원도구(a clinical decision support tool)로서 사용될 수 있다. 질의들의 예들에는: 어떤 임상적 상태들(clinical conditions)이 일 세트의 증상들(a set of symptoms)을 특징으로 하는가(characterized)?; 일 세트의 증상들(symptoms), 상태들(conditions), 소견들(findings)을 잠재적으로 초래할 수 있는 "감별 진단"(질환들에 등급을 매긴 목록(ranked list of diseases))은 무엇인가?(이것은 활동성 질환(active diseases), 현재 투약물(current medications), 알레르기, 과거 병력, 가족 병력 및 환자의 인구통계특성(demographics) 등과 같은 환자와 관련한 다른 정보를 제공함에 의해서 조정될 수 있다); 어떤 검사들(what tests)이 감별 진단에서 제공된 주어진 질환 가설(a given disease hypothesis)에서 신뢰도(confidence)를 높이거나 낮출 수 있는가?; 및/또는 환자에 관한 정보가 주어졌다면, 특정된 질환에 대해 어떤 치료들이 추천되는가? 등이 있다. 의학 영역에서, 문제 사례 정보는 전자 의료 기록들일 수 있다.
질의-응답 시스템은 '영역 지식(domain knowledge)'의 저장소로부터 응답들을 가져온다(derive). 본 출원의 실시 예들은 영역 지식의 서술(delineation)은 질의-응답 시스템에 맡긴다. 예시적 의료 구현에서 질의-응답 시스템은 실제로 영역 지식으로서 의학 교과서, 임상 안내서, 및 다른 문서들의 자연어를 사용할 뿐만 아니라, 데이터베이스들 또는 온톨로지들(databases or ontologies)에서 제공되는 정보의 구조화된 소스들 또는 기타 잠재적으로 구조화된 형식으로 제공되는 정보의 구조화된 소스들을 사용한다.
일반적으로, 본 출원의 실시 예들은 문제 사례 정보(102)의 소스와 질의-응답 시스템(110)의 중간에 위치하는 의사결정-지원 애플리케이션(104)을 의료 진단 시스템의 예를 사용하여 기술한다. 그러나, 이 기술분야에서 통상의 지식을 가진 자들은 이해할 수 있는 바와 같이, 본 출원의 실시 예들은 의료 진단 시스템에 한정되지 않는다. 그와 반대로, 본 출원의 실시 예들은 구조화되지 않은 자료(unstructured material)에 관하여 질의 응답을 요구하는 기타 다른 복잡한-시스템 영역들에서 진단 문제 해결에 적용된다. 이러한 영역들의 예로는 항공기 (및 비슷한 복잡성을 가진 다른 운송수단의) 정비 및 정보 기술 지원(콜 센터)이 포함된다. 상기 시스템은 자동차, 잠수함, 또는 훨씬 덜 복잡하지만 더 보편적으로 접근 가능한 애플리케이션들을 위해 사용될 수 있는데, 예를 들어 정보 기술에서 "방법(how to)"에 관한 질의들에 대한 응답들을 찾는 애플리케이션이나 또는 재료(ingredients), 소요 경비(cost requirements), 시간, 복잡도(complexity), 기품(elegance) 등과 같은 입력 명세들이 주어졌을 때 적합한 식사 레시피들(suitable meal recipes)에 대한 응답들을 찾는 애플리케이션에 사용될 수도 있다. 이들은 모두 대량의 구조화된 그리고 구조화되지 않은 "문제 사례 정보" 및 영역 지식을 특징으로 하며, 심층 질의-응답 형태의 기술(a deep question-answer type technology)을 필요로 한다. 따라서, 본 출원의 예들은 의료 진단 시스템을 사용하지만, 이 기술분야에서 통상의 지식을 가진 자들은 본 출원의 실시 예들이 모든 질의-응답 시스템에 적용될 수 있으며 단순히 예시적인 의료 진단 시스템에 한정되지 않으며 예시적인 의료 진단 시스템은 본 출원의 실시 예들을 보여주는 플랫폼(a flatform)으로서 사용된다는 것을 이해할 수 있을 것이다.
시스템(104)는 입력/출력 모듈(an input/output module), 문제 사례 분석 모듈(a problem case analysis module), 질의 생성 모듈(a question generation module), 가설 및 증거 모듈(a hypotheses and evidence module) 등을 포함하는 (컴퓨터 판독가능 매체상에 구현된) 소프트웨어 모듈들을 포함한다. QA 시스템(110)은 질의-응답 모듈 등을 포함한다. 의사결정의 목적(the objective of decision-making)은 영역에서 명시된 복잡한 시스템(100)에서 발생하는 문제들을 진단하고 해결하기 위함이다. 의사결정-지원 애플리케이션(104)와 (항목 100과 항목 102를 통해서) 상호작용하는 인간 전문가(유저)(108)이 결정을 내린다. 과거 결정들과 그 결정에 도달하는 데 사용된 연관 정보에 관한 기록이 저장소(106)에 유지된다. 일부 실시 예들에서, 질의-응답 모듈은 질의 생성 모듈에 의해 생성되어 저장소(106)에 저장된 미리 생성된 의료 진단 질의들 중 적어도 하나에 질의를 매치시킬 수 있다.
의사결정-지원 애플리케이션(104)는 여러 방식으로 동작을 시작할(triggered) 수 있다. 한 모드에서, 의사결정자(108)은 구체적인 사례에 관한 질의를 한다. 애플리케이션(104)는 상기 질의를 관련된 문제 사례 정보로 확장하여 질의-응답(QA) 시스템(110)에 제출한다. 그 다음에 그 결과로 나온 응답들 또는 가설들이 의사결정자(108)에게 제공되고, 의사결정자는 이 프로세스를 계속 반복하여, 그 문제에 대한 수용 가능한 해결책에 접근해 갈 수 있다.
또 다른 동작 모드는 질의 생성 모듈 및/또는 의사결정자(108)에 의해 정의되는 고정 질의들(standing queries)의 존재를 가정한다. 새로운 사례 정보가 들어오면, 이 질의들은 의사결정자(108)의 적극적인(active) 개입 없이 의사결정-지원 애플리케이션(104)에 의해 자동으로 실행된다. 그 결과들은 후속의 스케줄된 상호작용(interaction)을 위해 의사결정자(108)에게 미리(proactively) 보내지거나 저장소(106)에 저장될 수 있다.
상기 동작 모드들은 아직 만족스럽게 해결되지 않은 활동성 문제(active problem) 사례들의 존재를 가정한다. 또 다른 동작 모드는 항목(112)의 질의-응답 시스템에 의해 사용되는 영역 지식의 콘텐츠에서의 변경에 의해 시작될 수 있다. 의학 영역에서는, 새로운 임상 문헌 및 안내서들이 계속해서 발행되고 있고, 이들은 새로운 선별검사 절차(screening procedures), 요법(therapies), 및 치료 합병증(treatment complications)에 관해 기술한다. 의사결정-지원 애플리케이션(104)는 과거의 분석들과 결정들을 저장하는 저장소(106)을 사용하여 자신의 이전 사례들 중 어떤 것이 이 새로운 지식에 의해 충분히 영향을 받을 것인지를 결정 할 수 있고, 만일 그러한 결정을 내렸다면, 책임 있는 의사결정자(108)에게 경보를 보낸다.
그러므로, 도 1은 또한 문제 사례 정보를 유지하는 제1 저장소와, 제1 저장소(102)에 동작적으로 연결된 (상기 모듈들을 실행하는) 컴퓨터 프로세서(104/110), 및 컴퓨터 프로세서(104/110)에 동작적으로 연결된 제2 저장소(106)을 포함하는 예시적인 시스템 실시 예를 여기에서 도시하는 것으로 생각할 수 있다. 항목들이 서로 (예를 들어, 물리적으로, 기능적으로, 유선으로, 무선으로, 등등) 직접 또는 간접적으로 연결되어 있을 때 그 항목들은 서로 동작적으로 연결된 것으로 간주한다.
이 "컴퓨터 프로세서"(104/110)은 의미 개념들(semantic concepts), 관계들(relations) 및 데이터를 식별하기 위해 문제 사례 정보를 자동으로 분석하고 상기 의미 개념들, 관계들 및 데이터로부터 적어도 하나의 진단 질의(diagnosis query)를 자동으로 생성한다. 컴퓨터 프로세서(104/110)은 또한 각 진단 질의에 대한 복수의 진단 응답을 자동으로 생성하고, 문제-해결 영역에 관련된 증거의 여러 차원들(several dimensions of evidence)에 대한 수치들에 기초하여 상기 응답들의 각각에 대한 신뢰도 값들(confidence values)을 계산한다. 컴퓨터 프로세서(104/110)은 그 다음 상기 신뢰도 값들의 증거 소스들(evidence sources)의 각 증거 차원(each evidence dimension)의 수치에 기초하여 진단 응답들(diagnosis answers)의 각각에 대한 대응 신뢰도 값들을 자동으로 계산할 수 있다. 또한, 컴퓨터 프로세서(104/110)은 그 다음으로 증거의 각 항목에 대해 링크들을 자동으로 생성할 수 있고 이는 유저에게 주어진 사실에서 응답(the answer in a given)을 정당화하는 문구들(the passages)을 조사 할 수 있게 한다. 예를 들면, 문구의 소스, 그 유형(교과서, 안내서, 저널 논문, 웹 콘텐츠, 데이터베이스 또는 구조화된 소스)에 대해서 링크들이 생성될 수 있다. 컴퓨터 프로세서(104/110)은 또한 질의들, 응답들, 대응 신뢰도 값들, 증거 소스들에 대한 링크들, 및 각 증거 차원의 수치를 의사결정자(108) 및/또는 제2 저장소(106)에 출력한다.
도 2는 의사결정 지원 애플리케이션(104)에 의해 수행되는 의사결정 지원 프로세스 흐름을 도시하는 계통도이다. 더 구체적으로, 도 2는 문제 사례 정보(102)로부터 질의-응답 시스템(110)으로의 정보의 흐름과 질의-응답 시스템(110)으로부터 의사결정자(108)에게로 되돌아가는(returned) 정보의 흐름을 도시한다. 그러므로, 상기 방법은 입력/출력 모듈을 사용하여 문제 사례 정보를 수신한다. 또한, 의학 영역에서, 문제 사례 정보는 환자의 질병 증상, 그 환자의 가족력, 그 환자의 인구통계특성 등을 포함할 수 있다. 질의-응답 시스템(110)으로부터의 출력은 의사결정자(108)에 의해서, 의사결정을 내리거나 그 문제에 관한 추가 정보를 찾는 데 사용된다.
항목(202)에서, 상기 방법은 현재의 문제에 관한 입력을 수신한다. 상기 방법은 입력/출력 모듈을 통해서 유저 질의를 자유형식의 질의 형식이나, 자유형식의 문장(statement) 형식, 및/또는 키워드 검색 형식 등으로 수신할 수 있다. 상기 문제로부터의 입력은 텍스트, 오디오, 이미지, 비디오 등과 같은 다중 모드일 수 있다. 상기 텍스트는 자연어로 된 문제 기술의 문단들(paragraphs of problem description in natural language)과 같이 구조화되어 있지 않을 수도 있고(unstructured), 데이터베이스로부터 가져온 콘텐츠와 같이 구조화되어 있을 수 있다(structured). 예를 들면, 의학 영역에서, 상기 입력은 어떤 환자의 "현재 질병 이력(History of Present Illness)"(HPI)에 관련된 임상 정보(clinical information)일 수 있다. 이것은 간호사(nurse)나 의사(physician)가 기록한 환자의 HPI의 모든 양상을 기술하는 구조화되지 않은 텍스트의 문단들의 형식으로 될 수도 있고, 또는 특정한 HPI 범주들에 할당된 더 짧은 문장들 또는 조각문들(snippets)의 형식으로 반-구조화되어(semi-structured) 있을 수 있다.
상기 입력 정보는 시간에 걸쳐서 유입될 수 있다. 상기 입력은 문제 상태의 변화, 수행되는 추가 검사 또는 절차의 결과, 또는 의사결정자(108)에 의해 생성되는 더 많은 정보를 위한 질의에 대한 응답(response)에 의해 시작될 수 있다. 또한, 영역 지식 콘텐츠(102) 내의 정보는 인구통계특성 변화들(demographic changes)이 진화함에 따라서, 의학적 발견들(medical discoveries)이 진화함에 따라서, 투약물 충돌들(medication conflicts)이 진화함에 따라서, 부작용 정보(side effect information)가 진화함에 따라서 변할 수 있다. 이 타임-스탬프된 정보는 시스템 내 저장소(106)에 기록된다.
항목(204)에서, 상기 방법은 의미 개념들, 관계들 및 다른 관련 지식(예를 들어, 환자 의료 데이터)을 식별하기 위해 문제 사례 분석 모듈을 사용하여, 문제 사례 정보(102)를 자동으로 분석한다. 그러므로, 유입되는(incoming) 정보가 자연어 텍스트, 오디오 또는 이미지와 같이 구조화되어 있지 않고 그리고 상기 영역에 관련된 개념들, 관계들(relations) 및 다른 종류의 정보는 식별되어야 할 때 상기 방법은 의미 개념들(semantic concepts), 관계들 및 다른 관련 지식을 식별한다. 이것은 "주석자(annotators)"라 불리는 소프트웨어 컴포넌트들에 의해 이루어진다. 이들 주석자들은 개념들, 관계들 및 다른 관련 정보를 결정하기 위해 절차적 코드(procedural code), 규칙 기반(rule based), 프로그램된 논리를 사용하거나 또는 기타 여러 형식들로 될 수 있다. 주석자들은 예를 들면 알려진 개념들과 관계들을 보유하는 일 세트의 훈련 데이터를 사용하는 기계학습(machine learning)에 기초할 수도 있다.
의학 영역에 있어서, 주석자들은 환자 증상, 현재 의학적 상태(medical conditions), 임상 소견(clinical findings), 투약물(medications), 가족력, 인구통계특성 등과 같은 임상 개념들에 관련된 문구들(phrases)을 인식할 수 있다. 주석자들은 또한 증상의 위치, 상태의 중증도(the severity of a condition), 또는 소견의 수치 등과 같은 실체들 사이의 관계들을 식별할 수 있다. 상기 개념들과 관계들은 영역-특정의 의미 모델 또는 유형 시스템(domain-specific semantic model or type system)으로 표현된다. 의학 영역의 이러한 의미 모델의 예는 도 3에 도시한다. 더 구체적으로, 도 3에 도시된 예에서, 여러 요소들은 서로 다른 논리적/인과적 관계들(different logical/causal relationships)을 가진다. 예를 들면, 물질(substance)(302)는 약제(agent)(304)와 "~ 이다(is a)"라는 관계를 가지는데, 물질(302)는 약제(304) "이다"라고 표시한다. 이와 비슷하게, 질환/증후군(disease/syndrome)(306)은 약제(304)에 의해 야기될 수 있고, 상기 질환/증후군은 항목(306)에서 또 다른 질환/증후군의 합병증(complication)일 수 있다.
질환/증후군(306)과 관련하여, 이것은 검사(test)(308)에 의해 확인될 수 있고, 인체(anatomy) 위치(310)에 위치할 수 있고, 소견(a finding)(318)에 의해 제시될 수 있고, 어떤 치료(a certain treatment)(312)의 합병증일 수 있다(또는 그 치료(312)에 의해 치료될 수 있다.) 치료(312)는 절차(procedure)(314), 약물(drug)(316) 등일 수 있다. 이와 유사하게, 소견(318)과 관련하여, 이것은 검사(308)에 의해 측정될 수 있고, 인체 위치(310)에 위치할 수 있고, 치료(312)에 의해 치료될 수 있고, 치료(312)의 부작용일 수 있고, 또는 임상적 속성(clinical attribute)(320)을 명시할 수 있다. 또한, 임상적 속성(320)은 치료(312)에 의해 영향 받을 수 있다. 따라서, 도 3에 예시되는 의미 모델(이것은 팩토이드 생리 정의 가이드라인(factoid physiology definition guideline)으로 불릴 수 있음)은 영역-특정 의미 모델의 여러 개념들과 관계들을 예시한다.
항목(206)에서, 상기 방법은 질의들을 수신하거나 또는 질의 생성 모듈을 사용하여 상기 의미 개념들, 관계들 및 데이터로부터 질의들을 자동으로 생성할 수 있다. 그러므로, 상기 이전 단계에서 발견된 의미 개념들 및 관계들을 사용하여, 상기 질의-응답 시스템을 위한 질의들이 자동으로 작성될 수 있다. 이와는 달리, 의사결정자(108)이 위에서 기술된 바와 같이, 자연어 또는 다른 방식들로 질의들을 입력하는 것도 가능하다.
자동으로 작성되는 경우에, 일 세트의 "고정(standing)" 질의들을 템플릿(template)으로 설계할 수도 있다. 예를 들면, 의학 영역에서 고정 질의는 "감별 진단(differential diagnosis)"이다. 이것은 환자의 증상들과 비정상 소견들을 설명하는 질환들 또는 다른 의학적 상태들의 잠재적 가설들(potential hypotheses)의 목록이다. 여기에서 말하는 진단 질의 템플릿들은 증상, 소견, 과거 질환, 현재 투약물, 알레르기 등과 같은 개념들을 위한 블랭크 슬롯들(blank slots)을 갖는다. 일단 의미 개념들 및 관계들이 식별되면, 이들은 탬플릿 내 블랭크들을 채우며, 그 결과 합성된 질의가 나온다. 템플릿의 개념은 가까운 장래에 필요한 특정 정보에 관련된 정보를 합성하여 되돌려주는 데 사용되는 기본 질의-응답 시스템에 대하여 일 세트의 관련 질의들(질의들)을 자동으로 구축하기 위한 일반적인 계산 요소(general computational element)이다.
템플릿을 구현하는 방법은 여러 가지가 있다. 예를 들면, 질의들은 해당 문제 사례에 관하여 무엇이 알려져 있고 무엇이 알려져 있지 않은지에 기초하여 항목(206)에서 자동으로 생성될 수 있다. 예를 들면, 의학 영역에서, 만일 증상 및 소견 개념들이 환자 사례 정보에서 식별되었지만 질환은 발견되지 않았다면, 진단 질의가 생성될 수 있다. 의사가 "진단명은 무엇인가?(What is the diagnosis?)"와 같은 질의를 입력하고 의미 개념들로부터 나오는 나머지 맥락에 의지할 수도 있다. 의사가 "이 증상들의 감염 원인이 있는가?"와 같이 더 많은 제한 조건을 명시함으로써 질의를 미세하게 조정할 수도 있다.
항목(208)에서, 상기 방법은 질의들을 QA 시스템(110)에 보낸다. 그러므로, 상기 방법은 질의-응답 모듈을 사용하여 각 질의에 대한 복수의 응답들을 자동으로 생성할 수 있다. 일단 질의가 만들어지면, 질의-응답 시스템(110)이 호출된다. 이후에 있을 응답들의 해석을 돕기 위해, 하나의 질의는 다수의 질의들로 변환될 수 있다. 이 세트 내 각 질의는 그 문제에 관하여 발견되는 개념들의 하부세트를 보유할 수 있다. 예를 들면, 증상들, 소견들, 가족력 및 인구통계특성 정보를 보유하는 임상 진단 질의는 일련의 질의들을 다음과 같이 생성할 수 있다 ― 여기에서 < > 부호 안에 있는 텍스트는 사례 텍스트에서 발견되는 대응 개념들에 의해 대체된다 ―: "어떤 상태의 질환(what disease of condition)이 <증상>을 일으킬 수 있는가?"; "어떤 상태의 질환이 <증상>과 <소견들>을 일으킬 수 있는가?"; "어떤 상태의 질환이 <증상>, <소견들> 및 <가족력>을 일으킬 수 있는가?"; "어떤 상태의 질환이 <증상>, <소견들>, <가족력> 및 <인구통계특성>을 일으킬 수 있는가?" 등. 상기 질의에서 정보의 이러한 구축(build-up)은 소견들, 가족력 및 인구통계특성 정보가 진단의 신뢰도에 기여하는 한계 기여도(marginal contribution)를 계산할 수 있게 해준다. 질의를 일 세트의 질의들로 세분하기 위해 다른 전략들이 사용될 수도 있다.
상기 방법은 항목(210)에서 질의-응답 시스템으로부터 응답들을 수신한다. 제출된 각 질의에 대하여, 질의-응답 시스템(110)은 응답들의 목록과, 응답들의 신뢰도, 증거 차원들, 및 증거 소스들을 되돌려 준다. 각 응답의 신뢰도는, 예를 들면, 0과 1 사이의 숫자일 수 있다. 이 신뢰도는 질의-응답 시스템에서 여러 응답 채점자들(various answer scorers)로부터 구축되어(constructed), 증거 소스들의 여러 차원들에 따라 응답의 정확도를 평가한다. 예를 들면, 의료 진단 질의에 대한 후보 응답은 그 응답의 의미 유형으로 환산하여(in terms of the semantic type of the answer) 평가될 수 있다. 만일 그 응답이 진단으로 고려될 수 있는 질환 또는 의학적 상태의 유형이면, 이 차원에 따른 점수는 높을 것이다. 질의에 대한 모든 응답을 위해, 그 응답이 추출된 영역 지식의 문구들(passages)도 질의-응답 시스템으로부터 이용 가능하다. 이것은 질의의 구조와 매치하는(match) 텍스트의 조각문(snippet)들이거나 또는 질의-응답 프로세스 동안 검색 컴포넌트들로부터 되돌아온 전체 문서들일 수 있다. 각 문구에 대해, 정보의 오리지널 소스에 대한 인용도 기록된다.
항목(212)에서, 상기 방법은 문제-해결 영역과 관련된 여러 증거 차원들에 대한 수치들에 기초하여 응답들 각각에 대한 신뢰도 값들을 자동으로 더 계산한다. 각 증거 차원의 수치는 항목(204)의 방법에 의해 기술되는 바와 같이, 문제 사례 정보(102)에서 발견되는 여러 의미 개념들과 관계들에 기초할 수 있다. 예를 들면, 의학 영역에서, 이들은 환자의 증상들, 소견들, 가족력, 인구통계특성 등일 수 있다.
상기 프로세스들은 문제 텍스트에서 발견되는 하부세트의 개념들을 보유하는 다수의 질의들을 만드는 방법들에 관해 기술하였다. 응답들과 이 질의들에 대한 그 응답들의 신뢰도를 분석함으로써, 이 개념들의 한계 기여도에 대한 추정치가 생성될 수 있다. 예를 들어 생성된 질의들에 대하여, 증상들, 소견들, 가족력 및 인구통계특성의 한계 영향이 계산된다. 이것을 달성하기 위해서는 다른 기법들도 사용 가능하다.
목(214)에서, 상기 방법은 의사결정을 지원하기 위한 정보를 표시한다. 응답들의 목록이 의사결정자(108)이 평가할 응답의 신뢰도와 함께 표시된다(예는 도 4 참조). 그러므로, 상기 방법은 유저 질의(inquiry)에 대하여 입력/출력 모듈을 사용하여 질의들, 응답들, 대응 신뢰도 값들, 증거 소스들에 대한 링크들, 및 각 증거 차원의 수치를 출력한다. 또한, 의사결정자는 각 증거(each piece of evidence)를 관찰함으로써 각 증거 차원을 더 조사할 수 있고 그 연관 출처도 조사할 수 있다. 예를 들면, 증거는 지원 문구(a supporting passage), 추론 사슬(reasoning chain), 또는 데이터베이스 팩트(database fact)일 수 있다. 이와 유사하게, 연관 출처들의 예에는 저널 논문들, 교과서들 및 데이터베이스들이 포함된다. 또한, 각 증거 차원의 수치를 출력할 때, 이 실시 예는 각 증거 차원이 대응 신뢰도 값에 기여하는 양(amount)을 (예를 들어, 크기 또는 백분율 기준으로) 보여줄 수 있고 각 증거 차원의 수치의 각각에서 변화들이 대응 신뢰도 값에서 어떻게 변화들을 만들어내는지를 보여줄 수 있다.
또한, 본 출원의 실시 예들은 문제 사례 정보에 대한 변경사항들(revisions)에 기초하여 진단 응답들과, 대응 신뢰도 값들, 및 각 증거 차원의 수치를 자동으로 그리고 계속적으로 갱신하여 (질의-응답 모듈을 사용해) 개정된 질의들, 응답들, 대응 신뢰도 값들 등을 생성한다. 이 방법은 또한 차이 임계값을 넘어가면 (when difference threshold is exceeded) 변경된 질의들, 응답들, 및/또는 대응 신뢰도 값들을 자동으로 출력할 수 있다. 이 "차이 임계값(difference threshold)"은 기간(a time period)(예를 들어, ~시간, ~주, ~달 등), 하나 또는 그 이상의 응답들이 변하는 양(예를 들어, 백분율 변화, 극성(예/아니오) 변화, 변하는 응답들의 수 등) 및/또는 신뢰도 값의 변화량(신뢰도 변화 퍼센트, 신뢰도 극성 변화 등)을 포함할 수 있다.
따라서, 의사결정 지원 애플리케이션(104)는 가장 높은 신뢰도의 응답들과 그러한 응답들에 관한 가장 많은 정보를 의사결정자(108)에게 제공하기 위해 진화하고 있는 의미 개념들, 관계들 및 다른 관련 데이터(예를 들어, 환자 의료 데이터)에 기초하여 질의들과 응답들을 계속적으로 그리고 동적으로 자동 제공한다. 동일한 입력(종래에 행해지는 바와 같이)이 주어질 때 항상 동일한 응답들을 제공하는 정적 애플리케이션들을 제공하지 않고, 본 출원의 실시 예들은 각 증거 차원의 수치들의 값들과 관계들을 계속적으로 갱신하여 잠재적인 응답들의 신뢰도 값들을 변경시킨다. 상기 잠재적인 응답들의 신뢰도 값들이 변하면, 가장 높게 추천된 응답들도 또한 변할 수 있고, 이에 의하여 문제 사례 정보가 시간이 지남에 따라서 진화할 때 의사결정자는 동적으로 다른 최상의 응답들(different best answers)을 제공받을 수 있게 된다.
그러므로, 본 출원의 실시 예들은 거의 변경되지 않는 (또는 주기적인 업데이트(예를 들어, 소프트웨어 업데이트) 때만 변경되는) 미리 정해진, 고정된 기준에 기초하여 응답들과 신뢰도 값들을 생성하는 시스템들보다 실질적인 장점들을 제공한다. 예를 들면, 의학 영역에서, 동적으로 조치를 취함으로써, 영역 지식 콘텐츠(112) 내의 진화하고 있는 인구통계특성 변화, 진화하고 있는 의학적 발견, 진화하고 있는 투약물 충돌, 진화하고 있는 부작용 정보 등에 기초하여 이전 응답들과 권고사항들이 변경될 수 있다. 따라서, 본 출원의 실시 예들은 환자가 개인적 변화를 겪지 않을지라도, 단지 영역 지식 콘텐츠(112) 내의 다른 데이터가 시간이 지남에 따라 진화하기 때문에, 환자에 대한 의학적 치료 권고의 방침을 변경시킬 수 있다. 이것은 의학적 진보와 인구통계특성이 시간이 지남에 따라서 변함에 따라 의료 제공자들에게 그들의 환자들을 위한 최상의 의학적 치료를 한결같이 처방하기 위한 완전 자동화 시스템을 가능하게 한다.
많은 영역들에서, 가장 높은 신뢰도를 갖는 응답이 적절한 응답이 될 필요는 없는데, 이는 어떤 문제에 대하여 여러 가지 가능한 설명들이 있을 수 있기 때문이다. 예를 들면, 의학 영역에서, 여러 질환들은 환자에게 일 세트의 증상들을 일으킬 수 있다. 응답들과 그 응답들의 신뢰도 목록을 표시하는 것에 더하여, 하나 또는 그 이상의 응답들을 선택하여 증거의 차원들까지 드릴다운(drill down)할 수 있다. 도 4는 증거 소스들로부터 응답의 전체 신뢰도에 대한 증거의 각 차원 값의 기여도를 예시하는 계통도이다. 도 4에 도시된 출력은 다수 응답들에 걸쳐서 각 차원을 비교한다. 도 4는 4가지 질환 응답들에 대한 현재 질병(402), 가족력(404), 소견들(406), 및 인구통계특성(408)의 차원들에 따른 증거의 한계 기여도(marginal contribution, 400)을 예시한다. 이 예에서, "차원들(dimensions)"은 '현재 질병', '소견들', '가족력', 및 '인구통계특성'이며 각각은 각자의 값을 갖는다. 이러한 증거 차원들에 따른 다수 응답들의 비교 분석은 의사결정자(108)이 의사결정에 도달하기 위해 증거에서 트레이드-오프(trade-offs)를 고려하고 시각화할 수 있게 해준다.
의사결정자(108)은 또한 각 응답과 증거들의 차원을 더 깊게 드릴다운하여 그 차원에 따른 응답(the answer along that dimension)을 정당화 해주는 지원 증거들(the supporting pieces of evidence)을 조사할 수 있다. 예를 들면, 의사결정자가 더 깊이 검토하여 그 유효성을 확인할 수 있도록 문구의 소스, 그 소스의 유형(교과서, 안내서, 저널 논문, 웹 콘텐츠) 및 그 소스에 대한 링크가 제공된다.
상기 방법은 또한 항목(216)에서 미싱 정보(missing information)를 식별할 수 있다. 더 구체적으로, 이 실시 예는 문제 사례 정보 내에 포함되어 있지 않은 응답들에 관련된 정보를 미싱 정보로서 자동으로 식별하고, 상기 미싱 정보가 대응 신뢰도 값들에 영향을 주는 양을 자동으로 더 식별하며 (위 두 경우 모두 질의-응답 모듈을 사용함) 이 정보를 유저에게 출력한다.
만일 질의-응답 시스템에 의해 돌려 받은 응답들과 그 응답들의 증거가 의사결정에 도달하는 데 충분하지 않다면, 애플리케이션(104)를 사용하여 응답들에서 신뢰도에 영향을 줄 가능성이 있는 미싱 정보를 식별할 수 있다. 주어진 응답에 관하여, 의사결정자(108)은 어떤 가설적 정보(what hypothetical information)가, 만일 제공된다면, 신뢰도에 가장 큰 변화를 일으킬 수 있는지를 알기 원할 수 있다. 예를 들면, 의학 영역에서, 만일 응답이 어떤 질환이면, 상기 미싱 정보는 그 질환을 확인해주거나 또는 배제시키는 검사실 검사(lab test)일 수 있다. 그것은 또한 환자에 대하여 명시되지 않은 다른 징후들 또는 증상들일 수 있다. 실제로, 응답과 연관된 많은 양의 미싱 정보가 있을 수 있으며 본 출원의 실시 예들은 미싱 정보에 순위를 매길 수 있다. 미싱 정보의 잠재적인 값의 순위를 매기는 데 사용될 수 있는 특성들은 이 정보를 얻는 비용, 소요된 시간, 및 그 미싱 정보가 응답의 신뢰도에 영향을 주는 양과 같은 요소들일 수 있다.
두 응답이 비슷한 신뢰도를 보여서 둘 중에 선택하기가 어렵게 된다면, 그 두 신뢰도 사이의 가장 큰 차이를 일으킬 수 있는 미싱 정보를 식별하는 것이 도움이 될 수 있다. 예를 들면, 의학 영역에서, 상기 응답들은 두 개의 관련된 질환일 수 있고 상기 미싱 정보는 그 둘 사이를 구별하기 위해 설계된 검사실 검사일 수 있다. 이 증거는 하나의 답의 신뢰도를 높이든가 낮출 수 있고 따라서 의료 진단 시스템의 사례에서 정확한 진단을 확정하는 데 도움을 줄 수 있다.
미싱 정보의 식별은 의사결정자(108)의 주도에 의해서만 행해질 필요는 없다. 어떤 기준이 충족되고, 예를 들어, 두 개의 최상위 응답의 신뢰도가 매우 근사치일 때, 애플리케이션(104)는 스스로 주도권을 쥐고 미싱 정보를 자동으로 요청할 수 있다.
일단 미싱 정보가 식별되면, 의사결정자(108)은 그 영역에 특정된 절차들을 사용하여 이 미싱 정보를 찾아야 한다. 의학 영역에서, 이것은 검사실 검사를 지시하거나 환자에게 더 많은 정보를 요구하는 것이 필요할 수도 있다. 이 미싱 정보가 사용 가능하게 될 때, 그것은 위에 기술된 바와 같이 의사결정-지원 단계로 다시 보내지고 도 2에 도시된 질의-응답과 의사결정 지원 프로세스의 새로운 반복이 시작된다.
도 5~14는 유저들에게 제시될 수 있는 스크린샷(screenshot)들의 계통도이다. 도 5에서, 두 환자의 프로필(502, 504)가 스크린샷(500)상에 도시된다. 추가 환자들에 대한 추가 프로필들도 생성될 수 있다. 도 6에서, 첫 번째 환자(502)가 선택되었고 현재 질병 이력(History of Present Illness) 섹션(506)에 나열된 증상들을 기술하였다. 이 정보는 보건의료 전문가에 의해 전자 건강 기록(EHR: Electronic Health Record)에 입력될 수도 있고 또는 박스(506)에 타이핑해 넣음으로써 단지 해당 시스템에서만 이용 가능하게 될 수도 있다. 제안된 시스템은 상기 건강 기록 또는 위의 텍스트 필드로부터 관련 정보를 자동으로 가져와서(pull), 분석론(analytics)을 사용하여 관련 개념들을 찾고, 그 개념들을 증상들 차원에 대한 속성(belonging)으로 분류하고 질의 필드(508)에 나열된 질의를 자동으로 생성할 수 있다. 이와 달리, 유저(의사/환자)는 질의 필드에 질의를 직접 입력할 수도 있다. 유저는 그 다음 "Ask Watson(왓슨에 질의)" 버튼(510)을 클릭하여 진행할 수 있다. 도 6에는 또한 "Evidence(증거)" 버튼(512)도 나와 있으며, 이것은 아래에서 논의된다.
도 7에서, 의사결정-지원 애플리케이션(104)는 질의에 대한 일 세트의 가능한 응답들을 각 응답과 연관된 신뢰도 점수들과 함께 생성하고 그것들은 구역(514)에 표시된다. 도 8에서, 상태를 확인하고 나서, 유저가 그 상태를 현재 질병 이력 섹션에 입력하거나, 또는 그 상태가 EHR로부터 자동으로 추출될 수 있다. 그 후, 의사는 다른 질의를 하거나 의사결정-지원 애플리케이션(104)가 다른 질의를 자동으로 생성하게 할 수 있다.
도 9에서, 프로세스는 현재 질병, 가족력 등과 같이 관련된 차원들로 분석 및 그룹화된 새로운 정보가 항목(506)에 추가됨으로써 계속된다. 도 10에서, 더 많은 정보가 계속적으로 항목(506)에 추가됨에 따라 동일한 프로세스가 계속되고, 그렇게 하여 잠재적인 진단을 더 정확하게 만든다(refine). 도 11에서, 프로세스는 의사결정-지원 애플리케이션(104)가 다른 잠재적인 응답들보다 높은 신뢰도를 가지고, 특정한 환자에 대한 정확한 진단은 라임질환(Lyme disease)이라는 것을 항목(514)에 표시하는 지점에 도달한다. 도 11의 예에서 보면, 이들 차원들에 포함된 정보는 사례 정보(각각, '포도막염(uveitis)', '원형 발진...(circular rash...)', '관절염(arthritis)', '코네티컷 주(Connecticut)')로부터 나온 것이다. 각 증거 차원의 수치는 가설 응답(hypothesized answer)(예를 들어, 라임질환)의 맥락에서 의료 콘텐츠 내 이들 차원들에 포함된 정보의 존재로부터 나온 것이다.
도 12에서, 의사결정-지원 애플리케이션(104)는 응답에 대한 증거 프로필(516)을 보기 위해 유저가 응답인 라임질환을 선택할 수 있게 해준다. 애플리케이션(104)는 증거의 차원들과 이들의 라임질환 진단에 대한 연관 기여도를 알려준다. 그 다음에 유저는 특정한 차원을 더 선택하여 이 차원에 기여하는 증거의 조각문들을 탐색할 수 있다. 마지막으로, 애플리케이션(104)는 의사가 교과서(textbook), 저널(journal), 또는 웹사이트(website)와 같이 도 12에 표시된(518) 링크들 중 하나를 클릭함으로써 상기 조각문들을 가져온 전체 문서들을 볼 수 있게 해준다. 도 13에서, 의사결정-지원 애플리케이션(104)가 다시 도시되는데, 단 이 경우에는 애플리케이션(104)가 상기 식별된 상태를 치료하기 위해 가능한 치료들을 조사하는 것을 대상으로 하고 있다는 것이 앞과 다르다. 도 14에서, 새로운 정보는 추가되었거나 또는 식별된 상태에 대한 적절한 치료법과 관련한 환자의 의료 기록으로부터 자동으로 추출되었다. 이 경우에, 애플리케이션(104)는 환자가 페니실린에 알레르기가 있다는 것과 환자가 임신 중이라는 것을 식별하였다. 애플리케이션(104)는 이 정보를 사용하여 적절한 치료법을 찾으며, 이 경우에 특정한 치료 옵션에 대한 신뢰도 점수를 표시한다.
이 기술분야에서 통상의 지식을 가진 자는 인식할 수 있는 바와 같이, 본 출원의 실시 예들은 시스템, 방법 또는 컴퓨터 프로그램 제품으로 구현될 수 있다. 따라서, 본 출원의 실시 예들은 전적으로 하드웨어 실시 예의 형태, 전적으로 소프트웨어 실시 예(펌웨어, 상주 소프트웨어, 마이크로-코드 등 포함)의 형태 또는 소프트웨어와 하드웨어를 조합한 실시 예의 형태를 취할 수 있으며, 이들 모두는 일반적으로 본 명세서에서는 "회로", "모듈" 또는 "시스템"이라 불릴 수 있다. 또한, 본 출원의 실시 예들은 컴퓨터 판독가능 프로그램 코드가 구현된 하나 또는 그 이상의 컴퓨터 판독가능 매체(들)에 구현된 컴퓨터 프로그램 제품의 형태를 취할 수도 있다.
하나 또는 그 이상의 컴퓨터 판독가능 매체(들)의 어떤 조합이든 사용될 수 있다. 컴퓨터 판독가능 매체는 컴퓨터 판독가능 신호 매체 또는 컴퓨터 판독가능 스토리지 매체일 수 있다. 컴퓨터 판독가능 스토리지 매체는, 예를 들어, 전자, 자기, 광학, 전자기, 적외선 혹은 반도체 시스템, 장치 또는 디바이스 또는 전술한 것들의 적절한 임의 조합이 될 수 있으며, 그러나 이에 한정되지는 않는다. 컴퓨터 판독가능 스토리지 매체의 더 구체적인 예들(비포괄적인 목록)은 다음이 포함될 수 있다: 하나 또는 그 이상의 와이어들을 갖는 전기 배선(electrical connection), 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독전용 메모리(ROM), 소거 및 프로그램가능 판독전용 메모리(EPROM 또는 플래시 메모리), 광학 저장 디바이스, 자기 저장 디바이스, 또는 전술한 것들의 적절한 임의 조합. 이 문서의 맥락에서, 컴퓨터 판독가능 스토리지 매체는 명령 실행 시스템, 장치 또는 디바이스에 의해서 또는 이들과 연결하여 사용될 프로그램을 보유 또는 저장할 수 있는 모든 유형의(tangible) 매체일 수 있다.
컴퓨터 판독가능 신호 매체에는 컴퓨터 판독가능 프로그램 코드가 예를 들어 베이스밴드로 또는 반송파의 일부로서 구현된 전파 데이터 신호(propagated data signal)가 포함될 수 있다. 이러한 전파 신호는 다양한 형태를 취할 수 있는데, 전자기, 광학 또는 이들의 적절한 조합의 형태가 포함되나 이에 한정되지는 않는다. 컴퓨터 판독가능 신호 매체는 컴퓨터 판독가능 스토리지 매체가 아니면서 명령 실행 시스템, 장치 또는 디바이스에 의해 또는 이들과 연결하여 사용될 프로그램을 통신, 전파 또는 전송할 수 있는 모든 컴퓨터 판독가능 매체일 수 있다.
컴퓨터 판독가능 매체상에 구현된 프로그램 코드는 무선, 유선, 광섬유 케이블, RF 등 또는 전술한 것들의 적절한 조합을 포함하여(그러나 이에 한정되지는 않음) 모든 적절한 매체를 사용하여 송신될 수 있다.
본 출원의 실시 예들의 동작들을 수행하기 위한 컴퓨터 프로그램 코드는 Java, Smalltalk, C++ 등과 같은 객체 지향 프로그래밍 언어와 "C" 프로그래밍 언어와 같은 종래의 절차적 프로그래밍 언어들 또는 그와 유사한 언어들을 포함하여 하나 또는 그 이상의 프로그래밍 언어들로 작성될 수 있다. 프로그램 코드는 전적으로 유저의 컴퓨터상에서, 부분적으로 유저의 컴퓨터상에서, 독립형 소프트웨어 패키지로서, 부분적으로 유저의 컴퓨터상과 부분적으로 원격 컴퓨터상에서 또는 전적으로 원격 컴퓨터나 서버상에서 실행될 수 있다. 상기 마지막의 경우에, 원격 컴퓨터는 근거리 통신망(LAN) 또는 광역 통신망(WAN)을 포함한 모든 유형의 네트워크를 통해서 유저의 컴퓨터와 접속될 수 있고, 또는 이 접속은 (예를 들어, 인터넷 서비스 제공자를 사용한 인터넷을 통해서) 외부 컴퓨터에 이루어질 수 있다.
본 출원의 실시 예들은 본 발명의 실시 예들에 따른 방법들, 장치들(시스템들) 및 컴퓨터 프로그램 제품들의 흐름 예시도 및/또는 블록도들을 참조하여 아래에 기술된다. 흐름 예시도들 및/또는 블록도들의 각 블록과, 흐름 예시도들 및/또는 블록도들 내의 블록들의 조합들은 컴퓨터 프로그램 명령들에 의해 구현될 수 있다. 이 컴퓨터 프로그램 명령들은 범용 컴퓨터, 특수목적용 컴퓨터, 또는 기타 프로그램가능 데이터 처리 장치에 제공되어 머신(machine)을 생성할 수 있으며, 그렇게 하여 이 명령들이 상기 컴퓨터 또는 기타 프로그램가능 데이터 처리 장치를 통하여 실행되어 흐름도 및/또는 블록도의 블록 또는 블록들 내에 명시된 기능들/동작들을 구현하는 수단을 생성하게 할 수 있다.
이 컴퓨터 프로그램 명령들은 또한 컴퓨터 판독가능 매체 안에 저장되어 컴퓨터, 기타 프로그램가능 데이터 처리 장치 또는 기타 디바이스들에게, 컴퓨터 판독가능 매체에 저장된 명령들이 흐름도 및/또는 블록도의 블록 또는 블록도들 내에 명시된 기능/동작을 구현하는 명령들을 포함하는 제조품(an article of manufacture)을 생산하도록 지시할 수 있다. 컴퓨터 프로그램 명령들은 또한 컴퓨터, 기타 프로그램가능 데이터 처리 장치, 또는 기타 디바이스들상에 로드되어 일련의 동작 단계들이 컴퓨터, 기타 프로그램가능 장치 또는 기타 디바이스들상에서 수행되게 하여 컴퓨터 구현 프로세스를 생산하게 할 수 있으며, 그렇게 하여 컴퓨터 또는 기타 프로그램가능 장치상에서 실행되는 명령들이 흐름도 및/또는 블록도의 블록 또는 블록도들 내에 명시된 기능들/동작들을 구현하기 위한 프로세스들을 제공하게 할 수 있다.
도면들에서 흐름도 및 블록도는 여기의 여러 청구항들에 따른 시스템들, 방법들 및 컴퓨터 프로그램 제품들의 있을 수 있는 구현들의 아키텍처, 기능 및 동작을 예시한다. 이와 관련하여, 흐름도 또는 블록도 내 각 블록은 명시된 논리 기능(들)을 구현하기 위한 하나 또는 그 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 부분을 나타낼 수 있다. 일부 다른 구현들에서 블록에 언급되는 기능들은 도면들에 언급되는 순서와 다르게 일어날 수도 있다는 것에 유의해야 한다. 예를 들면, 연달아 도시된 두 블록은 사실은 실질적으로 동시에 실행될 수도 있거나, 또는 그 블록들은 관련된 기능에 따라서는 때때로 역순으로 실행될 수도 있다. 블록도 및/또는 흐름 예시도의 각 블록, 및 블록도 및/또는 흐름 예시도 내 블록들의 조합들은 명시된 기능들이나 동작들, 또는 특수목적용 하드웨어와 컴퓨터 명령들의 조합들을 수행하는 특수목적용 하드웨어 기반 시스템들에 의해 구현될 수 있다는 것에 또한 유의해야 한다.
이 명세서는 클라우드 컴퓨팅에 대한 상세한 설명을 포함하고 있지만, 여기에 나열되는(recited) 기술들(teachings)의 구현은 클라우드 컴퓨팅 환경에 한정되지 않는다는 것을 사전에 이해할 필요가 있다. 그보다는, 본 출원의 실시 예들은 현재 알려져 있거나 앞으로 개발되는 어떤 다른 유형의 컴퓨팅 환경과도 함께 구현될 수 있다. 클라우드 컴퓨팅은 구성가능한(configurable) 컴퓨팅 리소스들(예를 들어, 네트워크, 네트워크 대역폭, 서버, 처리, 메모리, 저장, 애플리케이션, 가상 머신, 및 서비스)의 공유 풀에 대한 편리한 주문형(on-demand) 네트워크 액세스를 가능하게 하기 위한 서비스 전달 모델이며, 서비스 제공자와의 최소한의 관리 노력 또는 상호작용(interaction)으로 빠르게 프로비저닝(provisioned)되고 해제될(released) 수 있다. 이 클라우드 모델은 적어도 다섯 가지 특성과, 적어도 세 가지 서비스 모델, 및 적어도 네 가지 배치 모델을 포함한다.
특성들은 다음과 같다:
주문형 셀프-서비스(On-demand self-service): 클라우드 소비자는 서비스 제공자와의 인적 상호작용(human interaction)이 필요없이 필요한 만큼 자동으로, 서버 시간 및 네트워크 저장과 같은 컴퓨팅 능력들을 일방적으로 프로비저닝(provisioning)할 수 있다.
폭넓은 네트워크 접근성(Broad network access): 네트워크를 통해서 능력들(capabilities)을 사용할 수 있고 이종의(heterogeneous) 씬 또는 씩 클라이언트 플랫폼(thin or thick client platforms)(예를 들어, 이동전화, 랩탑, 및 PDA)에 의한 사용을 촉진하는 표준 메커니즘들을 통해서 능력들에 액세스된다.
리소스 풀링(Resource pooling): 제공자의 컴퓨팅 리소스들은 멀티 테넌트(multi-tenant) 모델을 사용하여 다수 소비자들에게 서비스하기 위해 공동으로 사용되며(pooled), 이때 서로 다른 물적(physical) 및 가상(virtual) 리소스들이 요구하는 대로(according to demand) 동적으로 할당 및 재할당된다. 소비자는 일반적으로 제공되는 리소스들의 정확한 위치를 통제하거나 그에 대한 지식이 없지만 상위 추상적인 수준(예를 들어, 국가, 지역, 또는 데이터센터)에서 위치를 지정할 수 있다는 점에서 위치 독립성(a sense of location independence)이 존재한다.
빠른 탄력성(Rapid elasticity): 능력들이 빠르게 그리고 탄력적으로, 어떤 경우에는 자동적으로 신속히 스케일 아웃(scale out)되도록 프로비저닝되고 빠르게 스케일 인(scale in)되도록 해제될(released) 수 있다. 고객에게는, 프로비저닝에 사용 가능한 능력들에 한계가 없는 것으로 보이고 언제든지 원하는 만큼의 양을 구매할 수 있다.
도수제 서비스(Measured service): 클라우드 시스템은 서비스의 유형(예를 들어, 저장, 처리, 대역폭, 및 활성 유저 계정)에 적절하게 일정 추상화 수준에서 계량 능력(metering capability)을 레버리징(leveraging)함으로써 리소스 사용을 자동으로 통제 및 최적화한다. 리소스 사용량(resource usage)은 모니터링 되고, 통제 및 보고되어 사용하는 서비스의 제공자 및 소비자 둘 모두에게 투명성을 제공할 수 있다.
서비스 모델은 다음과 같다:
서비스형 소프트웨어(SaaS: Software as a Service): 소비자에게 제공되는 능력은 클라우드 인프라스트럭처상에서 실행되는 제공자의 애플리케이션들을 사용하는 것이다. 상기 애플리케이션들은 여러 클라이언트 디바이스로부터 웹 브라우저와 같은 씬 클라이언트 인터페이스(예를 들어, 웹-기반 이메일)를 통해서 접속 가능하다. 소비자는 네트워크, 서버, 운영체제, 스토리지(storage), 또는 개인 애플리케이션의 능력들도 포함하여 기본적인 클라우드 인프라스트럭처를 관리 또는 통제하지 않으나, 제한적으로 유저가 특정하여 애플리케이션 구성을 설정하는 등의 예외가 있을 수 있다.
서비스형 플랫폼(PaaS: Platform as a Service): 소비자에게 제공되는 능력은 클라우드 인프라스트럭처에 소비자가 생성하거나(consumer-created) 제공자에 의해 지원되는 프로그래밍 언어들과 도구들을 사용하여 생성된 획득된(acquired) 애플리케이션들을 배치하는 것이다. 소비자는 네트워크, 서버, 운영체제, 또는 스토리지를 포함하여 하부(underlying) 클라우드 인프라스트럭처를 관리 또는 통제하지 않으나, 소비자가 배치한 애플리케이션들에 대한 통제권을 가지며 애플리케이션 호스팅 환경 구성에 대한 통제권을 갖는 것도 가능할 수 있다.
서비스형 인프라스트럭처(IaaS: Infrastructure as a Service): 소비자에게 제공되는 능력은 처리, 스토리지, 네트워크 및 기타 기본적인 컴퓨팅 리소스들을 프로비저닝하는 것이며, 여기에서 소비자는 운영체제 및 애플리케이션을 포함하여 소비자가 임의의 소프트웨어를 배치 및 실행할 수 있다. 소비자는 상기 기본 클라우드 인프라스트럭처를 관리 또는 통제하지 않지만 운영체제, 스토리지, 배치된 애플리케이션에 대한 통제권을 가지며 엄선된 네트워킹 컴포넌트들(예를 들어, 호스트 방화벽)에 대한 제한적인 통제권을 가지는 것이 가능하다.
배치 모델들은 다음과 같다:
사설 클라우드(Private cloud): 이 클라우드 인프라스트럭처는 단체(a organization)만을 위해서 운영된다. 클라우드 인프라스트럭처는 그 단체(the organization) 또는 제3자에 의해 관리될 수 있고 구내(on-premises) 또는 구외(off-premises)에 존재할 수 있다. 커뮤니티 클라우드(Community cloud): 클라우드 인프라스트럭처는 여러 단체에 의해 공유되며, 관심사(예를 들어, 미션(mission), 보안 요구사항, 정책, 및 규정 준수 고려사항)를 공유하는 특정한 커뮤니티를 지원한다. 커뮤니티 클라우드는 단체 또는 제3자에 의해 관리될 수 있고 구내 또는 구외에 존재할 수 있다.
공공 클라우드(Public cloud): 이 클라우드 인프라스트럭처는 일반 공공 또는 대규모 산업 그룹이 이용 가능하도록 되어 있으며 클라우드 서비스를 판매하는 단체가 소유한다.
하이브리드 클라우드(Hybrid cloud): 이 클라우드 인프라스트럭처는 둘 또는 그 이상의 클라우드들(사설, 커뮤니티, 또는 공공)로 구성된 것이며 이들은 고유 실체들(unique entities)로 유지되지만 데이터 및 애플리케이션 이동성(예를 들어 클라우드 간 부하 분산을 위한 클라우드 버스팅)을 가능하게 하는 표준화되거나 소유권이 있는 기술에 의해 함께 묶인다.
클라우드 컴퓨팅 환경은 무국적성(statelessness), 낮은 결합성(low coupling), 모듈 방식, 및 의미적 상호 운용성(semantic interoperability)에 초점을 맞춘 서비스를 지향한다. 클라우드 컴퓨팅의 중심에는 상호 연결된 노드들로 구성된 네트워크를 포함하는 인프라스트럭처가 있다.
도 15를 참조하면, 클라우드 컴퓨팅 노드의 일 예의 개략도가 도시된다. 클라우드 컴퓨팅 노드(10)은 적합한 클라우드 컴퓨팅 노드의 한 예일뿐이며 여기에 기술되는 본 발명의 실시 예들의 사용 범위 또는 기능을 한정할 의도가 있는 것은 아니다.
그와는 상관없이, 클라우드 컴퓨팅 노드(10)은 위에서 제시된 기능을 구현 및/또는 수행할 수 있다. 클라우드 컴퓨팅 노드(10)에서, 컴퓨터 시스템/서버(12)가 있는데, 이것은 다른 다수의 범용 또는 특수목적용 컴퓨팅 시스템 환경들 또는 구성들에서 운영될 수 있다. 컴퓨터 시스템/서버(12)와 함께 사용하는 데 적합할 수 있는 주지의 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터 시스템, 서버 컴퓨터 시스템, 씬 클라이언트(thin clients), 씩 클라이언트(thick clients), 핸드헬드(hand-held) 또는 랩탑 디바이스, 멀티프로세서 시스템, 마이크로프로세서-기반 시스템, 셋톱박스, 프로그램가능 가전제품, 네트워크 PC, 미니컴퓨터 시스템, 메인프레임 컴퓨터 시스템, 및 위의 시스템 또는 디바이스 등을 포함하는 분산된 클라우드 컴퓨터 환경이 포함되며, 그러나 이에 한정되지는 않는다.
컴퓨터 시스템/서버(12)는 컴퓨터 시스템에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 시스템 실행가능 명령들의 일반적인 맥락에서 기술될 수 있다. 일반적으로, 프로그램 모듈에는 구체적인 태스크를 수행하거나 구체적인 추상적 데이터 유형을 구현하는 루틴(routines), 프로그램, 객체, 컴포넌트, 논리, 데이터 스트럭처 등이 포함된다. 컴퓨터 시스템/서버(12)는 분산된 클라우드 컴퓨팅 환경에서 실시될 수 있으며, 이 환경에서 태스크는 통신 네트워크를 통해 링크되는 원격 처리 디바이스에 의해 수행된다. 분산된 클라우드 컴퓨팅 환경에서, 프로그램 모듈은 메모리 스토리지 디바이스를 포함하여 로컬 및 원격 컴퓨터 시스템 스토리지 매체에 위치할 수 있다.
도 15에 도시된 바와 같이, 클라우드 컴퓨팅 노드(10)에서 컴퓨터 시스템/서버(12)는 범용 컴퓨팅 디바이스의 형태로 도시된다. 컴퓨터 시스템/서버(12)의 컴포넌트에는 하나 또는 그 이상의 프로세서 또는 처리장치(16), 시스템 메모리(28), 및 버스(18)이 포함되며(그러나 이에 한정되지 않음) 버스(18)은 시스템 메모리(28)을 프로세서(16)에 결합시키는 것을 포함하여 여러 시스템 컴포넌트를 결합시킨다. 버스(18)은 메모리 버스 또는 메모리 컨트롤러, 주변장치 버스(peripheral bus), 초고속 그래픽 포트(accelerated graphics port), 및 다양한 버스 아키텍처를 사용하는 프로세서나 로컬 버스를 포함하여 하나 또는 그 이상의 여러 유형의 버스 스트럭처를 의미한다. 예시의 방식이며 한정하지 않는 것으로서, 이러한 아키텍처에는 업계 표준 아키텍처(ISA) 버스, 마이크로 채널 아키텍처(MCA) 버스, 강화된(Enhanced) ISA(EISA) 버스, 비디오 전자 표준 위원회(VESA) 로컬 버스, 및 주변장치 컴포넌트 상호접속(PCI) 버스가 포함된다. 컴퓨터 시스템/서버(12)는 통상적으로 다양한 컴퓨터 시스템 판독가능 매체를 포함한다. 이러한 매체는 컴퓨터 시스템/서버(12)에 의해 액세스 가능한 모든 사용 가능한 매체일 수 있으며, 휘발성 및 비휘발성 매체, 착탈 및 비착탈 매체가 포함된다.
시스템 메모리(28)은 랜덤 액세스 메모리(RAM)(30) 및/또는 캐시 메모리(32)와 같은 컴퓨터 시스템 판독가능 매체를 휘발성 메모리의 형태로 포함할 수 있다. 컴퓨터 시스템/서버(12)는 기타 착탈/비착탈 휘발성/비휘발성 컴퓨터 시스템 스토리지 매체를 더 포함할 수 있다. 단지 예시의 방식으로서 이야기하자면, 스토리지 시스템(34)는 (도시되지 않으며 통상적으로 "하드 드라이브"라 불리는) 비착탈 비휘발성 자기 매체 내/외로 읽기 및 쓰기를 하기 위해 제공될 수 있다. 도시되지는 않았지만, 착탈 비휘발성 자기 디스크(예를 들어 "플로피 디스크") 내/외로 읽기 및 쓰기를 하기 위한 자기 디스크 드라이브와, CD-ROM, DVD-ROM 또는 기타 광학 매체와 같은 착탈 비휘발성 광학 디스크 내/외로 읽기 또는 쓰기를 하기 위한 광학 디스크 드라이브가 제공될 수 있다. 이러한 경우에, 각각은 하나 또는 그 이상의 데이터 매체 인터페이스에 의해 버스(18)에 연결될 수 있다. 아래에 더 도시되고 기술되는 바와 같이, 메모리(28)은 본 발명의 실시 예들의 기능들을 실행하도록 구성된 일 세트의(예를 들어, 적어도 하나의) 프로그램 모듈들을 갖는 적어도 하나의 프로그램 제품을 포함할 수 있다. 일 세트의(적어도 하나의) 프로그램 모듈들(42)를 갖는 프로그램/유틸리티(40)은 (단지 예시의 방식이며, 한정하는 것은 아님) 메모리(28)에 저장될 수 있으며, 운영체제, 하나 또는 그 이상의 애플리케이션 프로그램들, 기타 프로그램 모듈들, 및 프로그램 데이터도 메모리에 저장될 수 있다. 상기 운영체제, 하나 또는 그 이상의 애플리케이션 프로그램들, 기타 프로그램 모듈들, 및 프로그램 데이터의 각각 또는 이들의 일부 조합은 네트워킹 환경의 구현(implementation)을 포함할 수 있다. 프로그램 모듈들(42)는 일반적으로 여기에 기술된 바와 같이 본 발명의 실시 예들의 기능들 및/또는 방법들을 실행한다. 컴퓨터 시스템/서버(12)는 또한 키보드, 포인팅 디바이스, 디스플레이(24) 등과 같은 하나 또는 그 이상의 외부 디바이스들(14)와; 유저가 컴퓨터 시스템/서버(12)와 상호작용할 수 있게 해주는 하나 또는 그 이상의 디바이스들과; 및/또는 컴퓨터 시스템/서버(12)가 하나 또는 그 이상의 기타 컴퓨팅 디바이스들과 통신할 수 있게 해주는 모든 디바이스들(예를 들어, 네트워크 카드, 모뎀 등)과 통신할 수 있다. 이러한 통신은 입력/출력(I/O) 인터페이스들(22)를 경유하여 일어날 수 있다. 또한, 컴퓨터 시스템/서버(12)는 네트워크 어댑터(20)을 경유하여 근거리 통신망(LAN), 일반적인 광역 통신망(WAN), 및/또는 공공 네트워크(예를 들어, 인터넷)와 같은 하나 또는 그 이상의 네트워크들과 통신할 수 있다. 도시된 바와 같이, 네트워크 어댑터(20)은 컴퓨터 시스템/서버(12)의 다른 컴포넌트들과 버스(18)을 경유하여 통신한다. 도시되지는 않았지만 기타 하드웨어 및/또는 소프트웨어 컴포넌트들도 컴퓨터 시스템/서버(12)와 함께 사용될 수 있다는 것을 이해할 필요가 있다. 그 예로는 (그러나 이에 한정되지는 않음) 마이크로코드, 디바이스 드라이버, 중복 처리장치(redundant processing units), 외부 디스크 드라이브 어레이, RAID 시스템, 테이프 드라이브, 및 데이터 아카이브 스토리지 시스템 등이 포함된다.
도 16을 참조하면, 예시적 클라우드 컴퓨팅 환경(50)이 도시된다. 도시된 바와 같이, 클라우드 컴퓨팅 환경(50)은 하나 또는 그 이상의 클라우드 컴퓨팅 노드들(10)을 포함하며, 이들과 예를 들어 개인 휴대정보 단말기(PDA) 또는 휴대폰(cellular telephone)(54A), 데스크탑 컴퓨터(54B), 랩탑 컴퓨터(54C), 및/또는 자동차 컴퓨터 시스템(54N)과 같은 클라우드 소비자들이 사용하는 로컬 컴퓨팅 디바이스들이 통신할 수 있다. 노드들(10)은 서로 통신할 수 있다. 노드들은 위에서 기술되는 바와 같이 사설 클라우드, 커뮤니티 클라우드, 공공 클라우드, 하이브리드 클라우드와 같은 하나 또는 그 이상의 네트워크들 또는 이들의 조합에 물리적으로 또는 가상으로 그룹화될(도시되지 않음) 수 있다. 이것은 클라우드 컴퓨팅 환경(50)이 클라우드 소비자가 로컬 컴퓨팅 디바이스에 리소스들을 유지할 필요가 없도록 인프라스트럭처 서비스, 플랫폼 서비스 및/또는 소프트웨어 서비스를 공급할 수 있게 해준다. 도 16에 도시된 컴퓨팅 디바이스들(54A~N)의 유형은 단지 예시의 의도가 있을 뿐이며 컴퓨팅 노드들(10)과 클라우드 컴퓨팅 환경(50)은 모든 유형의 네트워크 및/또는 네트워크 주소지정가능 접속을 통해서 (예를 들어, 웹 브라우저를 사용하여) 어떤 유형의 컴퓨터 디바이스와도 통신할 수 있음을 이해할 필요가 있다.
이제 도 17을 참조하면, (도 16의) 클라우드 컴퓨팅 환경(50)에 의해 제공되는 일 세트의 기능 추상 층들(functional abstraction layers)이 도시된다. 도 17에 도시된 컴포넌트들, 층들, 및 기능들은 단지 예시의 목적이 있을 뿐이며 본 발명의 실시 예들은 이들에 한정되지 않는다는 것을 사전에 이해해야 한다. 도시된 바와 같이, 다음의 층들 및 그에 대응하는 기능들이 제공된다: 하드웨어 및 소프트웨어 층(60)은 하드웨어 및 소프트웨어 컴포넌트들을 포함한다. 하드웨어 컴포넌트들의 예로는 메인프레임들(mainframes), 일 예로 IBM® zSeries® 시스템들; RISC(Reduced Instruction Set Computer) 아키텍처 기반 서버들, 일 예로 IBM pSeries® 시스템들; IBM xSeries® 시스템들; IBM BladeCenter® 시스템들; 스토리지 디바이스들; 네트워크들 및 네트워킹 컴포넌트들 등이 포함된다. 소프트웨어 컴포넌트들의 예로는 네트워크 애플리케이션 서버 소프트웨어, 일 예로 IBM WebSphere® 애플리케이션 서버 소프트웨어; 및 데이터베이스 소프트웨어, 일 예로 IBM DB2® 데이터베이스 소프트웨어 등이 포함된다. (IBM, zSeries, pSeries, xSeries, BladeCenter, WebSphere, 및 DB2는 전세계 여러 국가들에 등록된 인터네셔널 비지네스 머신즈 코포레인션의 상표이다.) 가상화 층(virtualization layer)(62)는 다음의 가상 실체들의 예들이 제공될 수 있는 추상 층을 제공한다: 가상 서버들; 가상 스토리지; 가상 사설 네트워크들을 포함하는 가상 네트워크들; 가상 애플리케이션들 및 운영체제들; 및 가상 클라이언트들. 한 예에서, 관리 층(64)는 아래에 기술되는 기능들을 제공할 수 있다. 리소스 프로비저닝(Resource Provisioning)은 상기 클라우드 컴퓨팅 환경 내에서 태스크들을 수행하기 위해 사용되는 컴퓨팅 리소스들 및 기타 리소스들의 동적 조달을 제공한다. 계량 및 가격결정(Metering and Pricing)은 리소스들이 클라우드 컴퓨팅 환경 내에서 사용되는 바에 따른 비용 추적(cost tracking), 및 이 리소스들의 소비에 대한 과금(billing) 또는 요금청구(invoicing)를 제공한다. 한 예에서, 이 리소스들은 애플리케이션 소프트웨어 라이선스들을 포함할 수 있다. 보안(Security)은 클라우드 소비자들 및 태스크들에 대한 신원 확인(identity verification)과, 데이터 및 기타 리소스들에 대한 보호를 제공한다. 유저 포털(User Portal)은 소비자들과 시스템 관리자들에게 클라우드 컴퓨팅 환경에 대한 액세스를 제공한다. 서비스 수준 관리(Service Level Management)는 요구되는 서비스 수준들이 충족되도록 클라우드 컴퓨팅 리소스 할당 및 관리를 제공한다. 서비스 수준 협약(SLA: Service Level Agreement) 계획 및 이행(Planning and Fulfillment)은 SLA에 따라서 미래 요구사항이 예상되는 클라우드 컴퓨팅 리소스들의 사전 준비(pre-arrangement) 및 조달을 제공한다.
워크로드 층(Workloads layer)(66)은 클라우드 컴퓨팅 환경이 사용될 수 있는 기능의 예들을 제공한다. 이 층으로부터 제공될 수 있는 워크로드들과 기능들의 예로는 매핑 및 네비게이션(Mapping and Navigation); 소프트웨어 개발 및 수명주기 관리(Software Development and Lifecycle Management); 가상 교실 교육 전달(Virtual Classroom Education Delivery); 데이터 분석 처리(Data Analytics Processing); 트랜잭션 처리(Transaction Processing); 및 질의-응답 시스템을 사용한 문제 해결을 위한 의사결정-지원(Decision-Support) 등이 포함된다.
본 출원에서 사용되는 용어는 특정한 실시 예들을 기술하기 위한 목적이 있을 뿐이며 본 발명을 한정할 의도가 있는 것은 아니다. 여기에서 사용될 때, 단수 표현("a", "an")및 "상기(the)" 또는 "그(the)"라는 표현은, 문맥상 분명하게 다르게 표시하기 않는 한, 복수 형태도 포함할 의도로 사용되었다. "포함한다(comprises)" 및/또는 "포함하는(comprising)"이라는 말은, 이 명세서에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 명시하는 것이며, 하나 또는 그 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않는다는 것을 더 이해할 수 있을 것이다.
아래의 청구항들에서 모든 수단 또는 단계 플러스 기능 요소들의 대응 구조들(structures), 재료들(materials), 행동들(acts), 및 등가물들(equivalents)은 구체적으로 청구된 다른 청구 요소들과 결합하여 기능을 수행하기 위한 모든 구조, 재료, 또는 행동을 포함할 의도로 기술된다. 본 출원의 실시 예들의 기술은 예시와 설명의 목적으로 제시된 것일 뿐이지, 본 발명을 공개된 형태로 포괄 또는 한정할 의도가 있는 것은 아니다. 이 기술분야에서 통상의 지식을 가진 자들에게는 본 발명의 범위와 정신에서 벗어나지 않고도 많은 수정들과 변형들이 있을 수 있다는 것이 분명할 것이다. 실시 예는 본 발명과 실무 응용 방법의 원리들을 가장 잘 설명하기 위해, 그리고 이 기술분야에서 통상의 지식을 가진 자들에게 여러 수정들이 반영된 여러 실시 예들을 위한 본 발명이 의도한 특정한 용도에 맞추어진다는 것을 이해시킬 수 있게 하기 위해 선택되고 기술되었다.
Claims (23)
- 문제 해결을 위한 의사결정-지원 시스템(a decision-support system)을 제공하는 단계 ― 상기 시스템은 컴퓨터 판독가능 매체상에 구현된 소프트웨어 모듈들을 포함하고, 상기 소프트웨어 모듈들은 입력/출력 모듈 및 질의-응답 모듈(a question-answering module)을 포함함 ―;
상기 입력/출력 모듈을 사용하여 문제 사례 정보(problem case information)를 수신하는 단계;
상기 문제 사례 정보에 기초하여 질의(a query)를 생성하는 단계;
상기 질의-응답 모듈을 사용하여 상기 질의에 대한 복수의 응답들(answers)을 생성하는 단계;
상기 질의-응답 모듈을 사용하여 상기 응답들의 각각에 대한 증거 소스들(evidence sources)로부터 다수의 증거 차원들(evidence dimensions)에 대한 수치들(numerical values)을 계산하는 단계;
상기 질의-응답 모듈을 사용하여 각 증거 차원의 상기 수치에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값(confidence value)을 계산하는 단계;
상기 입력/출력 모듈을 사용하여 상기 응답들, 상기 대응 신뢰도 값들, 및 상기 하나 또는 그 이상의 선택된 응답들에 대한 각 증거 차원의 수치들을 출력하는 단계를 포함하는,
방법. - 제1항에 있어서, 상기 의사결정-지원 시스템은 문제 사례 분석 모듈(a problem case analysis module)및 질의 생성 모듈(question generation module)을 포함하고, 상기 질의를 생성하는 단계는:
의미 개념들(semantic concepts)을 식별하기 위해, 상기 문제 사례 분석 모듈을 사용하여, 상기 문제 사례 정보를 자동으로 분석하는 단계; 및
상기 질의 생성 모듈을 사용하여 상기 의미 개념들로부터 상기 질의를 자동으로 생성하는 단계를 포함하는 단계들에 의해 실행되는,
방법. - 제2항에 있어서, 상기 질의를 생성하는 단계, 상기 복수의 응답들을 생성하는 단계, 상기 응답들의 각각에 대한 증거 소스들로부터 다수의 증거 차원들에 대한 상기 수치들을 계산하는 단계, 및 각 증거 차원의 상기 수치에 기초하여 상기 응답들의 각각에 대한 상기 신뢰도 값을 계산하는 단계는 만일 새로운 문제 사례 정보가 수신되면 자동으로 실행되는,
방법. - 제3항에 있어서, 상기 방법은:
만일 새로운 문제 사례 정보가 수신되면 자동으로 생성되는 상기 복수의 응답들, 수치들 및 신뢰도 값들을 저장소에(in a repository) 저장하는 단계를 더 포함하는,
방법. - 제1항에 있어서, 상기 복수의 응답들을 생성하는 단계는 영역 지식 콘텐츠(domain knowledge content)를 분석함으로써 실행되는,
방법. - 제5항에 있어서, 상기 방법은:
저장소에, 상기 복수의 응답들, 수치들 및 신뢰도 값들을 저장하는 단계;
만일 새로운 영역 지식(new domain knowledge)이 상기 영역 지식 콘텐츠에 추가되면 상기 저장소에 저장된 복수의 미리 생성된 응답들과 그 대응 신뢰도 값들이 변경될 것인지를 결정하는 단계; 및
만일 변경이 결정되면 상기 입력/출력 모듈을 사용하여 경보(alert)를 보내는 단계를 더 포함하는,
방법. - 제1항에 있어서, 상기 질의를 생성하는 단계는:
상기 입력/출력 모듈을 통해서 상기 질의를 자유형식의 질의(a free-form query), 자유형식의 문장(a free-form statement), 및 키워드 검색(keyword search) 중 적어도 하나의 형식으로 수신하는 단계를 포함하는 단계들에 의해 실행되는,
방법. - 제7항에 있어서, 상기 의사결정-지원 시스템은 문제 사례 분석 모듈 및 질의 생성 모듈을 포함하고, 상기 방법은:
의미 개념들을 식별하기 위해, 상기 문제 사례 분석 모듈을 사용하여, 상기 문제 사례 정보를 자동으로 분석하는 단계; 및
상기 질의 생성 모듈을 사용하여 상기 의미 개념들을 사용하여 상기 질의를 확장하는 단계를 더 포함하는,
방법. - 제1항에 있어서, 상기 방법은:
선택된 증거 차원에 대하여, 상기 선택된 증거 차원을 지지하는(supporting) 각 증거(each piece of evidence)와 상기 증거에 대한 연관 출처(associated provenance)를 출력하는 단계를 더 포함하는,
방법. - 제9항에 있어서, 상기 방법은:
증거 차원의 수치(a numerical value of an evidence dimension)에 기여하는(contributing) 상기 증거 소스들로부터 선택된 증거(a selected piece of evidence)를 제거하는 단계;
상기 선택된 증거가 제거된 상기 증거 차원의 상기 수치를, 상기 질의-응답 모듈을 사용하여 재계산하는 단계(recalculating); 및
상기 질의-응답 모듈을 사용하여, 상기 재계산된 수치에 기초하여 응답의 새로운 신뢰도 값(a new confidence value of a answer)을 재계산하는 단계를 더 포함하는,
방법. - 제1항에 있어서, 상기 방법은:
상기 문제 사례 정보 내에 포함되어 있지 않은 상기 응답들에 관련된 정보를, 상기 질의-응답 모듈을 사용하여, 미싱 정보(missing information)로서 식별하는 단계; 및
상기 미싱 정보를 상기 문제 사례 정보에 추가하기 위한 요청을 출력하는 단계를 더 포함하는,
방법. - 제11항에 있어서, 상기 방법은:
상기 미싱 정보(missing information)가 응답들의 대응 신뢰도 값들에 영향을 주는 양(an amount)을, 상기 질의-응답 모듈을 사용하여, 식별하는 단계를 더 포함하는,
방법. - 시스템에 있어서, 상기 시스템은:
문제 사례 정보(problem case information)를 유지하는(maintaining) 제1 저장소(a first repository);
상기 제1 저장소에 동작적으로(operatively) 연결된 컴퓨터 프로세서; 및
상기 컴퓨터 프로세서에 동작적으로 연결된 제2 저장소를 포함하되,
상기 컴퓨터 프로세서는 상기 제1 저장소로부터 상기 문제 사례 정보를 수신하도록 구성되고;
상기 컴퓨터 프로세서는 상기 문제 사례 정보에 기초하여 질의(a query)를 생성하도록 구성되고;
상기 컴퓨터 프로세서는 상기 질의에 대한 복수의 응답들(a plurality of answers)을 생성하도록 구성되고;
상기 컴퓨터 프로세서는 상기 응답들의 각각에 대한 증거 소스들(evidence sources)로부터 다수의 증거 차원들(multiple evidence dimensions)에 대한 수치들을 계산하도록 구성되고;
상기 컴퓨터 프로세서는 각 증거 차원의 상기 수치들에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값들(corresponding confidence values)을 계산하도록 구성되고; 그리고
상기 컴퓨터 프로세서는 상기 질의들, 상기 응답들, 상기 대응 신뢰도 값들, 및 각 증거 차원의 상기 수치들을 상기 제2 저장소에 출력하도록 구성되는,
시스템. - 제13항에 있어서, 상기 문제 사례 정보에 기초하여 질의를 생성하기 위한 상기 컴퓨터 프로세서의 상기 구성은, 의미 개념들을 식별하여 상기 의미 개념들로부터 상기 질의를 생성하기 위해 상기 문제 사례 정보를 분석하도록 상기 컴퓨터 프로세서를 구성함으로써 실행되는,
시스템. - 제14항에 있어서, 상기 컴퓨터 프로세서는, 만일 새로운 문제 사례 정보가 수신되면,
상기 질의를 자동으로 생성하고, 상기 복수의 응답들을 자동으로 생성하고, 상기 응답들의 각각에 대한 증거 소스들로부터 다수의 증거 차원들에 대한 상기 수치들을 자동으로 계산하고, 그리고 각 증거 차원에 대한 상기 수치에 기초하여 상기 응답들의 각각에 대한 상기 신뢰도 값을 자동으로 계산하도록 더 구성되는,
시스템. - 제13항에 있어서, 상기 시스템은 영역 지식 콘텐츠(domain knowledge content)를 유지하는 제3 저장소를 더 포함하되, 상기 복수의 응답들을 생성하기 위한 상기 컴퓨터 프로세서의 상기 구성은, 상기 영역 지식 콘텐츠를 분석하도록 상기 컴퓨터 프로세서를 구성함으로써 실행되는,
시스템. - 제16항에 있어서, 상기 컴퓨터 프로세서는 만일 새로운 영역 지식이 상기 제3 저장소에 저장되어 있는 상기 영역 지식 콘텐츠에 추가되면 상기 제2 저장소에 저장되어 있는 복수의 미리 생성된 응답들과 그 대응 신뢰도 값들이 변경될 것인지를 결정하도록 더 구성되고, 상기 컴퓨터 프로세서는 만일 변경이 결정되면 경보를 보내도록 더 구성되는,
시스템. - 제13항에 있어서, 상기 질의를 생성하기 위한 상기 컴퓨터 프로세서의 상기 구성은, 상기 질의를 자유형식의 질의, 자유형식의 문장, 및 키워드 검색 중 적어도 하나의 형식의 입력으로서 상기 컴퓨터 프로세서가 수신하도록 구성함으로써 실행되는,
시스템. - 제13항에 있어서, 상기 컴퓨터 프로세서는 선택된 증거 차원을 지원하는 증거와 상기 증거에 대한 연관 출처를 출력하도록 더 구성되는,
시스템. - 제19항에 있어서, 상기 컴퓨터 프로세서는 증거 차원의 수치에 기여하는 상기 증거 소스들로부터 선택된 증거를 제거하고, 상기 선택된 증거가 제거된 상기 증거 차원의 상기 수치를 재계산하고, 그리고 상기 재계산된 수치에 기초하여 응답의 새로운 신뢰도 값을 재계산하도록 더 구성되는,
시스템. - 제13항에 있어서, 상기 컴퓨터 프로세서는 상기 문제 사례 정보 내에 포함되어 있지 않은 상기 응답들에 관련된 정보를 미싱 정보(missing information)로서 식별하고 상기 미싱 정보를 상기 문제 사례 정보에 추가하기 위한 요청을 출력하도록 더 구성되는,
시스템. - 제21항에 있어서, 상기 컴퓨터 프로세서는 상기 미싱 정보(missing information)가 응답들의 대응 신뢰도 값들에 영향을 주는 양을 식별하도록 더 구성되는,
시스템. - 컴퓨터 프로그램 제품에 있어서, 상기 컴퓨터 프로그램 제품은 컴퓨터 디바이스(a computerized device)에 의해 실행 가능한 명령들을 포함하는 컴퓨터 판독가능 프로그램 코드를 저장하는 컴퓨터 판독가능 스토리지 매체를 포함하되, 상기 컴퓨터 프로그램 코드는:
문제 사례 정보(problem case information)를 수신하는 입력/출력 모듈;
의미 개념들(semantic concepts)을 식별하기 위해 상기 문제 사례 정보를 분석하는 문제 사례 분석 모듈;
상기 의미 개념들로부터 질의(a query)를 생성하는 질의 생성 모듈(a question generation module); 및
상기 질의에 대하여 복수의 응답들(a plurality of answers)을 생성하는 질의-응답 모듈(a question generation module)을 포함하되,
상기 질의-응답 모듈은 상기 응답들의 각각에 대한 증거 소스들로부터 다수의 증거 차원들에 대한 수치들을 계산하고,
상기 질의-응답 모듈은 상기 질의-응답 모듈을 사용하여 각 증거 차원의 상기 수치에 기초하여 상기 응답들의 각각에 대한 대응 신뢰도 값들을 계산하고, 그리고
상기 입력/출력 모듈은 상기 질의들, 상기 응답들, 상기 대응 신뢰도 값들, 및 다수의 증거 차원들에 대한 상기 수치들을 출력하는,
컴퓨터 프로그램 제품.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161450273P | 2011-03-08 | 2011-03-08 | |
US61/450,273 | 2011-03-08 | ||
US13/077,464 US9002773B2 (en) | 2010-09-24 | 2011-03-31 | Decision-support application and system for problem solving using a question-answering system |
US13/077,464 | 2011-03-31 | ||
PCT/US2012/027942 WO2012122198A1 (en) | 2011-03-08 | 2012-03-07 | A decision-support application and system for problem solving using a question-answering system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130140847A true KR20130140847A (ko) | 2013-12-24 |
KR101555114B1 KR101555114B1 (ko) | 2015-09-22 |
Family
ID=46798539
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137025361A KR101555114B1 (ko) | 2011-03-08 | 2012-03-07 | 질의-응답 시스템을 사용하는 문제 해결을 위한 의사결정-지원 애플리케이션 및 시스템 |
KR1020137025364A KR101634425B1 (ko) | 2011-03-08 | 2012-03-07 | 질의-응답 시스템을 사용하는 의학적 감별진단 및 치료를 위한 의사결정-지원 애플리케이션 및 시스템 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137025364A KR101634425B1 (ko) | 2011-03-08 | 2012-03-07 | 질의-응답 시스템을 사용하는 의학적 감별진단 및 치료를 위한 의사결정-지원 애플리케이션 및 시스템 |
Country Status (3)
Country | Link |
---|---|
KR (2) | KR101555114B1 (ko) |
CA (2) | CA2843403C (ko) |
WO (2) | WO2012122198A1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017131325A1 (ko) * | 2016-01-26 | 2017-08-03 | 주식회사 솔트룩스 | 지식 베이스의 검증 및 교정 시스템 및 방법 |
KR20170107282A (ko) * | 2016-03-15 | 2017-09-25 | 한국전자통신연구원 | 자연어 이해 및 질의응답 기반의 의사결정 지원 장치 및 방법 |
KR102098255B1 (ko) * | 2018-11-30 | 2020-04-07 | 주식회사 솔트룩스 | 지식 임베딩 기반 지식 보강 시스템 및 방법 |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9002773B2 (en) | 2010-09-24 | 2015-04-07 | International Business Machines Corporation | Decision-support application and system for problem solving using a question-answering system |
US10734115B1 (en) | 2012-08-09 | 2020-08-04 | Cerner Innovation, Inc | Clinical decision support for sepsis |
US10431336B1 (en) | 2010-10-01 | 2019-10-01 | Cerner Innovation, Inc. | Computerized systems and methods for facilitating clinical decision making |
US11398310B1 (en) | 2010-10-01 | 2022-07-26 | Cerner Innovation, Inc. | Clinical decision support for sepsis |
US20120089421A1 (en) | 2010-10-08 | 2012-04-12 | Cerner Innovation, Inc. | Multi-site clinical decision support for sepsis |
US10628553B1 (en) | 2010-12-30 | 2020-04-21 | Cerner Innovation, Inc. | Health information transformation system |
US8856156B1 (en) | 2011-10-07 | 2014-10-07 | Cerner Innovation, Inc. | Ontology mapper |
US9058354B2 (en) * | 2012-01-26 | 2015-06-16 | University Of Rochester | Integrated multi-criteria decision support framework |
US10249385B1 (en) | 2012-05-01 | 2019-04-02 | Cerner Innovation, Inc. | System and method for record linkage |
US11894117B1 (en) | 2013-02-07 | 2024-02-06 | Cerner Innovation, Inc. | Discovering context-specific complexity and utilization sequences |
US10946311B1 (en) | 2013-02-07 | 2021-03-16 | Cerner Innovation, Inc. | Discovering context-specific serial health trajectories |
US10769241B1 (en) | 2013-02-07 | 2020-09-08 | Cerner Innovation, Inc. | Discovering context-specific complexity and utilization sequences |
US10483003B1 (en) * | 2013-08-12 | 2019-11-19 | Cerner Innovation, Inc. | Dynamically determining risk of clinical condition |
US11581092B1 (en) | 2013-08-12 | 2023-02-14 | Cerner Innovation, Inc. | Dynamic assessment for decision support |
JP6855244B2 (ja) | 2013-10-31 | 2021-04-07 | デックスコム・インコーポレーテッド | 連続的監視デバイスのための適応型インターフェース |
US9286153B2 (en) | 2013-12-12 | 2016-03-15 | International Business Machines Corporation | Monitoring the health of a question/answer computing system |
US9619513B2 (en) | 2014-07-29 | 2017-04-11 | International Business Machines Corporation | Changed answer notification in a question and answer system |
US9665564B2 (en) | 2014-10-06 | 2017-05-30 | International Business Machines Corporation | Natural language processing utilizing logical tree structures |
US9588961B2 (en) | 2014-10-06 | 2017-03-07 | International Business Machines Corporation | Natural language processing utilizing propagation of knowledge through logical parse tree structures |
US9715488B2 (en) | 2014-10-06 | 2017-07-25 | International Business Machines Corporation | Natural language processing utilizing transaction based knowledge representation |
US20160125751A1 (en) | 2014-11-05 | 2016-05-05 | International Business Machines Corporation | Answer management in a question-answering environment |
US10061842B2 (en) | 2014-12-09 | 2018-08-28 | International Business Machines Corporation | Displaying answers in accordance with answer classifications |
ITMI20142149A1 (it) | 2014-12-16 | 2016-06-16 | L I A Di Giuseppe Capasso | Apparato di diagnosi differenziale in medicina adattato per determinare la sequenza di test ottimale atta ad identificare una patologia secondo criteri di appropriatezza diagnostica |
US9916395B2 (en) | 2015-01-03 | 2018-03-13 | International Business Machines Corporation | Determining answer stability in a question answering system |
WO2016127089A1 (en) * | 2015-02-08 | 2016-08-11 | Sora Medical Solutions Llc | Comprehensive diagnosis and care system |
US9912736B2 (en) | 2015-05-22 | 2018-03-06 | International Business Machines Corporation | Cognitive reminder notification based on personal user profile and activity information |
US10169326B2 (en) | 2015-05-22 | 2019-01-01 | International Business Machines Corporation | Cognitive reminder notification mechanisms for answers to questions |
US10152534B2 (en) | 2015-07-02 | 2018-12-11 | International Business Machines Corporation | Monitoring a corpus for changes to previously provided answers to questions |
US10769185B2 (en) | 2015-10-16 | 2020-09-08 | International Business Machines Corporation | Answer change notifications based on changes to user profile information |
KR101880292B1 (ko) * | 2016-02-29 | 2018-08-17 | 경희대학교 산학협력단 | 공유 가능한 의학 지식을 생성하는 시스템 및 그 방법 |
CN107229622B (zh) * | 2016-03-23 | 2021-02-05 | 腾讯科技(北京)有限公司 | 一种信息处理方法及服务器 |
CN109960490B (zh) * | 2017-12-25 | 2024-01-02 | 上海智臻智能网络科技股份有限公司 | 生成智能问答系统的方法、装置、设备、介质及问答系统 |
WO2019122288A1 (en) * | 2017-12-22 | 2019-06-27 | Koninklijke Philips N.V. | Digital health proxy system and device |
US11386338B2 (en) * | 2018-07-05 | 2022-07-12 | International Business Machines Corporation | Integrating multiple domain problem solving in a dialog system for a user |
KR102260215B1 (ko) * | 2018-11-16 | 2021-06-03 | 이재용 | 인공지능으로 질병을 진단하고 질병정보와 진료기관 정보를 제공하는 의료 정보 제공 장치 및 방법 |
US10831989B2 (en) | 2018-12-04 | 2020-11-10 | International Business Machines Corporation | Distributing updated communications to viewers of prior versions of the communications |
KR102170206B1 (ko) * | 2018-12-27 | 2020-10-26 | 에스케이 주식회사 | 키워드와 관계 정보를 이용한 정보 검색 시스템 및 방법 |
US11763944B2 (en) * | 2019-05-10 | 2023-09-19 | Tencent America LLC | System and method for clinical decision support system with inquiry based on reinforcement learning |
US11580416B2 (en) | 2019-08-14 | 2023-02-14 | International Business Machines Corporation | Improving the accuracy of a compendium of natural language responses |
US11881309B2 (en) | 2019-11-22 | 2024-01-23 | Ecole Polytechnique | Real-time diagnosis aid method and decision-support for medical diagnosis to a user of a medical system |
US11730420B2 (en) | 2019-12-17 | 2023-08-22 | Cerner Innovation, Inc. | Maternal-fetal sepsis indicator |
AU2021327231A1 (en) | 2020-08-19 | 2023-04-27 | Recovery Exploration Technologies Inc. | Augmented intelligence for next-best-action in patient care |
CN112786124B (zh) * | 2020-12-30 | 2022-09-02 | 医渡云(北京)技术有限公司 | 一种问题排查方法、装置、存储介质及设备 |
US11869674B2 (en) | 2022-04-15 | 2024-01-09 | Recovery Exploration Technologies Inc. | Translation of medical evidence into computational evidence and applications thereof |
CN116933181B (zh) * | 2023-09-18 | 2024-02-02 | 中国人民解放军火箭军工程大学 | 等级不对称情况下的复杂装备质量状态认证方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL150591A0 (en) * | 2000-01-06 | 2003-02-12 | Igotpain Com Inc | System and method of decision making |
US20040122702A1 (en) * | 2002-12-18 | 2004-06-24 | Sabol John M. | Medical data processing system and method |
KR100737382B1 (ko) | 2006-05-01 | 2007-07-09 | 이경수 | 의료 진단 데이터 연산방법 |
US7899764B2 (en) * | 2007-02-16 | 2011-03-01 | Siemens Aktiengesellschaft | Medical ontologies for machine learning and decision support |
US20110004588A1 (en) * | 2009-05-11 | 2011-01-06 | iMedix Inc. | Method for enhancing the performance of a medical search engine based on semantic analysis and user feedback |
CN101996208B (zh) * | 2009-08-31 | 2014-04-02 | 国际商业机器公司 | 用于数据库语义查询回答的方法及系统 |
-
2012
- 2012-03-07 KR KR1020137025361A patent/KR101555114B1/ko active IP Right Grant
- 2012-03-07 WO PCT/US2012/027942 patent/WO2012122198A1/en active Application Filing
- 2012-03-07 WO PCT/US2012/027936 patent/WO2012122196A2/en active Application Filing
- 2012-03-07 CA CA2843403A patent/CA2843403C/en active Active
- 2012-03-07 CA CA2843405A patent/CA2843405C/en active Active
- 2012-03-07 KR KR1020137025364A patent/KR101634425B1/ko active IP Right Grant
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017131325A1 (ko) * | 2016-01-26 | 2017-08-03 | 주식회사 솔트룩스 | 지식 베이스의 검증 및 교정 시스템 및 방법 |
KR20170107282A (ko) * | 2016-03-15 | 2017-09-25 | 한국전자통신연구원 | 자연어 이해 및 질의응답 기반의 의사결정 지원 장치 및 방법 |
KR102098255B1 (ko) * | 2018-11-30 | 2020-04-07 | 주식회사 솔트룩스 | 지식 임베딩 기반 지식 보강 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2012122196A3 (en) | 2013-11-14 |
KR101634425B1 (ko) | 2016-07-08 |
CA2843405C (en) | 2020-12-22 |
KR20130140848A (ko) | 2013-12-24 |
CA2843405A1 (en) | 2012-09-13 |
CA2843403C (en) | 2020-11-24 |
WO2012122198A1 (en) | 2012-09-13 |
CA2843403A1 (en) | 2012-09-13 |
WO2012122196A2 (en) | 2012-09-13 |
KR101555114B1 (ko) | 2015-09-22 |
WO2012122198A9 (en) | 2013-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11163763B2 (en) | Decision-support application and system for medical differential-diagnosis and treatment using a question-answering system | |
KR101555114B1 (ko) | 질의-응답 시스템을 사용하는 문제 해결을 위한 의사결정-지원 애플리케이션 및 시스템 | |
US11182550B2 (en) | Cognitive building of medical condition base cartridges based on gradings of positional statements | |
US11942221B2 (en) | Disambiguation of ambiguous portions of content for processing by automated systems | |
US10607736B2 (en) | Extending medical condition base cartridges based on SME knowledge extensions | |
US11823798B2 (en) | Container-based knowledge graphs for determining entity relations in non-narrative text | |
US10971254B2 (en) | Medical condition independent engine for medical treatment recommendation system | |
US10818394B2 (en) | Cognitive building of medical condition base cartridges for a medical system | |
US11004550B2 (en) | Treatment recommendations based on drug-to-drug interactions | |
US20220059244A1 (en) | Finding Precise Causal Multi-Drug-Drug Interactions for Adverse Drug Reaction Analysis | |
US20180089383A1 (en) | Container-Based Knowledge Graphs for Determining Entity Relations in Medical Text | |
US20180121606A1 (en) | Cognitive Medication Reconciliation | |
US20180121605A1 (en) | Cognitive Medication Reconciliation | |
US20180121603A1 (en) | Identification of Related Electronic Medical Record Documents in a Question and Answer System | |
US20180096103A1 (en) | Verification of Clinical Hypothetical Statements Based on Dynamic Cluster Analysis | |
US11495332B2 (en) | Automated prediction and answering of medical professional questions directed to patient based on EMR | |
US20180211007A1 (en) | Assist Selection of Provider/Facility for Surgical Procedures Based on Frequency of Procedure, History of Complications, and Cost | |
US20180060503A1 (en) | Targeted Adjustment of Previous Insights Based on Changes to Positional Statements | |
US20180322251A1 (en) | Identifying Drug-to-Drug Interactions in Medical Content and Applying Interactions to Treatment Recommendations | |
Hisan et al. | Impact of Natural Language Processing on Healthcare Quality: A Review of Clinical and Public Health Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190829 Year of fee payment: 5 |