프로그래밍/AI

딥러닝의 이해

에이티에스 2024. 9. 30. 09:12
728x90

Deep Learning은 Machine Learning의 하위 공간이고 Machine Learning은 Artificial Intelligence의 하위 공간입니다. 따라서 계층 구조는 아래 이미지와 같은 방식입니다. 

 

 

 

인공 지능(AI - Artificial Intelligence)는 기계가 인간이 수행하는 작업을 수행할 수 있는 컴퓨터 과학 분야입니다. 이에 대한 예로는 절단, 용접, 페인팅 등의 산업에서 사용되는 로봇이 될 수 있습니다. 이 로봇은 일반적으로 인간이 수행하는 작업을 수행할 수 있습니다. 한 가지 기억해야 할 점은 기계 학습과 딥 러닝이 인공 지능의 하위 집합이라는 것입니다.

따라서 AI는 기계 학습으로 한 단계 더 깊이 나아갑니다.

 

기계학습(ML - Machine Learning)에는 기계가 결정을 내릴 수 있는 기능을 제공하는 방식으로 설계된 일련의 기계 학습 알고리즘이 있습니다. 주어진 데이터 세트에서 학습하고 파악한 내용에 따라 결정을 내립니다. 예를 들어 컴퓨터가 여러 게임을 플레이하면서 학습하는 컴퓨터 체스 게임이 있습니다.

 

딥러닝(DL - Deep Learning)에서 알고리즘은 지적 능력이 인간의 지적 능력과 밀접하게 유사하도록 설계되었습니다. 그것은 인간의 BNN (Biological Neural Network)에서 영감을 얻은 ANN (Artificial Neural Network)이라는 개념의 도움으로 이루어졌습니다. 이에 대한 예로는 교통 오류를 감지하는 데 사용되는 음성 인식 및 이미지 처리가 있습니다.

이제 이것들은 Deep Learning의 일반적인 용어입니다

 

 

반응형

 

1. 인공 지능(Artificial Intelligence)

인공 지능은 스마트 기계를 구축하고 특정 작업을 수행하는 인간만큼 효율적으로 훈련시키는 영역입니다. 이는 기계에 의사 결정의 잠재력을 부여함으로써 기계를 지능적으로 만드는 것과 같습니다.

 

 

약한 인공 지능 (Weak Artificial Intelligence)는 프로그램이 인간과 같은 경험을 제공하는 척하지만 실제로는 입력에 따라 잘 정의 된 응답을 가지고 그에 따라 행동하는 인공 지능 유형이며 제공하는 일련의 규칙에 구속될 가능성이 높으며 해당 규칙의 경계 내에서 행동합니다.

 

강력한 인공 지능 (Strong Artificial Intelligence)는 기계의 정신적 도달 범위가 인간과 동일한 지점까지 프로그램의 호환성과 잠재력을 달성하는 것입니다. 그러나 그것은 개념적 단계에 있습니다. 기계를 인간과 동등하게 만드는 완벽함을 달성하려면 아직 많이 뒤처져 있습니다. 기계 학습과 딥 러닝은 강력한 인공 지능 범주에 속합니다.

 

음성 인식, 시각적 인식 및 언어 번역은 강력한 인공 지능에 의해 잘 정의된 예입니다. 시각 인식과 마찬가지로 기계가 적색 신호를 건너는 자동차의 번호판을 시각화하면 캡처한 번호판을 사용하여 자동차 소유자를 검색하여 즉시 사람을 식별하려고 합니다. 의사 결정이 필요하고 이미지 캡처, 이미지 처리, 즉 번호판 읽기, 소유자 검색, 소유자 식별과 같은 많

은 작업을 수행해야 하기 때문에 강력한 인공 지능 범주에 속합니다.

 

 

 

반응형

 

2. 기계학습(Machine Learning)

1) Supervised Learning에서 머신은 특정 데이터 세트에 대해 학습됩니다. 이 특정 데이터 세트는 입력 및 출력 매개 변수가 있는 데이터 세트입니다. 출력에는 이미 정답이 태그되어 있습니다. 그 후, 지도 학습 알고리즘이 데이터를 분석하고 레이블이 지정된 데이터에서 올바른 결과를 생성하도록 기계에 새로운 데이터 세트가 제공됩니다. 감독하에 작동합니다.

 

 

 

 

2) 비지도 학습(Unsupervised Learning)에서 기계는 알고리즘이 감독 없이 스스로 학습할 수 있도록 훈련됩니다. 지도 학습과 달리 레이블이 지정된 데이터가 없습니다.

이러한 유형의 학습에서는 사전 학습이 없으며 기계가 스스로 구조와 패턴을 밝혀내야 합니다.

 

 

3) 강화 학습(Reinforcement Learning): 강화 학습에서 알고리즘은 더 나은 결과를 위해 작업을 완료할 수 있는 최상의 방법을 찾으려고 합니다. 따라서 기본적으로 보상과 처벌의 원칙에 따라 작동하며, 이는 아래에 언급 된 예에서 더 명확 할 것입니다.

 

 

 

 

반응형

 

3. 딥러닝

Deep Learning은 계층화된 아키텍처를 통해 점진적으로 작동하는 Machine Learning의 하위 공간입니다. 입력 계층, 숨겨진 계층 및 출력 계층이 있습니다.

 

예를 들어, 이미지를 인식하기 위해 해당 이미지에서 다른 레이어가 작동합니다. 레이어는 밝기 또는 색상, 가장자리 및 기타 기능과 같은 이미지의 다른 기능에서 다르게 작동합니다. 여기 아래 다이어그램에서 서로 다른 숨겨진 레이어가 식별을 위해 이미지의 다른 부분에서 작동하고 마지막으로 부분을 결합하여 식별을 위한 개체를 형성합니다.

 

 

 

따라서 Deep Learning이 성공적이고 효율적이기 위해서는 충분한 양의 데이터가 있어야 합니다. 구글 브레인(Google Brain) 프로젝트의 리더 중 한 명은 "딥 러닝에 비유하자면, 로켓 엔진은 딥 러닝 모델이고, 연료는 알고리즘에 공급할 수 있는 엄청난 양의 데이터"라고 말했다. 따라서 기본적으로 핵심은 딥 러닝 알고리즘이 높은 수준의 데이터를 계층별로 파악하려고 시도하는 방식으로 설계되었다는 것입니다.

 

머신 러닝과 딥 러닝의 차이점 중 하나는 DL 알고리즘이 엔드 투 엔드 문제 해결 접근 방식을 선호한다는 것입니다. Deep Learning은 Biological Neural Network에서 영감을 받은 개념인 Artificial Neural Network를 사용합니다.

 

신경망과 딥 러닝은 밀접한 관련이 있습니다. 딥러닝은 인공 신경망을 이용한 지능형 알고리즘의 구현입니다.

 

 

 

반응형

 

1) 생물학적 신경망(Biological Neural Networks) 및 인공 신경망(Artificial Neural Networks)

뇌에는 많은 수의 뉴런이 있습니다. 뉴런은 신경 세포이며 중추 신경계의 기본 구성 요소입니다. 이 세포는 신체의 다른 세포가 통신하도록 촉발하거나 활력을 불어넣도록 설계된 특수 세포입니다. 뉴런은 흥분성이 있는데, 이는 뉴런이 전기 자극을 사용하여 기능한다는 것을 의미합니다. 뉴런은 시냅스(synapse)라고 불리는 지점에서 상호 연결되어 있습니다.

 

 

신경 자극이 뉴런의 끝에 있는 시냅스에 도달하면 다음 뉴런으로 직접 전달할 수 없습니다. 대신, 시냅스는 뉴런이 화학적 신경 전달 물질을 방출하도록 촉발하는 데 도움이 됩니다. 신경전달물질은 두 뉴런 사이의 틈을 가로질러 떠다닙니다. 반대편에 도달하면, 그것은 마치 자물쇠의 열쇠처럼 표적 뉴런의 표면에 있는 맞춤형 수용체에 들어맞습니다. 이 도킹 과정은 화학 신호를 다시 전기 신경 자극으로 변환합니다.

 

인간의 뇌는 수십억 개의 뉴런으로 구성되어 있으며 통신을 위해 축삭에 의해 다른 세포와 더 연결됩니다. 외부 세계의 데이터를 받아들이는 수상돌기가 있습니다. 입력은 수상돌기에 의해 받아들여지고 소마(soma)라고도 하는 뉴런의 핵에 전기 충격을 전달합니다. 그런 다음 이 충격은 추가 처리 후 축삭으로 전달됩니다. 축삭은 뉴런의 핵에서 뉴런의 시냅스로 충동을 전달하는 데 도움이 됩니다.

 

 

 

반응형

 

2) 인공 신경망의 계층

  • 입력 레이어
  • 숨겨진 레이어
  • 출력 계층

 

 

 

- 입력 계층: 입력 노드는 외부 소스의 데이터를 네트워크로 제공합니다. 계산을 수행하지 않습니다. 단순히 입력 데이터를 숨겨진 계층으로 전달합니다.

 

- 숨겨진 계층 또는 심층 신경망: 숨겨진 인공 뉴런의 집합이 숨겨진 계층층을 만듭니다. 계산 및 모든 처리는 숨겨진 계층에서 수행되며 출력을 출력 계층으로 전달하며 그 안에 여러 층을 구성합니다.

 

- 출력 계층: 출력 계층은 계산하고 네트워크에서 외부 세계로 정보를 전달하는 데 사용됩니다.

 

퍼셉트론(Perceptron)은 딥러닝(Deep Learning)에 사용되는 머신러닝 알고리즘으로, 뉴런에 분류된 출력값을 제공할 수 있는 학습 경험을 제공합니다. 분류된 출력에 대해 이진 분류기를 사용하며, 이는 입력이 특정 클래스에 속하는지 여부를 결정할 수 있는 함수입니다. 즉, 인공 뉴런이라고 말할 수 있습니다.

 

 

 

ANN(Artificial Neural Network)에서 노드 또는 퍼셉트론은 생물학적 뉴런을 모방합니다. ANN에는 조밀하게 상호 연결된 노드 집합이 있습니다. 이러한 노드는 입력을 받아 출력을 생성하는 방식으로 구성됩니다. 이러한 노드는 링크로 연결되며 이러한 링크의 도움으로 서로 상호 작용합니다. 노드는 입력 데이터를 사용하고 처리 후 결과를 후속 노드로 전달합니다.

 

 

 

 

반응형

 

링크는 기본적으로 실수인 가중치와 연결됩니다. 이제 이러한 가중치는 무작위로 초기화되므로 실제 값과 예측 값 간에 큰 차이가 있을 수 있습니다. 따라서 오류가 발생할 가능성이 더 큽니다.

 

 

 

 

처리 후 입력에 할당된 가중치가 관련이 없는 것으로 판명되면(즉, 원하는 출력을 제공하지 않는 것 같음) 원하는 출력을 얻을 수 있도록 돌아가서 데이터의 가중치로 현재 값을 업데이트합니다.

 

 

 

 

'바이어스'라는 또 다른 용어가 있는데, 이는 활성화 함수를 트리거할 시기를 결정하는 데 사용됩니다. 반면, 가중치는 활성화 함수의 트리거링이 얼마나 빨리 발생할지 결정하는 데 사용됩니다. 

 

우선, ANN에서 입력은 항상 선형, 즉 직선 형태로 나타낼 수 있습니다. 활성화 함수는 계층이 받은 입력에 함수를 적용하고 입력을 선형에서 비선형으로 변환하여 해당 계층의 출력을 가져온 다음 다음 계층에 입력으로 공급합니다.

 

 

 

현실에서는 데이터가 2차원이 아닙니다. 2차원 데이터는 선형이며 XY 평면에 플롯할 수 있습니다. 예를 들어, X축은 속도를 나타내고 Y축은 자동차로 이동한 거리를 나타낸다고 가정해 보겠습니다. 그러나 2D 평면으로 표현할 수 없는 자동차에 대해 고려해야 할 더 많은 요소가 있습니다.

여러 요인이 있기 때문에 이 비선형 데이터로 작업할 무언가가 필요합니다. 여기에서 활성화 기능이 필요합니다. 활성화 함수는 입력에 대한 비선형 변환을 수행하여 더 복잡한 작업을 학습하고 수행할 수 있도록 합니다.

 

 

반응형

 

728x90
반응형
그리드형