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

 

레슨 2: 코더를 위한 실용 딥 러닝 2022



레슨 2: 코더를 위한 실용 딥 러닝 2022

이 YouTube 비디오 시리즈는 코더를 위한 딥 러닝에 대한 소개를 제공합니다. 데이터 준비, 모델 생성 및 기계 학습 모델 배포와 같은 주제를 다룹니다.

이 비디오에서 해커 Jeremy Howard는 딥 러닝을 사용하여 자신만의 웹 앱을 만드는 방법을 사람들에게 가르칩니다. 그는 Git에서 프로젝트를 설정하는 방법, 포옹하는 얼굴 공간을 사용하여 훈련할 모델을 업로드하는 방법, 자연어 처리 및 텍스트를 인식하는 방법을 다룹니다.

  • 00:00:00 이 수업에서는 2022년 코더를 위한 실용적인 딥 러닝을 다룹니다. 학생들이 자료를 더 잘 기억하는 데 도움이 되는 새로운 첨단 기술을 가르치고 있습니다. 이 과정은 책과 함께 진행되며 학생들이 진행 상황을 테스트하는 데 도움이 되는 퀴즈를 사용할 수 있습니다.

  • 00:05:00 이 비디오는 데이터를 찾는 방법, 데이터 정리 및 프로덕션에 모델을 넣는 방법을 포함하여 코딩을 위한 딥 러닝의 기본 사항을 다룹니다. 시리즈의 다음 비디오에서 이를 수행하는 방법을 보여줍니다.

  • 00:10:00 이 비디오에서 Wes는 ddg 웹사이트를 사용하여 딥 러닝에서 모델을 교육하는 방법에 대해 설명합니다. 개체를 검색하는 방법과 이미지 크기를 조정하는 방법을 보여줍니다.

  • 00:15:00 이 비디오에서는 딥 러닝 기술인 RandomResizedCrop을 소개합니다. 이것은 이미지 인식의 정확성을 향상시키기 위해 사용됩니다. 데이터 증대에 대해서도 논의하며, 5~10세대 이상에 대해 딥러닝 모델을 훈련시키려면 RandomResizedCrop 및 "aug_transforms"를 사용해야 한다고 표시됩니다.

  • 00:20:00 이 YouTube 동영상은 분류자 해석 개체를 사용하여 데이터 세트에서 손실이 높은 위치를 확인하는 방법을 보여줍니다. 이 정보는 모델 교육에 사용되기 전에 데이터를 정리하는 데 사용할 수 있습니다.

  • 00:25:00 이 비디오는 2022년 코더를 위한 데이터 정리 및 실용적인 딥 러닝을 소개합니다. GPU 가속 데이터 정리 및 HuggingFace Spaces와 같은 도구를 사용한 데이터 준비에 이어 프로덕션에서 기계 학습 모델에 Gradio를 사용하는 방법을 다룹니다.

  • 00:30:00 이 비디오는 Git을 사용하여 코드를 관리하는 방법과 터미널을 사용하여 코드 작업을 수행하는 방법을 다룹니다. 비디오는 VS Code를 사용하여 코드를 편집하는 방법도 설명합니다.

  • 00:35:00 이 튜토리얼에서는 Kaggle 예제와 Colab 예제를 포함하여 몇 가지 다른 방법을 사용하여 딥 러닝 모델을 만드는 방법을 설명합니다. 모델이 생성되면 다운로드하여 코드와 동일한 디렉터리에 복사할 수 있습니다.

  • 00:40:00 이 단원에서 저자는 훈련된 학습자를 사용하여 이미지가 개인지 고양이인지 예측하는 방법을 보여줍니다. 학습자는 시간이 정지되어 쉽게 로드 및 언로드할 수 있습니다.

  • 00:45:00 이 비디오는 Gradio 인터페이스를 생성하여 이미지를 분류로 변환하는 방법과 이를 수행하기 위한 Python 스크립트를 생성하는 방법을 설명합니다.

  • 00:50:00 이 레슨에서 강사는 간단한 PyTorch 모델을 생성하고 Gradio에 업로드하는 방법을 시연합니다. 그는 또한 fastsetup을 사용하여 컴퓨터에 PyTorch 및 Jupyter 노트북을 설치하는 방법에 대한 지침을 제공합니다.

  • 00:55:00 이 비디오는 Pytorch 및 Numpy를 포함하여 Python 및 딥 러닝에 필요한 일부 라이브러리 설치 지침을 제공합니다. 저자는 시스템 파이썬 대신 맘바포지(mambaforge)와 같은 콘다 기반 파이썬 배포판을 사용할 것을 권장한다. 마지막으로 저자는 Jupyter Notebook을 사용하기 위해 nbdev를 설치할 것을 권장한다.

  • 01:00:00 이 레슨에서 강사는 딥 러닝 모델 훈련을 위한 무료 플랫폼인 Gradio를 사용하여 고양이와 개 이름을 예측하는 웹 사이트를 만드는 방법을 시연합니다. Streamlit은 Gradio보다 유연하지만 두 플랫폼 모두 무료이며 사용하기 쉽습니다.

  • 01:05:00 자바스크립트를 사용하여 딥러닝 모델을 만드는 방법을 설명하는 영상입니다. 튜토리얼에는 동일한 모델의 다중 파일 버전과 HTML 버전이 포함되어 있습니다.

  • 01:10:00 이 영상은 자바스크립트와 브라우저만을 사용하여 기본적인 딥러닝 앱을 만드는 방법을 설명합니다. 앱이 만들어지면 FastPages를 사용하여 앱처럼 보이는 웹사이트를 만들 수 있습니다.

  • 01:15:00 이 비디오에서 해커 Jeremy Howard는 딥 러닝을 사용하여 자신만의 웹 앱을 만드는 방법을 사람들에게 가르칩니다. 그는 먼저 Git에서 간단한 프로젝트를 설정하는 방법에 대해 설명하고 포옹하는 얼굴 공간을 사용하여 훈련할 모델을 업로드하는 방법을 보여줍니다. 다음으로 자연어 처리에 대해 설명하고 모델이 내부에서 작동하는 방식을 설명합니다. 마지막으로 그는 딥 러닝을 사용하여 텍스트를 인식하는 방법을 보여줍니다.
 

강의 3: 코더를 위한 실용적인 딥 러닝 2022



강의 3: 코더를 위한 실용적인 딥 러닝 2022

이 비디오는 코더를 위한 실용적인 딥 러닝을 소개합니다. 행렬 곱셈과 그래디언트의 기본 사항을 다루고 딥 러닝 모델을 사용하여 개와 고양이 품종의 확률을 예측하는 방법을 보여줍니다. 이 비디오는 행렬 곱셈이 직관적인 느낌을 얻는 데 오랜 시간이 걸리는 방법에 대한 논의를 포함하여 코더를 위한 딥 러닝에 대한 간략한 소개를 제공합니다. 다음 수업은 자연어 처리에 중점을 둘 것입니다. 자연어 처리는 텍스트 데이터를 가져와 산문을 기반으로 예측하는 것입니다.

  • 00:00:00 이 단원에서는 행렬 곱셈과 그래디언트를 다루며 수학에 관심이 많은 학생들을 대상으로 합니다. 이 과정에는 처음부터 Linux 상자를 설정하는 방법에 대한 "수업 제로"도 포함되어 있습니다.

  • 00:05:00 이번 주 비디오에는 딥 러닝과 관련된 다양한 프로젝트를 만든 다섯 명의 학생이 등장합니다. 한 학생은 마블 탐지기를 만들었고, 다른 학생은 컴퓨터가 항상 지는 게임을 만들었고, 다른 학생은 평균 온도를 예측하는 응용 프로그램을 만들었습니다.

  • 00:10:00 이 비디오는 다양한 플랫폼 및 딥 러닝 라이브러리 사용을 포함하여 코더를 위한 실용적인 딥 러닝을 다룹니다. 모델을 교육하고 프로덕션 환경에 배포하는 방법을 다룹니다.

  • 00:15:00 이 수업에서 학생은 딥 러닝이 작동하는 방식과 다양한 딥 러닝 모델을 사용하는 방법을 설명합니다. 그는 또한 딥 러닝 모델을 사용하여 개와 고양이 품종의 확률을 예측하는 방법을 보여줍니다.

  • 00:20:00 이 비디오에서는 딥 러닝 모델을 시연합니다. 모델은 레이어로 구성되며 각 레이어에는 코드와 매개변수가 포함됩니다. 이 모델은 유연하며 데이터의 패턴을 인식하도록 훈련할 수 있습니다.

  • 00:25:00 이 단원에서 강사는 함수의 부분 적용을 사용하여 데이터 세트에 맞는 함수를 만드는 방법을 보여줍니다. 그런 다음 함수를 플로팅하는 방법과 데이터에 더 잘 맞도록 함수의 계수를 조정하는 방법을 보여줍니다.

  • 00:30:00 이 비디오는 손실 함수를 사용하여 값을 예측하는 컴퓨터의 능력을 향상시키는 방법을 설명합니다. 저자는 그래픽 슬라이더 기반 모델에서 슬라이더를 이동하고 손실 기능이 좋아지는지 또는 나빠지는지 확인하여 이를 수행하는 방법을 보여줍니다. Pytorch는 기울기를 자동으로 계산하여 프로세스를 빠르고 쉽게 만듭니다.

  • 00:35:00 이 비디오에서 Pytorch 프로그래머는 그래디언트 함수를 사용하여 이차 방정식의 계수를 조정하는 방법을 설명합니다. 그래디언트 함수는 적용되는 곡선 기울기의 음수 값을 반환합니다.

  • 00:40:00 이 비디오는 Pytorch를 사용하여 딥 러닝 모델을 만드는 방법을 설명합니다. 모델은 경사 하강법을 사용하여 최적화되며 최종 계수는 수학 함수 rectified_linear()에 의해 결정됩니다.

  • 00:45:00 이 동영상에서 Jeremy는 경사 하강법을 사용하여 딥 러닝 모델에서 매개변수를 최적화하는 방법을 설명합니다. 이것은 실생활에서 모델을 훈련시키는 데 사용되는 것과 동일한 기술입니다.

  • 00:50:00 이 YouTube 동영상은 코더를 위한 실용적인 딥 러닝과 정확성과 속도를 위한 학습 모델에 대해 설명합니다. 잘 조정되고 정확한 모델로 시작하여 점차 더 많은 데이터를 추가하여 정확도가 향상되는지 확인하는 것이 좋습니다.

  • 00:55:00 이 비디오에서 저자는 도함수를 사용하여 함수의 기울기를 계산하는 방법에 대해 설명합니다. 저자는 그래디언트를 따라 너무 멀리 점프하고 발산하는 것을 방지하기 위해 그래디언트에 학습률이라고 하는 작은 수를 곱할 것을 권장합니다.

  • 01:00:00 이 단원에서 강사는 실제 데이터에 대해 딥 러닝 계산을 수행하기 위해 행렬 곱셈을 수행하는 방법을 보여줍니다. 그는 이를 수행할 수 있는 쉬운 방법을 제공하는 웹 사이트를 제공합니다.

  • 01:05:00 연사가 딥 러닝을 사용하여 실제 타이타닉에 탑승한 승객의 생존 여부를 예측하는 방법을 설명합니다. 먼저 예측과 관련이 없는 열을 제거한 다음 각 행에 종속 변수에 해당하는 계수를 곱합니다. 다음으로 그들은 "사우샘프턴에서 출발했습니까?"라는 칼럼을 만듭니다. 그리고 "그들이 Cherbourg에 착수 했습니까? "라는 또 다른 칼럼이 있습니다. 이를 이진 범주형 변수로 변환합니다. 마지막으로 모든 계수의 평균을 취하여 종속 변수를 예측하는 데 사용합니다.

  • 01:10:00 이 단원에서는 선형 회귀를 사용하여 코딩 문제에 딥러닝을 적용하는 방법을 설명합니다. 먼저 데이터를 정규화하고 로그 변환하여 보다 고르게 분포되도록 합니다. 다음으로 Excel의 SumProduct 함수를 사용하여 계수를 계산합니다. 마지막으로 경사하강법을 사용하여 손실 함수를 최적화합니다.

  • 01:15:00 이 비디오에서는 Microsoft Excel을 사용하여 처음부터 딥 러닝 모델을 만듭니다. 이 모델은 생존율을 예측할 때 회귀보다 더 잘 수행되지만 실행하기가 더 느리고 더 고통스럽습니다. 행렬 곱셈은 프로세스 속도를 높이는 데 사용됩니다.

  • 01:20:00 이 비디오는 행렬 곱셈이 직관적인 느낌을 얻는 데 시간이 오래 걸리는 방법에 대한 설명을 포함하여 코더를 위한 딥 러닝에 대한 간략한 소개를 제공합니다. 다음 수업은 자연어 처리에 중점을 둘 것입니다. 자연어 처리는 텍스트 데이터를 가져와 산문을 기반으로 예측하는 것입니다.

  • 01:25:00 이 비디오는 영어가 아닌 언어로 분류하기 위해 딥 러닝을 사용하는 방법에 대한 단계별 가이드를 제공합니다.

  • 01:30:00 이 비디오에서 발표자는 딥 러닝에서 유효성 검사 세트 및 메트릭의 중요성에 대해 설명합니다.
 

레슨 4: 코더를 위한 실용 딥 러닝 2022



레슨 4: 코더를 위한 실용 딥 러닝 2022

이 비디오는 Coders 2022 경쟁을 위한 딥 러닝 모델을 구축하는 방법을 설명합니다. 저자는 유효성 검사 세트를 만드는 방법, 경쟁 데이터를 사용하여 모델의 성능을 테스트하는 방법 및 실제 환경에서 과적합을 방지하는 방법을 다룹니다. 이 비디오에서 Jeremy는 Pearson 상관 계수를 사용하여 두 변수 간의 관계를 측정하는 방법과 Pytorch를 사용하여 fast.ai 학습자처럼 작동하는 모델을 교육하는 방법을 설명합니다. 그는 또한 NLP 기술로 생성된 예측의 문제와 시그모이드 함수를 사용하여 해결할 수 있는 방법에 대해 설명합니다.

  • 00:00:00 이 비디오는 fast.ai와 다른 라이브러리를 사용하여 사전 학습된 자연어 처리 모델을 미세 조정하는 방법을 설명합니다.

  • 00:05:00 이 비디오는 Coders 2022 알고리즘을 위한 Practical Deep Learning인 ULMFiT을 다룹니다. ULMFiT은 fast.ai 과정에서 처음 제시된 기계 학습 알고리즘이었습니다. ULMFiT는 나중에 저자에 의해 학술 논문으로 바뀌었습니다. Wikipedia 및 IMDB 영화 리뷰에 대한 교육 후 알고리즘은 리뷰의 감정을 70% 정확도로 예측할 수 있었습니다.

  • 00:10:00 이 수업에서 Jeremy는 기계 학습에 대한 Transformers 마스킹된 언어 모델 접근 방식의 기본 사항을 설명했습니다. 그는 이 접근 방식이 ULMFiT 접근 방식보다 대중적이며 변압기 모델에 5개의 계층이 있다고 언급했습니다. John은 다음 단어를 예측하는 모델에서 분류에 사용할 수 있는 모델로 이동하는 방법에 대해 질문했습니다. Jeremy는 첫 번째 레이어에 에지 검출기와 그래디언트 검출기가 필요하고 마지막 레이어에는 예측하는 각 범주에 대한 활성화가 있을 것이라고 말했습니다. 그는 마지막에 새로운 랜덤 매트릭스를 점진적으로 추가함으로써 이 모델을 훈련시킬 수 있다고 말했습니다.

  • 00:15:00 Kaggle 대회 "미국 특허 구문 간 일치 대회"에는 어떤 앵커 및 대상 쌍이 동일한 내용에 대해 이야기하고 있는지 자동으로 결정할 수 있는 모델이 필요합니다. 이 비디오에서 발표자는 NLP 기술을 활용하기 위해 데이터를 분류 문제로 전환할 것을 제안합니다.

  • 00:20:00 이 비디오는 이미 쉼표로 구분된 값(CSV) 형식으로 저장된 데이터 세트로 작업하여 실용적인 방식으로 분류에 딥 러닝을 사용하는 방법을 설명합니다. 이 동영상에서는 pandas를 사용하여 데이터를 읽는 방법도 다룹니다.

  • 00:25:00 이 비디오는 딥 러닝을 위한 네 가지 라이브러리(numpy, matplotlib, pandas 및 pytorch)의 사용을 다룹니다. 저자는 이러한 라이브러리에 익숙하지 않은 경우 Wes McKinney의 "Python for Data Analysis"를 읽을 것을 권장합니다. 신경망 훈련의 첫 번째 단계는 데이터를 토큰화하는 것이고 두 번째 단계는 네트워크를 훈련시키는 것입니다.

  • 00:30:00 이 비디오에서 발표자는 텍스트를 토큰으로 토큰화하고 토큰을 수치화하여 Hugging Face "데이터 세트"를 만드는 방법을 설명합니다. 발표자는 토큰화를 위해 사전 훈련된 모델을 사용할 것을 권장하고 사용 가능한 여러 모델 중 일부를 설명합니다.

  • 00:35:00 이 비디오에서 발표자는 토크나이저를 사용하여 문장을 토큰화하는 방법과 토큰을 숫자로 변환하는 방법을 설명합니다. 데이터 세트는 원래 데이터 세트와 동일하지만 토크나이저로 인해 토큰화된 데이터 세트가 달라집니다.

  • 00:40:00 영상은 딥 러닝이 가능하도록 텍스트 문자열을 숫자로 바꾸는 방법에 대해 설명하고 정보가 제공되는 한 정해진 형식을 따를 필요가 없다고 설명합니다. 필드가 특히 긴 경우 변압기 접근 방식을 사용하는 것이 도움이 될 수 있습니다.

  • 00:45:00 이 비디오에서 저자는 기계 학습을 위한 별도의 교육, 검증 및 테스트 세트를 갖는 것의 중요성을 설명합니다. 다항식 회귀를 플로팅하는 방법을 보여주고 과소적합과 과적합의 차이를 설명합니다.

  • 00:50:00 이 비디오는 딥 러닝 모델을 위한 좋은 검증 세트를 만드는 방법과 경쟁 데이터를 사용하여 모델의 성능을 테스트하는 방법을 설명합니다. 또한 실제 환경에서 과적합을 방지하는 방법에 대해서도 설명합니다.

  • 00:55:00 이 비디오에서는 딥 러닝과 Coders 2022 대회를 위한 모델을 구축하는 방법에 대해 배웁니다. 유효성 검사 세트는 모델을 훈련하는 데 사용되지 않는 이미지 세트이고 테스트 세트는 정확도를 측정하는 데 사용되는 또 다른 유효성 검사 세트라는 것을 배웁니다. 우리는 또한 두 개의 테스트 세트가 있음을 알게 됩니다. 하나는 경쟁 중에 순위표에 표시되고 두 번째 테스트 세트는 대회가 끝날 때까지 표시되지 않습니다.

  • 01:00:00 "Pearson 상관 계수"는 두 변수가 얼마나 유사한지 널리 사용되는 척도입니다. 예측이 실제 값과 매우 유사하면 "Pearson 상관 계수"가 높을 것입니다.

  • 01:05:00 이 1분 비디오는 Pearson 상관 계수를 사용하여 두 변수 간의 관계를 측정하는 방법을 설명합니다. 상관 계수는 두 변수가 얼마나 밀접하게 관련되어 있는지를 나타내는 척도이며 두 변수 간의 관계 강도를 평가하는 데 사용할 수 있습니다. 상관 계수는 산점도를 사용하여 시각화할 수 있으며 사용 중인 데이터 세트를 평가하는 데 유용할 수 있습니다.

  • 01:10:00 이 비디오에서 발표자는 딥 러닝 모델을 적절하게 교육하는 방법에 대해 설명합니다. 상관관계, 특이치, 데이터를 적절하게 분할하는 방법과 같은 주제를 다룹니다. 그런 다음 fast.ai에서 "학습자"로 모델을 교육하는 방법과 "배치 크기" 및 "에포크"를 사용하여 한 번에 처리되는 행 수를 제어하는 방법을 보여줍니다.

  • 01:15:00 Hugging Face 변환기는 다양한 작업에 대한 다양한 학습률을 제공하며 사전 훈련된 모델에서 시퀀스를 분류하는 데 적합한 모델을 제공합니다. 또한 데이터에서 이상값을 식별할 수 있습니다.

  • 01:20:00 이 수업에서 강사는 Pytorch를 사용하여 fast.ai 학습자처럼 작동하는 모델을 교육하는 방법을 설명합니다. 그는 이상값을 절대 삭제해서는 안 되지만 조사할 수 있고 필요한 경우 수정할 수 있다고 지적합니다.

  • 01:25:00 딥 러닝은 여러 응용 분야에서 사용되고 있는 강력한 기술입니다. 상대적으로 초보자에게 친숙하며 자연어 처리(NLP) 영역이 가장 큰 기회가 있는 곳입니다. 딥 러닝 NLP의 한 가지 가능한 용도는 소셜 미디어를 위한 상황에 맞는 산문을 만드는 것입니다. 이는 사람들이 세상을 보는 방식에 영향을 미칠 수 있습니다.

  • 01:30:00 이 비디오에서 John은 기계 학습과 같은 NLP 기술을 사용하여 특정 관점에 편향된 텍스트를 생성하는 방법을 설명합니다. 비디오는 또한 NLP 기술로 생성된 예측의 문제와 시그모이드 함수를 사용하여 해결할 수 있는 방법에 대해 설명합니다.
 

수업 5: 코더를 위한 실용적인 딥 러닝 2022



수업 5: 코더를 위한 실용적인 딥 러닝 2022

이 비디오는 딥 러닝을 사용하여 선형 모델을 구축하고 훈련하는 방법에 대한 자습서를 제공합니다. 비디오는 주어진 함수 내에서 변수 값을 변경하는 내부 작업에 대해 설명하는 것으로 시작합니다. 다음으로 동영상은 역방향 경사하강법을 사용하여 선형 모델의 손실을 계산하는 방법을 보여줍니다. 마지막으로 비디오는 선형 모델 내에서 계수를 초기화하고 업데이트하는 기능을 제공합니다. 비디오는 함수를 실행하고 손실을 인쇄하는 방법을 보여주면서 끝납니다. 이 비디오는 데이터 세트의 주어진 열에 대해 최상의 이진 분할을 계산하는 방법을 설명합니다. 이것은 비교를 위한 기준 모델을 제공하므로 기계 학습 대회에 특히 유용합니다.

  • 00:00:00 이 수업에서는 Jupyter Notebook을 사용하여 처음부터 선형 모델과 신경망을 다룹니다. 목표는 코드 뒤에 있는 논리를 이해하고 예상되는 출력을 얻는 것입니다.

  • 00:05:00 이 동영상은 Kaggle 설치 및 환경 변수 사용 방법, pandas로 CSV 파일을 읽는 방법, 누락된 값을 대치하는 방법과 같은 주제를 다루는 코더를 위한 실용적인 딥 러닝에 대해 설명합니다. 또한 모드와 데이터 프레임을 채우는 방법 및 축소를 사용하는 방법과 같은 Pandas의 기본 개념을 다룹니다.

  • 00:10:00 이 레슨에서 Jeremy는 pandas에서 fillna() 메서드를 사용하여 데이터 세트에서 누락된 값을 대치하는 방법을 설명합니다. 그는 대부분의 경우 이 "멍청한" 방법이 충분할 것이며 일반적인 방법이 여러 번 설명되지 않도록 데이터 세트의 기본 사항을 아는 것이 중요하다고 설명합니다. Javier는 모델에서 사용되지 않는 필드를 버릴 때의 장단점에 대해 묻습니다.

  • 00:15:00 이 단원에서 강사는 "더미 변수"의 개념과 이를 사용하여 보다 합리적인 방식으로 범주형 데이터를 나타내는 방법을 소개합니다. 그는 또한 데이터의 모든 숫자 및 숫자가 아닌 변수를 설명하는 방법을 보여줍니다.

  • 00:20:00 이 비디오에서 강사는 데이터 프레임의 열을 텐서로 전환하는 방법과 이러한 텐서를 사용하여 선형 모델과 신경망을 교육하는 방법을 보여줍니다. 그는 또한 행렬 및 요소별 곱셈을 수행할 때 일반 Python 대신 Pytorch를 사용하는 방법을 보여줍니다.

  • 00:25:00 이 비디오에서 강사는 Python에서 행렬-벡터 제품을 수행하는 방법에 대해 설명합니다. 그는 행렬에 벡터를 곱하는 예를 제시하고 수학자들이 행렬 대수학을 사용하여 동일한 연산을 수행할 수 있기 때문에 결과가 흥미롭다고 설명합니다. 그는 또한 의사 무작위 시퀀스를 시작하는 것이 재현 가능한 결과를 생성하는 데 중요하다고 설명합니다.

  • 00:30:00 이 비디오에서 저자는 방송이 작동하는 방식과 유용한 이유를 설명합니다. 브로드캐스팅은 각 값의 크기를 고려하여 여러 값을 함께 곱할 수 있는 기술입니다. 이를 통해 보다 간결하고 빠른 코드를 GPU에서 실행할 수 있습니다.

  • 00:35:00 이 비디오는 경사 하강 손실을 계산하여 딥 러닝 모델을 최적화하는 방법을 설명합니다. 저자는 손실을 계산하는 함수를 만든 다음 이 함수를 Pytorch 세션으로 가져옴으로써 이를 수행하는 방법을 보여줍니다.

  • 00:40:00 이 YouTube 동영상은 딥 러닝을 사용하여 선형 모델을 구축하고 교육하는 방법에 대한 자습서를 제공합니다. 비디오는 주어진 함수 내에서 변수 값을 변경하는 내부 작업에 대해 설명하는 것으로 시작합니다. 다음으로 동영상은 역방향 경사하강법을 사용하여 선형 모델의 손실을 계산하는 방법을 보여줍니다. 마지막으로 비디오는 선형 모델 내에서 계수를 초기화하고 업데이트하는 기능을 제공합니다. 비디오는 함수를 실행하고 손실을 인쇄하는 방법을 보여주면서 끝납니다.

  • 00:45:00 이 1분 동영상은 타이타닉에서 살아남은 사람을 예측하는 딥 러닝 모델의 정확도 함수를 만드는 방법을 설명합니다. 이 함수는 숫자가 너무 크거나 작을 때 1로 점근하는 수학 함수인 시그모이드 함수를 기반으로 합니다.

  • 00:50:00 이 비디오에서 John은 시그모이드 함수를 사용하여 신경망을 최적화하는 방법을 설명합니다. 그는 또한 fast.ai를 사용하여 범주 블록 종속 변수를 처리하는 방법을 설명합니다.

  • 00:55:00 이 비디오에서 저자는 Pytorch를 사용하여 Python에서 처음부터 모델을 빌드하는 방법과 모델을 Kaggle에 제출하는 방법을 설명합니다. 저자는 "matrix-multiply" 연산자가 행렬 곱셈을 의미하지만 Python에는 연산자 구현이 제공되지 않는다고 언급합니다.

  • 01:00:00 이 비디오에서 발표자는 Pytorch를 사용하여 신경망을 만드는 방법을 설명합니다. 첫 번째 단계는 첫 번째 열의 계수 합계로 행렬을 만드는 것입니다. 그런 다음 이 행렬에 훈련 데이터 벡터를 곱합니다. 두 번째 단계는 숨겨진 활성화로 두 번째 행렬을 만드는 것입니다. 그런 다음 이 행렬에 첫 번째 열의 계수를 곱합니다. 마지막 단계는 벡터를 중앙 집중화하고 신경망을 훈련시키는 것입니다.

  • 01:05:00 이 비디오에서 Jeremy는 딥 러닝을 사용하여 신경망을 교육하는 방법을 설명합니다. 그는 네트워크를 훈련시키기 위해 먼저 기울기를 계산하고 계수를 초기화해야 한다고 설명합니다. 다음으로 기울기에서 계수를 빼는 update_coeffs()를 실행합니다. 마지막으로 그는 네트워크를 훈련하고 그 결과를 선형 모델과 비교합니다.

  • 01:10:00 이 비디오는 딥 러닝 모델을 초기화하는 방법, 계수를 업데이트하는 방법 및 모든 계층을 반복하는 방법을 설명합니다. 또한 딥 러닝이 작은 데이터 세트에서 그다지 효과적이지 않을 수 있는 이유와 딥 러닝 모델로 좋은 결과를 얻는 방법에 대해서도 설명합니다.

  • 01:15:00 이 레슨에서 저자는 딥 러닝 프레임워크를 사용하는 방법을 가르치고 처음부터 수행하는 것보다 훨씬 쉬운 방법을 보여줍니다. 저자는 또한 Pandas를 사용한 기능 엔지니어링에 대한 자습서를 제공합니다.

  • 01:20:00 이 비디오에서 트레이너는 fastai 라이브러리를 사용하여 딥 러닝 모델의 학습 속도를 권장하는 방법을 보여줍니다. 그는 여러 시대를 실행하는 방법을 보여주고 모델의 예측을 다른 두 모델의 예측과 비교합니다. 마지막으로 앙상블 함수를 사용하여 행에 대해 평균을 내는 5개의 예측 집합을 만드는 방법을 보여줍니다.

  • 01:25:00 이 비디오에서 John은 랜덤 포레스트가 작동하는 방식과 인기 있는 기계 학습 알고리즘인 이유를 설명합니다. 그는 또한 편리한 바로 가기를 사용하여 필요한 모든 모듈을 가져오는 방법을 보여줍니다.

  • 01:30:00 이 비디오에서 Pandas는 딥 러닝이 작동하는 방식과 이를 코딩 문제에 적용하는 방법을 설명합니다. 랜덤 포레스트 알고리즘이 도입되었으며 이 기술을 사용하여 범주형 변수를 사용하여 만든 예측의 정확도를 향상시킬 수 있음을 보여줍니다.

  • 01:35:00 이 1단락 요약에서는 두 데이터 그룹의 표준 편차 점수를 추가하는 간단한 방법을 사용하여 이진 분할 점수를 매기는 방법을 설명합니다. 가장 작은 점수를 가진 분할 지점 목록에 가장 작은 인덱스를 계산하여 최상의 분할 지점을 찾습니다.

  • 01:40:00 이 단원에서 강사는 데이터 세트의 지정된 열에 대해 최상의 이진 분할을 계산하는 방법을 설명합니다. 이것은 비교를 위한 기준 모델을 제공하므로 기계 학습 대회에 특히 유용합니다.
 

레슨 6: 코더를 위한 실용 딥 러닝 2022



레슨 6: 코더를 위한 실용 딥 러닝 2022

이 YouTube 동영상은 코더를 위한 딥 러닝을 시작하는 방법에 대한 가이드를 제공합니다. 주요 초점은 코더를 위한 실용적인 딥 러닝에 있으며 경쟁을 설정하고 유효성 검사 세트를 가져오고 빠르게 반복하는 방법에 대한 팁이 있습니다. 이 비디오는 또한 기능 중요도 및 부분 의존도 플롯의 중요성과 머신 러닝 모델을 사용하여 생성하는 방법에 대해 설명합니다.

이 비디오는 딥 러닝을 사용하여 코딩 프로젝트의 정확도를 개선하는 방법에 대한 개요를 제공합니다. 데이터 세트는 종종 다양한 입력 크기와 종횡비를 가질 수 있어 직사각형으로 정확한 표현을 생성하기 어렵다고 설명합니다. 대부분의 경우에 잘 작동하는 것으로 밝혀진 사각형 표현을 대신 사용할 것을 제안합니다.

  • 00:00:00 이 단원에서 저자는 타이타닉에서 살아남을 수 있는 남성을 예측하기 위해 결정 트리를 만드는 방법을 보여줍니다.

  • 00:05:00 비디오는 최대 4개의 리프 노드가 있는 의사 결정 트리 분류자를 만드는 방법에 대해 설명합니다. 트리를 자동으로 생성할 수 있으며 지니계수를 계산하는 코드를 제공합니다. 결정 트리의 평균 절대 오차는 0.407로 계산됩니다.

  • 00:10:00 이 비디오는 Kaggle 대회의 데이터를 사용하여 승객 운임 분류를 예측하는 의사 결정 트리를 구축하는 방법을 설명합니다. 의사결정 트리는 효율적이고 사전 처리가 필요하지 않으므로 테이블 형식 데이터에 적합한 옵션입니다.

  • 00:15:00 Leo Breiman의 "배깅(bagging)" 기술은 어떤 개별 모델보다 나은 편향되지 않은 많은 수의 모델을 만드는 데 사용됩니다. 이는 의사 결정 트리가 구축될 때마다 데이터의 하위 집합을 임의로 선택하고 해당 데이터를 사용하여 모델을 훈련함으로써 수행됩니다.

  • 00:20:00 이 레슨에서는 구현이 간단하고 작은 데이터 세트에서 잘 수행되는 기계 학습 알고리즘인 Random Forest를 만드는 방법을 배웠습니다. 또한 학습 데이터에서 어떤 기능이 가장 중요한지 결정하는 데 도움이 되는 기능 중요도 플롯을 사용하는 방법도 보여 주었습니다.

  • 00:25:00 이 비디오에서 John은 Random Forest의 작동 방식과 트리 수를 늘리면 항상 오류율이 더 높아지는 이유를 포함하여 딥 러닝의 기본 사항을 다룹니다. 그런 다음 Jeremy는 Random Forest를 사용하여 유효성 검사 세트 없이 대규모 데이터 세트의 결과를 예측하는 방법을 설명합니다.

  • 00:30:00 이 비디오는 기계 학습 모델 교육에 사용되지 않는 데이터에 대한 예측의 정확도를 측정하는 Out-of-Bag 오류 또는 OOB 오류를 계산하는 방법을 설명합니다. OOB 오류가 높으면 모델이 데이터를 올바르게 예측하지 못하고 있음을 나타냅니다.

  • 00:35:00 동영상에서는 기능 중요도 및 부분 의존도 플롯의 중요성과 기계 학습 모델을 사용하여 이를 만드는 방법에 대해 설명합니다.

  • 00:40:00 이 비디오에서 Jeremy는 Random Forest 모델의 작동 방식과 특성 중요도 플롯을 해석하는 방법을 설명합니다. 그는 또한 Random Forest 모델이 다른 설명 가능성 기술보다 더 신뢰할 수 있다고 언급합니다.

  • 00:45:00 랜덤 포레스트는 특히 예측에 뛰어난 기계 학습 알고리즘입니다. 그러나 더 많은 트리를 추가하면 모델이 더 정확해지고 과적합이 문제가 되지 않습니다. Gradient Boosting은 Random Forest와 유사한 기계 학습 알고리즘이지만 트리를 반복해서 피팅하는 대신 데이터 분할이 거의 발생하지 않는 매우 작은 트리를 피팅합니다.

  • 00:50:00 이 비디오는 그래디언트 부스팅 머신(GBM)이 랜덤 포레스트보다 더 정확하지만 GBM으로 과대적합할 수 있는 방법을 설명합니다. 이 연습에서는 Kaggle 대회를 선택하고 최고의 자리를 차지하는 방법을 보여줍니다.

  • 00:55:00 이 YouTube 동영상은 코더를 위한 딥 러닝을 시작하는 방법에 대한 가이드를 제공합니다. 주요 초점은 코더를 위한 실용적인 딥 러닝에 있으며 경쟁을 설정하고 유효성 검사 세트를 가져오고 빠르게 반복하는 방법에 대한 팁이 있습니다.

  • 01:00:00 이 비디오는 FastKaggle을 사용하여 딥 러닝 모델을 교육하는 방법을 설명합니다. 가로세로 비율에 따라 크기가 변할 수 있으므로 이미지 작업 시 주의가 필요하다고 설명합니다. 비디오는 또한 "squish"라는 기능을 사용하여 이미지 크기를 조정하는 방법을 보여줍니다.

  • 01:05:00 이 비디오에서 강사는 빠른 AI 라이브러리 show_batch()를 사용하여 기계 학습 모델에 대한 데이터가 어떤 것인지 빠르게 확인하는 방법에 대해 설명합니다. 그는 빠른 훈련 성능과 정확성을 위해 resnet26d를 사용할 것을 권장합니다.

  • 01:10:00 이 비디오는 데이터 로더와 모델의 예측 및 레이블이 포함된 CSV 파일을 사용하여 딥 러닝 모델을 Kaggle에 1분 이내에 제출하는 방법을 보여줍니다.

  • 01:15:00 발표자는 정리된 상태로 유지하기 위해 필요에 따라 노트북을 복제하고 이름을 바꾸는 Kaggle의 공개 노트북 생성 전략을 공유합니다. 그는 이 낮은 기술 접근 방식이 자신에게 적합하며 일반적으로 한 번에 하나의 노트북만 제출한다고 말합니다.

  • 01:20:00 발표자는 AutoML 프레임워크 및 랜덤 포레스트를 포함하여 딥 러닝을 위한 다양한 방법에 대한 간략한 개요를 제공합니다. 그는 학습률 측정기를 사용하여 모델을 과도하게 훈련하는 것을 피하고 가능한 경우 딥 러닝에 GPU를 사용할 것을 권장합니다.

  • 01:25:00 이 레슨에서 저자는 다른 컨볼루션 신경망(CNN) 아키텍처를 사용하여 Kaggle 경쟁에서 반복 속도를 높이는 방법을 설명합니다. 그는 또한 경험 법칙을 사용하여 올바른 CNN 크기를 선택하는 방법을 보여줍니다.

  • 01:30:00 이 비디오에서 발표자는 자르기 및 패딩을 비롯한 다양한 사전 처리 기술을 사용하여 딥 러닝 모델의 성능을 개선하는 방법에 대해 설명합니다. 그는 또한 TTA(Test Time Augmentation)가 이미지의 여러 버전을 평균화하여 모델의 성능을 향상시킬 수 있다고 언급합니다.

  • 01:35:00 이 비디오에서 Jeremy는 딥 러닝을 사용하여 컴퓨터 비전 모델의 정확도를 개선하는 방법에 대해 설명합니다. 그는 훈련된 이미지를 다양화하여 모델의 정확도를 향상시킬 수 있다고 언급하고 pandas를 사용하여 이를 수행하는 방법의 예를 제공합니다. 그는 또한 딥 러닝 알고리즘이 얼마나 빠르게 작동하는지, TTA(Test Time Augmentation)를 사용하여 훈련 프로세스의 속도를 높이는 방법을 설명합니다. 마지막으로 그는 Victor와 John이 물은 질문에 대한 요약을 제공합니다.

  • 01:40:00 이 비디오에서 Jeremy는 딥 러닝을 사용하여 코딩 프로젝트의 정확도를 개선하는 방법을 설명합니다. 그는 데이터 세트가 종종 다양한 입력 크기와 종횡비를 가질 수 있어 사각형으로 정확한 표현을 생성하기 어렵게 만든다고 지적합니다. 그는 대부분의 경우에 잘 작동하는 것으로 알려진 정사각형 표현을 대신 사용할 것을 제안합니다.
 

수업 7: 코더를 위한 실용적인 딥 러닝 2022



수업 7: 코더를 위한 실용적인 딥 러닝 2022

Practical Deep Learning for Coders 2022의 7과에서 Jeremy는 더 큰 모델에 필요한 메모리를 줄여 딥 러닝 모델을 확장하는 방법을 설명합니다. 그는 모든 미니 배치의 루프마다 가중치를 업데이트하지 않고 대신 몇 번에 한 번씩 업데이트하여 더 큰 GPU 없이도 더 큰 배치 크기를 사용할 수 있는 그래디언트 누적이라는 트릭을 시연합니다. 또한 Jeremy는 교차 엔트로피 손실이라는 다른 손실 함수를 사용하여 이미지에 있는 벼의 종류와 질병을 모두 예측하는 딥 러닝 모델과 k-겹 교차 검증에 대해 설명합니다. 전반적으로 비디오는 보다 복잡한 딥 러닝 모델을 구축하기 위한 실용적인 팁과 요령을 제공합니다.

이 비디오에서 연사는 PyTorch에서 협업 필터링 및 내적을 사용하여 추천 시스템을 만드는 방법을 살펴봅니다. 그는 영화 등급의 행렬 곱셈 예측을 설명하고 예측 등급이 실제 등급과 얼마나 잘 일치하는지 측정하는 손실 함수를 계산합니다. 그는 더미 변수가 있는 행렬 곱셈기의 속도를 높일 수 있는 임베딩의 개념을 소개합니다. 그런 다음 발표자는 매트릭스에 바이어스 및 정규화를 추가하여 사용자 등급을 차별화하고 과적합을 방지하는 방법을 설명합니다. 마지막으로 하이퍼파라미터 검색 주제에 대해 논의하며 정확한 권장 사항을 위한 세분화된 데이터의 필요성을 강조합니다. 전반적으로 비디오는 복잡한 딥 러닝 개념을 분해하여 시청자에게 실질적인 이해를 제공합니다.

  • 00:00:00 이 섹션에서 강사는 모델을 더 확장하기 위한 간단한 요령을 소개합니다. 여기에는 더 큰 모델에 필요한 메모리를 줄이는 것이 포함됩니다. 더 큰 모델을 사용하면 매개변수가 많을수록 더 복잡한 기능을 찾을 수 있으므로 더 정확해집니다. 그러나 더 큰 모델은 계산해야 하는 활성화 또는 기울기가 많은 GPU 메모리를 소비하고 사용 가능한 메모리가 부족할 경우 오류 메시지가 표시되기 때문에 단점이 있습니다. 강사는 이 문제를 피하고 Kaggle의 16Gig GPU에서도 x-large 모델을 사용하는 방법을 설명합니다.

  • 00:05:00 비디오의 이 섹션에서 Jeremy는 Kaggle에서 딥 러닝 모델을 실행하는 실용성과 빠른 해킹 방법을 사용하여 모델의 메모리 사용량을 결정하는 방법에 대해 설명합니다. 그는 더 큰 GPU를 구입할 필요가 없도록 "cuda 메모리 부족 오류"로 모델이 충돌하는 경우 사용할 수 있는 그래디언트 누적이라는 트릭을 시연합니다. 배치 크기와 이미지 수를 조정하면 모델이 학습 속도에 영향을 주지 않으면서 가능한 최소한의 메모리를 사용하도록 할 수 있습니다.

  • 00:10:00 이 섹션에서 발표자는 기울기 누적의 개념에 대해 논의합니다. 이는 모든 미니 배치에 대해 루프를 통과할 때마다 가중치를 업데이트하는 것이 아니라 몇 번에 한 번씩 수행한다는 아이디어입니다. 그래디언트가 여러 개의 작은 배치에 누적될 수 있으므로 더 큰 GPU 없이도 더 큰 배치 크기를 사용할 수 있습니다. 결과는 배치 정규화를 사용하지 않는 아키텍처에 대해 수치적으로 동일하지만 사용하는 아키텍처에 대해 더 많은 변동성을 유발할 수 있습니다. 전반적으로 그래디언트 누적은 더 큰 모델을 훈련하는 데 중요한 의미가 있는 간단한 아이디어입니다.

  • 00:15:00 이 섹션에서 Jeremy는 lr_find() 및 기울기 누적과 관련된 포럼의 질문에 대해 논의합니다. 그는 lr_find()가 데이터 로더 배치 크기를 사용하고 기울기 누적을 통해 다양한 배치를 실험하여 다양한 아키텍처에 대한 최적의 크기를 찾을 수 있다고 설명합니다. Jeremy는 GPU에 맞는 가장 큰 배치 크기를 선택할 것을 권장하지만 항상 가장 큰 배치 크기를 사용할 필요는 없다고 언급합니다. 경험 법칙은 배치 크기를 2로 나누고 학습률을 2로 나누는 것입니다. 마지막으로 Jeremy는 배치 크기를 원하는 누적 값으로 나누고 학습자를 생성할 때 GradientAccumulation 콜백을 전달하여 fastai에서 그래디언트 누적을 사용하는 방법을 시연하여 16GB 카드에서 여러 모델을 교육할 수 있도록 합니다.

  • 00:20:00 이 섹션에서 발표자는 크기가 고정된 사전 훈련된 변환기 모델 vit, swinv2 및 swin을 사용하는 방법에 대해 설명합니다. 이 문제를 해결하려면 최종 크기가 정사각형이어야 하며 필요한 크기여야 합니다. 프리젠터는 아키텍처 및 사전 처리 세부 정보 사전을 사용하여 교육 경로를 다시 모든 이미지 사용으로 전환하고 각 아키텍처 및 변환 크기를 반복하여 각 모델을 교육합니다. 훈련 스크립트는 각 질병에 대한 인덱스 목록을 생성하기 위해 배깅을 통해 나중에 평균화되는 목록에 추가되는 tta 예측을 반환합니다. 출품작을 정기적으로 제출함으로써 발표자는 결과를 개선하고 최고의 리더보드 위치를 확보할 수 있었습니다.

  • 00:25:00 이 섹션에서 Jeremy는 k-겹 교차 검증의 개념과 그가 앙상블 모델로 수행한 작업과 유사한 방식에 대해 설명합니다. 그는 k-겹 교차 검증이 데이터가 5개의 하위 집합으로 분할되고 모델이 겹치지 않는 검증 집합으로 각 하위 집합에서 훈련된 다음 앙상블되는 것이라고 설명합니다. 잠재적으로 그의 방법보다 더 나을 수 있지만 Jeremy는 모델을 쉽게 추가하고 제거할 수 있기 때문에 앙상블을 선호합니다. Jeremy는 또한 그래디언트 누적과 실제 단점이나 잠재적 문제가 없는 방법에 대해 논의하고 비싼 그래픽 카드보다 메모리가 적은 저렴한 그래픽 카드를 구입할 것을 권장합니다. 마지막으로 그는 Nvidia가 GPU를 위한 유일한 게임이며 소비자 RTX 카드는 값비싼 엔터프라이즈 카드만큼 우수하다고 언급합니다.

  • 00:30:00 이 섹션에서 Jeremy는 딥 러닝을 위한 GPU 투자의 이점에 대해 논의하고 GPU를 클라우드 컴퓨팅에 사용하기 때문에 비용이 많이 들 수 있음을 인정합니다. 그는 또한 더 작은 모델을 훈련하여 더 큰 모델과 동일한 활성화를 생성하는 방법에 대해서도 설명합니다. 이에 대해서는 2부에서 다룰 것입니다. 비디오의 나머지 부분은 이미지의 질병과 벼 유형을 모두 예측하는 모델 구축에 중점을 둡니다. , 두 개의 종속 변수가 있는 데이터 로더가 필요합니다. Jeremy는 DataBlock을 사용하여 여러 종속 변수가 있는 로더를 만드는 방법을 설명하고 입력 범주와 출력 범주를 구별하는 방법을 시연합니다.

  • 00:35:00 이 섹션에서는 강사가 이미지에 있는 쌀의 종류와 질병을 모두 예측하는 딥 러닝 모델을 만드는 방법을 설명합니다. 이를 달성하기 위해 get_y 함수는 두 개의 서로 다른 레이블이 있는 배열을 가져와야 합니다. 하나는 질병을 나타내는 상위 디렉토리의 이름이고 두 번째는 다양성입니다. 교사는 파일 이름의 데이터 프레임에서 위치를 가져와 다양한 열을 반환하는 함수를 만듭니다. 마지막으로 그들은 20가지를 예측하는 모델을 만듭니다. 10가지 질병 각각과 10가지 변종의 확률입니다. 새 데이터 세트로 작업하려면 두 개가 아닌 세 가지를 처리하도록 오류율 지표를 수정해야 합니다.

  • 00:40:00 이 섹션에서 발표자는 종속 변수가 범주일 때 교차 엔트로피 손실이라는 다른 손실 함수의 필요성을 설명합니다. fastai의 vision_learner는 이전에 교차 엔트로피 손실을 추측하고 사용했지만 이제 발표자는 스프레드시트의 도움을 받아 어떻게 작동하는지 자세히 설명합니다. 5개 범주가 있는 모델의 출력으로 시작하여 연사는 softmax 함수를 사용하여 모델 출력을 확률로 변환하는 방법을 시연합니다. 출력이 확률이면 교차 엔트로피 손실 함수를 사용하여 예측 확률과 실제 확률 간의 차이를 측정하고 모델이 얼마나 잘 수행되는지 확인합니다.

  • 00:45:00 이 섹션에서는 softmax에 대해 알아보고 미리 선택된 범주에서 특정 항목을 예측하는 데 어떻게 사용되는지 알아봅니다. 교차 엔트로피 손실을 계산하는 데 사용되는 공식에는 확률과 실제 목표 값을 곱한 다음 합계를 구하는 것이 포함됩니다. softmax의 로그는 계산 속도를 높이는 데 사용됩니다. 결과는 교차 엔트로피 손실을 계산하기 위해 각 행에 대해 합산되는 단일 확률 값입니다.

  • 00:50:00 이 섹션에서는 강사가 이진 교차 엔트로피 손실 함수와 이를 여러 대상에 사용하는 방법을 설명합니다. 그는 pytorch에 클래스와 함수라는 두 가지 버전의 손실 함수가 있으며 이를 사용하는 방법을 보여줍니다. 다중 대상 모델을 생성할 때 비전 학습자는 20개의 출력이 필요하며 10개는 질병을 예측하고 10개는 다양성을 예측합니다. 강사는 이 모델을 만드는 방법을 시연한 다음 교육합니다. 전반적으로 이 모델은 두 번째 대상 집합을 추가한 것을 제외하고는 이전 모델과 동일합니다.

  • 00:55:00 이 섹션에서는 모델이 손실 함수를 통해 예측하는 내용을 아는 방법에 대해 알아봅니다. 입력 값의 처음 10개 열은 질병 확률을 예측하고 두 번째 10개 열은 다양성의 확률을 나타냅니다. 교차 엔트로피를 사용하여 질병 및 다양한 목표 값을 모두 고려하여 이 두 값을 예측하여 손실 함수를 생성합니다. 처음 10개의 열이 질병을 잘 예측하고 두 번째 10개가 다양성을 예측하면 손실 함수가 줄어들어 각 열을 효과적으로 사용하는 계수가 더 좋아집니다. 교육 기간 내내 질병 및 다양성 예측에 대한 오류율을 계산하고 추적합니다. 다중 대상 모델을 사용하여 더 오래 훈련하면 서로 다른 대상을 인식하는 데 도움이 되는 특정 기능으로 인해 단일 대상 모델보다 질병 예측이 더 나은 경우가 있습니다.

  • 01:00:00 비디오의 이 섹션에서 발표자는 여러 가지를 예측하는 모델 구축의 이점에 대해 논의하고 시청자가 작은 데이터 세트에서 모델을 실험하도록 권장합니다. 그는 또한 추천 시스템의 개념을 가르치기 위해 영화 등급 데이터 세트를 사용하는 Collaborative Filtering Deep Dive 노트북을 소개합니다. 그는 이러한 유형의 데이터가 추천 시스템과 같은 산업에서 일반적이라고 설명하고 데이터 세트를 더 잘 이해하기 위한 교차 표의 예를 제공합니다. 그런 다음 스피커는 다음 노트북으로 다이빙하기 전에 휴식을 취합니다.

  • 01:05:00 이 섹션에서는 발표자가 협업 필터링 데이터 세트의 간격을 채우는 방법을 설명합니다. 협업 필터링은 많은 사용자로부터 수집된 데이터를 사용하여 사용자에게 제품을 추천하는 데 도움이 됩니다. 사용자가 특정 영화를 좋아할지 여부를 파악하기 위해 화자는 벡터 분석을 통해 사용자 선호도와 영화 유형의 해당 값을 곱하는 방법을 제안합니다. 그러나 사용자나 영화에 대한 정보가 제공되지 않기 때문에 화자는 누락된 데이터 포인트를 채울 잠재 요소를 생성할 것을 제안합니다. 가정된 잠재 요인을 사용하여 화자는 SGD를 사용하여 상관 관계를 찾고 가설을 생성할 것을 제안합니다.

  • 01:10:00 이 섹션에서는 행렬 곱셈을 사용하여 과거 등급을 기반으로 사용자의 영화 등급을 예측하는 방법을 설명합니다. 튜토리얼은 영화와 사용자의 잠재 요인에 임의의 값을 할당하고 내적을 수행하여 등급을 예측합니다. 그런 다음 손실 함수가 계산되고 Data Solver 도구를 사용하여 최적화가 수행됩니다. 영상은 최적화 후 실제 시청률과 비교하여 예상 시청률이 개선되었음을 보여줍니다. 비슷한 취향을 가진 사용자에게 비슷한 영화를 추천하는 매트릭스 완성 기법과 협업 필터링도 도입된다.

  • 01:15:00 이 섹션에서는 비디오에서 PyTorch에서 협업 필터링 및 내적을 사용하는 방법을 설명합니다. 두 벡터 사이 각도의 코사인은 상관 관계를 근사화할 수 있으며 정규화되면 동일합니다. Excel은 PyTorch에서 필요한 계산을 설명하는 데 사용됩니다. 이 비디오는 또한 종종 복잡한 수학적 도구로 생각되는 임베딩이 실제로는 사물을 찾는 데 사용되는 배열이라는 점에 주목합니다. 이 비디오는 모든 사람이 딥 러닝을 더 쉽게 이해할 수 있도록 혼란스러운 전문 용어를 분해하려고 합니다.

  • 01:20:00 이 섹션에서 Jeremy는 PyTorch에서 협업 필터링 데이터 로더를 사용하여 영화 등급 데이터로 작업하는 방법을 설명합니다. 영화 테이블을 등급 테이블과 병합하여 영화의 사용자 ID와 이름을 가져옵니다. CollabDataLoaders 함수는 등급, 사용자 ID 및 항목 제목 열이 있는 데이터 프레임에서 데이터를 로드하는 데 사용됩니다. 그런 다음 난수 행렬을 사용하여 사용자 및 영화 요소를 생성합니다. 여기서 해당 열의 수는 그가 만들고자 하는 요소의 수와 같습니다. 그는 또한 요인의 수를 결정하기 위해 미리 결정된 공식을 사용한다고 언급하는데, 이는 그의 직관에서 도출되고 함수 피팅을 통해 테스트됩니다.

  • 01:25:00 이 섹션에서 발표자는 원-핫 인코딩된 벡터를 사용하여 벡터에서 인덱스 번호를 조회할 수 있다고 설명합니다. 이는 원-핫 인코딩된 벡터의 내적을 취하는 것과 같습니다. 뭔가로. 임베딩은 무엇인가를 원-핫 인코딩된 벡터로 곱하기 위한 계산상의 지름길로 도입되어 더미 변수로 행렬 승수를 수행하는 속도를 높일 수 있습니다. 발표자는 또한 몇 가지 추가 기능을 제공하는 Module이라는 수퍼클래스를 포함하는 클래스인 Pytorch 모델의 생성을 소개합니다. dot product 객체는 dunder init 메서드를 호출하고 요인별 사용자 임베딩과 벡터별 동영상을 생성하는 모델을 생성하는 방법의 예로 사용됩니다.

  • 01:30:00 이 섹션에서는 강사가 PyTorch를 사용하여 "forward"라는 메서드를 호출하여 모델을 계산하는 방법을 설명합니다. 개체 자체와 계산 중인 데이터가 "전달"로 전달됩니다. 내적을 사용하고 PyTorch를 통해 데이터를 전달하는 것이 Excel을 사용하는 것보다 훨씬 빠릅니다. 그러나 이 모델은 예를 들어 아무도 영화를 1 미만으로 평가하지 않은 상태에서 가능한 가장 높은 값보다 큰 값을 예측하기 때문에 제대로 작동하지 않습니다. 강사는 시그모이드 함수를 사용하여 예측을 0에서 5.5 사이의 범위로 스쿼시하여 이 문제를 해결합니다. 이러한 변화에도 불구하고 손실은 크게 개선되지 않지만 강사는 높은 평가를 받은 일부 사용자에 대한 새로운 관찰을 도입하여 사용자 편향을 포함하면 모델을 개선할 수 있다고 제안합니다.

  • 01:35:00 이 섹션에서 화자는 영화 추천 모델에 사용되는 행렬에 바이어스를 추가하는 방법을 보여줍니다. 이러한 편향을 추가하면 더 낮거나 더 높은 등급을 부여하는 경향이 있는 사용자를 구별할 수 있습니다. 발표자는 또한 가중치 감쇠 또는 L2 정규화를 사용하여 과적합을 방지하는 방법에 대해서도 설명합니다. 발표자는 손실 함수에 가중치 제곱의 합을 추가하여 이를 달성할 수 있다고 설명합니다. 전반적으로 이 섹션에서는 딥 러닝 모델의 편향 및 정규화 주제에 대한 유용한 소개를 제공합니다.

  • 01:40:00 이 섹션에서 동영상은 딥 러닝 모델에서 과적합을 방지하기 위해 정규화의 한 형태로 가중치 감쇠를 사용하는 방법에 대해 설명합니다. 너무 높지는 않지만 예측에 유용할 만큼 충분히 높은 가중치의 올바른 조합을 찾으면 모델이 가능한 가장 낮은 손실 함수 값을 얻을 수 있습니다. 가중치 감쇠 계수는 적합 방법으로 전달될 수 있으며 기본값은 일반적으로 비전 응용 프로그램에 적합하지만 테이블 형식 및 협업 필터링의 경우 사용자는 최상의 결과를 제공하는 것을 확인하기 위해 10의 몇 배수를 시도해야 합니다. 정규화는 모델을 필요 이상으로 복잡하지 않게 만드는 것입니다. 가중치 감쇠 값이 높을수록 과적합이 줄어들지만 모델이 좋은 예측을 할 수 있는 능력도 줄어듭니다.

  • 01:45:00 이 섹션에서는 Jeremy와 John이 하이퍼파라미터 검색의 주제와 개별 모델을 구축할 때 하이퍼파라미터 검색이 자주 사용되는 방식에 대해 논의합니다. 그러나 하이퍼 매개변수 탐색을 수행할 때 Jeremy의 경험 법칙 외에 다른 규칙은 없습니다. 협업 필터링 대신 사용자 경험의 평균 등급을 기반으로 추천 시스템을 구축할 수 있는지에 대한 질문에 Jeremy는 모든 사람이 구매 내역을 가지고 있다면 이상적이지 않을 것이라고 설명합니다. 대신 정확한 추천을 위해서는 사용자에 대한 인구 통계 정보 및 제품에 대한 메타데이터와 같은 세분화된 데이터가 필요합니다.
 

8단원 - 코더를 위한 실용 딥 러닝 2022



8단원 - 코더를 위한 실용 딥 러닝 2022

이 비디오는 코더를 위한 딥 러닝의 기본 사항을 다룹니다. Pytorch 라이브러리를 사용하여 딥러닝 모델에 대한 매개변수를 생성하는 방법, PCA를 사용하여 데이터 세트의 요인 수를 줄이는 방법, 신경망을 사용하여 산업용 중장비의 경매 판매 가격을 예측하는 방법을 설명합니다.

이 YouTube 비디오는 프로그래머를 위한 딥 러닝의 개요를 제공합니다. 화자는 이 분야에서 끈기가 중요하다고 설명하며, 성공하고 싶다면 무언가가 끝날 때까지 계속 나아가야 한다고 조언한다. 그는 또한 forums.fast.ai에서 다른 초보자를 도울 것을 권장합니다.

  • 00:00:00 이 레슨에서 Pytorch는 신경망에 대한 매개변수 생성 및 관리를 처리하여 계수와 가중치가 올바른 방식으로 초기화되도록 자동으로 확인합니다. 이렇게 하면 사용자가 이 정보를 기억하거나 코드를 작성하지 않아도 됩니다.

  • 00:05:00 이 동영상은 Pytorch 라이브러리를 사용하여 딥 러닝 모델에 대한 매개변수를 만드는 방법을 설명합니다. Pytorch는 임의로 생성된 분포를 기반으로 이러한 매개변수를 자동으로 초기화합니다.

  • 00:10:00 이 동영상은 원본과 동일한 코드와 개념을 사용하여 처음부터 Pytorch 임베딩 레이어를 빌드하는 방법을 보여줍니다. 그런 다음 비디오는 레이어가 과거 영화 선호도를 보고 영화 선호도를 예측하는 방법을 보여줍니다.

  • 00:15:00 동영상은 fast.ai 협업 학습자 애플리케이션을 사용하여 사용자가 좋아할 영화를 예측하는 방법을 보여줍니다. 이 애플리케이션은 잠재 요인(영화 및 요인)을 사용하여 사용자의 편향을 계산한 다음 사용자가 좋아할 영화를 예측하는 데 사용됩니다.

  • 00:20:00 이 비디오는 PCA를 사용하여 데이터 세트의 요인 수를 줄이는 방법을 설명합니다. 또한 이전 기록이 없을 때 고객에게 새 제품을 추천하는 방법에 대한 문제인 Bootstrapping 문제를 다룹니다.

  • 00:25:00 이 비디오는 순차 모델, Pytorch의 기능을 사용하여 모델을 쉽게 만드는 방법, 모델을 협업 학습자에 맞추는 방법을 포함하여 코더를 위한 딥 러닝의 기본 사항을 다룹니다. Jona는 발표자에게 협업 필터링 시스템의 편향 문제에 대해 질문하고 발표자는 문제에 대한 일반적인 답변을 제공합니다.

  • 00:30:00 이 비디오에서 Jeremy는 협업 필터링 및 NLP에서 임베딩이 작동하는 방식과 신경망을 해석하는 데 사용할 수 있는 방식을 설명합니다.

  • 00:35:00 이 비디오에서 저자는 Random Forest와 Tabular Learner를 사용하여 신경망을 사용하여 산업용 중장비의 경매 판매 가격을 예측하는 방법을 보여줍니다. 저자는 Tabular Learner를 사용하여 만든 신경망이 수동으로 만든 신경망과 거의 동일하다고 지적합니다.

  • 00:40:00 신경망은 데이터를 입력으로 받아들이고 해당 데이터를 사용하여 예측 또는 출력을 생성하는 일종의 기계 학습 알고리즘으로 생각할 수 있습니다. 신경망은 그래프를 생성하기 위해 상호 연결된 노드(뉴런이라고 함)의 레이어로 구성됩니다. 신경망에 대한 입력은 범주형(예: 자동차 또는 꽃과 같은 범주)이거나 연속적(예: 숫자)일 수 있습니다. 신경망은 서로 다른 결과(예: 서로 다른 상점에서의 판매)의 결과를 예측하거나 새로운 입력 내용(예: 주어진 데이터 포인트 집합의 지리적 위치)을 추측하는 데 사용할 수 있습니다.

  • 00:45:00 이 비디오에서는 컨볼루션 신경망에서 사용되는 일종의 행렬 곱셈인 컨볼루션에 대해 알아봅니다. 이에 대한 예제를 실제로 본 다음 컨볼루션 신경망을 사용하여 상단 가장자리 검출기를 만드는 방법에 대해 논의합니다.

  • 00:50:00 비디오는 두 개의 데이터 배열을 취하고 해당 요소를 결합하여 일반적으로 오른쪽보다 배열의 왼쪽에서 더 높은 결과를 생성하는 수학적 연산인 회선을 수행하는 방법을 설명합니다. 컨볼루션은 3x3 커널에서 수행되며 딥 러닝 계층을 생성하기 위해 여러 번 반복됩니다.

  • 00:55:00 이 비디오는 두 개의 필터(수평 가장자리용 필터와 수직 가장자리용 필터)를 결합하여 숫자 인식을 위한 단일 활성화를 생성하는 방법을 보여줌으로써 딥 러닝 작동 방식을 설명합니다. 최대 풀링(max pooling)을 사용하는 이전 방식은 활성화 수가 적고 결국 하나가 남았습니다. "슬라이딩 윈도우가 있는 최대 풀링"이라는 기술을 사용하는 새로운 방식은 모든 활성화가 사용될 때까지 계속 진행되어 보다 정확한 결과를 생성합니다.

  • 01:00:00 이 비디오에서 발표자는 21세기에 딥 러닝이 어떻게 이루어지는지 설명합니다. 오늘날 딥 러닝은 10년 전과 다르게 수행되며 발표자는 이러한 변화가 어떻게 작동하는지에 대한 예를 제공합니다. Max Pooling 대신 딥 러닝 알고리즘은 이제 Stride 2 Convolution을 사용합니다. 또한 딥 러닝 모델은 이제 최대 풀 레이어 대신 끝에 단일 밀도 레이어를 사용합니다. 마지막으로 발표자는 fast.ai가 딥 러닝 교육 및 예측을 처리하는 방법에 대한 간략한 개요를 제공합니다.

  • 01:05:00 이 유튜브 영상에서 저자는 컨볼루션이 행렬 곱셈과 어떻게 같은지, 두 가지 방법을 사용하여 컨볼루션을 계산하는 방법을 보여줍니다. 그는 또한 신경망에서 무작위 노이즈의 영향을 줄이는 기술인 드롭아웃에 대해서도 설명합니다.

  • 01:10:00 이 단원에서 저자는 드롭아웃 레이어가 신경망에서 과적합을 방지하는 데 어떻게 도움이 되는지 설명합니다. 드롭아웃을 많이 사용할수록 훈련 데이터에 덜 적합하지만 일반화하기에는 더 좋습니다. 이것은 주요 신경망 회의에서 거부된 Geoffrey Hinton 그룹의 논문에서 나온 것입니다. 이 논문은 당시 NIPS(지금은 NeurIPS라고 함)라고 불렸습니다.

  • 01:15:00 이 비디오는 신경망의 유형과 구현 방법을 포함하여 딥 러닝의 기본 사항을 다룹니다. 또한 다양한 학습 방법을 사용하는 방법과 신경망의 성능을 평가하는 방법을 다룹니다. 마지막으로 영상은 딥러닝 학습을 지속하는 방법에 대한 조언을 제공합니다.

  • 01:20:00 Lucas는 딥 러닝에서 동기 부여를 유지하는 방법을 묻고 이 분야가 더 비싸고 대규모 모델로 빠르게 편향되고 있다고 지적합니다. 그는 미래에도 단일 GPU로 합리적인 모델을 교육할 수 있을지 궁금합니다. 전반적으로 이 비디오는 딥 러닝에서 동기를 유지하는 방법과 최신 연구를 최신 상태로 유지하는 방법에 대한 개요를 제공합니다.

  • 01:25:00 이 YouTube 동영상은 딥 러닝에 대한 간략한 개요와 코딩에 대한 실용적인 적용을 제공합니다. 이 비디오는 DawnBench의 딥 러닝 성공이 어떻게 팀의 상식과 스마트한 사용 덕분인지, 그리고 누구나 자신의 문제 영역에 딥 러닝을 적용할 수 있는 방법에 대해 설명합니다. 이 비디오는 또한 기계 학습 분야에서 정식 교육의 중요성과 라이브 코딩 세션이 학습 강화에 어떻게 도움이 되는지에 대해 다룹니다.

  • 01:30:00 Jeremy는 매일 새로운 것을 배우는 데 시간을 보내고 너무 열심히 일하지 않는 등 몇 가지 생산성 비법을 공유했습니다.

  • 01:35:00 이 유튜브 영상은 프로그래머를 위한 딥러닝 강의인데, 화자는 이 분야에서 끈기가 중요하다고 설명합니다. 그는 성공하고 싶다면 최고 품질이 아니더라도 무언가가 끝날 때까지 계속 나아가야 한다고 조언합니다. 그는 또한 forums.fast.ai에서 다른 초보자를 도울 것을 권장합니다.
 

레슨 9: 안정적인 확산을 위한 딥 러닝 기반, 2022년



레슨 9: 안정적인 확산을 위한 딥 러닝 기반, 2022년

이 비디오는 딥 러닝에 대한 소개를 제공하고 안정적인 확산 모델이 작동하는 방식과 새로운 이미지를 생성하는 데 적용할 수 있는 방법에 대해 설명합니다. 이 비디오에는 디퓨저 라이브러리를 사용하여 손으로 쓴 숫자처럼 보이는 이미지를 만드는 방법에 대한 데모가 포함되어 있습니다. 또한 신경망을 훈련시키는 방법인 안정적인 확산의 개념을 소개합니다. 기본 아이디어는 출력을 변경하기 위해 신경망에 대한 입력을 수정하는 것입니다. 이 비디오에서 강사는 노이즈 입력에서 손으로 쓴 숫자를 올바르게 식별할 수 있는 신경망을 만드는 방법에 대해 설명합니다. 이 비디오는 딥 러닝 알고리즘을 사용하여 기계 학습 모델을 교육하는 방법에 대해 설명합니다. 모델은 잠재 변수 세트(데이터를 나타냄)로 초기화되고 디코더를 사용하여 원시 데이터를 이해합니다. 다음으로 텍스트 인코더를 사용하여 데이터에 대해 기계가 읽을 수 있는 캡션을 생성합니다. 마지막으로 캡션을 입력으로 사용하여 U-Net을 교육하고 기울기("점수 함수")를 사용하여 교육 데이터의 노이즈 수준을 조정합니다.

  • 00:00:00 이 단원에서는 딥 러닝이 작동하는 방식과 이를 실제 문제에 적용하는 방법을 설명합니다. 그러나 이 강의에서 설명하는 개념과 기술은 가까운 장래에 구식이 될 가능성이 있기 때문에 대부분의 비디오는 2022년에도 여전히 적용될 수 있는 딥 러닝 알고리즘인 안정적인 확산을 사용하는 방법을 가르치는 데 사용됩니다.

  • 00:05:00 과정이 빠르게 진행되고 있으며 안정적인 확산 모델을 생성하는 데 필요한 단계 수가 1,000에서 4 또는 56으로 줄었다는 새로운 논문이 나타났습니다. 이 과정은 모델의 기초와 작동 방식에 중점을 둡니다.

  • 00:10:00 이 과정은 안정적인 확산 모델이 작동하는 방식을 논의하고 보다 심층적인 학습을 위한 리소스를 제공하는 딥 러닝 기초를 제공합니다. 2022년에는 딥 러닝용 GPU가 더 비싸질 것이므로 현재 권장 사항을 기록하는 것이 중요합니다.

  • 00:15:00 이 YouTube 동영상은 딥 러닝에 대한 짧은 소개와 안정적인 확산의 기초를 설명합니다. 저자는 딥 러닝의 기초를 탐색하는 데 사용할 수 있는 Colab 노트북 세트인 "diffusion-nbs"를 제공합니다. 비디오는 제공된 자료를 가지고 놀고 다른 리소스를 탐색하라는 권장 사항으로 끝납니다.

  • 00:20:00 이 강의에서는 안정적인 확산 알고리즘을 만드는 방법을 포함하여 딥 러닝의 기본 사항을 다룹니다. 그런 다음 Diffusers 라이브러리를 소개하고 다른 사용자가 사용할 수 있도록 파이프라인을 저장하는 방법을 설명합니다.

  • 00:25:00 이 강의에서는 딥 러닝의 기초와 Colab을 사용하여 고품질 이미지를 만드는 방법에 대해 설명합니다. 이미지를 만드는 데 걸리는 51단계를 2022년 10월 현재 사용 가능한 3~4단계와 비교합니다.

  • 00:30:00 이 단원에서는 강사가 딥 러닝을 사용하여 이미지를 만드는 방법을 시연합니다. 그는 "지침 척도"를 사용하여 이미지가 얼마나 추상적인지 제어하는 방법을 보여줍니다.

  • 00:35:00 이 비디오는 안정적인 확산이라는 기술을 사용하여 원본 그림과 같은 이미지를 생성하기 위해 딥 러닝 모델을 사용하는 방법을 설명합니다.

  • 00:40:00 이 수업에서 강사는 안정적인 확산 알고리즘으로 기계 학습 모델을 교육하는 방법을 설명합니다. 그들은 알고리즘이 제공된 예와 유사한 이미지를 생성하는 데 유용하다고 설명합니다. 강사는 또한 안정적인 확산 알고리즘을 사용하여 원래 테디와 유사한 테디 이미지를 생성하는 방법에 대한 예를 공유합니다.

  • 00:45:00 이 비디오에서 강사는 전통적인 접근 방식과 동일하지만 개념적으로 더 간단한 수학적 접근 방식인 안정적인 확산의 개념을 소개합니다. 그는 이미지가 손글씨 숫자일 확률을 판별할 수 있는 함수를 사용하면 손글씨 숫자처럼 보이는 새로운 이미지를 생성할 수 있다고 설명한다.

  • 00:50:00 이 영상에서는 강사가 딥러닝을 이용해 입력된 이미지가 손으로 쓴 숫자일 확률의 기울기를 계산하는 방법을 설명합니다.

  • 01:05:00 이 비디오는 신경망을 훈련시키는 방법인 안정적인 확산의 아이디어를 소개합니다. 기본 아이디어는 출력을 변경하기 위해 신경망에 대한 입력을 수정하는 것입니다.

  • 01:10:00 이 비디오에서 강사는 노이즈 입력에서 손으로 쓴 숫자를 올바르게 식별할 수 있는 신경망을 만드는 방법에 대해 설명합니다. 먼저 교육 데이터 세트를 만드는 방법에 대해 논의한 다음 계속해서 신경망을 교육하는 방법을 설명합니다.

  • 01:15:00 이 영상은 디지트 이미지에서 노이즈를 예측하는 방법인 딥러닝과 안정적인 확산의 개념을 소개합니다. 신경망은 잡음을 예측하고 손실 함수는 간단합니다. 입력을 받아 잡음을 예측하는 것입니다.

  • 01:20:00 이 비디오의 신경망은 입력에 추가된 노이즈를 예측하려고 합니다. 이것은 입력에서 노이즈라고 생각하는 비트를 빼서 수행합니다. 이 작업을 여러 번 수행한 후 결국 숫자처럼 보이는 것을 얻습니다.

  • 01:25:00 이 비디오에서 강사는 U-Net이라는 신경망을 사용하여 이미지를 근사화하는 방법을 보여줍니다. 문제는 U-Net이 많은 스토리지를 필요로 한다는 것인데, 이는 대규모 TPU 클라우드를 보유한 Google에 문제가 될 수 있습니다.

  • 01:30:00 영상은 딥러닝을 이용해 이미지를 압축하는 방법을 설명합니다. 먼저 stride 2개의 convolutional layer를 거쳐 이미지를 압축한다. 이 프로세스는 이미지가 64x64x4 버전으로 축소될 때까지 반복됩니다. 다음으로 이미지가 신경망 레이어로 저장됩니다. 마지막으로 신경망은 다양한 크기의 이미지를 압축하는 데 사용됩니다.

  • 01:35:00 비디오는 손실 함수를 사용하여 신경망에 이미지를 압축하여 더 작은 파일을 생성하는 방법을 가르치는 방법에 대해 설명합니다. 압축 알고리즘은 잘 작동하며 두 사람이 이미지를 공유하는 데 사용할 수 있습니다.

  • 01:40:00 이 비디오는 잠재 데이터를 사용하여 딥 러닝 모델을 교육하는 방법에 대한 자습서를 제공합니다. 잠재성은 직접 관찰되지 않고 딥 러닝 모델을 훈련하는 데 사용되는 특별한 유형의 데이터입니다. 잠재성은 신경망을 사용하여 그림의 픽셀을 인코딩하여 생성됩니다. 인코딩 프로세스는 그림의 잠재된 표현을 생성합니다. 디코더는 이 잠재 표현을 사용하여 원본 그림을 생성합니다.

  • 01:45:00 이 동영상은 신경망이 원본 이미지가 무엇인지 알고 있다는 사실을 활용하여 노이즈를 더 잘 예측하는 방법을 학습하는 방법을 설명합니다. 예를 들어 숫자 3을 입력하면 모델이 노이즈가 숫자 3을 나타내지 않는 모든 것이라고 말할 것이기 때문에 이것은 유용합니다.

  • 01:50:00 비디오는 두 개의 신경망을 사용하여 텍스트와 이미지를 인코딩하는 방법을 설명합니다. 첫 번째 신경망은 텍스트를 인코딩하는 데 사용되고 두 번째 신경망은 이미지를 인코딩하는 데 사용됩니다. 목표는 두 네트워크가 주어진 입력에 대해 유사한 출력을 생성하는 것입니다. 출력의 유사성은 입력의 특징과 출력의 특징의 내적으로 결정됩니다.

  • 01:55:00 이 동영상은 유사한 텍스트 입력에 대해 유사한 임베딩을 생성할 수 있는 기계 학습 모델 유형인 CLIP 텍스트 인코더를 만드는 방법을 설명합니다. 이는 다중 모드 텍스트 인식 및 합성을 허용하기 때문에 중요합니다.

  • 02:00:00 이 비디오에서 강사는 딥 러닝 알고리즘을 사용하여 기계 학습 모델을 교육하는 방법을 설명합니다. 모델은 잠재 변수 세트(데이터를 나타냄)로 초기화되고 디코더를 사용하여 원시 데이터를 이해합니다. 다음으로 텍스트 인코더를 사용하여 데이터에 대해 기계가 읽을 수 있는 캡션을 생성합니다. 마지막으로 캡션을 입력으로 사용하여 U-Net을 교육하고 기울기("점수 함수")를 사용하여 교육 데이터의 노이즈 수준을 조정합니다.

  • 02:05:00 이 비디오에서 저자는 딥 러닝 알고리즘이 작동하는 방식과 잠재(알려지지 않은) 이미지에 대한 최상의 추측을 찾는 방법을 설명합니다. 저자는 또한 결과를 개선하기 위해 알고리즘의 매개변수를 조정하는 방법을 설명합니다.

  • 02:10:00 이 비디오는 옵티마이저와 같은 미분 방정식 솔버가 딥 러닝 모델에 유사한 아이디어를 사용하는 방법에 대해 설명합니다. 이 동영상에서는 Perceptual Loss 및 기타 손실 기능을 사용하여 딥 러닝 모델의 정확도를 개선하는 방법에 대해 설명합니다. 이 비디오는 딥 러닝 파이프라인에 대한 코드가 설명될 다음 강의의 미리 보기를 제공합니다.

  • 02:15:00 이 비디오는 기술의 안정성과 확산을 개선할 수 있는 딥 러닝의 몇 가지 새로운 연구 방향에 대해 논의합니다.
 

딥 러닝의 과제(Dr Razvan Pascanu - DeepMind)



딥 러닝의 과제(Dr Razvan Pascanu - DeepMind)

DeepMind의 Razvan Pascanu 박사는 이 비디오에서 딥 러닝의 몇 가지 과제에 대해 설명합니다. 그는 적응성의 중요성과 성능 메트릭에서 초점 이동을 강조하고 딥 러닝 시스템에서 계산 리소스의 제한이 실제로 도움이 될 수 있다고 제안합니다. 또한 그는 딥 러닝 모델의 성능에 대한 크기 및 아키텍처의 영향을 포함하여 지속적 학습 및 이와 관련된 기계 학습의 하위 분야에 대한 문제를 탐구합니다. Pascanu 박사는 또한 확률적 경사 하강법의 역할, 명시적 편향의 중요성, 딥 러닝 모델에서 사전 훈련 및 유도 편향 추가의 개념에 대해 논의합니다.

DeepMind의 Razvan Pascanu 박사가 딥 러닝의 망각 문제와 모델이 이를 복구하는 방법에 대해 논의합니다. 망각이 발생한 후에도 일부 지식이 남아있을 수 있지만 얼마나 많은 정보가 손실되었는지 확인하기 어렵습니다. Pascanu 박사는 표적 망각에 관한 최근 논문이 어떻게 데이터 개인 정보 보호에 초점을 맞추고 있는지 언급하지만 이 영역에 대한 더 많은 연구와 집중이 필요합니다.

  • 00:00:00 이 섹션에서는 Razvan Pascanu 박사가 딥 러닝에서 적응의 중요성에 대한 자신의 통찰에 대해 설명합니다. 성능 메트릭에 대한 강조에도 불구하고 Pascanu는 이 단일 측정에 대한 지속적인 최적화의 제한 효과를 강조합니다. 예측할 수 없는 환경 변화에 직면했을 때 고정 시스템의 적응성 부족, 만병통치약 솔루션에 대한 집중, 보다 복잡한 시나리오에서 잘 정의된 성능 메트릭의 부족, 단독으로 극복하기 위한 시스템 확장 제한된 데이터 및 컴퓨팅 리소스와 같은 병목 현상은 딥 러닝 적응으로 초점을 전환해야 하는 문제 중 일부입니다.

  • 00:05:00 이 섹션에서 Dr. Razvan Pascanu는 딥 러닝에서 성능에만 집중하는 것의 한계에 대해 논의하고 변화에 지속적으로 적응할 수 있는 시스템을 탐색할 것을 제안합니다. 그는 대규모 데이터 세트에서 학습할 때 적용 범위 및 데이터 대표성 문제와 시스템의 배포 외 일반화 능력을 평가하는 문제를 강조합니다. Pascanu는 적응성에 대한 생각이 관점을 바꾸고 이러한 문제 중 일부를 해결하는 데 도움이 될 수 있다고 제안합니다. 그는 우리가 AlphaGo의 특정 수를 이해할 수 없는 이유는 문제를 하위 목표로 분해하는 경향이 있고 에이전트는 최종 성능에만 관심이 있기 때문이라는 Thomas Griffiths의 주장을 인용합니다. Pascanu는 관점 전환이 모든 문제를 해결하지 못할 수도 있지만 새로운 통찰력과 접근 방식으로 이어질 수 있다고 결론지었습니다.

  • 00:10:00 이 섹션에서 Dr. Pascanu는 딥 러닝 시스템에서 제한이 도움이 될 수 있다는 아이디어에 대해 논의합니다. 인간에게는 우리가 생각하는 방식을 형성하는 인지적 한계가 있는 반면 기계 학습 시스템은 학습 방법을 형성하는 계산적 한계가 있습니다. 한계를 극복해야 할 장애물로 생각하면 이러한 한계의 이점을 놓칠 수 있습니다. 계산 예산을 제한하면 시스템이 조합 솔루션을 찾게 되어 더 나은 결과를 얻을 수 있습니다. Pascanu 박사는 성능에만 초점을 맞추는 대신 학습 비용, 추론 비용 및 하드 코딩된 정보의 양도 고려해야 한다고 생각합니다. 그러나 데이터 분포와 데이터 포인트 간의 관계 측면에서 극복해야 할 과제가 여전히 있으며, Pascanu 박사는 이러한 과제를 해결하기 위해 범주 이론과 같은 다양한 도구를 탐색하는 것이 중요하다고 강조합니다.

  • 00:15:00 이 섹션에서는 Razvan Pascanu-DeepMind 박사가 지속적인 학습이 중요한 이유와 지속적으로 효율적으로 학습할 수 있는 시스템의 필요성에 대해 논의합니다. 그는 지속적인 학습에는 여러 가지 특징이 있어 각 특정 문제를 정의하고 정확히 지적하기 어렵다고 강조합니다. 또한 지속적인 학습의 정의도 모순을 일으킬 수 있으며 사용되는 작업 및 벤치마크에 따라 일부 문제가 더 가시화됩니다. Pascanu-DeepMind 박사는 지속적인 학습을 기반으로 하는 한 가지 방법은 지속적인 준지도 학습과 같은 실제 문제에 초점을 맞추는 것이라고 제안합니다. 또 다른 방법은 강화 학습에 집중하는 것입니다.

  • 00:20:00 이 섹션에서 Dr. Razvan Pascanu는 강화 학습(RL)에서 지속적인 학습의 문제와 이 문제를 완화하기 위해 지금까지 개발된 기술에 대해 설명합니다. RL의 데이터는 비정적이므로 함수 근사가 작동하도록 하려면 지속적인 학습을 처리해야 합니다. 치명적인 망각을 방지하기 위한 리플레이 버퍼, 스타크래프트의 전문가 연맹, 알파고의 세일즈 플레이 등 Brute Force 방식을 기반으로 여러 기술이 개발되었습니다. 그러나 이러한 방법은 비용이 많이 들 수 있으며 항상 이러한 비용을 줄일 필요가 있습니다. Pascanu는 RL과 감독 학습이 RL 시스템에서 기능 전송이 그다지 도움이 되지 않는다는 점에서 다르며 데이터의 품질을 제어하고 행위자와 비평가를 중앙 집중화하는 데 초점을 맞춰야 한다는 점에서 RL과 지도 학습이 다르다고 주장하는 흥미로운 논문을 제시합니다.

  • 00:25:00 이 섹션에서 연사는 지도 학습이 모방할 수 없는 지속적인 조정의 측면이 있음을 지적하면서 지속적인 학습의 어려움에 대해 논의합니다. 발표자는 RL과 감독 학습 간의 이러한 차이점을 나열한 논문을 언급합니다. 또한 연사는 지속적인 학습이 한 지점으로의 수렴이 아니라 추적 문제로 어떻게 생각될 수 있는지에 대해 논의합니다. 연사는 새로운 데이터를 미세 조정할 때 발생하는 가소성 손실과 이것이 일반화에 미치는 영향에 대해 언급합니다. 마지막으로 발표자는 신경망의 크레딧 할당과 기울기가 각 가중치에 대해 독립적으로 계산되는 방식에 대해 논의합니다. 이로 인해 평균에 영향을 주는 충돌 투표가 발생할 수 있습니다.

  • 00:30:00 비디오의 이 섹션에서 Dr. Razvan Pascanu는 즉석 학습에 대해 이야기합니다. 이는 모든 예가 무게에 힘을 가하는 줄다리기 게임과 유사하며 평형이 유지될 때 학습이 발생합니다. 이 힘 사이에 도달했습니다. ID 데이터는 모든 힘이 존재하는지 확인하므로 이 프로세스에서 필수적입니다. 또한 학습은 다양한 관련 개념을 동시에 학습하면서 간접적으로 지식을 가르칩니다. 학습 다이내믹스, 옵티마이저 및 게임 자동화 미들웨어를 개선하여 더 적은 데이터에서 더 많은 지식을 얻을 수 있는 보다 효율적인 학습 프로세스를 만들 수 있음을 제안합니다.

  • 00:35:00 이 섹션에서 DeepMind의 Razvan Pascanu 박사는 이전에 배운 것을 잊지 않고 시스템에 새로운 것을 가르치려는 지속적인 학습으로 알려진 머신 러닝의 하위 분야에 있는 문제에 대해 설명합니다. 이 분야는 과소 지정되었고 벤치마크는 잘 정의되지 않았으며 사람들이 관심을 갖는 것에 대한 의견 차이가 있습니다. 한 가지 문제는 데이터의 품질과 학습과 망각 사이의 장단점인데, 이는 벤치마크가 어떻게 정의되는지에 따라 크게 달라집니다. 목표는 보다 자연스러운 벤치마크를 제시하는 것이지만 "자연"의 정의조차 합의되지 않았습니다.

  • 00:40:00 이 섹션에서 Dr. Razvan Pascanu는 AGI 시스템의 개념과 인간 지능과의 관계에 대해 설명합니다. 인간과 유사한 AGI 시스템을 구축하는 것이 해석의 용이성을 위해 바람직할 수 있지만 반드시 필요한 것은 아니라고 설명합니다. AGI 학습에 사용되는 하위 목표는 효율적이며 구성 일반화에 도움이 되므로 새로운 것을 더 빨리 학습할 수 있습니다. Pascanu는 또한 딥 러닝 모델의 암시적 편향이 어떻게 오류로 이어질 수 있는지와 명시적 편향을 사용하여 모델을 개선하는 방법에 대해 설명합니다. 그는 곡률이 매우 낮은 영역에서 과도하게 매개변수화된 시스템을 사용하여 지속적인 학습을 개선할 수 있는 방법에 대한 예를 제공합니다.

  • 00:45:00 비디오의 이 섹션에서 Dr. Razvan Pascanu는 모델의 크기와 아키텍처가 딥 러닝 성능에 미치는 영향에 대해 설명합니다. 그는 규모만으로도 시스템이 얼마나 잘 망각하는지에 상당한 영향을 미치며 올바른 아키텍처를 선택하는 것이 큰 차이를 만든다고 지적합니다. 이 분야는 일반적으로 아키텍처 선택의 영향을 무시하고 종종 아키텍처를 불공평하게 비교합니다. Pascanu 박사는 또한 딥 러닝에서 최적화의 역할을 강조하고 과도한 매개변수화로 인해 교육 오류가 없는 많은 솔루션이 생성된다고 제안합니다. 솔루션의 수가 폭발적으로 증가함에 따라 초기화에 가장 가까운 솔루션이 수렴되고 시스템은 여전히 초기화 조건에 따라 달라집니다. 그는 낮은 표면이 임의의 구조를 가질 수 있고 임의로 복잡할 수 있음을 보여주는 연구 작업의 예를 언급합니다. 마지막으로 그는 res net이 시스템에서 기울기가 흐르는 방식을 변경하는 데 사용하는 건너뛰기 연결 때문에 잘 작동한다고 설명합니다.

  • 00:50:00 이 섹션에서 Razvan Pascanu 박사는 확률적 경사하강법(SGD)의 암시적 편향과 명시적 편향의 중요성을 보여주는 최근 결과에 대해 이야기합니다. SGD와 관련하여 전통적으로 SGD의 노이즈가 날카로운 최소값을 피하는 데 도움이 된다고 생각했지만 SGD에서 사용되는 정규화 장치에 암시적 편향이 있음이 밝혀졌습니다. 또한 데이터 증대 노이즈는 유해하며 서로 다른 데이터 증대에 대한 그래디언트의 평균을 구하면 이 노이즈를 줄일 수 있음을 발견했습니다. 또한 편향은 매우 중요하며 데이터 증가를 약간 조정하면 성능이 크게 향상될 수 있습니다. 그들은 또한 서로 다른 초기화에 대한 아이디어와 문제 해결에 필수적인 공간 분할에 영향을 미칠 수 있는 방법을 탐구했습니다. 마지막으로, 사전 훈련과 같은 명시적 편향의 사용도 상당한 개선을 가져오는 것으로 나타났습니다.

  • 00:55:00 이 섹션에서 Dr. Razvan Pascanu는 심층 학습 모델에서 사전 교육 및 귀납 편향 추가의 개념에 대해 설명합니다. 그는 사전 훈련을 통해 노드 간에 정보가 제대로 전송될 수 있도록 하고 전용 장치의 상당한 개선으로 이어질 수 있다고 설명합니다. 또한 Dr. Pascanu는 정규화 항을 추가하는 대신 손실 표면을 형성하여 가중치가 0에 고정되고 학습 효율성을 향상시키는 데 도움이 되는 유도 편향을 추가하는 고유한 접근 방식을 설명합니다. 그는 또한 치명적인 망각과 관련된 문제와 머신 러닝에서 문제를 분해하는 문제를 다룹니다.

  • 01:00:00 이 섹션에서 Dr. Pascanu는 딥 러닝의 망각 개념과 모델이 이를 복구할 수 있는 방법에 대해 설명합니다. 그는 모델이 어떤 것을 잊어버린 후에도 여전히 숨겨진 지식이 있지만 실제로 얼마나 많은 지식이 손실되었는지 판단하기 어렵다고 제안합니다. Pascanu 박사는 프라이버시를 보호하기 위해 특정 데이터 포인트가 모델에서 제거되는 표적 망각에 대한 향후 논문을 언급하지만 이 분야에 대한 더 많은 연구가 필요하다고 생각합니다.
 

CS 198-126: Modern Computer Vision Fall 2022(University of California, Berkeley) 강의 1 - 기계 학습 소개



CS 198-126: 강의 1 - 기계 학습 소개

기계 학습에 대한 이 강의에서 강사는 과정 소개, 기계 학습 개요, 다양한 유형의 기계 학습, 기계 학습 파이프라인, 레이블 지정 데이터 및 손실 함수를 포함하여 광범위한 주제를 다룹니다. 편향-분산 절충, 과대적합 및 과소적합의 개념에 대해서도 설명합니다. 강사는 기계 학습 과정에서 올바른 기능을 선택하는 것의 중요성과 그 과정에서 하이퍼 매개 변수의 역할을 강조합니다. 기계 학습의 전반적인 목표는 훈련 데이터에 맞추는 것이 아니라 새로운 데이터를 정확하게 예측하는 것입니다. 강사는 학생들이 수업에 참석하여 기계 학습 및 딥 러닝에 대해 배우도록 노력하도록 권장합니다.

  • 00:00:00 이 섹션에서는 제공되는 녹취록 발췌문이 방의 마이크 상황에 대한 화자와 청중 간의 대화인 것 같아 요약할 적절한 내용이 없습니다.

  • 00:05:00 이 섹션에서는 Jake와 그의 동료가 발표한 컴퓨터 비전용 딥 러닝 강의 시리즈를 소개합니다. 수업이 시작되면 Jake는 과정의 물류를 살펴보고 머신 러닝의 개요와 접근 방법인 첫 번째 강의에서 논의할 내용을 설명합니다. 녹음 장비의 기술적 어려움에도 불구하고 Jake는 수업을 가르치게 된 것을 기쁘게 생각하며 자신과 동료에 대한 소개로 시작합니다.

  • 00:10:00 이 섹션에서는 강사가 자신과 과정을 소개합니다. 이 과정은 이전에 해당 자료에 많이 노출되지 않은 신입생을 위해 컴퓨터 비전 및 딥 러닝에 대한 입문 부트 캠프를 제공하는 것을 목표로 합니다. 이 과정은 컴퓨터 비전 작업, 대규모 이미지 데이터 세트에서 학습, 3D 비전 및 생성 예술과 같은 주제를 다룹니다. 강사는 이 과정이 재미있고 상호 작용해야 하며 녹화 슬라이드에 액세스하고 웹 사이트에서 과제를 수행하고 Ed stem을 사용하여 학생 및 과정 직원과 상호 작용하는 등 과정에 대한 물류를 제공한다고 강조합니다. 강의 계획서는 웹 사이트에서도 볼 수 있으며 첫 번째 퀴즈는 다음 주말 말에 마감됩니다.

  • 00:15:00 이 섹션에서는 강사가 기계 학습(ML)에 대한 소개를 제공합니다. 그는 ML이 함수를 직접 코딩하는 것이 아니라 데이터를 사용하여 함수가 어떻게 생겼는지 파악하는 프로세스라고 설명합니다. ML을 사용하면 데이터가 기능을 안내하고 강사는 이미지에서 숫자 7을 식별하는 기능이 코딩을 통해 시도하는 것보다 ML로 만드는 것이 훨씬 쉬운 방법에 대한 예를 제공합니다. 강사는 ML이 함수의 구조를 생성하고 데이터를 통해 학습된 매개변수와 함께 함수의 작동 방식을 결정하는 몇 가지 매개변수를 남기는 템플릿 생성과 관련이 있다고 설명합니다. ML 모델의 성공을 결정하는 올바른 기능 템플릿 생성의 중요성에 대해 설명합니다.

  • 00:20:00 강의의 이 섹션에서 연사는 기계 학습의 핵심은 모델이 따를 함수의 형식을 파악하는 것이라고 설명합니다. 이 함수는 때때로 모델의 클래스라고 불리며 그 중 특정 부분은 비어 있고 우리가 학습할 수 있는 값인 매개변수라고 합니다. 발표자는 정확한 결과를 얻기 위해서는 기능의 선택이 매우 중요하다고 강조합니다. 또한 연사는 지도 학습, 비지도 학습 및 강화 학습을 포함한 다양한 유형의 기계 학습에 대한 간략한 개요와 분류를 제공하고 기능, 매개 변수, 가중치, 편향, 하이퍼 매개 변수 및 기능을 포함하여 기계 학습과 관련된 용어를 소개합니다.

  • 00:25:00 이 섹션에서는 강사가 ML 파이프라인을 중심으로 기계 학습 프로세스를 설명합니다. 먼저 문제를 정의하고 데이터를 준비하고 모델과 손실 함수를 선택하는 것이 필수적입니다. 모델이 인식할 수 있는 숫자로 변환하기 위해 하나의 핫 라벨링 시스템으로 데이터에 라벨을 지정하는 것도 필수적입니다. 강사는 좋은 데이터의 중요성을 강조하며 형편없는 데이터 입력은 똑같이 좋지 않은 결과를 낳는다는 점에 주목합니다. 또한 데이터 벡터화의 중요성에 대해 논의하여 모든 기능이 동일한 척도에 있고 올바른 순서로 표시되도록 합니다.

  • 00:30:00 이 섹션에서 강사는 기계 학습 애플리케이션을 위해 데이터에 레이블을 지정하는 방법과 데이터를 올바르게 표현하는 것이 중요한 이유를 설명합니다. 각 레이블이 해당 위치에 1이 있고 다른 위치에 0이 있는 벡터로 표시되는 하나의 핫 레이블링이 사용됩니다. 기계 학습 모델을 교육할 때 모델 및 손실 함수를 정의하는 것이 중요합니다. 모델은 특정 문제 및 데이터에 맞게 조정되어야 하며 어떤 모델이 가장 잘 작동하는지 확인하기 위해 다양한 모델을 테스트할 수 있습니다. 손실 함수는 모델의 효율성을 측정하며 낮은 값이 바람직합니다.

  • 00:35:00 이 섹션에서 강사는 기계 학습에서 최적화하기 위한 지표를 갖는 것의 중요성에 대해 논의하고 모델의 출력과 올바른 레이블 간의 차이를 측정하는 손실 함수의 개념을 소개합니다. 평균 제곱 오차는 모델의 출력과 올바른 레이블 사이의 거리를 계산하기 위한 손실 함수의 예로 제공됩니다. 손실 함수는 사전에 선택해야 하는 하이퍼 매개변수입니다. 또한 강사는 알고리즘이 손실 함수를 사용하여 모델의 매개변수에 대한 최적 값을 선택하는 훈련 단계에 대해 이야기합니다. 또한 모델이 이전에 본 적이 없는 테스트 세트를 사용하여 모델의 성능을 평가하고 모델이 새 데이터에 얼마나 잘 일반화되는지 확인합니다. 마지막으로 모델이 훈련 데이터를 단순히 기억하는 것이 아니라 새로운 데이터에 잘 일반화되도록 하는 것의 중요성이 강조됩니다.

  • 00:40:00 이 섹션에서는 딥 러닝 및 기타 모든 ML 수업에서 나타나는 머신 러닝의 중요한 측면으로 편향과 분산 트레이드 오프의 개념을 논의합니다. 편향은 특정 예측에 대한 모델의 경향을 나타내며 분산은 데이터를 암기하지 않고 데이터의 복잡성을 캡처하는 모델의 기능입니다. 높은 편향과 높은 분산의 예가 제공되며, 높은 편향은 모델이 데이터 세트를 정확하게 학습하기에 충분히 표현할 수 없는 경우이고 높은 분산은 과적합을 나타냅니다. 이상적인 모델은 골디락스 영역으로 알려진 데이터를 암기하지 않고 데이터의 복잡성을 캡처하는 모델입니다. 편향-분산 절충은 사용자가 수강하는 모든 기계 학습 수업에서 접하게 되므로 사용자가 알아야 하는 기계 학습의 중요한 개념입니다.

  • 00:45:00 이 섹션에서는 연사가 기계 학습 모델의 과적합 및 과소적합의 개념에 대해 설명합니다. 기계 학습의 목표는 훈련 데이터에 맞추는 것이 아니라 새로운 데이터를 정확하게 모델링하고 예측하는 것입니다. 모델이 교육 데이터와 너무 가깝게 일치시킬 수 있지만 새 데이터를 정확하게 예측하지 못하는 경우 과적합입니다. 반면에 모델이 너무 단순해서 데이터의 패턴을 포착할 수 없다면 과소적합입니다. 가장 좋은 접근 방식은 훈련 데이터에 충분히 맞추는 동시에 새 데이터에 일반화할 수 있는 균형을 찾는 것입니다. 여기에는 하이퍼파라미터 조정 및 적절한 손실 함수 선택에 대한 시행착오가 포함됩니다.

  • 00:50:00 이 섹션에서 강사는 기계 학습 모델의 편향과 분산의 개념을 다룹니다. 바이어스가 높은 모델은 입력에 관계없이 동일한 출력을 일관되게 내뱉기 때문에 훈련 데이터와 테스트 데이터 간에 유사한 정확도를 갖습니다. 반면에 고분산 모델은 데이터에 너무 딱 맞아서 새 데이터로 테스트할 때 큰 손실이 발생합니다. 강사는 특정 작업을 위해 모델을 선택할 때 이해하는 것이 중요한 모델 복잡성과 일반화 사이의 절충점을 강조합니다. 마지막으로 강사는 학생들이 최우선 순위가 아닐지라도 머신 러닝과 딥 러닝에 대해 배우려고 수업에 참석하고 노력하도록 격려합니다.