베타리더 후기 xii
이 책에 대하여 xvi
PART I 줄리아 언어
CHAPTER 1 기본 문법 3
1.1 변수 3
1.2 수치 타입 4
__정수 4 / 부동소수점 수 5
1.3 자료구조 6
__배열 6 / 튜플 6 / 명명된 튜플 7 / 딕셔너리 7
1.4 문자열 타입 7
1.5 복합 타입 9
1.6 기본 연산 10
1.7 함수 11
__함수 정의 및 호출 11 / 인수 기본값 12 / 가변 인수와 키워드 인수 12 / 익명 함수와 do 블록 13 / 함수 합성과 파이핑 14 / 벡터화용 dot 연산자 14 / 인수 전달 방식 14 / 객체 호출 함수 15
1.8 제어 흐름 15
__복합식 15 / 조건식 16 / 반복문 16 / 예외 처리 17
1.9 모듈 17
1.10 변수 영역 19
__전역 변수 19 / 함수의 지역 변수 19 / for, while, try 문의 지역 변수 20
CHAPTER 2 타입 시스템 23
2.1 동적 타입 23
2.2 추상 타입과 구체 타입 25
__줄리아 수 체계 25 / 추상 타입 27 / 원시 타입 27 / 복합 타입 28 / 변경 불가능성 30 / 행위의 상속 31
2.3 매개변수 타입 32
__UnionAll 타입 34 / 무공변성 34 / 매개변수 추상 타입 36
2.4 그 외 타입들 36
__싱글턴 타입 36 / Nothing 타입 37 / 함수 타입 37 / 튜플 타입 37 / 유니언 타입 38
2.5 타입 변환과 승격 38
__타입 변환 39 / 승격 40 / 사용자 정의 수 타입 41
CHAPTER 3 함수와 메서드 45
3.1 다중 디스패치 46
__다중 디스패치 작동 방식 47 / 다중 디스패치 내부 구현 49 / 인수 타입별로 최적화된 메서드 정의 50
3.2 메서드 특화 51
__컴파일 단계 52 / 복합 타입 인수 메서드의 특화 55 / 타입 시스템과 메서드 특화 57
3.3 성능 좋은 코드를 작성하는 법 57
__스크립
가장 빠르고 우아한 데이터 과학 최고의 언어를 만날 시간
줄리아는 파이썬 상위호환 언어로 평가받으면서 사용이 늘고 있다. 파이썬과 같이 동적 언어이면서도 C와 같은 정적 언어에 가까운 실행 속도를 보이며, 대부분의 라이브러리 역시 줄리아 코드로 작성되어 라이브러리의 코드를 수정하거나 디버깅하기가 매우 쉽다는 장점도 있다. 이 책은 줄리아의 우아한 언어 특성과 강력한 라이브러리 생태계를 활용해 전문가답게 인공지능 실무를 처리하는 방법을 알려준다. 언어 문법을 매뉴얼 형식으로 설명하는 대신, 타입 시스템, 다중 디스패치, 메서드 특화, 메타프로그래밍, 다차원 배열, 병렬 연산 등 실무 관점에서 알아야 할 줄리아의 코딩 스타일을 자세히 다룬다. 이어서 데이터 분석과 시각화에 쓰이는 라이브러리들(Tables.jl, DataFrames.jl, Query.jl, Plots.jl 등과 환경 구성법을 살펴보고, 간단한 전처리 실습도 해본다. 특히 책 앞부분은 파이썬과 비교하는 예시로 파이썬 사용자의 줄리아 적응을 돕는다.
이후는 머신러닝, 딥러닝, 강화학습 영역의 일반적인 작업들에 대해 최신 알고리즘을 활용해 줄리아로 우아하게 실습해보는 시간이다. 줄리아의 과학적 타입이나 MLJ의 모델 합성을 활용하면 머신러닝 워크플로 자체가 얼마나 깔끔해지는지 체감할 수 있다. 플럭스를 사용하는 딥러닝 파트에서는 자동 미분과 함자를 설명한 다음, 컴퓨터 비전, 객체 탐지, NLP 등의 딥러닝 작업들을 실습한다. 파이토치나 텐서플로에 익숙한 독자가 쉽게 따라올 수 있게 구성했다. 끝으로 DQN, DDPG, SAC, A2C, PPO 등 강화학습 알고리즘을 줄리아로 구현해 카트폴 환경에서 결과를 확인해본다. 줄리아 문법 또는 인공지능 이론을 기초부터 하나씩 설명하는 책은 아니다. 그런 입문서들은 이미 시중에 있지만, 줄리아를 실제로 인공지능 실무에 활용해본 저자가 노하우를 담아 집필한 활용서는 이 책이 유일하다. 인공지능 실무에서 생산성을 높이고 싶다면 이 책이 가장 우아한 선택이