JavaRush /Java Blog /Random-KO /입문자를 위한 딥 러닝, 인공 지능, 머신 러닝: 예시를 통해 설명

입문자를 위한 딥 러닝, 인공 지능, 머신 러닝: 예시를 통해 설명

Random-KO 그룹에 게시되었습니다
동료들과 함께 지성을 발휘하고 싶거나 최신 기술 주제에 대한 대화에서 친구들을 놀라게 하고 싶나요? 대화에서 "인공 지능" 또는 "기계 학습"을 언급하면 ​​끝입니다. 입문자를 위한 딥러닝, 인공지능, 머신러닝: 예시를 통해 설명 - 1이제 '인공지능'이라는 용어가 널리 알려져 있습니다. 프로그래머는 AI를 배우고 싶어합니다. 리더들은 자사 서비스에 AI를 구현하기를 원합니다. 그러나 실제로는 전문가조차도 "AI"가 무엇인지 항상 이해하는 것은 아닙니다. 이 문서는 "인공 지능"과 "기계 학습"이라는 용어를 이해하는 데 도움을 주기 위해 작성되었습니다. 또한 가장 널리 사용되는 머신러닝 유형인 딥러닝이 어떻게 작동하는지 배우게 됩니다. 그리고 중요한 것은 이 지침이 매우 접근하기 쉬운 언어로 작성되었다는 것입니다. 여기의 수학은 이해하기 그리 어렵지 않을 것입니다.

기초

딥러닝이 무엇인지 이해하는 첫 번째 단계는 핵심 용어의 차이점을 이해하는 것입니다.
입문자를 위한 딥러닝, 인공지능, 머신러닝: 예시를 통해 설명 - 2
사진: 데이터나미

인공 지능과 기계 학습

인공 지능(AI 또는 AI agnl.)은 인간의 사고 과정을 컴퓨터로 복사하려는 시도입니다. 인공지능 분야의 연구가 막 시작되었을 때, 과학자들은 특정 조건 하에서 엄격하게 인간 지능의 행동을 모방하려고 했습니다. 즉, 특정 문제를 해결하기 위해 지능을 날카롭게 만들려고 했습니다. 예를 들어 기계가 게임을 할 수 있도록 말이죠. 그들은 컴퓨팅 기계가 따라야 하는 여러 가지 규칙을 확립했습니다. 컴퓨터에는 가능한 작업 목록이 있으며 개발 단계에서 설정된 규칙과 제한 사항에 따라 결정을 내렸습니다.
기계 학습(ML 또는 영어로 ML)은 명확하게 정의된 규칙 대신 대규모 정보 세트를 처리하여 학습하는 기계의 능력을 의미합니다.
ML을 사용하면 컴퓨터가 스스로 학습할 수 있습니다. 이러한 유형의 학습은 엄청난 양의 데이터를 쉽게 처리할 수 있는 최신 컴퓨팅 기술을 활용합니다.

지도 학습과 비지도 학습

지도 학습은 입력과 예상 출력으로 구성된 레이블이 지정된 데이터 세트를 사용합니다. 지도 학습을 사용하여 인공 지능을 훈련할 때 데이터를 입력으로 제공하고 출력이 무엇인지 지정합니다. AI가 생성한 결과가 예상과 다른 경우 AI는 계산을 수정해야 합니다. AI가 실수를 하는 한 이 과정은 데이터 배열에 걸쳐 여러 번 반복된다. 지도 학습의 예로는 날씨를 예측하는 인공 지능이 있습니다. 과거 데이터를 사용하여 날씨를 예측하는 방법을 학습합니다. 입력 데이터는 기압, 습도, 풍속이므로 결과적으로 온도를 얻어야 합니다. 비지도 학습은 비정형 데이터를 이용해 AI를 훈련시키는 작업이다. 비지도 학습을 사용해 인공지능을 훈련시키면 AI가 데이터를 논리적으로 분류할 수 있게 됩니다. 비지도 기계 학습을 사용하는 인공 지능의 예로는 온라인 상점에서 고객 행동을 예측하는 로봇이 있습니다. 미리 알려진 입력 및 출력을 사용하지 않고 학습합니다. 대신 입력 데이터 자체를 분류해야 합니다. 알고리즘은 어떤 유형의 사용자가 어떤 제품을 선호하는지 식별하고 알려주어야 합니다.

머신러닝 작동 방식

따라서 딥러닝은 머신러닝에 대한 접근 방식 중 하나입니다. 주어진 입력 데이터로부터 결과를 예측할 수 있습니다. AI를 교육하려면 지도 학습과 비지도 학습이라는 위의 옵션을 모두 사용할 수 있습니다. 명확한 예를 통해 딥러닝이 어떻게 작동하는지 이해하겠습니다. 항공 여행 가격을 예측하는 서비스를 개발해야 한다고 가정해 보겠습니다. 지도 방법을 사용하여 알고리즘을 훈련하겠습니다. 우리는 항공 여행 가격 예측 서비스가 다음 입력 데이터를 기반으로 가격을 예측하기를 원합니다(프레젠테이션의 편의를 위해 돌아오는 항공편은 고려하지 않음).
  • 출발 공항;
  • 도착 공항;
  • 예정된 출발일;
  • 공기 호스.
신경망 인공지능의 뇌를 살펴보겠습니다. 생물학적 생명체의 경우와 마찬가지로 예측 변수의 "머리"에는 뉴런이 있습니다. 그림에서는 원 형태로 표시됩니다. 뉴런은 서로 연결되어 있습니다.
입문자를 위한 딥러닝, 인공지능, 머신러닝: 예시를 통해 설명 - 3
이미지에서 뉴런은 세 가지 레이어 그룹으로 결합됩니다.
  • 입력층;
  • 숨겨진 레이어 1(숨겨진 레이어 1) 및 숨겨진 레이어 2(숨겨진 레이어 2);
  • 출력층.
일부 데이터가 입력 레이어에 들어갑니다. 우리의 경우 입력 레이어에는 출발 공항, 도착 공항, 출발 날짜, 항공사 등 4개의 뉴런이 있습니다. 입력 레이어는 첫 번째 히든 레이어에 데이터를 전달합니다. 히든 레이어는 수신된 입력 데이터를 기반으로 수학적 계산을 수행합니다. 신경망을 구축할 때 주요 문제 중 하나는 숨겨진 레이어 수와 각 레이어의 뉴런 수를 선택하는 것입니다.
Deep Learning이라는 문구에서 Deep이라는 단어는 하나 이상의 숨겨진 레이어가 있음을 나타냅니다.
출력 레이어는 결과 정보를 우리에게 반환합니다. 우리의 경우 예상되는 항공편 가격입니다.
입문자를 위한 딥러닝, 인공지능, 머신러닝: 예시를 통해 설명 - 4
우리는 지금까지 가장 흥미로운 점을 놓쳤습니다. 예상 가격은 정확히 어떻게 계산됩니까? 딥러닝의 마법이 시작되는 곳입니다. 뉴런 사이의 각 연결에는 특정 가중치(계수)가 할당됩니다. 이 가중치는 입력 값의 중요성을 결정합니다. 초기 가중치는 무작위로 설정됩니다. 항공 여행 비용을 예측할 때 출발 날짜가 가격에 가장 큰 영향을 미칩니다. 따라서 "출발 날짜" 뉴런의 연결에 더 많은 가중치가 부여됩니다.
Deep Learning, искусственный интеллект и машинное обучение для чайников: объяснение на примере  - 5
각 뉴런에는 활성화 기능이 붙어 있습니다. 수학적 지식이 없으면 이 함수가 무엇인지 이해하기 어렵습니다. 그럼 좀 단순화해 보겠습니다. 활성화 함수의 요점은 뉴런의 출력을 "표준화"하는 것입니다. 데이터 세트는 신경망의 모든 레이어를 통과한 후 출력 레이어를 통해 결과를 반환합니다. 지금까지 모든 것이 명확했습니다. 그렇죠?

신경망 훈련

신경망 훈련은 딥러닝에서 가장 어려운 부분입니다! 왜? 왜냐하면 많은 양의 데이터가 필요하기 때문입니다. 더 많은 컴퓨팅 성능이 필요하기 때문입니다. 우리 프로젝트에서는 과거 항공료 데이터를 찾아야 합니다. 또한 출발 및 도착 공항, 출발 날짜 및 다양한 항공사의 가능한 모든 조합에 대해 설명합니다. 티켓 가격에 대해서는 매우 많은 양의 데이터가 필요합니다. 우리는 세트의 입력 데이터를 신경망의 입력에 공급하고 그것이 이미 얻은 결과와 일치하는지 확인해야 합니다. 인공지능이 얻은 결과가 예상과 다르다면 아직 충분히 훈련되지 않았다는 의미입니다. 신경망을 통해 전체 양의 데이터를 실행한 후에는 AI 결과가 데이터 세트의 실제 결과와 얼마나 다른지 나타내는 함수를 구축할 수 있습니다. 이러한 함수를 비용 함수 라고 합니다 . 우리가 최선을 다해 노력하는 이상적인 경우, 비용 함수의 값은 0과 같습니다. 이는 신경망이 선택한 비용 결과가 데이터 세트의 실제 티켓 비용과 다르지 않음을 의미합니다.

비용 함수의 값을 어떻게 줄일 수 있나요?

뉴런 사이의 연결 가중치를 변경합니다. 이는 무작위로 수행될 수 있지만 이 접근 방식은 효율적이지 않습니다. 대신 Gradient Descent 라는 방법을 사용하겠습니다 .
경사하강법은 함수의 최소값을 찾는 방법입니다. 우리의 경우 비용 함수의 최소값을 찾고 있습니다.
이 알고리즘은 데이터 세트 처리가 새로 반복될 때마다 가중치를 점진적으로 증가시키는 방식으로 작동합니다. 특정 가중치 세트에 대한 비용 함수의 도함수(또는 기울기)를 계산하면 최소값이 어느 방향에 있는지 알 수 있습니다.
Deep Learning, искусственный интеллект и машинное обучение для чайников: объяснение на примере  - 6
그림에서: 초기 중량 - 초기 중량, 글로벌 비용 최소 - 비용 함수의 글로벌 최소값입니다. 비용 함수를 최소화하려면 데이터 세트에 대한 계산을 여러 번 수행해야 합니다. 이것이 바로 많은 컴퓨팅 능력이 필요한 이유입니다. 가중치는 경사하강법을 사용하여 자동으로 업데이트됩니다. 이것이 바로 딥러닝의 마법입니다! AI 항공편 가격 예측 서비스를 학습시킨 후에는 이를 안전하게 사용하여 실제로 가격을 예측할 수 있습니다.

요약하자면...

  • 딥 러닝은 신경망을 사용하여 지능을 시뮬레이션합니다.
  • 신경망에는 입력 계층, 숨겨진 계층, 출력 계층의 세 가지 유형의 뉴런이 있습니다.
  • 뉴런 사이의 각 연결에는 고유한 가중치가 있어 해당 입력의 중요성을 나타냅니다.
  • 뉴런은 활성화 기능을 사용하여 뉴런의 출력을 "표준화"합니다.
  • 신경망을 훈련하려면 많은 양의 데이터가 필요합니다.
  • 신경망을 이용하여 데이터 배열을 처리하고 출력 데이터를 실제 데이터와 비교하면 AI가 얼마나 잘못되었는지를 보여주는 비용 함수를 얻게 됩니다.
  • 각 데이터 처리 후에는 비용 함수의 감소를 달성하기 위해 경사하강법을 사용하여 뉴런 간의 가중치를 조정합니다.
원본 링크
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION