티스토리 뷰
기계 학습에서는 경험을 통해 학습하여 문제를 해결할 수 있는 능력을 컴퓨터에 제공하는 방법을 개발하고 연구합니다. 목표는 입력 데이터를 제공할 때 유용한 출력을 생성하도록 훈련할 수 있는 수학적 모델을 만드는 것입니다. 머신 러닝 모델은 학습 데이터의 형태로 경험을 제공하며 최적화 알고리즘을 통해 학습 데이터에 대한 정확한 예측을 생성하도록 조정됩니다. 모델의 주요 목표는 일반화할 수 있는 것입니다. 습득 한 전문 지식을 제공하고 새로운 보이지 않는 데이터에 대한 정확한 예측을 제공합니다. 모델의 일반화 능력은 일반적으로 별도의 데이터 세트, 검증 세트를 사용하여 훈련 중에 추정되며 모델의 추가 조정을 위한 피드백으로 사용됩니다. 학습 및 튜닝을 여러 번 반복한 후 최종 모델은 테스트 세트에서 평가되며, 보이지 않는 새로운 데이터에 직면했을 때 모델의 성능을 시뮬레이션하는 데 사용됩니다. 모델이 학습 중에 입력 데이터를 활용하는 방식에 따라 느슨하게 분류된 여러 종류의 기계 학습이 있습니다. 에서는 강화 학습 한 구조의 에이전트 어떤 목적 함수를 최적화하면서 시행착오를 통해 자신의 환경에서 배운다. 강화 학습의 유명한 최근 응용 프로그램이 AlphaGo 및 AlphaZero이다 , DeepMind에 의해 개발된 이동 플레잉 기계 학습 시스템. 에서 자율 학습 컴퓨터가 우리의 지도 않고 데이터에서 패턴을 폭로 역할을 수행합니다. 클러스터링이 대표적인 예입니다. 오늘날 대부분의 기계 학습 시스템은 지도 학습 클래스에 속합니다.. 여기에서 컴퓨터에는 이미 레이블이 지정되거나 주석이 추가된 데이터 세트가 제공되고 레이블이 지정된 데이터 세트에서 발견된 규칙을 기반으로 이전에 보지 못한 새로운 데이터 세트에 대해 올바른 레이블을 생성하도록 요청됩니다. 일련의 입력-출력 예제에서 전체 모델은 특정 데이터 처리 작업을 수행하도록 훈련되었습니다. 사람이 라벨링 한 데이터를 사용한 이미지 주석 (예 : 악성 종양에 따라 피부 병변 분류 또는 망막 안저 사진에서 심혈관 위험 요인 발견 )은 지도 학습을 사용하여 공격을 받는 다양한 의료 영상 관련 문제의 두 가지 예입니다. 머신 러닝은 오랜 역사를 가지고 있으며 많은 하위 분야로 나뉘어 있으며, 그중 딥 러닝이 현재 많은 관심을 받고 있습니다. 딥 러닝에 대한 우수하고 공개적으로 사용 가능한 개요 및 설문 조사가 많이 있습니다. 딥 러닝에 대한 짧은 일반 소개는 참조하십시오. 자세한 내용은 무료로 구할 수 있는 책을 참조하십시오. 9 의료 영상에 적용되는 딥 러닝에 대한 광범위한 개요를 참조하십시오. 우리는 현재 의료 영상에서 가장 영향력 있는 영역에 대한 유용한 지침이되기를 바라면서이 분야의 일부 필수 요소만을 언급할 것입니다. 인공 신경망 (ANN)은 1950 년대에 이미 도입된 가장 유명한 기계 학습 모델 중 하나이며 [40, Chapter 1.2] 이후 활발하게 연구되었습니다. 대략 신경망은 여러 개의 연결된 계산 단위 ( 뉴런 )로 구성되며 계층으로 배열됩니다. 데이터가 네트워크로 들어가는 입력 계층이 있고, 그다음에 는 신경망의 예측을 생성하는 출력 계층에서 끝나기 전에 데이터가 통과할 때 데이터를 변환하는 하나 이상의 숨겨진 계층이 있습니다. 네트워크를 통해 제공되는 레이블이 지정된 훈련 데이터 세트에서 패턴을 식별하여 유용한 예측을 출력하도록 네트워크를 훈련하고 출력을 목적 함수에 의해 실제 레이블과 비교합니다.. 훈련 중에 네트워크의 매개 변수 (각 뉴런의 강도)는 네트워크에 의해 식별된 패턴이 훈련 데이터에 대한 좋은 예측 결과를 얻을 때까지 조정됩니다. 패턴이 학습되면 네트워크를 사용하여 보이지 않는 새 데이터를 예측할 수 있습니다. 즉, 새로운 데이터로 일반화할 수 있습니다. ANN은 매우 유연하고 복잡한 문제를 모델링하고 해결할 수 있지만 학습하기가 어렵고 계산 비용이 많이 든다는 사실은 오랫동안 알려져 왔습니다. 11 이로 인해 실용성이 떨어졌고 사람들은 최근까지 다른 기계 학습 모델에 집중하게 되었습니다. 그러나 지금까지 인공 신경망은 머신 러닝에서 지배적인 방법 중 하나이며 가장 집중적으로 연구되고 있습니다. 이러한 변화는 빅 데이터의 성장 덕분입니다., 병렬 계산을 위한 강력한 프로세서 (특히 GPU), 네트워크를 구성하고 훈련하는 데 사용되는 알고리즘에 대한 몇 가지 중요한 조정, 사용하기 쉬운 소프트웨어 프레임 워크 개발. ANN에 대한 관심이 급증함에 따라 놀라운 속도의 개발이 이루어지며, 이는 또한 기계 학습의 다른 부분을 이 끕니다. 무료로 구할 수 있는 책인공 신경망에 대해 더 많이 배울 수 있는 많은 훌륭한 출처 중 두 가지입니다. 우리는 그것들이 어떻게 구성되고 훈련되는지에 대한 간단한 표시만 제공할 것입니다. 인공 신경망의 기본적 형태는 12 개 피드 포워드 신경망은 수학 함수를 매개 변수화 Y는 = F ( X , 입력 맵) X를 출력에 예를 : 비선형 변환의 개수를 통해 공급함으로써 F를 ( X ) = ( f n ∘ ∘ f 1 ) ( x ). 여기서 네트워크 계층이라고 하는 각 구성 요소 f k는 이전 구성 요소 출력의 단순 선형 변환과 비선형 함수로 구성됩니다.. 비선형 함수 k는 일반적으로 아래에서 설명하는 바와 같이 시그 모이 드 함수 또는 ReLU이고 k는 모델 가중치라고 하는 숫자의 행렬입니다. 훈련 단계에서 네트워크는 훈련 데이터를 받고 알려진 레이블과 일치하는 출력 계층에서 예측을 수행하는 작업을 수행하며, 네트워크의 각 구성 요소는 입력에 대한 적절한 표현을 생성합니다. 중간 표현을 가장 잘 활용하여 데이터의 복잡한 계층 적 표현을 형성하고 출력 레이어에서 올바른 예측으로 끝나는 방법을 배워야 합니다. 신경망을 훈련시키는 것은 네트워크의 출력을 최적화하기 위해 가중치를 변경하는 것을 의미합니다. 이것은 최적화 알고리즘을 사용하여 수행됩니다. 비용 함수 또는 손실함수라 고하는 출력의 정확성을 측정하는 함수에 대한 경사 하강 법. 훈련 신경망의 기본 아이디어는 간단합니다. 훈련 데이터가 네트워크를 통해 공급되면 체인 규칙을 사용하여 모든 가중치에 대한 손실 함수의 기울기를 계산하고 기울기 하강 법을 사용하여 이러한 가중치를 변경하여 손실을 줄입니다. 그러나 수천 또는 수백만 개의 매개 변수와 노드와 네트워크 출력 사이의 기하급수적인 경로가 있는 복잡한 네트워크에 직면했을 때 엄청난 계산 문제를 빠르게 해결합니다. 이러한 문제를 극복하기 위해 설계된 기술은 상당히 복잡해집니다.신경망 훈련과 관련된 기술 및 실제 문제에 대한 자세한 설명은 인공 신경망은 종종 그림 1 에서와 같이 노드의 네트워크로 묘사됩니다.