초보자를 위한 딥 러닝 튜토리얼: 신경망 기초

⚡ 스마트 요약

딥러닝은 여러 개의 은닉층을 쌓아 올린 인공 신경망을 기반으로 하는 머신러닝의 한 분야로, 각 층은 이전 층보다 데이터의 더 풍부한 특징을 학습합니다.

  • 🔘 계층형 아키텍처: 입력층, 두 개 이상의 은닉층, 그리고 출력층이 심층 신경망을 구성합니다.
  • ☑️ Signal 힘: 가중치, 편향 및 활성화 함수는 각 뉴런이 다음 레이어로 전달하는 내용을 결정합니다.
  • 2상 루프: 비선형 변환을 통해 모델을 생성한 다음, 미분 기반 방법을 사용하여 모델을 개선하고, 정확도가 허용 가능한 수준이 될 때까지 이 과정을 반복합니다.
  • 🧪 네 가지 아키텍처: 피드포워드 네트워크, 순환 네트워크, 합성곱 네트워크 및 강화 학습 에이전트.
  • 🛠️ 효과가 있는 곳: 금융 분야의 신용 평가, 인사 분야의 후보자 선별, 마케팅 분야의 콜센터 고객 감정 분석.
  • ⚙️ 실제 한계: 라벨링 비용, 방대한 데이터셋에 대한 수요, 그리고 쉬운 언어로 설명하기 어려운 모델들.

초보자를 위한 딥 러닝 튜토리얼: 신경망 기초

딥러닝이란?

딥러닝은 뇌의 뉴런 네트워크를 모방한 컴퓨터 소프트웨어입니다. 이는 특정 분야의 하위 분야입니다. 기계 학습 표현 학습을 사용하는 인공 신경망을 기반으로 합니다. 심층 신경망을 사용하기 때문에 딥러닝이라고 불립니다. 이러한 학습은 다음과 같은 특징을 가집니다. 감독반감독 또는 감독되지 않은.

아래 그림과 같이 딥러닝 알고리즘은 연결된 계층으로 구성됩니다.

  • 첫 번째 레이어를 입력 레이어라고 합니다.
  • 마지막 레이어를 출력 레이어라고 합니다.
  • 그 사이의 모든 층을 은닉층이라고 합니다. '딥(Deep)'이라는 단어는 신경망이 두 개 이상의 층에 걸쳐 뉴런들을 연결한다는 것을 의미합니다.
입력층, 두 개의 은닉층 뉴런, 그리고 출력층을 보여주는 심층 신경망 다이어그램
입력층, 은닉층, 출력층, 그리고 각 뉴런 사이를 연결하는 구조가 있다.

각 은닉층은 뉴런으로 구성됩니다. 뉴런들은 서로 연결되어 있습니다. 뉴런은 입력 신호를 처리한 후 그 결과를 바로 위 층으로 전달합니다. 다음 층의 뉴런으로 전달되는 신호의 크기는 가중치, 편향 및 활성화 함수에 따라 결정됩니다.

이 신경망은 대량의 입력 데이터를 소비하고 여러 계층을 통해 이를 처리하므로, 각 계층에서 점점 더 복잡한 데이터 특징을 학습할 수 있습니다.

딥러닝 프로세스

심층 신경망은 객체 탐지부터 음성 인식까지 다양한 작업에서 최첨단 정확도를 제공합니다. 이러한 네트워크는 프로그래머가 명시적으로 코딩한 사전 지식 없이 자동으로 학습할 수 있습니다. 실제로 딥러닝 프로젝트는 다음 다섯 단계를 거칩니다.

  • 문제 이해
  • 데이터를 식별하세요
  • 딥러닝 알고리즘을 선택하세요
  • 모델 훈련
  • 모델 테스트
문제 이해부터 모델 테스트까지 5단계로 구성된 딥러닝 프로세스

딥러닝 프로젝트의 5단계: 문제 정의부터 테스트까지

딥러닝의 개념을 이해하기 위해, 아기와 부모로 이루어진 가족을 상상해 보세요. 아기는 새끼손가락으로 사물을 가리키며 항상 "고양이"라고 말합니다. 부모는 아이의 교육을 걱정하여 "맞아, 저건 고양이야" 또는 "아니, 저건 고양이가 아니야"라고 계속해서 말해줍니다. 아기는 계속해서 사물을 가리키지만, 점점 더 정확하게 "고양이"라고 말합니다. 사실, 아기는 왜 그것이 고양이인지 아닌지 정확히 알지 못합니다. 그저 고양이를 구성하는 특징들을 위계적으로 정리하는 법을 배운 것뿐입니다. 전체적인 모습을 보고 꼬리나 코 같은 세부적인 부분을 살펴본 후에야 고양이인지 아닌지를 판단하는 것입니다.

신경망도 이와 매우 유사한 방식으로 작동합니다. 각 계층은 더 깊은 수준의 지식, 즉 지식의 계층 구조를 나타냅니다. 4개의 계층으로 구성된 신경망은 2개의 계층으로 구성된 신경망보다 더 복잡한 특징을 학습할 수 있습니다.

학습은 두 단계로 이루어집니다.

  • 첫 번째 단계: 입력에 비선형 변환을 적용하고 출력으로 통계 모델을 생성합니다.
  • 두 번째 단계 : 미분을 기반으로 하는 수학적 방법을 사용하여 모델을 개선하는 것입니다. 역 전파 무게를 조절합니다.

신경망은 허용 가능한 수준의 정확도에 도달할 때까지 이 두 단계를 수백에서 수천 번 반복합니다. 이 두 단계의 각 반복을 반복(iteration)이라고 합니다.

딥러닝의 예를 들어보겠습니다. 아래 애니메이션은 모델이 춤추는 법을 배우려고 하는 과정을 보여줍니다. 10분간의 학습 후에도 모델은 춤추는 법을 알지 못하고, 결과물은 마치 낙서처럼 보입니다.

딥러닝 훈련 10분 후 애니메이션 캐릭터가 불규칙적으로 움직입니다.

48시간의 학습 끝에 컴퓨터는 두 번째 애니메이션에서 볼 수 있듯이 춤의 기술을 완벽하게 익혔습니다.

48시간의 딥러닝 훈련 후, 애니메이션 피겨 댄스가 부드럽게 움직입니다.

신경망 분류

네트워크는 먼저 은닉층 개수에 따라 그룹화됩니다.

얕은 신경망: 얕은 신경망은 입력과 출력 사이에 은닉층이 하나만 있습니다.

심층 신경망: 심층 신경망은 하나 이상의 은닉층을 가지고 있습니다. 예를 들어, 이미지 인식 모델인 GoogLeNet은 22개의 은닉층으로 구성되어 있습니다.

오늘날 딥러닝은 자율주행차, 휴대폰 등 다양한 분야에서 활용되고 있습니다. Google 검색 엔진, 사기 탐지 및 텔레비전.

딥러닝 네트워크의 유형

데이터 처리 유형에 따라 여러 아키텍처가 표준으로 자리 잡았습니다. 아시모프 연구소에서 발표한 아래 도표는 이러한 아키텍처의 전반적인 범주를 보여줍니다.

퍼셉트론, 피드포워드, RBF, RNN, LSTM, GRU 및 오토인코더를 포함한 신경망 아키텍처 도표

단일 퍼셉트론부터 LSTM, GRU 및 오토인코더 변형에 이르기까지 신경망 아키텍처 도표

피드포워드 신경망

이것은 가장 단순한 형태의 인공 신경망입니다. 이러한 구조에서는 정보가 오직 한 방향, 즉 순방향으로만 흐릅니다. 다시 말해, 정보는 입력층에서 시작하여 은닉층을 거쳐 출력층에서 끝납니다. 네트워크에는 순환 고리가 없으며, 정보는 출력층에서 멈춥니다.

순환 신경망(RNN)

An RNN 순환 신경망(RNN)은 컨텍스트 노드에 정보를 저장할 수 있는 다층 신경망으로, 데이터 시퀀스를 학습하여 숫자 또는 다른 시퀀스를 출력할 수 있습니다. 간단히 말하면, 뉴런 간의 연결에 루프가 포함된 인공 신경망입니다. RNN은 출력이 네트워크의 메모리 역할을 하는 피드백 방식으로 사용되기 때문에 입력 시퀀스를 처리하는 데 매우 적합합니다.

출력이 메모리로 네트워크에 다시 입력되는 순환 신경망 블록 다이어그램

RNN은 출력을 다시 자신에게 보내는데, 이것이 네트워크에 메모리를 부여하는 요소입니다.

예를 들어, "Do you want a …?"라는 문장에서 다음 단어를 예측하는 것이 목표라면, 신경망은 다음과 같이 작동합니다.

  • RNN 뉴런은 문장의 시작 부분을 가리키는 신호를 받습니다.
  • 신경망은 "Do"라는 단어를 입력으로 받아 숫자 벡터를 생성합니다. 이 벡터는 신경망에 피드백되어 메모리 역할을 합니다. 이 단계를 통해 신경망은 "Do"라는 단어를 입력으로 받았으며, 첫 번째 위치에서 받았다는 사실을 기억할 수 있습니다.
  • 이 신경망은 다음 단어들에 대해서도 유사한 방식으로 작동합니다. "너"라는 단어를 받아들이고 그 다음 "원한다"라는 단어를 받아들입니다. 뉴런의 상태는 각 단어를 받을 때마다 업데이트됩니다.
  • 마지막 단계는 "a"라는 단어를 입력받은 후에 발생합니다. 신경망은 문장을 완성할 수 있는 각 영어 단어에 확률을 부여합니다. 잘 훈련된 RNN은 "카페", "음료", "버거" 및 이와 유사한 단어에 높은 확률을 할당할 가능성이 높습니다.

RNN의 일반적인 용도

  • 증권 거래자가 분석 보고서를 생성하도록 지원
  • 재무제표상의 이상 징후를 탐지합니다.
  • 사기성 신용카드 거래를 감지합니다
  • 이미지에 캡션 제공
  • 출력 잡담
  • RNN은 일반적으로 오디오 녹음이나 텍스트와 같은 시계열 데이터 또는 시퀀스를 다룰 때 사용됩니다.

컨볼 루션 신경망 (CNN)

A 현지 시간 이는 고유한 아키텍처를 갖춘 다층 신경망으로, 다음과 같은 기능을 수행하도록 설계되었습니다.tracCNN은 각 계층에서 데이터의 점점 더 복잡해지는 특징을 이용하여 출력을 결정합니다. CNN은 지각 작업에 매우 적합합니다.

컨볼루션, ReLU 활성화 함수, 풀링 기능을 갖춘 CNN 아키텍처는 특징 학습 단계 후 플래튼, 완전 연결, 소프트맥스 분류 단계를 거칩니다.

컨볼루션, ReLU 활성화 함수 및 풀링을 통한 특징 학습; 플래튼 함수, 완전 연결 함수 및 소프트맥스 함수를 통한 분류.

CNN은 주로 이미지와 같은 비정형 데이터 세트가 있을 때 사용되며, 실무자들은 다음과 같은 사항을 고려해야 합니다.trac그것으로부터 정보를 얻습니다.

예를 들어 작업이 이미지 캡션을 예측하는 것이라면 다음과 같습니다.

  • CNN은 예를 들어 고양이 이미지를 입력으로 받습니다. 컴퓨터 용어로 이 이미지는 픽셀들의 집합이며, 일반적으로 흑백 이미지의 경우 하나의 레이어, 컬러 이미지의 경우 세 개의 레이어로 구성됩니다.
  • 특징 학습 단계, 즉 은닉층에서 네트워크는 고양이의 꼬리나 귀와 같은 고유한 특징을 식별합니다.
  • 신경망이 이미지를 인식하는 방법을 완전히 학습하면, 알고 있는 각 이미지 클래스에 대한 확률을 제공할 수 있습니다. 가장 높은 확률을 가진 레이블이 신경망의 예측이 됩니다.

강화 학습

강화 학습 심층 신경망은 머신 러닝의 하위 분야로, 시스템이 가상의 "보상"이나 "처벌"을 받으면서 훈련되는 방식이며, 본질적으로 시행착오를 통해 학습합니다. 이는 네트워크 형태라기보다는 학습 패러다임에 가깝지만, 현대 알고리즘은 심층 신경망을 기반으로 구축됩니다. Google딥마인드는 강화 학습을 사용하여 바둑에서 인간 챔피언을 이겼습니다. 강화 학습은 비디오 게임에서도 더 똑똑한 봇을 제공하여 게임 경험을 향상시키는 데 사용됩니다.

가장 유명한 알고리즘 중 일부는 다음과 같습니다.

  • Q- 학습
  • 딥 Q 네트워크
  • 국가-행동-보상-국가-행동(SARSA)
  • 심층 결정론적 정책 변화도(DDPG)

아래 표는 각 아키텍처가 적합한 경우를 요약한 것입니다.

아키텍처 적합한 데이터 구별되는 특징 일반적인 작업
피드 포워드 고정 길이 테이블 형식 입력 반복문이 없으며, 정보는 앞으로만 전달됩니다. 점수 매기기 및 간단한 분류
재발성(RNN) 순열 및 시계열 컨텍스트 노드는 메모리를 제공합니다. 텍스트 예측, 오디오 예측
컨볼루션(CNN) 격자형 비정형 데이터 합성곱 및 풀링 예시tract 특징 이미지 분류 및 캡션 생성
강화 학습 데이터셋이 아니라 환경입니다. 보상과 처벌을 통해 학습한다 게임 에이전트, 로봇 공학, 제어

딥러닝 응용 사례

이러한 아키텍처는 이미 매우 다양한 산업 분야에서 실제로 사용되고 있습니다.

금융 분야의 AI

금융 기술 분야는 이미 시간 절약, 비용 절감, 가치 창출을 위해 AI를 활용하기 시작했습니다. 딥러닝은 더욱 정교한 신용 평가를 통해 대출 산업을 혁신하고 있습니다. 신용 결정권자는 AI를 활용하여 대출 신청자의 성격과 상환 능력을 고려한 더욱 빠르고 정확한 위험 평가를 수행할 수 있습니다.

Underwrite는 신용 심사 담당자를 위한 AI 솔루션을 제공하는 핀테크 기업입니다. underwrite.ai는 AI를 사용하여 대출금을 상환할 가능성이 더 높은 신청자를 판별하는데, 회사 측은 이러한 접근 방식이 기존의 신용평가 방식보다 우수하다고 주장합니다.

HR의 AI

언더아머는 스포츠웨어 회사입니다. revolutAI를 활용하여 채용 방식을 혁신하고 지원자 경험을 현대화했습니다. 언더아머는 2012년에 입사 지원자가 급증하여 매달 평균 30,000만 건 이상의 지원서를 받았습니다. 이 모든 지원서를 검토하고 서류 심사 및 면접을 진행하는 데 너무 많은 시간이 소요되었습니다. 채용 및 온보딩 과정이 길어지면서 언더아머는 매장을 제때 가동할 수 있도록 인력을 충분히 확보하고 운영 준비를 완료하는 데 어려움을 겪었습니다.

당시 언더아머는 채용, 지원, 채용 절차 등을 위한 거래 솔루션과 같은 '필수적인' 인사 관리 기술을 모두 갖추고 있었습니다. trac채용 및 온보딩 프로세스에 필요한 도구들을 갖추고 있었지만, 그것만으로는 충분하지 않았습니다. 언더아머는 온디맨드 및 실시간 인터뷰를 위해 AI 기반 HR 솔루션 제공업체인 HireVue를 선택했습니다. 그 결과는 놀라웠습니다. 채용 소요 시간을 35% 단축하는 동시에 채용된 직원의 자질을 향상시켰다고 보고했습니다.

마케팅의 AI

AI는 고객 서비스 관리 및 개인화 문제를 해결하는 데 유용한 도구입니다. AI 기술을 적용하여 콜센터 관리 및 통화 연결에서 음성 인식 기능을 향상시키면 고객에게 더욱 원활한 경험을 제공할 수 있습니다.

예를 들어, 딥러닝 기반 오디오 분석을 통해 시스템은 고객의 감정 상태를 파악할 수 있습니다. 고객이 AI 챗봇에 제대로 대응하지 못하는 경우, 시스템은 대화를 실제 상담원에게 연결하여 문제를 처리하도록 할 수 있습니다.

위의 세 가지 딥러닝 사례 외에도, 인공지능은 다른 분야와 산업에서 널리 사용되고 있습니다.

딥러닝이 왜 중요한가요?

딥러닝은 예측을 실질적인 결과로 전환하는 강력한 도구입니다. 딥러닝은 패턴 발견과 지식 기반 예측에 탁월합니다. 빅 데이터 이는 딥러닝의 원동력입니다. 이 두 가지를 결합하면 조직은 이전에는 달성할 수 없었던 생산성, 매출, 경영 및 혁신 분야에서 성과를 거둘 수 있습니다.

딥러닝은 전통적인 방법보다 뛰어난 성능을 보일 수 있습니다. 특히 인지 문제에서 딥 네트워크는 수년간 최고의 성능을 입증해 왔습니다. 이미지 분류, 음성 인식, 얼굴 인식 모두 딥 아키텍처가 주도적인 역할을 하며, 얼굴 인식 모델은 표준 공개 벤치마크에서 거의 99%의 정확도를 달성합니다. 이러한 성능 향상은 네트워크가 수동으로 설계된 특징에 의존하는 대신 자체적으로 특징을 학습하는 데서 비롯됩니다.

딥러닝의 한계

그러한 결과에는 실질적인 비용이 수반됩니다.

데이터 라벨링

현재 대부분의 AI 모델은 지도 학습을 통해 훈련됩니다. 즉, 사람이 기본 데이터에 레이블을 지정하고 범주화해야 하는데, 이는 상당한 작업량과 오류 발생 가능성이 높은 작업입니다. 예를 들어, 기업들은 다음과 같은 방식으로 AI 모델을 개발합니다.ping 자율주행차 기술 개발을 위해 시제품 차량에서 촬영된 수 시간 분량의 비디오 영상을 수작업으로 분석하고 주석을 다는 데 수백 명의 인력이 투입됩니다.

대규모 훈련 데이터 세트 확보

CNN과 같은 딥러닝 기술은 의학을 비롯한 여러 분야에서 전문가의 지식을 모방할 수 있다는 것이 입증되었습니다. 하지만 이러한 머신러닝의 물결을 위해서는 레이블이 지정되어 있을 뿐만 아니라 충분히 광범위하고 보편적인 학습 데이터 세트가 필요합니다.

딥러닝 모델은 분류 작업에서 비교적 좋은 성능을 보이려면 수천 개의 관측치가 필요하며, 경우에 따라서는 인간 수준의 성능을 내려면 수백만 개의 관측치가 필요합니다. 따라서 딥러닝이 페타바이트 규모의 빅데이터를 축적하는 거대 기술 기업에서 가장 널리 사용되는 것은 당연합니다. 이러한 규모 덕분에 인상적이고 매우 정확한 딥러닝 모델을 만들 수 있습니다.

문제를 설명하세요

규모가 크고 복잡한 모델은 사람이 이해하기 쉽게 설명하기 어려울 수 있습니다. 예를 들어 특정 결정이 내려진 이유를 설명하는 것 말입니다. 이것이 일부 모델의 수용이 어려운 이유 중 하나입니다. 인공 지능 이 도구는 해석 가능성이 유용하거나 필수적인 응용 분야에서 속도가 느립니다.

또한 AI 적용이 확대됨에 따라 규제 요구 사항으로 인해 더 설명 가능한 AI 모델이 필요할 수도 있습니다.

자주 묻는 질문

고전 기계 학습 수동으로 설계된 특징이 필요하며 소규모 표 형식 데이터에서 잘 작동합니다. 딥 러닝은 원시 비정형 데이터에서 스스로 특징을 학습하지만 훨씬 더 많은 예제와 컴퓨팅 자원을 필요로 합니다.

이 방식은 비선형성을 도입하여, 여러 층을 쌓아 곡선 형태의 결정 경계를 모델링할 수 있도록 합니다. 즉, 하나의 선형 단계로 축소하는 대신 곡선 형태의 경계를 표현할 수 있습니다. 은닉층에는 일반적으로 ReLU 활성화 함수가 사용되며, 출력층에는 시그모이드 함수와 소프트맥스 함수가 ​​사용됩니다.

역전파는 각 가중치가 오류에 얼마나 기여했는지 측정한 다음, 해당 기울기를 레이어를 통해 거꾸로 전달하여 모든 가중치가 손실을 줄이는 방향으로 조정되도록 합니다. 이것이 바로 두 번째 단계가 작동하는 방식입니다.

에포크는 훈련 데이터를 한 번 완전히 통과하는 것을 의미합니다. 배치 크기는 네트워크가 가중치를 업데이트하기 전에 처리하는 샘플의 개수입니다. 학습률은 각 가중치 업데이트의 크기를 제어합니다.

2017년에 도입된 트랜스포머는 순환 신경망(RNN)을 어텐션 메커니즘으로 대체하여 모든 토큰이 다른 모든 토큰을 동시에 참조할 수 있도록 합니다. 이러한 병렬 처리 덕분에 확장성이 RNN보다 훨씬 뛰어나며, 현재 언어 및 비전 분야에서 지배적인 위치를 차지하고 있습니다.

학습 과정은 주로 대규모 행렬 곱셈으로 이루어지는데, GPU는 매우 높은 메모리 대역폭을 활용하여 이를 병렬로 처리합니다. CNN이나 트랜스포머를 CPU에서 단일 학습용 GPU로 옮기면 일반적으로 속도가 몇 배 향상됩니다.

신경망 아키텍처 검색 및 AutoML 도구는 레이어 개수, 너비 및 하이퍼파라미터를 시험적으로 조정하고, 검증 결과가 가장 좋은 후보를 선택합니다. 이러한 도구는 수동 검토 작업을 크게 줄여주지만, 목표 설정과 컴퓨팅 예산 책정은 여전히 ​​사람이 담당합니다.

GitHub 부조종사 체커 TensorFlow 그리고 파이Tor짧은 프롬프트에서 학습 루프를 실행합니다. 생성된 기본 코드가 종종 잘못되는 경우가 있으므로 입력 형태, 손실 함수 및 시드를 직접 확인하십시오.

이 게시물을 요약하면 다음과 같습니다.