머신 러닝 및 신경망 - 페이지 42

 

강의 9 -- 몬테카를로 -- 필립 헤닉



ML 9의 수치 -- Monte Carlo -- Philipp Hennig

몬테카를로를 주제로 한 이 비디오에서 Philipp Hennig는 베이즈 정리를 사용하여 베이지안 추론과 관련하여 머신 러닝에서 통합이 어떻게 근본적인 문제인지 설명합니다. 그는 통합을 수행하는 특정 방법으로 Monte Carlo 알고리즘을 소개하고 방법의 간략한 역사를 제공합니다. 그는 또한 샘플 수의 증가에 따른 편향되지 않은 추정 및 분산 감소와 같은 몬테카를로 알고리즘의 속성에 대해 설명합니다. 또한 Hennig는 Metropolis-Hastings 알고리즘, Markov Chain Monte Carlo 및 Hamiltonian Monte Carlo를 자세히 살펴보며 각 알고리즘의 속성에 대한 개요와 확률 분포에서 샘플링할 때 작동 방식을 제공합니다. 궁극적으로 Hennig는 최적의 효율적인 결과를 얻기 위해 알고리즘을 맹목적으로 적용하기보다 알고리즘이 사용되는 이유를 이해하는 것이 중요하다고 지적합니다.

비디오의 두 번째 부분에서 Philipp Hennig는 고차원 분포를 위한 Monte Carlo 방법, 특히 자세한 균형을 깨는 U-turn 아이디어로 문제를 극복하는 No U-turn Sampler(NUTS) 알고리즘에 대해 설명합니다. Hennig는 이러한 알고리즘이 복잡하고 구현하기 까다롭지만 알고리즘을 효과적으로 사용하려면 이를 이해하는 것이 중요하다고 강조합니다. 그는 또한 Monte Carlo 방법을 사용하여 예상 값을 계산하는 자동적 접근 방식에 의문을 제기하고 임의성 없이 근사화하는 다른 방법이 있을 수 있다고 제안합니다. Hennig는 임의성의 개념과 한계, Monte Carlo 방법의 수렴률 부족에 대해 논의하고 결정론적 임의성에 의존하기보다는 기계 학습을 위한 다른 방법을 고려할 필요성을 제안합니다.

  • 00:00:00 이 섹션에서는 강사가 베이즈 정리를 사용하여 사후 조건부 분포를 계산하기 위해 베이지안 추론을 수행할 때 기계 학습의 근본적인 문제인 적분이라는 주제를 소개합니다. 그는 이 과정이 일부 조건부 분포의 기대값으로 계산되는 한계를 나타내는 적분을 포함한다고 설명합니다. 강사는 적분을 올바르게 수행하는 방법을 아는 것의 중요성을 강조하고 적분을 수행하는 구체적인 방법 중 하나로 Monte Carlo 알고리즘을 소개합니다. 그는 Monte Carlo의 간략한 역사를 설명하고 알고리즘을 맹목적으로 적용하는 것보다 알고리즘이 사용되는 이유를 이해하는 것이 왜 중요한지 반성합니다.

  • 00:05:00 이 섹션에서는 Philipp Hennig가 1940년대에 핵폭탄 설계를 지원하기 위해 몬테카를로 시뮬레이션이 어떻게 개발되었는지 이야기합니다. 문제는 폭발을 달성하기 위해 지오메트리를 최적화하는 것이었고 해결책은 몬테카를로 시뮬레이션을 사용하여 합계로 적분을 근사화하는 것이었습니다. 이를 위해 Fermi 아날로그 컴퓨터가 발명되었습니다. 이 컴퓨터는 두 개의 바퀴와 펜으로 구성되어 다이에서 뽑은 난수를 사용하여 중성자의 경로를 시뮬레이션합니다. 이 과정은 간단해 보이지만 이 방법은 다양한 분야의 몬테카를로 시뮬레이션을 개발하기 위한 첫 단계였습니다.

  • 00:10:00 이 섹션에서 몬테카를로 시뮬레이션의 개념은 분포에서 도출된 지점에서 함수의 평가에 대해 적분을 합으로 대체하여 기대값을 추정하는 방법으로 설명됩니다. 이것은 샘플 수가 증가함에 따라 분산이 감소하는 편향되지 않은 추정기이므로 샘플 수의 제곱근에 대해 1처럼 떨어지는 오류가 발생합니다. 통계학자들은 이것이 편향되지 않은 추정기에 대한 최적의 속도라고 주장하지만, 수치 수학자들은 이 속도가 상당히 느리다고 생각하며 다항식 속도가 선호됩니다. 그러나 이 방법은 분산이 기본 분포의 차원에 의존하지 않기 때문에 차원에서 자유롭다는 장점이 있습니다.

  • 00:15:00 이 섹션에서 Philipp Hennig는 몬테카를로 문제의 차원성을 둘러싼 논쟁을 다룹니다. 문제의 차원과 관련될 수 있는 p 아래에 f의 분산이 있지만 차원에 의존하지 않는다는 주장이 있습니다. 그러나 특정 구조화된 문제에서 분산은 차원의 함수로 기하급수적으로 빠르게 폭발할 수 있습니다. 그럼에도 불구하고 Monte Carlo 샘플링의 가장 흥미로운 응용 프로그램은 문제의 차원에 둔감하여 고차원 문제의 계산을 허용합니다. Hennig는 또한 몬테카를로 샘플링을 사용하여 Pi를 계산하는 고전적인 예에 대해 논의합니다. 여기에서 Pi는 샘플 수의 역제곱근으로 주어진 비율로 진실을 향해 수렴합니다.

  • 00:20:00 이 섹션에서 Philipp Hennig는 적분 근사를 위한 Monte Carlo 방법에 대해 설명합니다. 그는 분포에서 많은 수의 샘플을 추출하고 해당 시뮬레이션에서 예상 값을 계산하여 이 방법이 작동하는 방식을 설명합니다. 이는 대략적인 추정이 필요할 때 좋은 솔루션이 될 수 있지만 매우 정확한 답변에는 실용적이지 않습니다. Hennig는 또한 거부 샘플링 및 중요한 샘플링과 같이 작업하기 어려운 분포에서 샘플을 구성하는 방법에 대해 이야기하지만 이러한 방법은 고차원에서 잘 확장되지 않는다고 언급합니다.

  • 00:25:00 이 섹션에서는 고차원 분포를 기반으로 임의 변수를 생성하는 아이디어에 대해 설명합니다. 이를 위한 표준 방법은 유한한 메모리를 가지고 반복적으로 전진하는 구조를 기반으로 하는 마르코프 연쇄 몬테카를로(Markov chain Monte Carlo)라고 합니다. 이 유형의 한 가지 방법은 Markov 체인을 구성하고 제안 분포 및 도출된 분포와 제안된 분포 사이의 비율을 사용하여 새 위치로 이동하는 것을 포함하는 Metropolis Hastings 알고리즘입니다. 이 알고리즘은 1950년대에 핵무기의 기하학적 구조를 최적화하기 위해 노력했던 핵 물리학자 그룹에 의해 발명되었으며 오늘날에도 여전히 널리 사용되고 있습니다.

  • 00:30:00 이 섹션에서는 Philipp Hennig가 확률 분포에서 샘플링하는 데 사용되는 Markov 체인 Monte Carlo 알고리즘 유형인 Metropolis-Hastings 알고리즘에 대해 설명합니다. 그는 알고리즘이 제안 분포에서 추출하고 확률 밀도에 따라 이를 수락하거나 거부하여 포인트를 생성하는 방법을 보여줍니다. Hennig는 또한 샘플링되는 분포를 효과적으로 탐색하기 위해 적절하게 조정된 제안 분포를 사용하는 것의 중요성을 강조합니다. Metropolis-Hastings 알고리즘에는 상세한 균형과 ergodicity라는 두 가지 중요한 속성이 있어 장시간 알고리즘을 실행하는 프로세스가 샘플링되는 분포에 의해 주어진 고정 분포를 생성하도록 합니다.

  • 00:35:00 이 섹션에서 Philipp Hennig는 적어도 하나의 고정 분포를 갖는 알고리즘의 속성에 대해 논의합니다. 이 분포는 비주기적이고 양의 반복을 갖는 시퀀스입니다. 미래 시점. 알고리즘에는 다른 고정 분포에 끼일 수 있는 구조가 없어야 합니다. 예를 들어 Metropolis Hastings는 이 두 가지 속성을 충족하는 알고리즘입니다. 그러나 단순한 Monte Carlo에 비해 속도가 더 나 빠지고 로컬 임의 작업 동작을 가질 수 있습니다. 알고리즘에 의해 추출된 유효 샘플의 수는 분포의 완전히 반대쪽에 있는 두 샘플 사이의 자유 구간 길이 또는 자유 시간 길이와 관련이 있습니다.

  • 00:40:00 이 섹션에서는 발표자가 Monte Carlo 방법과 이를 평가하는 방법에 대해 설명합니다. 그는 분포의 한쪽 끝에서 다른 쪽 끝으로 이동하려면 길고 작은 길이 척도 비율의 제곱에 비례하는 많은 수의 단계를 사용해야 하므로 수렴률이 여전히 제곱근의 0이 되도록 해야 한다고 설명합니다. t이지만 앞에 거대한 배수가 있습니다. 그는 Monte Carlo의 문제는 분포의 모양이 무엇인지 알지 못하고 참조로 빨간색 점을 사용하지 않고 이러한 파란색 점의 통계만 보는 경우 이것이 경우입니다. 마지막으로 그는 Markov Chain Monte Carlo의 "원자"라고 주장하는 Hamiltonian Monte Carlo에 대해 이야기하며 x의 확률 분포 P에서 도출하는 데 사용되는 일반적인 알고리즘입니다.

  • 00:45:00 이 섹션에서는 Philipp Hennig가 확률 분포에서 샘플을 추출하는 데 사용되는 방법인 Hamiltonian Monte Carlo(HMC)의 개념을 설명합니다. HMC에서는 기존 변수의 모멘텀을 나타내는 새 변수와 함께 변수의 양이 두 배가 됩니다. 그런 다음 운동량 변수는 H가 에너지를 나타내고 K가 운동 에너지를 나타내는 상미분 방정식을 정의하는 함수에 따라 전개됩니다. X의 시간 미분은 P에 대한 H의 편미분으로 주어지고 P의 시간 미분은 X에 대한 H의 편미분을 뺀 값으로 주어집니다. X 및 P, X에 대한 분포에서 약간 끌어옵니다.

  • 00:50:00 이 섹션에서 Philipp Hennig는 수렴률이 2차인 Hoyn의 방법을 사용하여 주어진 상태의 확률 도함수에 대한 상미분 방정식(ODE) 솔버를 구현하는 방법에 대해 설명합니다. 그런 다음 그는 이것을 소프트웨어 라이브러리를 사용하는 것과 비교하고 솔버가 해밀턴 시스템의 역학을 시뮬레이션하는 방법을 보여줍니다. 해밀턴 시스템은 모양의 로그에 의해 주어진 전위에서 움직이는 질량 1의 입자이며 궁극적으로 좋은 샘플을 생성합니다. 시뮬레이션하는 데 다소 일정한 수의 단계가 필요하지만 Hennig는 Metropolis-Hastings 방식이 항상 수락하고 알고리즘이 짧은 길이 스케일의 제곱에 대해 긴 길이 스케일에 의해 주어진 거리에서 이동하지 않는 단계를 만든다는 점에 주목합니다. 제곱근, 궁극적으로 더 효율적인 알고리즘이 됩니다.

  • 00:55:00 이 섹션에서는 Philipp Hennig가 Hamiltonian Monte Carlo 알고리즘의 작동 방식을 설명합니다. 이 알고리즘은 하나의 일정한 전위 선에서 X와 P에 대한 공동 분포에서 가져옵니다. 전위선은 초기 모멘텀에 의해 선택되며, 매 단계마다 모멘텀이 변경되어 다른 전위선으로 이동합니다. Hennig는 알고리즘을 최적화 문제와 비교하고 알고리즘이 효과적으로 작동하기 위해 적절하게 선택되어야 하는 LeapFrog 단계 및 델타 T라는 두 개의 매개변수가 있음을 언급합니다. 매개변수가 잘못 설정되면 시뮬레이션은 실제로 아무데도 이동하지 않고 앞뒤로 이동하여 계산 리소스를 낭비할 수 있습니다.

  • 01:00:00 이 섹션에서 Philipp Hennig는 고차원 분포를 위한 Monte Carlo 방법의 U턴 및 NUTS(No U-turn Sampler) 알고리즘의 아이디어에 대해 설명합니다. 유턴 아이디어의 문제점은 세부적인 균형을 깨고 알고리즘이 멀어지고 다시 돌아오지 않게 만든다는 것입니다. NUTS 알고리즘은 두 개의 Markov 체인을 반대 방향으로 시작하고 하나가 돌아서기 시작할 때까지 기다린 다음 임의로 하나를 선택하여 이를 극복합니다. 이는 세부 균형을 만족하며 많은 Markov chain Monte Carlo 알고리즘의 핵심 구성 요소입니다. Hennig는 이러한 알고리즘이 복잡하고 구현하기 까다롭지만 알고리즘을 효과적으로 사용하려면 이를 이해하는 것이 중요하다고 강조합니다.

  • 01:05:00 이 섹션에서 발표자는 Monte Carlo 방법을 사용하여 베이지안 추론에서 예상 값을 계산하는 자동적 접근 방식에 대해 논의하고 낮은 수렴률과 편향되지 않은 추정기의 필요성을 강조합니다. 그러나 화자는 편향되지 않은 추정기와 무작위성의 필요성에 대해 먼저 의문을 제기하고 무작위성 없이 관심의 양을 근사화하는 다른 방법이 있을 수 있음을 제안합니다. 연사는 또한 임의성의 개념과 Turing 기계에서 계산된 시퀀스 및 유한 시퀀스와의 관계에 대해 다룹니다.

  • 01:10:00 이 섹션에서 Philipp Hennig는 다양한 숫자 시퀀스를 통해 무작위성의 개념에 대해 설명합니다. 그는 주사위에 의해 생성된 것과 같은 일부 시퀀스는 실제로는 무작위가 아니지만 문화적으로 무작위로 받아들여졌다고 주장합니다. 반면 파이와 같은 무리수는 무작위가 아니지만 구조가 결여되어 있습니다. 또한 Hennig는 시드가 난수 생성기에 의해 생성된 시퀀스의 무작위성을 변경할 수 있는 방법을 설명합니다. 마지막으로 그는 난수를 생성하는 물리적 기계가 무작위성을 테스트했지만 궁극적으로 무작위성 다이 하드 테스트에 실패한 방법에 대해 설명합니다.

  • 01:15:00 이 섹션에서 Philipp Hennig는 임의성과 그것이 기계 학습, 특히 Monte Carlo 방법과 어떻게 관련되는지에 대해 설명합니다. 그는 무작위성이 정보 부족과 관련이 있다고 설명합니다. 그래서 무언가를 아는 사람이 중요한 암호화와 같은 분야에 적용할 수 있습니다. 현대 기계 학습에 사용되는 난수 종류에 대해 이러한 정보 부족에 대해 이야기하는 것은 잘못된 것입니다. Monte Carlo 방법을 사용할 때 Monte Carlo 방법에 의존하는 과학 논문의 저자는 종종 보는 사람에게 정보를 숨깁니다. 편파적이기 때문이 아니라 사용 및 구현이 쉽기 때문에 사용합니다.

  • 01:20:00 이 섹션에서 Philipp Hennig는 MCMC(Markov chain Monte Carlo)가 어떻게 실행되는지, 수렴률을 알지 못하더라도 고차원 문제에 비교적 잘 작동하는지 설명합니다. MCMC는 난수 사용에 의존하는 이론적 보장이 있는 유일한 알고리즘이지만, 이 접근 방식으로 생성된 샘플은 비교할 다른 방법이 없을 때 유용합니다. Hennig는 또한 MCMC가 근본적으로 매우 느리고 힘들며 적분을 근사화하는 더 좋은 방법이 있을 수 있다고 설명합니다. 그는 다음 주에 살펴볼 알고리즘이 일반적으로 저차원 문제에만 작동할 것이라고 경고하고 결정론적 무작위성에 의존하기보다는 기계 학습을 위한 다른 방법을 고려할 필요성을 제안합니다.
 

강의 10 -- 베이지안 구적법 -- Philipp Hennig



ML 10의 수치 -- Bayesian Quadrature -- Philipp Hennig

이 비디오에서 Philipp Hennig는 베이지안 구적법을 기계 학습 통합의 계산 문제에 대한 효율적인 방법으로 설명합니다. 그는 실수 값 함수를 고유하게 식별할 수 있지만 질문에 직접 대답하기 어려운 방법을 설명합니다. 베이지안 구적법(Bayesian Quadrature)은 알 수 없는 대상과 계산할 수 있는 양에 우선순위를 두어 적분을 찾는 문제를 추론 문제로 취급한 다음 베이지안 추론을 수행하는 추론 방법입니다. Hennig는 또한 이 접근 방식을 Monte Carlo 거부 및 중요도 샘플링과 비교하여 베이지안 구적법이 기존 구적법 규칙을 능가하는 방법을 보여줍니다. 이 강의에서는 베이지안 구적법에 대한 칼만 필터 알고리즘과 고전 적분 알고리즘과의 연결을 수치적 방법에서 불확실성 추정 사용에 대한 논의와 함께 다룹니다. 마지막으로 Hennig는 수치 계산의 사회적 구조가 알고리즘 설계에 어떤 영향을 미치는지 탐구하고, 특정 문제에 대한 계산 방법을 설계하는 방법과 확률론적 기계 학습이 실시간으로 오류를 추정할 수 있는 방법에 대해 논의합니다.

비디오의 두 번째 부분에서 Philipp Hennig는 Bayesian 방식으로 무언가를 계산하기 위해 적분 및 알고리즘 값과 같이 우리가 관심을 갖는 수량에 대한 사전 분포를 포함하는 Bayesian 구적법에 대해 설명합니다. 이 방법은 고전적인 방법으로 식별할 수 있는 추정치 주변의 사후 추정치와 불확실성 추정치를 모두 할당합니다. Hennig는 알고리즘이 관찰된 기능에 어떻게 적응하는지 설명하고 다음에 평가할 위치를 결정하기 위해 활성 학습 절차를 사용합니다. 이 알고리즘은 더 높은 차원에서 작동할 수 있으며 사소하지 않은 스마트 수렴 속도를 가집니다. 또한 고전적인 알고리즘과 구적 규칙의 한계에 대해 논의하고 적응형 추론을 통한 해결 방법을 제안합니다.

  • 00:00:00 이 섹션에서 Philipp Hennig는 효율적인 방법으로 베이지안 구적법에 중점을 두고 기계 학습 통합의 계산 문제에 대해 설명합니다. 그는 두 함수 X 빼기 사인 제곱 3x와 X 빼기 x 제곱의 곱인 x의 f라는 실수 값 함수를 설명하며 일련의 문자를 적어 고유하게 식별할 수 있습니다. Hennig는 우리가 이 함수에 대해 모든 것을 알고 있지만, 이 함수에 대한 마이너스 3에서 플러스 3에 대한 정적분의 값과 같이 그것에 대한 모든 질문에 직접 답하기는 어렵다고 설명합니다. 새로운 C 라이브러리.

  • 00:05:00 이 섹션에서 Philipp Hennig는 미지의 물체와 계산할 수 있는 양에 우선 순위를 두어 적분을 찾는 문제를 추론 문제로 취급한 다음 베이지안 구적법을 수행하는 추론 방법인 베이지안 구적법에 대해 설명합니다. 추론. 사전을 입력함으로써 우리는 유한한 불확실성으로 시작하여 가능한 계산 결과의 좁은 범위로 이어져 계산에 일반적으로 적용됩니다. 이 접근 방식은 덜 효율적인 Monte Carlo 거부 및 중요도 샘플링과 대조됩니다. 추정된 함수는 숫자의 함수로 표시할 수 있으며 베이지안 구적법이 적분을 풀기 위한 실행 가능한 옵션임을 시사합니다.

  • 00:10:00 Philipp Hennig의 강연 중 이 섹션에서 그는 확률론적 기계 학습을 사용하여 함수의 적분을 추정하는 방법으로 베이지안 구적법에 대해 설명합니다. 그는 이 접근 방식을 Monte Carlo 방법과 비교하고 가우시안 프로세스가 함수에 대한 우선 순위로 사용된다고 설명합니다. 특정 x값에서 함수를 평가하여 함수의 적분인 잠재 변수를 추정할 수 있습니다. Hennig는 또한 이 접근 방식이 기존 구적 규칙을 능가하는 방법을 보여줍니다.

  • 00:15:00 이 섹션에서 Philipp Hennig는 우리가 배우려는 함수에 대한 적분을 근사화하기 위해 커널에 대한 적분을 계산하는 방법을 설명합니다. 사전 평균 함수와 사전 공분산 함수를 선택하여 재생산 커널 힐버트 공간에 적분을 계산하는 문제를 포함할 수 있습니다. 다양한 지점에서 함수 평가를 포함하는 계산을 통해 커널에 대한 적분 계산을 포함하는 커널 평균 임베딩으로 끝납니다. 따라서 닫힌 형태로 적분을 계산할 수 있는 커널을 선택해야 하며 Hennig는 Weiner 프로세스 커널을 예로 선택했습니다.

  • 00:20:00 이 섹션에서는 Philipp Hennig가 Bayesian Quadrature 프로세스에 대해 설명합니다. 이 프로세스에는 이전에 Vino 프로세스를 사용하고, 비대칭적이고 비정적인 가우시안 프로세스를 사용하고, 양의 가우시안 프로세스를 얻기 위해 일련의 함수 값을 조건화하는 작업이 포함됩니다. 이 과정을 이용하면 Monte Carlo 적분보다 훨씬 좋은 결과를 얻을 수 있습니다. 예를 들어, 10^-7 상대 오류를 달성하려면 베이지안 구적법은 200회 미만의 평가가 필요한 반면 Monte Carlo 통합은 10^11 이상의 평가가 필요합니다.

  • 00:25:00 이 섹션에서는 발표자가 Monte Carlo 시뮬레이션과 비교하여 Bayesian Quadrature의 속도에 대해 설명합니다. Monte Carlo 시뮬레이션은 저렴하고 구현하기 쉬운 반면 Bayesian Quadrature는 상대적으로 빠르며 Kalman 필터로 구현될 수 있으므로 기계 학습 모델에서 사용할 수 있습니다. 발표자는 프로세스의 두 상태 사이의 선형 맵과 적분을 인코딩할 수 있는 방법을 설명하여 확률적 미분 방정식을 이산화하고 적분에 대한 업데이트를 계산할 수 있도록 합니다. 그런 다음 강의는 Bayesian Quadrature의 속성에 대해 더 자세히 논의하는 것으로 이동합니다.

  • 00:30:00 이 섹션에서 화자는 함수의 적분을 평가하기 위해 베이지안 구적법에 대한 칼만 필터 알고리즘을 소개합니다. 이 알고리즘은 행렬 A와 Q를 정의하여 선형 시불변 시스템의 결정론적 부분과 확률론적 부분을 나타내고, H와 R을 관측 모델을 나타냅니다. 사후 평균은 커널 함수의 가중 합이며 Kalman 필터는 세제곱 스텝 길이에 따라 증가하는 적분의 불확실성으로 적분의 추정치를 업데이트합니다. 알고리즘은 선형 시간으로 실행되며 사후 평균은 함수 값을 보간하는 조각별 선형 함수입니다. 적분에 대한 추정치는 각 블록의 평균값에 대한 합계입니다.

  • 00:35:00 이 섹션에서 Hennig는 베이지안 구적법의 개념과 고전적 통합 알고리즘인 사다리꼴 규칙과의 연결을 설명합니다. 그는 사다리꼴 규칙이 복잡한 가우시안 프로세스 추론 체계의 사후 평균으로 볼 수 있으며 이 특정 통찰력이 필수적이고 일반적인 결과라고 지적합니다. Hennig는 수치 계산, 최적화, 선형 대수학 또는 미분방정식 풀이 등 다양한 고전 알고리즘이 모두 베이지안 사후 추정과 어떻게 연결되어 있는지에 대해 추가로 논의합니다. 또한 그는 수치 계산은 불확실성이 있는 수치 수량에 대한 최소 제곱 추정을 포함하기 때문에 가우시안 추론으로 간주되어야 한다고 강조하고 수치 방법을 다룰 때 불확실성 추정을 사용하는 것이 유리할 수 있다고 제안합니다.

  • 00:40:00 이 섹션에서 Philipp Hennig는 수치 알고리즘의 의사 결정 측면과 수행할 계산을 결정하기 때문에 AI 알고리즘과 유사한 점에 대해 설명합니다. 발생하는 한 가지 질문은 베이지안 추론 문제에서 찾을 수 있는 평가 포인트와 그에 대한 답을 어디에 둘 것인지입니다. 확실성을 향해 수렴하는 확률 분포를 정의함으로써 확실성 또는 불확실성을 설명하는 양을 찾아 조작할 수 있습니다. 적분에 대한 가능한 분포의 분산의 경우 목표는 이를 최소화하는 것입니다. 이는 모든 델타 J를 델타 n 빼기 1로 설정하여 통합 노드의 정규 그리드를 표시함으로써 수행할 수 있습니다. 또한 통합 도메인의 양쪽 끝에 통합 노드가 있어야 하는 필요성에 대해 설명합니다.

  • 00:45:00 이 섹션에서 발표자는 베이지안 구적법 알고리즘을 사용하여 사전에 가우시안 프로세스를 기반으로 평가 노드를 배치할 위치에 대한 디자인을 얻는 방법을 설명합니다. 알고리즘은 사용된 사전에 따라 다른 설계를 제공할 수 있으며 평가 노드는 최대 정보 이득이라는 간단한 정책에 따라 선택할 수 있습니다. 사다리꼴 규칙은 베이지안 추정치로 생각할 수 있습니다. 여기서 사후 평균은 피적분보다 앞서 특정 가우시안 프로세스에서 발생하는 환자 추정치입니다. 알고리즘은 오류 추정치를 제공하지만 추정치가 정확하지 않으며 실제 오류와 추정 오류 사이에 상당한 차이가 있습니다. 그러나 사다리꼴 규칙은 수백 년 동안 사용되어 왔으며 알고리즘에 반드시 결함이 있는 것은 아닙니다. 사다리꼴 규칙에는 질문해야 할 몇 가지 속성이 있을 수 있습니다.

  • 00:50:00 이 섹션에서 Philipp Hennig는 분산 추정치와 베이지안 구적법과의 관계에 대해 설명합니다. 그는 오차 추정치가 예상 오차 제곱근의 제곱근인 표준 편차라고 설명합니다. 일정한 단계 크기를 사용하면 합계 내에 "i"가 없기 때문에 합계를 쉽게 계산할 수 있습니다. 정리는 이 사다리꼴 규칙에 대한 수렴 비율이 N 제곱 분의 1의 O라고 말합니다. 그러나 수학에는 숨겨진 가정이 있습니다. Wiener 프로세스에서 가져온 샘플 경로는 거의 모든 곳에서 미분할 수 없기 때문에 매우 거칠게 동작하므로 사전 가정이 유효하지 않습니다.

  • 00:55:00 이 섹션에서 Philipp Hennig는 수치 알고리즘을 사용하여 거칠고 미분할 수 없는 함수를 통합하는 문제에 대해 설명합니다. 그는 사다리꼴 규칙과 같은 매우 거친 함수에서 작동하도록 설계된 알고리즘이 적분하는 함수가 훨씬 더 부드럽다면 가능한 만큼 효율적이지 않을 수 있다고 설명합니다. Hennig는 알고리즘이 많은 종류의 문제에 대해 작동하도록 설계된 수치 계산의 사회적 구조가 개별 문제에 대해 특히 잘 작동하지 않는 지나치게 일반적인 방법으로 이어질 수 있다고 제안합니다. 그러나 그는 이러한 알고리즘의 작동 방식을 이해하고 나면 특정 문제에 대한 계산 방법을 설계하는 것이 충분히 중요하다고 지적합니다. 그는 또한 확률론적 기계 학습의 아이디어를 사용하여 알고리즘이 실행되는 동안 알고리즘의 오류 규모를 추정할 수 있는 방법에 대해 설명합니다.

  • 01:00:00 이 섹션에서 Philipp Hennig는 일부 데이터가 주어진 공분산 행렬에서 알려지지 않은 상수의 스케일을 추정하는 방법에 대해 설명하고 켤레 사전의 개념을 소개합니다. 그는 지수 계열 확률 분포의 경우 가우시안 분포의 분산을 추정하는 데 사용할 수 있는 감마 사전과 같은 공액 사전이 항상 있다고 설명합니다. Hennig는 기네스의 양조업자로 일하면서 이 방법을 생각해냈고 맥주 통에서 샘플의 분포를 추정해야 했던 William C Lee Gossett의 이야기를 들려줍니다. 이 방법은 사전과 가능성을 함께 곱하고 결과를 정규화하여 관찰 또는 함수 값을 기반으로 하는 새 매개변수를 사용하여 감마 분포와 동일한 대수적 형식을 얻습니다.

  • 01:05:00 이 섹션에서 Philipp Hennig는 매개변수의 사후 농도와 학생 T 분포를 추정하는 방법을 설명합니다. 이 방법을 Bayesian Quadrature라고 하며 척도는 넓게 시작하여 더 많은 관측치가 수집될수록 더 집중됩니다. 결과는 플롯에 표시되며, 처음에는 관찰 증가에 따라 분포가 축소됩니다. Hennig는 이 부드러운 함수에 대한 이전 가정이 이 문제에 대해 너무 보수적이며 Legendre 다항식으로 확장되는 기능 세트가 있는 가우시안 구적법과 같이 매우 잘 작동하는 통합을 위한 훨씬 더 스마트한 알고리즘이 있다고 지적합니다.

  • 01:10:00 이 섹션에서 Hennig는 -1에서 1까지의 도메인과 같이 제한된 도메인에서 적분을 수행하는 고전적인 방법인 베이지안 구적법에 대해 설명합니다. 그는 다음과 같이 매우 빠르게 수렴하는 해당 구적법 규칙이 있다고 설명합니다. 수렴의 초다항식 가중치이지만 이것은 실제로 매끄러운 함수에 대해서만 작동합니다. 오른쪽 그래프에 표시된 녹색 선은 특정 종류의 가우시안 사전 가정 하에서 일부 사후 평균 추정치에 해당할 수도 있습니다. 이 기사의 결과는 주로 수치 통합에 대한 두 가지 다른 접근 방식 간의 관계를 명확히 하는 이론적 관심을 위한 것이지만, 이러한 종류의 문제에 매우 적합하고 다양한 종류의 문제에 대해 서로 다른 기반을 가진 많은 구조와 함께 제공되는 고전적인 알고리즘이 있습니다. 통합 문제. 이러한 구적 규칙은 직교 다항식과 가중 함수를 사용하여 특정 형식으로 작성될 수 있다고 가정하여 적분을 근사화하고 W 및 적분 영역에 따라 Phi에 대한 특정 선택이 있습니다.

  • 01:15:00 이 섹션에서 발표자는 다양한 유형의 체비쇼프 다항식과 일변량 함수의 수치 적분 계산에 사용하는 방법에 대해 설명합니다. 스피커는 또한 환자 추론 규칙에 대한 사전을 지정할 때 통합 도메인, 함수 모양 및 사전을 고려하는 것이 중요한 이유를 설명합니다. 발표자는 고전적인 적분 알고리즘과 구적법 규칙이 일종의 가우시안 사후 평균 추정치로 생각할 수 있으며 이러한 알고리즘에 의한 선택은 정보 이론적인 주장에 의해 동기가 부여될 수 있다고 지적합니다. 발표자는 고전적인 구적 규칙이 1차원 적분에 대해 잘 작동하지만 고차원 문제에는 Monte Carlo 알고리즘과 같은 더 복잡한 접근 방식이 필요하다고 말하면서 결론을 내립니다.

  • 01:20:00 이 섹션에서 발표자는 이전 섹션에서 차원 스케일링과 관련하여 표시된 방법의 한계에 대해 논의합니다. 이러한 방법은 평가의 메쉬를 생성해야 하기 때문에 차원이 기하급수적으로 감소하는 경향이 있습니다. 즉, 포인트로 도메인을 커버해야 합니다. 가우시안 프로세스가 사전 프로세스로 사용되고 사후 불확실성이 표시된 숫자에 의존하지 않고 평가가 이루어진 경우에만 문제가 됩니다. 결과적으로 이러한 통합 방법은 비적응적이어서 더 높은 차원에서 확장성을 제한합니다. 이 문제를 극복하기 위해서는 적응형 추론을 통해 일부 포인트가 다른 포인트보다 더 유익하다는 사실을 추론할 수 있는 새로운 알고리즘이 필요합니다.

  • 01:25:00 이 섹션에서 Philipp Hennig는 음수가 아닌 값을 인코딩하기 위한 가우시안 프로세스의 한계에 대해 논의하고 실제 함수를 제곱하는 새 함수를 정의하여 해결 방법을 제안합니다. 결과 분포는 가우시안이 아니며 가우시안 프로세스에 의해 근사될 수 있는 확률적 프로세스에 의해 근사됩니다. 결과 알고리즘은 Wasabi라고 불리며 Warp Sequential Active Bayesian Integration의 약자입니다. 이는 큰 함수 값이 예상되는 곳에 적응적으로 불확실성을 추가하여 대략적인 수치 알고리즘을 구축할 수 있는 확률 공식입니다. 파란색의 효용 함수는 함수 값에 대한 사후 불확실성을 나타냅니다.

  • 01:30:00 이 섹션에서는 Philipp Hennig가 수치 통합을 위한 알고리즘인 Bayesian Quadrature의 개념에 대해 설명합니다. Hennig는 알고리즘이 관찰된 기능에 어떻게 적응하는지 설명하고 다음에 평가할 위치를 결정하기 위해 능동 학습 절차를 사용합니다. 이 알고리즘은 더 높은 차원에서 작동할 수 있으며 사소하지 않은 스마트 수렴 속도를 가집니다. Hennig는 또한 이 알고리즘을 Monte Carlo 알고리즘과 비교하고 사전 지식이 알고리즘의 성능을 향상시킬 수 있다고 주장합니다. 또한 그는 크리스마스 이후에 논의될 몬테카를로를 넘어서는 더 나은 알고리즘의 가능성을 암시합니다.

  • 01:35:00 이 섹션에서 Philipp Hennig는 베이지안 방식으로 무언가를 계산하기 위해 적분 및 알고리즘 값과 같이 우리가 관심을 갖는 양에 대한 사전 분포를 포함하는 베이지안 구적법에 대해 설명합니다. 이 방법은 고전적인 방법으로 식별할 수 있는 추정치 주변의 사후 추정치와 불확실성 추정치를 모두 할당합니다. 오류 추정치가 나쁘면 계산에 대한 확률론적 관점이 틀렸다는 것을 의미하는 것이 아니라 이전 가정 세트가 나쁘다는 것을 의미합니다. 더 많은 사전 지식을 사용하고 수치 알고리즘을 자율적 에이전트로 취급함으로써 더 많은 정보를 추출하고 알고리즘을 더 빠르고 더 잘 작동하도록 만들 수 있습니다.
 

강의 11 --딥러닝을 위한 최적화 -- 프랭크 슈나이더



ML 11의 수치 --딥 러닝을 위한 최적화 -- Frank Schneider

Frank Schneider는 신경망 훈련의 복잡성과 올바른 최적화 방법 및 알고리즘 선택의 중요성을 강조하면서 딥 러닝을 위한 최적화 문제에 대해 논의합니다. 그는 사용할 수 있는 방법의 수가 압도적으로 많고 서로 다른 알고리즘을 비교하고 벤치마킹하는 데 어려움이 있음을 지적합니다. Schneider는 대규모 언어 모델의 성공적인 교육에 대한 실제 사례와 모델을 성공적으로 교육하기 위한 기본이 아닌 학습률 일정 및 비행 중 변경의 필요성을 제공합니다. 슈나이더는 사용자에게 이러한 방법을 사용하는 방법과 하이퍼파라미터가 훈련 프로세스에 미치는 영향에 대한 더 많은 통찰력을 제공하는 것뿐만 아니라 실무자가 특정 사용 사례에 가장 적합한 방법을 선택하는 데 도움이 되는 벤치마킹 연습을 생성하는 것의 중요성을 강조합니다. 또한 Alpha와 같은 새로운 방법과 이를 활용하여 신경망의 교육 프로세스를 조정하는 방법에 대해서도 설명합니다.

딥 러닝을 위한 최적화 수치에 대한 비디오의 두 번째 부분에서 Frank Schneider는 "Deep Debugger" 도구 Cockpit을 소개합니다. 이 도구는 데이터 버그 및 모델 블록과 같은 교육 프로세스의 문제를 감지하고 수정하는 추가 도구를 제공합니다. 그는 최적의 하이퍼파라미터를 위한 데이터 정규화의 중요성, 학습 속도와 테스트 정확도 사이의 관계, 확률론으로 신경망을 훈련시키는 문제에 대해 설명합니다. 슈나이더는 학생들이 기울기를 분포로 고려하고 장기적으로 더 나은 자율적 방법을 개발함으로써 신경망 훈련을 개선하기 위해 노력할 것을 권장합니다.

  • 00:00:00 이 섹션에서 Frank Schneider는 딥 러닝 최적화라는 주제를 소개하고 신경망 교육과 관련된 문제에 대한 개요를 제공합니다. 그는 신경망을 훈련시키는 방법에 대한 단순한 질문처럼 보일 수 있지만 실제로는 하드웨어 및 소프트웨어 고려 사항을 포함하여 여러 가지 방법으로 대답할 수 있다고 설명합니다. 그러나 강의의 주요 초점은 신경망을 훈련하는 데 사용되는 방법과 알고리즘에 있으며 Schneider는 만능 솔루션은 없다고 강조합니다. 그는 대규모 언어 모델을 교육하는 Midi 그룹의 실제 사례를 제공하여 모델을 성공적으로 교육하려면 기본이 아닌 학습률 일정과 학습률에 대한 비행 중 변경이 필요함을 보여줍니다. 전반적으로 Schneider의 강의는 신경망 훈련의 복잡성과 올바른 최적화 방법 및 알고리즘을 신중하게 선택하는 것의 중요성을 강조합니다.

  • 00:05:00 이 섹션에서 연사는 OpenAI에서 제공하는 대형 언어 모델 교육 전용 로그북의 예를 인용하여 신경망을 효율적으로 교육하는 문제에 대해 논의합니다. 연사는 현재 몇 가지 지침과 직관이 있지만 신경망을 훈련시키는 효율적인 방법이 없다고 언급합니다. 강의는 신경망 훈련이 왜 그렇게 어려운지 이해하고 상황을 개선하기 위해 무엇을 할 수 있는지에 초점을 맞출 것입니다. 연사는 현재 수많은 최신 방법이 있고 이러한 방법 중 어느 것이 가장 효율적인지 불분명하기 때문에 이것이 일반적인 강의 구조와 다를 것이라고 지적합니다.

  • 00:10:00 이 섹션에서 연사는 기계 학습이 주로 최적화된다는 오해에 대해 논의합니다. 최적화에는 손실 환경에서 최소값을 검색하는 것이 포함되지만 기계 학습의 목표는 교육 데이터에 가장 적합하고 새 데이터에 잘 일반화되는 함수를 찾는 것입니다. 이는 모델의 예측과 실제 출력 간의 차이를 정량화하는 손실 함수를 사용하여 수행됩니다. 실제 데이터 분포를 알 수 없는 경우가 많기 때문에 모델은 유한한 데이터 샘플에 대해 학습되며 최적화 프로세스는 경험적 손실에 대해 작동합니다. 연사는 딥 러닝이 더 높은 차원의 풍경과 표현적인 가설로 인해 더 복잡하다고 강조합니다.

  • 00:15:00 이 섹션에서 Frank Schneider는 최적화되는 양(경험적 손실)이 알고리즘이 실제로 관심을 갖는 양(실제 손실)과 같지 않기 때문에 기계 학습이 단순한 최적화가 아니라고 설명합니다. 과대적합 및 일반화는 모델이 교차 엔트로피 손실에 대해 학습되지만 번역 품질에 대해 평가되는 번역 작업에서와 같이 기차에서 테스트로 이동하는 것보다 실제로 더 복잡합니다. 그 결과 사람들은 이전 기울기를 고려하고 미래에 어떻게 행동해야 하는지 이해하기 위해 확률적 경사하강법, 운동량 분산, RMS prop 및 원자와 같은 다양한 방법을 개발했습니다. 딥 러닝을 위한 알고리즘을 최적화하고 교육하는 데 사용할 수 있는 방법은 총 150가지가 넘습니다.

  • 00:20:00 이 섹션에서 연사는 선택할 수 있는 100개 이상의 방법과 함께 신경망 훈련에 사용할 수 있는 압도적인 수의 최적화 방법에 대해 논의합니다. 문제는 방법을 선택하는 것뿐만 아니라 이를 효과적으로 사용하는 방법도 있습니다. 예를 들어, SGD나 Adam과 같은 최적화 방법을 선택하더라도 튜닝하기 어려울 수 있는 학습률 및 엡실론과 같은 하이퍼파라미터를 결정해야 합니다. 연사는 어떤 방법이 필요하고 개선되었는지 이해하기 위해 적절한 벤치마크가 필요하며 현재의 과제는 딥 러닝의 맥락에서 "더 나은"이 무엇을 의미하는지 정의하는 것이라고 제안합니다. 전반적으로 사용자에게 이러한 방법을 사용하는 방법과 하이퍼파라미터가 훈련 프로세스에 미치는 영향에 대한 더 많은 통찰력을 제공하는 데 초점을 맞춰야 합니다.

  • 00:25:00 이 섹션에서 Frank Schneider는 강화 문제, GAN 및 대규모 언어 모델에 대한 최적화와 같은 딥 러닝 훈련 알고리즘을 비교할 때 발생하는 문제에 대해 설명합니다. 확률을 설명하기 위해 이러한 방법을 여러 번 실행해야 할 수 있으므로 성능 차이가 중요한지 여부를 결정하기가 어려워집니다. 모든 범용 방법에 대해 훈련을 여러 번 반복해야 하므로 모든 사례를 테스트하는 것은 비용과 시간이 많이 소요될 수 있습니다. 학습에 사용되는 방법은 여러 문제를 테스트할 때 분석해야 하며 하이퍼 매개변수를 변경해야 하므로 비용이 훨씬 더 많이 듭니다. 또한 Schneider는 SGD와 Adam이 정확한 매개변수 세트를 지정하지 않고는 직접 비교할 수 없는 알고리즘 제품군이라고 강조합니다.

  • 00:30:00 이 섹션에서 Frank Schneider는 딥 러닝을 위한 최신 교육 방법을 식별하는 프로세스에 대해 설명합니다. 사용할 수 있는 최적화 방법이 많기 때문에 간단한 2차 문제에서 대규모 이미지 분류 및 순환 신경망 모델에 이르는 8가지 유형의 문제에 대해 15가지 최적화 방법만 테스트하도록 제한해야 했습니다. 다양한 시나리오를 시뮬레이션하기 위해 그들은 하이퍼파라미터 튜닝을 위한 예산이 서로 다른 네 가지 설정에서 이러한 최적화 방법을 테스트했습니다. 기본적으로 높은 매개변수를 사용하는 원샷 튜닝부터 더 많은 리소스를 사용할 수 있는 업계 실무자를 위한 더 큰 예산까지입니다. 목표는 실무자가 특정 사용 사례에 가장 적합한 방법을 선택할 수 있도록 다양한 시나리오에서 가장 잘 수행된 최적화 방법을 결정하는 것이었습니다.

  • 00:35:00 이 섹션에서는 Frank Schneider가 딥 러닝 모델의 최적화 프로세스에 대해 설명합니다. 그는 최적의 최적화 방법을 찾기 위해 15개의 최적화 방법과 4개의 학습률 일정이 있기 때문에 50,000회 이상의 개별 실행을 수행해야 했다고 설명합니다. 슈나이더는 여러 가지 방법이 서로 다른 테스트 문제에서 잘 수행되었기 때문에 딥 러닝을 위한 명확한 최신 교육 방법이 없다고 지적합니다. 그러나 Adam은 지속적으로 좋은 결과를 보였고 Adam에서 파생된 다른 방법은 성능을 크게 향상시키지 못했습니다. 전반적으로 벤치마킹 작업은 현재 모든 딥 러닝 모델에 적용되는 명확한 최적화 방법이 없음을 보여주었습니다.

  • 00:40:00 이 섹션에서 발표자는 사용 가능한 다양한 방법과 명확한 교육 프로토콜의 부족으로 인해 신경망을 교육하는 가장 효과적인 방법을 결정하는 데 어려움이 있음을 논의합니다. 연사는 알고리즘 변경으로 인한 신경망 훈련 속도 향상을 측정하기 위한 경쟁인 알고리즘 작업 그룹에서 ml Commons Benchmark 생성에 대해 논의합니다. 목표는 신경망 훈련 속도를 높이기 위해 보다 효율적인 알고리즘을 구축하는 것입니다. 발표자는 또한 이러한 방법을 사용하는 방법에 대한 사용 가능한 정보의 부족에 대해 논의하고 모든 것을 자동으로 수행할 수 있는 더 나은 방법을 궁극적으로 구축하기 위해 사용자를 돕기 위해 디버깅 도구를 만드는 데 추가 정보를 사용할 수 있다고 제안합니다.

  • 00:45:00 이 섹션에서 발표자는 단계를 수행하기 전에 교육 데이터 세트의 개별 샘플을 선택하여 대부분의 기계 학습 모델이 경험적 그래디언트를 근사화하는 방법에 대해 설명합니다. 미니배치 그래디언트 또는 경험적 그래디언트는 실제 그래디언트의 샘플이며 개별 그래디언트에 대한 평균은 실제 그래디언트의 추정치를 제공하지만 추정기의 분산은 PyTorch에서 사용할 수 없습니다. 그러나 배낭과 같은 패키지를 사용하여 사용자는 개별 기울기와 분산에 액세스할 수 있습니다. 이 추가 정보는 학습률을 높일지 줄일지 결정하는 것과 같이 신경망에 대한 교육 프로세스를 조정하는 데 활용할 수 있습니다. 스피커는 두 개의 손실 곡선이 동일하게 보일 수 있는 예를 제공하지만 손실 환경의 최적화는 두 가지 완전히 다른 일이 발생하는 것을 보여줍니다.

  • 00:50:00 이 섹션에서 연사는 손실 곡선이 신경망이 훈련되고 있는지 여부를 어떻게 보여줄 수 있는지에 대해 논의하지만 그것을 개선하기 위해 왜 또는 무엇을 해야 하는지에 대해서는 설명하지 않습니다. 손실 환경에는 수천만 개의 차원이 있으므로 조사하는 것이 거의 불가능합니다. 그러나 화자는 신경망의 최적화 절차를 특성화하는 데 도움이 되는 알파라고 하는 양을 소개합니다. 알파 값은 네트워크가 스테핑하는 방향의 기울기를 관찰하여 네트워크가 언더스테핑, 최소화 또는 오버슈팅하는지 여부를 결정합니다. 이는 손실 지형이 올라가고 있는지 내려가고 있는지를 보여줍니다.

  • 00:55:00 이 섹션에서는 Frank Schneider가 신경망을 최적화하면서 Alpha를 계산하는 방법을 설명합니다. 알파는 신경망을 최적화하기 위해 모델이 움직이는 방향으로 이전 섹션에서 설명한 스칼라 값입니다. Schneider는 알파 스칼라 수량은 해당 방향에서 관찰된 손실과 비교하여 단계의 크기를 기반으로 한다고 설명합니다. 음수 Alpha 값은 언더스테핑을 의미하고 양수 값은 오버스테핑을 의미하며 하나는 계곡의 다른 쪽으로 직접 전환함을 의미합니다. Schneider는 또한 정보를 의미 있는 보고서로 압축하여 개발자가 기존 프로그래밍과 유사한 딥 러닝용 디버깅 도구를 만드는 방법을 설명합니다.

  • 01:00:00 이 섹션에서 Frank Schneider는 "Cockpit" 도구를 사용하여 "Deep Debugger"의 개념을 소개합니다. 이 도구는 비행기 조종사와 같은 추가 도구로 시청자의 훈련 과정을 강화합니다. Schneider는 Cockpit이 학습 프로세스에서 데이터 버그와 같은 문제를 감지하고 수정하는 데 도움이 될 수 있는 단계 크기, 거리, 그래디언트 규범 및 그래디언트 테스트와 같은 신경망 학습에 대한 새로운 관점을 제공할 수 있는 방법을 보여줍니다. 추가 장비를 통해 Cockpit은 사용자에게 관련 정보를 제공하고 필수 성능 플롯을 보완할 수 있습니다.

  • 01:05:00 이 섹션에서 연사는 딥 러닝에서 정규화된 데이터와 원시 데이터를 사용하는 것이 신경망의 성능과 최적의 하이퍼파라미터에 미치는 영향에 대해 논의합니다. 픽셀 값이 0에서 255 사이인 원시 데이터는 덜 동작하는 그래디언트 요소 히스토그램으로 이어져 최적의 하이퍼파라미터가 될 수 없습니다. 그러나 시각적으로 데이터가 동일하게 보이기 때문에 데이터 정규화를 쉽게 놓칠 수 있습니다. 훈련에 영향을 미칠 수 있는 또 다른 문제는 유사한 기울기 요소 히스토그램을 가지고 있음에도 불구하고 하나의 네트워크는 잘 훈련되고 다른 네트워크는 그렇지 않은 모델 블록입니다. Cockpit을 사용하면 네트워크의 각 계층에 대한 히스토그램을 보고 모델 전체의 퇴화를 확인할 수 있습니다. 이는 시행착오를 통해 찾기 어려운 모델 버그를 식별하는 데 도움이 됩니다. 마지막으로, 하이퍼파라미터 튜닝을 위해 Cockpit을 사용하면 새로운 연구와 방법에 대한 더 나은 이해로 이어질 수 있습니다.

  • 01:10:00 이 섹션에서는 Frank Schneider가 딥 러닝을 위한 최적화와 학습 속도, 알파 값 및 테스트 정확도 사이의 관계에 대해 설명합니다. 그는 학습 속도가 클수록 알파 값이 커지는 경향이 있는데, 이는 오버슈팅을 의미하고 잠재적으로 너무 큰 단계를 수행할 가능성이 있지만 가장 성능이 좋은 실행은 일반적으로 양의 알파 영역에 있다고 설명합니다. 이는 신경망 훈련에서 각 단계에서 최소화하는 것이 항상 최선이 아닐 수 있으며 최상의 성능을 얻으려면 오버슈팅이 필요하다는 것을 알려줍니다. Schneider는 또한 최적의 결과를 달성하기 위해 지역적 단계와 글로벌 단계 사이의 균형을 찾는 것의 중요성을 설명하는 토론토 대학의 논문 사례를 공유합니다.

  • 01:15:00 이 섹션에서 Frank Schneider는 신경망 훈련이 따라야 할 명확한 프로토콜이 없는 어려운 작업임을 인정합니다. 또한 그는 딥 러닝의 확률이 이 문제의 주요 원인이라고 믿으며, 이는 훈련과 최적화가 서로 다른 두 가지로 이어집니다. 그러나 그는 기울기를 표준 편차, 분산 및 신뢰도를 설명하는 분포로 생각하면 더 나은 도구를 구축하고 장기적으로 더 나은 자율 방법을 개발할 수 있다고 제안합니다. Schneider는 관심 있는 학생들이 신경망 훈련을 개선하는 데 도움을 줄 것을 권장합니다.
 

강의 12 -- 딥러닝을 위한 2차 최적화 -- Lukas Tatzel



ML 12의 수치 -- 딥러닝을 위한 2차 최적화 -- Lukas Tatzel

이 비디오에서 Lukas Tatzel은 딥 러닝을 위한 2차 최적화 방법과 잠재적 이점에 대해 설명합니다. 그는 2D에서 Rosenberg 함수의 예를 사용하여 SGD, Adam 및 LBFGS의 세 가지 최적화 방법의 궤적과 수렴률을 비교합니다. Tatzel은 SGD의 불안정한 동작이 LBFGS의 잘 알려진 단계에 비해 더 느린 수렴을 만든다고 지적합니다. 그는 최적화를 위한 더 빠른 방법으로 Newton 단계를 소개하고 조건 수에 대한 의존성과 같은 제한 사항에 대해 설명합니다. Tatzel은 조건이 나쁜 문제를 처리하기 위한 Hessian에 대한 근사치로서 GGN(일반화 가우스-뉴턴 행렬)의 개념도 설명합니다. 또한 신뢰 영역 문제, 비볼록 목적 함수를 처리하는 방법, 2차 함수를 최소화하기 위해 CG를 사용하는 Hessian-free 접근 방식에 대해 설명합니다.

비디오의 두 번째 부분에서는 BFGS 및 LBFGS, Hessian-free 최적화 및 KFC를 포함하여 딥 러닝을 위한 2차 최적화 기술을 살펴봅니다. 발표자는 Hessian-free 접근 방식이 Jacobian Vector 제품을 사용하여 모델을 선형화하는 반면 KFC는 공식 정보 메트릭을 기반으로 하는 대략적인 곡률이라고 설명합니다. 그러나 확률론과 편향은 이러한 방법에서 발생할 수 있으며 이러한 문제를 해결하기 위해 감쇠가 권장됩니다. 발표자는 분포와 같은 더 풍부한 수량을 사용하여 업데이트를 수행할 수 있는 특수 알고리즘의 사용을 제안하고 확률론의 근본적인 문제가 해결되지 않은 상태로 남아 있다고 지적합니다. 전반적으로 2차 최적화 방법은 딥 러닝 문제에 대한 부분적인 솔루션을 제공합니다.

  • 00:00:00 이 섹션에서 Lukas Tatzel은 비용이 많이 들고 지루한 딥 러닝 최적화 프로세스를 위한 잠재적 솔루션으로 2차 최적화 방법을 소개합니다. 그는 2D에서 Rosenberg 함수의 예를 사용하여 세 가지 옵티마이저(SGD, Adam 및 LBFGS)의 궤적과 수렴 속도를 비교합니다. 그는 SGD의 불안정한 동작이 10^-8의 허용오차에 도달하는 데 10단계 미만이 필요한 LBFGS의 잘 알려진 단계에 비해 더 느린 수렴을 만들어 단계 측면에서 뿐만 아니라 런타임에서도 더 빠르다고 지적합니다. 아담과 SGD에 비해. Tatzel은 이러한 방법을 딥 러닝에 적용할 수 있는지에 대한 질문을 제기하고 작동 방식과 잠재력을 탐구합니다.

  • 00:05:00 이 섹션에서 Lukas Tatzel은 C 차원의 벡터를 예측하고 이를 실제 레이블과 비교하여 손실 함수를 계산하는 딥 러닝 최적화의 기본 사항을 설명합니다. 딥 러닝의 목표는 경험적 위험을 최소화하는 네트워크 매개변수 벡터 Theta의 구성을 찾는 것입니다. 이를 위해 사용되는 수치적 방법에는 Monte Carlo 추정기를 사용하여 유한 데이터에 대한 그래디언트 추정치를 계산하는 확률적 그래디언트 디센트(SGD)가 포함됩니다. 그러나 그래디언트 기반 방법은 최대 방향 곡률과 최소 방향 곡률의 비율인 조건수에 민감합니다.

  • 00:10:00 이 섹션에서 Lukas Tatzel은 그래디언트 기반 방법이 딥 러닝의 나쁜 조건 문제에 어떻게 민감한지 설명합니다. 그는 조건 수가 크면 그래디언트 기반 방법에 문제가 될 수 있으며 이로 인해 변환 속도가 느려질 수 있다고 설명합니다. 그래디언트 기반 방법의 업데이트를 개선하기 위해 Tatzel은 각각의 역 곡률을 사용하여 큰 곡률 방향과 작은 곡률 방향 모두에서 그래디언트 크기를 재조정할 것을 제안합니다. 이를 통해 2차 방법을 도입하여 조건 수에 대한 종속성을 줄이거나 제거할 수 있습니다.

  • 00:15:00 이 섹션에서 Lukas Tatzel은 딥 러닝의 2차 최적화에 대해 논의하고 뉴턴 단계의 개념을 소개합니다. 이 방법은 Hessian이 양의 정부호로 가정되는 2차 함수를 사용하여 현재 반복에서 손실 함수를 근사화하는 것을 포함합니다. 그래디언트를 계산하고 0으로 설정하면 뉴턴 단계를 유도하여 최소화 목적으로 사용할 수 있습니다. 이 방법은 특정 상황에서 그래디언트 기반 방법보다 훨씬 빠를 수 있으며 대상 함수가 두 번 미분 가능하고 Hessian이 Lipschitz 연속인 경우 로컬 2차 수렴을 달성할 수 있습니다. Tatzel은 선형 및 2차 수렴을 시각적으로 비교하여 Newton 방법이 조건이 좋지 않은 문제에 대해 강력하기 때문에 특정 상황에서 정말 빠를 수 있음을 보여줍니다.

  • 00:20:00 이 섹션에서 Lukas Tatzel은 딥 러닝을 위한 2차 최적화 방법과 일반적으로 사용되지 않는 이유에 대해 설명합니다. 2차 방법은 그래디언트 기반 방법보다 빠를 수 있지만 볼록하지 않은 대규모 문제를 계산하고 저장하기 어려울 수 있는 Hessian 행렬에 대한 액세스가 필요합니다. 또한 Hessian 계산에서 확률을 처리하면 이러한 방법의 성능에 영향을 줄 수 있습니다. Tatzel은 계속해서 이러한 문제를 해결할 수 있는 방법을 설명하고 다양한 방법의 개념에 대한 개요를 제공합니다.

  • 00:25:00 이 섹션에서 Lukas Tatzel은 딥 러닝을 위한 2차 최적화와 Newton 업데이트 방법의 한계에 대해 설명합니다. 그는 일정한 곡률 Lambda를 갖는 2차 함수인 Tau에 대한 함수의 2차 도함수 계산을 시연합니다. 고유벡터에 따른 곡률이 고유값이며 곡률이 음수이면 이차 방정식은 아래에서 제한되지 않으므로 Newton 업데이트 방법이 의미가 없습니다. 이 문제를 해결하기 위해 Tatzel은 GGN(일반화 가우스-뉴턴 행렬)을 도입했습니다. 이는 Hessian에 대한 양의 준정부호 근사이며 이를 대체할 수 있습니다. 그는 매개변수 벡터와 모델 결과 사이의 분할에 변경 규칙을 적용하여 손실 함수에서 GGN을 도출합니다.

  • 00:30:00 이 섹션에서 Lukas Tatzel은 딥 러닝 모델을 위한 2차 최적화의 개념에 대해 설명합니다. 그는 제품 규칙과 작동 방식, 체인 규칙을 적용하는 동안 행렬의 도함수를 계산하는 방법을 설명합니다. 그런 다음 Tatzel은 모델의 곡률을 무시하는 양의 정부호 행렬인 GGN과 Theta에 대한 모델의 2차 도함수를 포함하는 Hessian에 대해 설명합니다. 그는 GGN과 Hessian을 비교하고 GGN이 양의 정부호이고 대칭적이어서 딥 러닝 모델의 최적화에 유용한 도구임을 보여줍니다.

  • 00:35:00 이 섹션에서 Lukas Tatzel은 Hessian과 GGN(일반화 가우스-뉴턴) 알고리즘이 양의 준정부호인지 여부를 결정하는 방법에 대해 설명합니다. 모든 관련 손실 함수에 대해 Hessian은 양의 준정부호입니다. 손실 함수가 모델의 출력과 실제 레이블 간의 제곱 노름으로 계산되는 손실 함수인 경우 Hessian은 스칼라 곱하기 항등 행렬이므로 양의 정부호가 됩니다. Lukas는 잘 정의된 GGN 단계를 정의하는 데 사용할 수 있는 Fischer 정보 매트릭스에 대해서도 설명합니다. 이 경우 GGN 알고리즘은 분포 공간에서 가장 가파른 하강법이며 여기서 모수 공간은 두 분포 사이의 거리로 측정됩니다.

  • 00:40:00 이 섹션에서 Lukas Tatzel은 딥 러닝을 위한 2차 최적화의 신뢰 영역 문제를 설명합니다. 볼록한 경우에는 2차 모델이 임의로 잘못되어 일부 신뢰 반경 내에 있도록 반복 업데이트를 감쇠하고 제한해야 하는 문제가 여전히 있습니다. 곡률 행렬에 델타 시간 아이덴티티를 추가하면 수정된 뉴턴 스텝이 생성되고 댐핑을 통해 업데이트가 얼마나 보수적인지 제어할 수 있습니다. 반경을 선택할 때 예상 손실 감소와 실제 손실 감소 사이의 감소 비율을 기준으로 L-BFGS 휴리스틱을 사용하여 직접 감쇠 작업을 하는 것이 더 쉽습니다.

  • 00:45:00 비디오의 이 섹션에서 Lukas Tatzel은 ggn 및 균열과 같은 양의 준정부호 곡률 행렬을 계산하여 딥 러닝에서 비볼록 목적 함수를 처리하는 방법에 대해 설명합니다. 이러한 행렬을 해석하고 유한 데이터에 대해 편향되지 않은 추정치를 제공하는 것이 가능합니다. 리빙 백 마크와 같은 댐핑 휴리스틱을 사용하여 보수적인 업데이트를 제어할 수 있습니다. 그러나 이러한 거대한 곡률 행렬을 반전시키는 것은 저장 공간의 한계로 인해 문제가 됩니다. 이 문제를 해결하기 위해 낮은 순위 근사, 반복 방법 및 구조화된 근사와 같은 수치 대수학의 아이디어를 차용할 수 있습니다. 그런 다음 Tatzel은 BFGS의 핵심 아이디어에 대해 논의합니다. BFGS는 기울기 관찰에서 역 헤시안이 어떻게 생겼는지 추론하는 것을 목표로 기울기 관찰에서 역 헤시안에 대한 근사치를 점진적으로 학습합니다.

  • 00:50:00 이 섹션에서 Lukas Tatzel은 딥 러닝에 2차 최적화를 사용하는 아이디어를 설명합니다. 2차 도함수는 기울기에 대한 차분 근사를 취하여 구한 다음 이를 시컨트 방정식을 사용하여 다차원 사례로 전달합니다. 목표는 역 헤세 행렬을 근사화하는 것이므로 실제 역 헤세 행렬의 속성을 취하여 근사치가 동일한 속성을 갖도록 해야 합니다. 업데이트에는 이전 근사값과 벡터 SK 및 yk만 포함됩니다. 근사값은 고정된 크기 l의 고정 창을 사용하여 저장되며, 이를 통해 여전히 좋은 곡률 추정치를 얻을 수 있습니다.

  • 00:55:00 이 섹션에서 Lukas Tatzel은 딥 러닝을 위한 2차 최적화 방법을 소개하며 특히 Hessian-free 접근 방식에 중점을 둡니다. 이 접근 방식은 2차 함수를 최소화하기 위해 CG를 사용하고 행렬-벡터 곱만 필요하므로 곡률 행렬을 명시적으로 저장하지 않고도 효율적인 계산이 가능합니다. GGn은 곡률 메트릭으로 사용되며 Monte Carlo 추정을 사용하여 주어진 입력-출력 쌍에 대해 매트릭스를 계산할 수 있습니다. Jacobian을 벡터와 효율적으로 곱하기 위한 핵심 아이디어는 Jacobian 벡터 곱을 방향 도함수로 대체하는 것입니다. 이를 통해 행렬을 명시적으로 구성하지 않고도 제품을 효율적으로 계산할 수 있습니다.

  • 01:00:00 이 섹션에서 발표자는 딥 러닝을 위한 2차 최적화, 특히 Hessian-Free 최적화 및 KFC 기술에 대해 논의합니다. Hessian-Free 최적화는 F at theta + Delta Theta by F of theta + Jacobian times Delta Theta를 근사화하고 Jacobian Vector 곱을 사용하여 모델을 선형화하는 것과 관련됩니다. 그러나 이 접근법은 수치적으로 불안정하므로 야코비안 벡터 곱에 대한 근사치가 대신 사용됩니다. 반면에 KFC는 블록 대각선 근사와 예상 및 크로니카 제품 작업 교환의 두 가지 근사를 포함하는 공식 정보 메트릭을 기반으로 한 근사 곡률입니다. 블록-대각선 구조는 행렬의 반전을 사소하게 만들고, 두 벡터에 대한 연대 곱을 계산하기 어렵기 때문에 예상의 근사가 합리적입니다.

  • 01:05:00 이 섹션에서 Lukas Tatzel은 딥 러닝을 위한 2차 최적화에 사용되는 곡률 행렬에 액세스하고 반전하는 세 가지 접근 방식에 대해 설명합니다. 첫 번째 방법은 BFGS 및 LBFGS로, Hessian의 동적 저하 근사를 사용하며 작은 결정론적 문제에 대한 기본 선택입니다. 두 번째 방법은 Hessian-free 옵티마이저로, Newton 단계와 유사하지만 메모리가 거의 필요하지 않고 순차적인 작업이 더 많이 필요합니다. 그러나 배치 Norm 레이어를 사용하는 더 큰 미니 배치 크기에는 문제가 있습니다. 마지막 방법은 Hessian 정보 메트릭의 경량 표현이며 불확실성 정량화에 널리 사용되는 KFC입니다. K-Fik 옵티마이저는 제한된 메모리를 처리할 때 권장됩니다. 블록의 더 작은 구성 요소를 저장하고 반전하는 것이 전체 매트릭스에서 동일한 작업을 수행하는 것보다 쉽고 빠르기 때문입니다.

  • 01:10:00 이 섹션에서 Lukas Tatzel은 Hessian을 반전하고 기울기에 적용하는 것과 관련된 Newton 단계를 계산할 때 확률 문제에 대해 설명합니다. Hessian 및 Gradient의 추정치만 있기 때문에 편향되지 않더라도 Newton 단계는 여전히 편향됩니다. Tatzel은 1/H 모자에 대한 기대치가 1/H와 같지 않은 1D의 직관적인 예를 제공하여 곡률을 추정하더라도 반전 함수를 통해 매핑할 때 여전히 약간의 불확실성이 있음을 보여줍니다. 이것은 딥 러닝을 위한 2차 최적화에서 확률을 다루는 문제를 강조합니다.

  • 01:15:00 이 섹션에서 연사는 딥 러닝을 위한 2차 최적화에서 발생할 수 있는 편향과 불안정성에 대해 논의합니다. 역곡률을 추정할 때 무거운 꼬리를 생성할 수 있으며, 그 결과 평균 이상으로 이동하는 기대값이 생성됩니다. 이로 인해 기대치가 너무 큰 전체 Newton 단계가 발생합니다. 또한 편향과 불안정성은 확률적 추정으로 인해 또는 샘플이 0에 가까울 때 우연히 나타날 수 있습니다. 이러한 문제는 분포를 0에서 멀어지게 하고 잠재적 편향과 불안정성을 완화하는 댐핑을 적용하여 해결할 수 있습니다.

  • 01:20:00 이 섹션에서 Lukas Tatzel은 외부 루프 최적화 프로세스로 댐핑을 사용하는 문제에 대해 논의합니다. 그는 확률의 근본적인 문제가 해결되지 않은 상태로 남아 있음을 업데이트하고 지적하기 위해 분포와 같은 더 풍부한 수량을 사용할 수 있는 특수 알고리즘의 사용을 제안합니다. 전반적으로 Tatzel은 BFGS, LBFJS, Heston 무료 옵티마이저 및 KFC와 같은 2차 최적화 방법이 Hill 컨디셔닝 문제를 포함하여 딥 러닝 문제에 대한 부분적 솔루션을 제공한다고 제안합니다.
 

강의 13 -- 딥러닝의 불확실성 -- Agustinus Kristiadi



ML 13의 수치 -- 딥러닝의 불확실성 -- Agustinus Kristiadi

이 비디오는 딥 러닝의 불확실성, 특히 신경망의 가중치와 점근적 과신 문제로 인한 불확실성 통합의 중요성에 대해 논의합니다. 여기서 신경망은 확실성. 이 동영상은 신경망의 곡률을 추정하기 위해 마지막 레이어의 가중치를 근사화하기 위해 가우시안 분포를 사용하고 신경망의 곡률을 추정하기 위해 Hessian 행렬을 사용하여 심층 신경망에 불확실성을 가져오기 위해 2차 수량, 특히 곡률 추정을 사용하는 방법에 대한 통찰력을 제공합니다. 이 비디오는 또한 신경망의 모델 및 매개변수를 선택하기 위한 베이지안 형식 및 LaPlace 근사에 대해 설명합니다.

강의 두 번째 부분에서 Agustinus Kristiadi는 이 비디오에서 딥 러닝 모델에 불확실성을 도입하는 다양한 방법에 대해 논의합니다. 한 가지 기술은 선형화된 라플라스 근사법을 사용하여 신경망을 가우시안 모델로 바꾸는 것입니다. 또 다른 접근 방식은 원래 훈련 세트에서 다루지 않는 영역에 불확실성이 추가되는 분포 외 훈련입니다. Kristiadi는 모델에 대한 과신을 방지하기 위해 불확실성을 추가하는 것의 중요성을 강조하고 이상적인 사후를 찾는 비용을 피하기 위해 확률적 측정을 사용할 것을 제안합니다. 이러한 기술은 확률론적 머신 러닝에 대한 다음 과정에서 자세히 살펴볼 것입니다.

  • 00:00:00 이 섹션에서 연사는 기계 학습에 불확실성을 가져오고 이를 달성하기 위해 계산을 수행하는 방법에 대한 강의 주제를 설명합니다. 강의는 이전 강의의 통찰력을 사용하며, 특히 적분을 풀고 베이지안 딥 러닝을 사용하여 불확실성을 얻습니다. 그런 다음 연사는 심층 신경망에서 불확실성의 중요성과 점근적 과신 문제에 대해 논의합니다. 여기서 신경망은 이러한 확실성으로 분류해서는 안 되는 분포를 벗어난 예에 대해 높은 신뢰도 예측을 제공합니다. 이 강의는 심층 신경망에 불확실성을 가져오기 위해 2차 수량, 특히 곡률 추정을 사용하는 방법에 대한 통찰력을 제공하는 것을 목표로 합니다.

  • 00:05:00 이 섹션에서 Agustinus Kristiadi는 특히 ReLU 비선형성을 사용하는 분류 네트워크에서 심층 학습의 불확실성에 대해 설명합니다. 그는 실제 분류기의 기본 속성을 제시합니다. 로짓 레이어가 이전 레이어와 ReLU 비선형성의 선형 조합인 경우 네트워크의 출력은 여전히 이전 레이어의 조합으로 정의되는 조각별 선형 함수입니다. 이 공간의 훈련 데이터에서 멀어지면 분류기가 softmax 출력에 대한 선형 입력을 갖는 영역이 생기고 확률이 1일 때 각 선형 출력 함수의 이득이 다릅니다. 결과적으로 이러한 영역에서 충분히 멀리 이동하면 한 클래스에 대해 임의로 높은 신뢰도를 얻을 수 있으며 이는 빨간색으로 표시된 3개의 선형 출력 기능 플롯에서 시각적으로 관찰할 수 있습니다.

  • 00:10:00 이 섹션에서 Agustinus Kristiadi는 특정 클래스에서 높은 신뢰도를 생성하는 실제 분류기의 기본 속성과 단순히 가중치를 재학습하여 수정할 수 없는 이유를 설명합니다. 해결책은 신경망 가중치에 불확실성을 추가하는 것이며 이를 위해서는 신경망에 대한 베이지안 해석이 필요합니다. 이는 학습 중에 최소화되는 함수의 지수를 최대화하여 달성할 수 있습니다. 이는 딥러닝이 이미 베이지안 추론을 수행하고 있지만 사후 모드만 계산되고 있어 문제가 될 수 있음을 의미합니다. 연속 출력이 있는 지도 문제에 대한 일반적인 설정은 2차 손실 및 가중치 감쇠 정규화기이며, 이는 가중치에 가우시안을 우선하고 데이터에 가우시안 가능성을 두는 것과 같습니다.

  • 00:15:00 이 섹션에서 연사는 딥 러닝의 불확실성과 심층 신경망의 베이지안 해석에 대해 논의합니다. 화자는 예측에 필요한 전체 사후 분포가 다루기 어렵다고 지적합니다. 몬테카를로 접근법은 이론적으로 근거가 충분하지만 시간이 많이 걸리고 환자 추론을 수행하는 사람들에게 불리할 수 있습니다. 따라서 화자는 적분을 수행하는 가장 저렴한 가능한 방법인 선형 대수와 결합된 자동 미분을 주장합니다. 발표자는 정리에서 설명한 것처럼 네트워크의 마지막 계층 가중치에 대한 가우시안 근사 측정이 이미 부분적으로 과신 문제를 해결한다는 놀라운 결과를 공유합니다. 화자는 가중치에 대한 확률 분포가 올바른지 여부는 중요하지 않으며 가중치에 대한 확률 측정을 추가하면 신뢰도 문제를 해결할 수 있다고 강조합니다.

  • 00:20:00 이 섹션에서 발표자는 분류의 불확실성 문제를 해결하기 위해 심층 신경망의 분류 계층에서 마지막 계층의 가중치에 가우시안 분포를 적용하는 방법을 설명합니다. 화자는 가우시안 분포의 공분산은 중요하지 않으며 분포의 평균은 심층 신경망의 훈련된 가중치에 의해 주어지기 때문에 사용할 수 있다고 가정합니다. 그런 다음 화자는 가우시안 분포를 사용하여 X 별에서 세타의 F에 대한 소프트 최대의 적분을 근사화하여 이전 슬라이드의 문제를 해결합니다. David Makai 근사값은 네트워크가 그렇지 않은 경우 출력의 평균 예측을 갖는 파생 변수에 대한 소프트 최대값을 계산하는 데 사용됩니다. 이 근사치를 묘사하는 시각화의 파란색 선은 하나에서 멀리 떨어져 있어 분류의 불확실성에 대한 솔루션을 제공합니다.

  • 00:25:00 이 섹션에서 Agustinus Kristiadi는 특히 신경망의 가중치와 관련하여 딥 러닝의 불확실성의 중요성에 대해 논의합니다. 그는 우리가 가중치를 잘 모른다는 사실을 고려하는 것이 중요하며, 문제를 일으킬 수 있으므로 우리가 무언가를 모른다고 가정하는 것을 피하는 것이 중요하다고 주장합니다. 선형화 및 가중치에 대한 가우시안 분포 사용과 같은 수학적 근사치를 만들 수 있으며, 우리가 약간 불확실한 한 괜찮을 것이라는 것이 입증되었습니다. 시그마의 선택은 가장 빠르고 저렴한 방법인 곡률 추정을 통한 자동 미분으로 이루어질 수 있습니다.

  • 00:30:00 이 섹션에서 Agustinus Kristiadi는 딥 러닝을 통해 손실 함수의 모드를 찾은 후 헤시안 행렬을 사용하여 가우시안 근사치를 형성하는 방법을 설명합니다. 손실 함수의 2차 도함수를 포함하는 Hessian 행렬은 근사값을 구성하는 데 사용됩니다. 가우시안 근사값은 국소적이며 완벽하지는 않지만 완전히 분석적이므로 유리한 근사값이 됩니다. 이 근사치를 활용하려면 훈련된 신경망이 필요하며 일단 네트워크가 훈련되면 작동하는 폐쇄형 프로세스인 AutoDiff를 사용하여 해당 지점에서 Hessian을 얻을 수 있습니다.

  • 00:35:00 이 섹션에서 연사는 딥 러닝의 불확실성 개념과 Hessian 행렬을 사용하여 불확실성을 평가하는 방법에 대해 논의합니다. Hessian 행렬은 심층 신경망을 훈련한 후 계산할 수 있으며 네트워크 거래에 비용을 추가하지 않고 불확실성을 추정하는 방법을 제공합니다. 발표자는 또한 이 접근 방식을 사용하면 실제 응용 프로그램에 유용할 수 있는 점 추정치를 유지할 수 있다고 언급합니다. 그러나 Hessian을 계산하는 데 비용이 많이 들고 다루기 쉽도록 근사값이 필요하다는 단점이 있습니다. Generalized Gauss-Newton Matrix는 실제로 사용할 수 있는 근사치 중 하나입니다.

  • 00:40:00 이 섹션에서 Agustinus Kristiadi는 딥 러닝의 불확실성과 Gauss-Newton Hessian(GNG)을 사용하여 신경망의 곡률을 추정하는 방법에 대해 설명합니다. 그는 GNG가 양의 준정부호이고 선형화와 잘 연결되어 있어 라플라스 근사와 결합할 때 다루기 쉬운 모델이 될 수 있다고 설명합니다. 이 모델은 회귀에 사용할 수 있으며 신경망의 출력에 의해 주어진 평균 함수로 가우시안 프로세스를 생성합니다.

  • 00:45:00 이 섹션에서 연사는 특히 신경망에서 딥 러닝의 불확실성에 대해 논의합니다. 그들은 핵심 분산 함수가 네트워크의 Jacobian에서 손실 함수의 모드를 찾아 내적을 Hessian의 역으로 취함으로써 제공된다는 점에 주목합니다. 화자는 이 프로세스가 David Pinkai가 개발한 간단한 근사치의 형태로 분류에 사용될 수 있다고 언급합니다. 이 프로세스에는 손실 함수 정의, 손실 함수의 Hessian 계산, 가중치와 관련하여 훈련된 네트워크의 Jacobian 계산이 포함됩니다. 마지막으로 제품에서 두 가지를 결합하면 x에서는 여전히 비선형이지만 가중치 공간에서는 선형인 x 별의 f에 대한 예측 함수가 제공됩니다. 연사는 이 프로세스가 특히 분류의 경우 과신을 피하는 데 도움이 될 수 있음을 강조합니다.

  • 00:50:00 이 섹션에서 Agustinus Kristiadi는 베이지안 형식주의와 이것이 딥 러닝에서 어떻게 유용할 수 있는지에 대해 설명합니다. 가중치에서 네트워크를 선형화하고 라플라스 근사를 사용하여 사후에 대한 다루기 힘든 적분을 사후 및 손실 함수의 단순화된 형태로 줄일 수 있습니다. 이 프로세스는 모델이 데이터에 얼마나 잘 맞는지 측정할 수 있으며, 이는 모델의 매개변수 또는 측면을 조정하는 데 유용합니다. 데이터에 대한 증거를 계산함으로써 가장 높은 증거가 있는 모델을 선택하고 데이터에 더 가까운 모델을 선택할 수 있습니다.

  • 00:55:00 이 섹션에서 발표자는 LaPlace 근사를 사용하여 신경망의 모델 및 매개변수를 선택하는 방법에 대해 설명합니다. 발표자는 Hessian이 손실 함수의 모양에 따라 달라지며 레이어를 더 추가할수록 손실 함수가 더 좁아져 더 잘 맞을 수 있다고 설명합니다. 화자는 약 2~4개의 레이어가 아마도 최선의 선택임을 보여주는 플롯을 보여줍니다. 발표자는 또한 Hessian이 모델이 데이터를 얼마나 잘 설명할 수 있는지에 중요한 영향을 미치기 때문에 Occam 요인이 가우시안 프로세스만큼 간단하지 않은 방법에 대해 설명합니다. 그런 다음 스피커는 분류 문제에 대한 선형화 LaPlace 근사를 사용하여 심층 신경망의 시각화를 보여주고 사전 정밀도 매개변수를 사용하여 모델의 신뢰도에 영향을 미칠 수 있는 방법을 설명합니다. 마지막으로 발표자는 LaPlace 근사값을 사용하여 레이어 수와 같은 이산 선택 또는 경사 하강법을 사용하는 이전 위치와 같은 매개변수를 선택하는 방법에 대해 논의합니다.

  • 01:00:00 이 섹션에서 연사는 딥 러닝의 불확실성과 선형화된 라플라스 근사를 사용하여 이를 해결할 수 있는 방법에 대해 논의합니다. 이 방법은 네트워크의 레이어 수를 선택할 때 레이어의 이전 위치를 결정하기 위해 확률적 접근 방식을 사용하는 것을 포함합니다. 그러나이 프로세스는 이전 위치를 선택하는 데 적합하지만 레이어 수 선택과 같은 다른 작업에는 적합하지 않을 수 있습니다. 그런 다음 발표자는 선형화된 라플라스 근사법과 불확실성을 처리하기 위해 심층 신경망을 가우시안 모델로 전환하는 블랙 박스 도구로 사용할 수 있는 방법에 대해 논의합니다. 마지막으로 연사는 가중치에 대한 불확실성이 없는 모델의 문제를 해결하는 방법에 대해 논의합니다. 여기에는 네트워크에 간단한 수정을 추가하는 것이 포함됩니다.

  • 01:05:00 이 섹션에서 Agustinus Kristiadi는 심층 신경망에서 데이터의 무한한 복잡성을 설명하기 위해 무한한 수의 가중치를 추가하는 문제에 대해 논의합니다. 그는 무한한 수의 기능을 추가하면 문제가 해결될 것이라고 설명하고 무한한 수의 기능을 추적하는 것이 비용이 많이 드는 작업이 아닌 방법을 보여줍니다. 점근적으로 불확실성은 모델에 더 많은 복잡성을 추가하지 않고 C에 대한 최대 엔트로피 Thing 1이 됩니다.

  • 01:10:00 이 섹션에서 발표자는 특히 교육 데이터가 거의 없거나 적대적인 입력이 있는 영역에서 예측을 개선하기 위해 딥 러닝에 불확실성을 추가할 수 있는 방법을 설명합니다. 이 접근 방식에는 네트워크의 평균을 교육한 다음 점 예측을 변경하지 않지만 이동 및 크기 조정이 가능한 불확실성을 추가하는 단위를 추가하는 것이 포함됩니다. 이 기술을 분포 외 훈련이라고 하며 대략적인 가우시안 프로세스를 정의하기 위해 데이터의 폭을 기반으로 하는 길이 척도를 사용하여 달성할 수 있습니다. 불확실성을 추가하는 비용은 무시할 수 있으며 데이터가 훈련 데이터에서 멀리 떨어져 있는 경우 신뢰도를 줄이는 백스톱만 추가합니다.

  • 01:15:00 이 섹션에서는 연사가 딥 러닝 모델에 불확실성을 도입하는 방법에 대해 설명합니다. 이를 수행하는 한 가지 방법은 원래 훈련 세트에서 사용된 개체를 포함하지 않는 이미지로 새 데이터 세트를 만드는 분포 외 훈련을 이용하는 것입니다. 그런 다음 네트워크는 해당 지역에서 불확실하도록 훈련됩니다. 분포 손실을 포함하는 손실 함수를 정의함으로써 손실 모드가 발견되는 손실 함수의 곡률 추정의 헤시안을 조정하여 원하는 양의 불확실성을 생성할 수 있습니다. 연사는 또한 불확실성을 도입하는 것이 모델의 병리와 과신을 방지하는 데 도움이 될 수 있으므로 딥 러닝에서 중요하다고 지적합니다.

  • 01:20:00 이 섹션에서 화자는 기본 구조를 변경하지 않고 분류기에 불확실성을 추가하는 개념에 대해 설명합니다. 가중치 공간에서 네트워크의 선형화를 통해 이러한 일이 발생할 수 있으며 손실 함수의 Jacobian 및 Hessian을 계산하여 심층 신경망을 Gaussian 프로세스로 전환할 수 있습니다. 이 기술을 사용하면 점근적 보정 신뢰도와 같은 기능을 네트워크에 추가할 수 있습니다. 연사는 전체 사후 추적이 필요 없는 기계 학습에서 확률론적 훈련과 확률 측정의 중요성을 강조합니다. 이 접근법은 이상적인 사후를 찾는 비용을 피하면서 과신과 같은 문제를 해결할 수 있습니다. 마지막으로 연사는 이러한 기술의 사용이 확률론적 기계 학습에 대한 향후 과정에서 더 자세히 탐구될 것이라고 제안합니다.
 

강의 14 -- 결론 -- Philipp Hennig



ML 14의 수치 -- 결론 -- Philipp Hennig

Philipp Hennig는 적분, 최적화, 미분 방정식, 선형 대수학 등 수치 분석과 관련된 기계 학습에서 수학적 문제 해결의 중요성을 강조하면서 "머신 러닝의 수치" 과정을 요약합니다. 그는 데이터 세트에서 선형 대수를 수행하는 복잡성과 처리 장치 및 디스크와의 관계에 대해 설명합니다. Hennig는 또한 사소하지 않은 크기의 데이터 세트 처리, 선형 시스템 해결을 위한 알고리즘, 편미분 방정식 해결 및 적분 추정과 같은 주제를 다룹니다. 그는 심층 신경망 훈련의 어려움과 확률 문제를 극복하기 위한 솔루션의 필요성을 인정하면서 결론을 내립니다.

강의 시리즈의 결론에서 Philipp Hennig는 기계 학습 모델을 훈련하는 것 이상으로 모델이 알고 있는 것과 모르는 것을 아는 것의 중요성을 강조합니다. 그는 심층 신경망에 대한 불확실성 추정치를 구성하기 위한 손실 함수의 곡률 추정과 확률적이지만 계산 복잡성으로 인해 모든 경우에 반드시 베이즈 정리를 적용할 필요는 없는 것의 중요성에 대해 이야기합니다. Hennig는 또한 기계 학습에서 수치 계산의 중요성과 새로운 데이터 중심 계산 방법을 개발해야 할 필요성을 강조합니다. 마지막으로 그는 과정에 대한 피드백을 요청하고 다가오는 시험에 대해 논의합니다.

  • 00:00:00 이 섹션에서 Philipp Hennig는 기계 학습의 숫자 전체 과정에 대한 요약을 제공합니다. 다양한 강사의 콘텐츠가 다양하기 때문에 이 과정이 중요하다고 생각합니다. 그는 기계 학습이 본질적으로 알고리즘을 포함하는 고전적인 AI와 달리 폐쇄형 솔루션이 없는 수학적 문제를 해결하는 것과 관련이 있다고 설명합니다. 기계 학습의 문제는 수치 분석과 관련이 있으며 적분, 최적화, 미분 방정식 및 선형 대수를 포함합니다. Hennig는 데이터 세트에서 선형 대수를 수행하는 복잡성과 처리 장치 및 디스크와의 관련성을 이해하는 것이 중요하다고 강조합니다.

  • 00:05:00 이 섹션에서 Philipp Hennig는 기계 학습, 특히 가우시안 프로세스 회귀에서 선형 대수학의 역할에 대해 설명합니다. 그는 평균과 공분산이 있는 예측 분포를 학습하려면 행렬 곱하기 벡터를 반전시키는 선형 방정식 시스템을 풀어야 한다고 설명합니다. 역행렬을 구성하는 반복 절차로 볼 수 있는 Cholesky 분해라고 하는 고전적인 알고리즘을 포함하여 이러한 선형 시스템을 풀기 위한 많은 알고리즘이 있습니다. Hennig는 이 근사치가 행렬의 역행렬에 대한 추정치로 사용될 수 있지만 그 품질은 데이터 순서에 따라 달라질 수 있다고 지적합니다.

  • 00:10:00 이 섹션에서 Philipp Hennig는 임의의 순서로 데이터 세트를 살펴보고 나머지는 무시하면서 디스크에서 일부를 로드하는 것이 얼마나 선형적으로 비용이 많이 드는지 설명합니다. 그는 이 방법을 학생들이 하나의 방정식을 풀기 위해 두 개의 서로 다른 선형 최적화 문제를 푸는 확률론적 기계 학습 수업을 통해 배우는 것과 비교합니다. 그는 또한 유한한 데이터 세트와 제한된 계산을 포함하여 전체 솔루션을 제공하지 않는 두 가지 불확실성 소스를 유발하는 유한한 불확실성이 발생한다고 강조합니다.

  • 00:15:00 비디오의 이 섹션에서 Philipp Hennig는 Bayesian Influence Gaussian Process Regression에서 선형 문제 해결의 복잡성을 설명합니다. 기본 사례의 비용 수준은 대부분의 사람들이 배운 것보다 훨씬 미묘합니다. 여기에서 얻을 수 있는 네 가지 주요 사항은 전체 데이터 세트를 보지 않도록 선택할 수 있다는 것입니다. 데이터 세트에서 비용 선형 추정치를 제공하고 반복 횟수에서 2차적으로 추정하는 Cholesky 유사 알고리즘을 사용할 수 있습니다. 빠르게 수렴하지만 각 반복에서 2차적으로 비용이 많이 드는 보다 효율적인 알고리즘을 사용하거나 데이터 포인트 수에서 세제곱 비용을 생성하는 Cholesky를 선택할 수 있습니다.

  • 00:20:00 이 섹션에서 Hennig는 사소하지 않은 크기의 데이터 세트를 적절하게 처리하는 것의 중요성과 이를 효율적으로 운영하는 방법에 대한 결정에 대해 논의합니다. 또한 무한 차원 데이터 세트를 처리하는 방법, 특히 시간에 따라 진화하는 시스템과 Kalman 필터링 및 스무딩으로 알려진 선형 시간 종속 및 시불변 문제에 사용되는 알고리즘에 대해 설명합니다. Hennig는 이러한 유형의 알고리즘이 기록하기 쉽고 시간 단계의 수에서 선형적으로 비용이 많이 든다는 점을 강조합니다. 그는 또한 높은 수준의 알고리즘에서 성능을 가속화하는 데 사용할 수 있으므로 계산 계층 구조의 낮은 수준을 이해하는 것이 중요하다고 강조합니다.

  • 00:25:00 비디오의 이 섹션에서 Philipp Hennig는 체인의 모든 초기 변수에 미래에 관찰한 내용을 알리는 부기 알고리즘 역할을 하는 부드러운 알고리즘에 대해 설명합니다. 그는 또한 관찰이 상태 공간의 선형 가우시안 변환이 아닌 설정과 확장 칼만 필터의 동역학에 대해 알고리즘을 얼마나 빨리 적용할 수 있는지에 대해 이야기합니다. Hennig는 또한 매우 유연하고 미분 방정식을 풀기 위한 강력한 알고리즘을 구성하는 데 사용할 수 있는 이 프레임워크의 알고리즘 환경 및 구조에 대해 다룹니다.

  • 00:30:00 이 섹션에서 Philipp Hennig는 기계 학습의 상미분 방정식과 동일한 알고리즘 언어에 대수적 암시적 방정식, 연속 군 대칭 및 편미분 방정식을 모두 포함할 수 있는 방법에 대해 설명합니다. 그는 또한 상태 공간의 일부에서 알 수 없는 값을 결정할 때 시스템이 이동한 경로를 측정하거나 시스템이 시작되고 종료된 위치를 아는 것과 같은 시스템 관찰 통합의 가치를 언급합니다. Hennig는 시뮬레이션 패키지가 더욱 다양해짐에 따라 시뮬레이션 방법이 본질적으로 필터로 보일 수 있기 때문에 시뮬레이션 방법에 대한 광범위한 지식이 필요하지 않게 되었다고 말합니다.

  • 00:35:00 비디오의 이 섹션에서 Philipp Hennig는 기계 학습의 방법이 정보를 관리하는 방법에 대해 설명하고 디스크에서 오는 정보와 컴퓨터에 연결된 센서 사이에 실제로 차이가 없다고 말합니다. 대수 방정식으로 작성한 프로그래머가 제공하는 정보. 그는 또한 정보 운영자가 사용자와 알고리즘 설계자 간의 인터페이스 역할을 한다고 언급합니다. 그는 또한 가우시안 프로세스 회귀를 사용하여 필터링 시뮬레이션 방법과 본질적으로 동일한 편미분 방정식을 푸는 방법을 설명합니다. 그러나 그는 편미분 방정식이 선형이 아니면 필터를 사용하여 풀 수 없다고 지적합니다.

  • 00:40:00 이 섹션에서는 Philipp Hennig가 기계 학습의 미분 방정식 및 통합을 다루는 "Numerics of ML" 시리즈의 결론을 요약합니다. 그는 먼저 함수 공간의 특성으로 인해 복잡할 수 있는 함수를 사용한 가우시안 프로세스 추론에 대해 이야기합니다. 그러나 비선형 함수를 관찰하고 편미분 방정식 및 경계 값과 같은 다양한 정보 소스를 적용하면 대규모 가우시안 프로세스 추론 방식으로 결합되어 동적 시스템의 정량화된 표현을 얻을 수 있습니다. 그런 다음 Hennig는 확률론적 추론의 통합으로 이동하여 느리게 수렴하지만 통합 가능한 모든 함수에서 작동하는 편향되지 않은 추정량인 Monte Carlo 알고리즘을 소개합니다.

  • 00:45:00 이 섹션에서 Philipp Hennig는 기계 학습을 위한 적분을 추정하는 가장 좋은 방법에 대해 설명합니다. 그는 적분의 추정치가 적분의 실제 값으로 수렴하는 비율이 사용된 알고리즘에 따라 달라지는 샘플 수의 제곱근에 대해 1이라고 제안합니다. 그러나 피적분을 모델링하는 데 많은 시간을 소비하는 알고리즘인 베이지안 구적법은 특히 저차원 문제에서 정말 잘 수행할 수 있으며 Monte Carlo보다 훨씬 빠르게 수렴할 수 있습니다. Hennig는 작은 종류의 문제에 대해서만 잘 작동하는 알고리즘을 구축하면 해당 문제의 각 인스턴스에 대해 더 잘 작동할 수 있지만 해당 클래스 외부에서는 제대로 작동하지 않을 수 있다고 제안합니다. 궁극적으로 최상의 알고리즘은 해결하려는 문제의 특성에 따라 달라집니다.

  • 00:50:00 이 섹션에서 Philipp Hennig는 현대 기계 학습 수치 문제, 특히 심층 신경망 교육 문제를 탐구합니다. 사용 가능한 옵티마이저가 많지만 근본적으로 실망스럽고 비효율적이며 지속적인 관리와 하이퍼파라미터 튜닝이 필요하고 항상 작동하는 것은 아닙니다. 이전에는 최적화가 버튼을 누르고 알고리즘이 완벽하게 작동하는지 확인하는 것이었지만, 이제 기계 학습에는 대규모 언어 모델을 관리하기 위해 100명이 넘는 팀이 필요하므로 리소스를 비효율적으로 사용하게 됩니다. 주요 문제는 확률론이며 전체 기계 학습 커뮤니티를 주도하고 있음에도 불구하고 이 문제에 대한 알려진 우아한 해결책은 아직 없습니다.

  • 00:55:00 이 섹션에서 Philipp Hennig는 심층 신경망 교육의 어려움을 강조하면서 계산의 불확실성에 대한 강의 과정을 마무리합니다. 한정된 데이터와 계산으로 인해 미니배치 그래디언트를 평가하지만, 이 프로세스를 통해 유입되는 상당한 노이즈는 실제로 최적화 알고리즘의 성능을 저하시킵니다. Hennig는 이 문제에 대한 해결책이 심층 신경망 훈련을 훨씬 더 빠르게 만들고 기계 학습의 미래를 바꿀 것이라고 말합니다. 그 동안 곡률 추정과 같은 사용 가능한 리소스를 계속 사용하여 새로운 알고리즘과 기술을 구성할 수 있습니다.

  • 01:00:00 이 섹션에서 Philipp Hennig는 기계 학습에서 이중 네트워크를 교육하는 것 이상의 필요성과 모델이 알고 있는 것과 모르는 것을 아는 것의 중요성에 대해 논의합니다. Hennig는 손실 함수의 곡률을 추정하면 Laplace 근사를 사용하여 간단한 방법으로 심층 신경망에 대한 불확실성 추정을 구성하는 데 도움이 될 수 있다고 설명합니다. 이것은 다양한 사용 사례에 사용할 수 있으며 네트워크 가중치 공간의 선형화와 결합하여 심층 신경망을 대략 가우시안 프로세스 파라메트릭 가우시안 회귀 알고리즘으로 전환할 수 있습니다. Hennig는 확률이 중요하지만 모든 경우에 베이즈 정리를 적용할 필요는 없다고 강조합니다. 너무 많은 계산이 필요할 수 있기 때문입니다. 대신 계산 비용이 너무 많이 들지 않으면서 가치를 추가하는 빠른 솔루션을 찾는 것이 더 나은 접근 방식입니다.

  • 01:05:00 이 섹션에서 Philipp Hennig는 기계 학습에서 수치 계산의 중요성을 강조합니다. 그는 수치 계산이 데이터 소스와 상호 작용하는 활성 에이전트이며 수신한 데이터를 사용하는 방법을 적극적으로 결정해야 한다고 설명합니다. 이 연결을 진지하게 생각함으로써 더 유연하고 사용하기 쉽고 다른 설정으로 일반화하기 쉬운 새로운 데이터 중심 계산 방법을 개발할 수 있습니다. Hennig는 또한 더 나은 기계 학습 엔지니어가 되기 위해 수치 알고리즘이 작동하는 방식을 이해하는 것의 중요성을 강조합니다. 마지막으로 그는 과정에 대한 피드백을 요청하고 다가오는 시험에 대해 논의합니다.
 

7분 안에 지원 벡터 머신(SVM) - 재미있는 기계 학습



7분 안에 지원 벡터 머신(SVM) - 재미있는 기계 학습

이 비디오는 데이터 세트의 극단을 기반으로 결정 경계 또는 초평면을 그리는 두 개의 클래스가 있는 데이터 세트에 사용되는 분류 알고리즘인 SVM(Support Vector Machines)에 대해 설명합니다. 또한 커널 트릭을 사용하여 데이터 세트를 고차원 기능 공간으로 변환하여 비선형적으로 분리 가능한 데이터 세트에 SVM을 사용할 수 있는 방법에 대해서도 설명합니다. 비디오는 고차원 공간에서의 효율성, 메모리 효율성 및 사용자 지정 함수에 다른 커널을 사용할 수 있는 기능과 같은 SVM의 이점을 식별합니다. 그러나 비디오는 특징 수가 샘플 수보다 많을 때 성능이 저하되고 값비싼 교차 검증이 필요한 직접적인 확률 추정이 부족하다는 알고리즘의 단점도 식별합니다.

  • 00:00:00 이 섹션에서는 SVM(Support Vector Machine)과 이를 사용하여 두 클래스로 데이터 세트를 분류하는 방법에 대해 알아봅니다. SVM 알고리즘은 데이터 세트의 극단을 살펴보고 데이터 세트의 극단 지점 근처에 결정 경계 또는 초평면을 그립니다. 기본적으로 서포트 벡터 머신 알고리즘은 두 클래스를 가장 잘 구분하는 프론티어입니다. 그런 다음 비선형적으로 분리 가능한 데이터 세트와 SVM이 커널 트릭을 사용하여 데이터 세트를 더 높은 차원의 기능 공간으로 변환하는 방법에 대해 배웁니다. 널리 사용되는 커널 유형에는 다항식 커널, 방사형 기저 함수(RBF) 커널 및 시그모이드 커널이 포함됩니다. 그러나 올바른 커널을 선택하는 것은 간단한 작업이 아니며 당면한 특정 작업에 따라 달라질 수 있습니다.

  • 00:05:00 이 섹션에서는 SVM(Support Vector Machine)의 장단점에 대해 설명합니다. SVM은 고차원 공간에서 효과적이며 결정 기능에서 훈련 포인트의 하위 집합을 사용하여 메모리를 효율적으로 만듭니다. 사용자 지정 커널을 포함하여 의사 결정 기능에 대해 다른 커널을 지정할 수 있으며 SVM은 의료 영상, 금융 산업 및 패턴 인식과 같은 다양한 응용 프로그램에서 사용할 수 있습니다. 그러나 SVM의 단점은 특성 수가 샘플 수보다 많은 경우 성능이 저하되고 값비싼 교차 검증이 필요한 직접적인 확률 추정이 부족하다는 점입니다.
 

'딥 러닝 혁명' - Geoffrey Hinton - RSE 회장 강연 2019



'딥 러닝 혁명' - Geoffrey Hinton - RSE 회장 강연 2019

"딥 러닝의 대부"로 알려진 제프리 힌튼(Geoffrey Hinton)은 딥 러닝과 신경망의 역사와 진화, 인간의 두뇌와 같은 방식으로 학습할 수 있는 기계를 만들기 위해 딥 러닝을 사용하는 도전과 흥미진진한 가능성에 대해 설명합니다. 역전파를 더 효과적으로 만든 요령과 기술. 그는 또한 음성 인식 및 컴퓨터 비전에서 신경망의 성공, 컴퓨터 비전 및 비감독 사전 훈련을 위한 신경망의 진화, 언어 모델링 및 기계 번역에서의 효율성에 대해 설명합니다. 그는 유추에 의한 추론의 가치를 강조하면서 마무리하고 "캡슐" 이론과 지식을 전체에서 부분을 예측하는 모델에 연결하는 방법에 대해 논의합니다.

딥 러닝의 선구자인 제프리 힌튼(Geoffrey Hinton)은 실제 추론에 필요한 장기 지식과 임시 저장을 허용하기 위해 연상 기억, 고속 기억 및 다중 시간 척도를 신경망에 통합할 것을 옹호하는 강의를 합니다. 또한 그는 사전 신념과 데이터 사이의 균형 행위, 비지도 학습의 가능성, 관점 지식과 변환 등가성을 통합하여 객체를 인식하는 컨볼루션 네트워크의 효율성, 변환기와 같은 연결주의 네트워크와 상징적 추론을 결합해야 할 필요성에 대해 논의합니다. 네트워크. 그는 또한 기계 학습에서 무의식적 편향 문제를 다루고 편향을 식별하고 수정함으로써 인간의 편향보다 더 쉽게 고칠 수 있다고 믿습니다. 마지막으로 그는 AI 분야의 젊은 연구자들을 위한 더 많은 자금과 지원의 필요성을 강조합니다.

  • 00:00:00 딥러닝에 익숙하다면 1978년 에든버러에서 인공지능 박사학위를 취득하고 그 공로로 수많은 상을 수상한 "딥러닝의 대부"로 알려진 제프리 힌튼 교수에게 많은 빚을 지고 있습니다. 기계 학습에 대한 기여. 강의 첫 부분에서 그는 딥 러닝과 신경망의 역사와 이들이 수년에 걸쳐 어떻게 진화해 왔는지에 대해 논의합니다. 그는 또한 인간의 두뇌와 같은 방식으로 학습할 수 있는 기계를 만들기 위해 딥 러닝을 사용하는 도전과 흥미진진한 가능성에 대해 이야기합니다.

  • 00:05:00 이 섹션에서 Geoffrey Hinton은 1950년대 초부터 존재했던 인공 지능의 두 가지 패러다임에 대해 이야기합니다. 하나는 지능을 상징적 규칙을 사용하여 상징적 표현을 조작하는 것으로 보는 논리에 영감을 받은 접근 방식이었습니다. 반면에 다른 접근 방식은 지능의 본질이 신경망 연결의 강점을 학습하는 것이라고 믿었습니다. 이 접근 방식은 추론에 중점을 둔 다른 접근 방식과 비교하여 학습과 인식에 더 중점을 두었습니다. 이러한 다양한 접근 방식은 내부 표현에 대한 다양한 관점과 컴퓨터가 사용자가 원하는 작업을 수행하도록 하는 상응하는 방식으로 이어졌습니다. Hinton은 지능형 설계 방법을 컴퓨터에 많은 예를 보여주는 교육 또는 학습 전략과 비교합니다.

  • 00:10:00 비디오의 이 섹션에서 Geoffrey Hinton은 여러 계층을 통해 복잡한 기능을 학습하도록 뉴런 네트워크를 교육하는 것으로 시작된 딥 러닝 혁명이 어떻게 발생했는지 설명합니다. 선형 및 비선형 함수를 모델링하는 이상화된 뉴런이 사용됩니다. 한편 훈련 네트워크에는 감독 및 비지도 훈련을 포함하여 다양한 방법이 있으며 역전파가 후자의 가장 효율적인 알고리즘입니다. 마지막으로 그는 딥 러닝이 네트워크를 교란시켜 효과를 측정한 다음 필요할 때 네트워크를 변경하는 방법을 지적합니다. 이는 알 수 없는 변수에 직면하여 교란하는 진화적 접근 방식보다 훨씬 효율적입니다.

  • 00:15:00 강의의 이 섹션에서 Dr. Hinton은 역전파(backpropagation)의 최적화 기술에 대해 논의합니다. 이 기술은 훈련 예제의 작은 배치에 대한 실제 답변과 정답 간의 불일치를 기반으로 가중치 기울기를 계산합니다. 그는 그래디언트를 기반으로 가중치를 업데이트하는 프로세스와 프로세스를 최적화하기 위해 확률적 그래디언트 디센트를 사용하는 방법을 설명합니다. 그런 다음 Hinton 박사는 모멘텀을 사용하고 더 큰 기울기에 대한 더 작은 학습 속도를 포함하여 역전파를 더 효과적으로 만든 요령과 기술에 대해 계속 논의합니다. 궁극적으로 이러한 요령을 사용하는 것이 수백 건의 저널 논문에도 불구하고 무엇보다 좋다는 결론을 내립니다. 더 정교한 방법에 대해. 마지막으로 그는 1990년대에 신경망과 더 작은 크기의 데이터 세트에 대한 적절한 초기화 기술이 부족하여 기계 학습 커뮤니티에서 신경망을 일시적으로 포기하게 되었다고 지적합니다.

  • 00:20:00 이 섹션에서는 딥 러닝 분야의 선도적인 인물인 Geoffrey Hinton이 딥 러닝 연구의 역사와 해당 분야 연구자들이 직면한 과제에 대해 논의합니다. 그는 역전파 초기에 많은 논문이 컴퓨터 비전의 일반적인 패러다임에 맞지 않는 비지도 학습에 초점을 맞추었기 때문에 어떻게 거부되거나 비판을 받았는지 설명합니다. 그러나 Hinton은 드롭아웃과 같은 기술과 결합된 비지도 학습이 딥 네트워크에서 역전파 작업을 수행하는 핵심 요소였으며 이후 딥 러닝 분야를 혁신하는 데 도움이 되었다고 주장합니다.

  • 00:25:00 이 섹션에서 Hinton은 음성 인식 및 컴퓨터 비전에서 신경망의 성공에 대해 설명합니다. 딥 러닝의 첫 번째 큰 응용 분야는 음성 인식이었습니다. 프런트 엔드는 스펙트로그램의 중간 프레임을 취하고 사람이 표현하려는 음소를 식별하여 음향 모델링을 수행했습니다. 딥 러닝을 상업적으로 대규모로 적용한 최초의 애플리케이션은 음성 인식 분야였습니다. 프런트 엔드 신경망이 IBM 및 기타 장소의 고도로 조정된 기술보다 성능이 뛰어났습니다. 또 다른 중요한 이벤트는 2012년 ImageNet 경쟁에서 심층 신경망이 기존의 컴퓨터 비전 기술보다 훨씬 낮은 오류율을 달성했습니다.

  • 00:30:00 이 섹션에서 Geoffrey Hinton 교수는 컴퓨터 비전, 기계 번역 및 감독되지 않은 사전 교육을 위한 신경망의 진화와 컴퓨터 비전 커뮤니티가 처음에 이러한 신경망의 성공에 대해 회의적이었던 방법에 대해 설명합니다. 계속해서 소프트 어텐션과 변환기에 대해 논의하고 후자가 어떻게 공분산에 더 적합하여 눈이 서로 같은 것에 더 민감하게 만드는지, 감독되지 않은 사전 훈련이 신경망이 다음에 대한 정보를 캡처하도록 강제하는 방법에 대해 설명합니다. 단어 주변의 단어가 해당 단어의 의미에 대해 알려줄 수 있는 것.

  • 00:35:00 이 섹션에서 Hinton은 문맥에 따라 단어 의미를 명확하게 하는 것과 같은 자연어 처리 작업에 컨벌루션 신경망과 변환기를 사용하는 것의 차이점을 설명합니다. 컨볼루션 신경망은 대상 단어 주변의 단어를 사용하여 표현을 변경하는 반면, 변환기는 단어 벡터를 쿼리, 키 및 값으로 변환하는 방법을 배우기 위해 back-ravine 파생물로 네트워크를 훈련합니다. 해당 표현을 활성화합니다. 변환기는 언어 모델링 및 기계 번역에서 매우 효과적인 것으로 입증되었으며 Burt와 같은 방법을 개발하는 데 사용되었습니다. Burt는 비지도 학습을 사용하여 다음 단어 조각의 확률을 통해 단어 임베딩을 학습합니다.

  • 00:40:00 강의의 이 섹션에서 Hinton은 인간이 작성한 것처럼 보이는 텍스트를 생성할 수 있는 "GPT-2"라는 실험에 대해 논의합니다. 15억 개의 매개변수를 포함하는 GPT-2 모델은 수십억 단어의 텍스트에 대해 훈련되었으며 일관되고 이해하기 쉬운 이야기를 생성할 수 있습니다. Hinton은 이러한 유형의 추론이 적절한 논리 기반 추론이 아니라 직관적 추론이라고 추측합니다. 그는 또한 모델이 실제로 얼마나 이해하고 있는지 알기 어렵다고 지적하며 모델이 엄청난 양의 연관을 수행하고 있는지 아니면 그 이상을 이해하고 있는지 질문합니다.

  • 00:45:00 이 섹션에서 Geoffrey Hinton은 유추에 의한 추론의 가치와 추론 능력을 향상시키는 역할을 강조합니다. 그는 게임 AlphaGo의 맥락에서 순차적 추론을 직관에 의한 추론과 비교하면서 정보에 입각한 결정을 내리기 위해서는 직관과 논리적 추론이 모두 필요하다고 설명합니다. 또한 힌튼은 컨볼루션 신경망이 어떻게 효율성을 향상시켰지만 인간과 같은 방식으로 객체를 인식하지 못하여 인간이 좌표 프레임을 사용하고 객체의 부분과 전체 간의 관계를 이해하여 이를 인식한다는 결론에 도달했습니다. 이것은 물체를 인식하는 방법을 개선하기 위해 신경망 아키텍처에 대한 통찰력이 필요함을 강조합니다.

  • 00:50:00 이 섹션에서 Hinton은 작업을 사용하여 좌표 프레임에 대한 공간 이해의 의존성을 설명합니다. 그는 와이어프레임 큐브를 제시하고 보는 사람에게 좌표 프레임을 사용하지 않고 모서리가 있는 곳을 가리키도록 요청하여 사람들이 좌표계를 기준으로 큐브를 생각하는 경향이 있음을 보여줍니다. 그런 다음 Hinton은 모양의 조각을 나타내는 법을 배우는 뉴런을 그룹화하고 고유한 기하학을 캡처하기 위해 각 조각에 좌표 프레임을 부과하는 "캡슐" 이론에 대해 설명합니다. 그는 모양 지식을 캡처하기 위해 감독 없이 이 캡슐을 훈련시킬 계획입니다.

  • 00:55:00 이 섹션에서 Hinton은 전체에서 부분을 예측하는 모델에 지식을 연결하는 방법에 대해 설명합니다. 이 모델은 이미 추출된 부분을 살펴보고 이러한 부분을 가져와 해당 부분을 설명하는 전체가 무엇인지 예측하려고 시도하는 변환기에 의해 훈련됩니다. 변환기는 사물 간의 상관관계를 찾는 데 능숙하며 어떤 물체가 있을 수 있고 그 포즈가 무엇인지 예측할 수 있습니다. Hinton은 모델이 정사각형과 삼각형에 대해 배우고 나중에 새 이미지에서 인식할 수 있는 예를 제공합니다. 레이블을 표시하지 않고 집 번호를 인식하도록 모델을 훈련할 수도 있습니다.

  • 01:00:00 이 섹션에서는 비지도 학습의 잠재력과 현재 사용 중인 스칼라 비선형성보다 더 잘 작동할 수 있는 다양한 유형의 뉴런에 대해 배웁니다. 연사는 학생들에게 그들이 듣는 모든 것을 믿지 말라고 촉구하고 50년 동안 습득한 지식을 특정 처리를 수행하기 위해 올바른 기판을 얻는 방법을 알아내는 방향으로 방향을 전환하도록 권장합니다. Q&A 부분에서는 인텔리전스와 트랜스포머 메모리의 일관성을 위해 가장 빠른 시스템에만 의존할 가능성에 대해 논의합니다.

  • 01:05:00 이 섹션에서 Hinton은 기계 학습의 무의식적 편향에 대한 질문에 응답하고 이를 인간의 편향과 비교합니다. 그는 기계 학습이 편향될 수 있지만 기계 학습의 편향은 가중치를 동결하고 편향이 누구에 반대하는지 측정함으로써 식별하고 수정할 수 있기 때문에 인간의 편향보다 수정하기가 훨씬 쉽다고 믿습니다. 또한 그는 기계 학습의 설명 가능성에 대해 이야기하고 시스템이 사용되기 전에 설명 가능해야 한다는 입법에 반대한다고 주장합니다. 이러한 대형 신경망은 간결하게 설명할 수 없는 수십억 개의 가중치를 학습했기 때문입니다. 그러나 그는 연구자들이 이러한 시스템을 더 잘 이해하기를 원한다는 것을 인정하고 나이든 연구자들이 젊은 연구자들을 위해 자금을 제공하도록 권장합니다.

  • 01:10:00 이 섹션에서 Geoffrey Hinton은 변환 동등성과 더 많은 관점 지식을 컨볼루션 네트워크에 연결하면 개체 인식 및 일반화에서 더 효율적일 수 있다는 아이디어에 대해 논의합니다. 또한 그는 상징적 추론을 변압기 네트워크와 같은 연결주의 네트워크와 결합해야 할 필요성에 대해 이야기합니다. Hinton은 연관 기억, 고속 기억을 구현하고 각 시냅스가 여러 시간 척도를 갖도록 하면 실제 추론에 필요한 장기 지식과 임시 저장을 허용할 수 있다고 믿습니다.

  • 01:15:00 이 섹션에서 화자는 신경망이 과거 또는 현재 경험을 기반으로 업데이트되는 방식에 대한 질문에 응답합니다. 그는 시간을 통해 역전파하는 대신 현재 상태에 의해 활성화되는 연상 기억을 사용할 것을 제안합니다. 그는 모든 시냅스가 일시적인 것을 저장하기 위해 여러 시간 척도를 가져야 한다고 설명합니다. 그런 다음 토론은 이전 신념을 가진 시스템의 환각 주제로 이동합니다. 화자는 이전 신념과 데이터 사이의 균형을 바로 잡는 것이 그러한 시스템의 핵심이라고 믿습니다. 마지막으로 그는 역전파에 대한 자신의 양면성에 대해 이야기하면서 그것이 옳은 일이지만 인간의 두뇌가 훨씬 더 많은 것을 포함하고 있는 10억 개의 가중치만이 꽤 좋은 번역을 할 수 있다는 사실에 놀랐다고 말했습니다.

  • 01:20:00 비디오의 이 섹션에서 발표자는 현재 AI 기술이 생각만큼 지능적이지 않을 수 있으며 이 문제를 해결하는 데 초점을 맞춰야 한다고 설명합니다. 그들은 또한 유럽 기금으로 자금을 조달한 인간 두뇌 프로젝트에 대해 언급하며 그것이 AI 개발에 도움이 될지 방해가 될지에 대해 질문합니다. 연사는 또한 강사가 복잡한 개념을 비전문가가 이해하기 쉬운 방식으로 설명할 수 있고 AI 분야의 젊은 연구자들을 위한 더 많은 자금과 지원을 홍보한 것에 대해 칭찬했습니다.
 

ChatGPT가 실제로 작동하는 방식



ChatGPT가 실제로 작동하는 방식

ChatGPT는 채팅 대화에서 유해한 콘텐츠를 올바르게 식별할 수 있는 기계 학습 모델입니다. 아키텍처는 사람의 입력을 기반으로 하며 단점이 설명되어 있습니다. 권장 수치도 제공됩니다.

  • 00:00:00 ChatGPT는 모델의 정렬 불량 문제를 완화하도록 설계된 챗봇입니다. 사람의 피드백을 통한 강화 학습을 사용하여 사전 훈련된 모델을 미세 조정합니다.

  • 00:05:00 ChatGPT는 채팅 대화에서 유해한 콘텐츠를 올바르게 식별할 수 있는 기계 학습 모델입니다. 아키텍처는 사람의 입력을 기반으로 하며 단점이 설명되어 있습니다. 권장 수치도 제공됩니다.
 

처음부터 기계 학습 전체 과정



처음부터 기계 학습 전체 과정

기계 학습 모델을 직접 구현하는 것은 모델을 마스터하는 가장 좋은 방법 중 하나입니다. 어려운 작업처럼 보이지만 대부분의 알고리즘에서 상상하는 것보다 쉬운 경우가 많습니다. 앞으로 10일 동안 우리는 매일 하나의 기계 학습 알고리즘을 구현하기 위해 특정 계산을 위해 Python과 때때로 Numpy를 사용할 것입니다.

GitHub 리포지토리에서 코드를 찾을 수 있습니다. https://github.com/AssemblyAI-Examples/Machine-Learning-From-Scratch

GitHub - AssemblyAI-Examples/Machine-Learning-From-Scratch: Implementation of popular ML algorithms from scratch
GitHub - AssemblyAI-Examples/Machine-Learning-From-Scratch: Implementation of popular ML algorithms from scratch
  • AssemblyAI-Examples
  • github.com
This repository contains the code developed in the Machine Learning from scratch course on YouTube by AssemblyAI. It includes the implementations of popular ML algorithms.