신경망과 딥러닝은 무엇인가... 그리고 어떻게 쉽게 구현할 수 있나?
신경망과 딥러닝은 무엇인가... 그리고 어떻게 쉽게 구현할 수 있나?
  • 박현진 기자
  • 승인 2020.02.17 20:25
  • 댓글 0
이 기사를 공유합니다

신경망과 딥러닝을 사용하여 복잡한 패턴 인식 문제를 해결하는 코드를 작성할 수 있게 되며, 신경망과 딥러닝을 사용하여 자신이 고안 한 문제를 해결할 수 있는 기초를 갖게 된다.
이미지:본지
이미지:본지

신경망은 지금까지 발명된 가장 아름다운 프로그래밍 패러다임 중 하나이다.

프로그래밍에 대한 기존의 접근 방식에서는 컴퓨터에 수행할 작업을 알려주고 큰 문제를 컴퓨터가 쉽게 수행 할 수 있는 작고 정확하게 정의된 여러 작업으로 나눈다.

그러나 신경망에서는 컴퓨터로 문제를 해결하는 방법은 알려주지 않는다. 대신, 데이터를 통해 문제에 대한 자체 솔루션을 파악하는 것이다.

2006 년까지는 몇 가지 특수한 문제를 제외하고는 보다 전통적인 접근 방식을 능가하도록 신경망을 훈련시키는 방법을 몰랐다. 2006 년에 변경된 것은 소위 딥뉴럴 네트워크에서 학습을 위한 기술의 발견이다. 이러한 기술은 이제 딥러닝으로 알려져 있다.

이들은 더욱 발전하여 오늘날 심층신경망과 딥러닝은 컴퓨터 비전, 음성 인식 및 자연어 처리의 많은 중요한 문제에서 뛰어난 성능을 달성하고 있다.

그럼 신경망과 딥러닝은 무엇인가?, 그리고 어떻게 구현하나? 에 와이콤비네이터연구소(Y Combinator Research)의 연구원 마이클 닐슨(Micheal Nielson)이 지난해 12월 저술한 '신경망과 딥러닝'이 비교적 명확한 답이 될 수 있다. 이 연구소는 미국의 유명 액셀러레이터 Y Combinator가 스타트업 투자 外 비영리 연구기관 으로 2015년에 설립했다.

지식 기부로 저술된 이 책은 다양한 프로그래밍 패러다임을 다루며, 필기 숫자 및 기타 사용 사례를 인식하기 위해 신경망을 구축하는 데 도움을 줄 수 있다.

이 책은 무료로 제공되며, 저술 목적은 최신 딥러닝 기술을 포함하여 신경망의 핵심 개념을 익히는 데 있다. 다 읽은 후에는 신경망과 딥러닝을 사용하여 복잡한 패턴 인식 문제를 해결하는 코드를 작성하게 된다. 또한 신경망과 딥러닝을 사용하여 자신이 고안한 문제를 해결할 수 있는 기초를 갖게 한다.

이 책은 신경망과 딥러닝의 핵심 원리를 제대로 이해하고 프로그래밍 언어 용어에서는 새로운 언어의 핵심 구문, 라이브러리 및 데이터 구조를 마스터하는 것이다. 또 배우고자 하는 라이브러리를 찾고 튜토리얼과 문서를 통해 신경망이 작동하는 방식에 대한 통찰력을 이해할 수 있다.

특히 구체적인 문제, 즉 손으로 쓴 숫자를 인식하도록 컴퓨터를 가르치는 문제를 해결함으로써 신경망과 딥러닝의 핵심 원리를 알 수 있다.

한편, 이 책은 온라인으로 오픈되어 있다. 영문이며, 읽으려면 프로그래밍 경험이 필요하다. 실습에서 파이썬(버전 2.7)으로 코드를 작성했다. 파이썬으로 프로그래밍하지 않더라도 약간의 노력만으로 쉽게 이해할 수 있다. 이 책을 통해 우리는 실험을 하고 이해를 구축하는 데 사용할 수 있는 작은 신경망 라이브러리를 개발할 것이다. 모든 코드는 이 책에서 다운로드 할 수 있다.

'신경망과 딥러닝' 이 책의 목차는 ▶신경망을 사용하여 손으로 쓴 숫자 인식 ▶역 전파 알고리즘의 작동 방식 ▶신경망 학습 방식 개선 ▶신경망이 모든 기능을 계산할 수 있다는 시각적 증거 ▶심층 신경망은 왜 훈련하기 어렵습니까? ▶딥 러닝 ▶부록 : 지능에 대한 간단한 알고리즘이 있습니까? 등으로 구성돼 있으며, 내용과 예제는 깃허브에서 다운받을 수 있다.(다운)

 


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.