이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
1장 정형 데이터를 딥러닝으로 다뤄야 하는 이유__1.1 딥러닝 개요__1.2 딥러닝의 장단점__1.3 딥러닝 소프트웨어 스택__1.4 정형 데이터와 비정형 데이터__1.5 정형 데이터에 딥러닝을 사용하는 것에 대한 부정적 시각__1.6 정형 데이터 문제로 딥러닝을 살펴보는 이유__1.7 이 책에서 제공하는 코드 소개__1.8 알아둘 내용__1.9 정리2장 판다스 데이터프레임과 책 전반에서 사용할 예제 소개__2.1 다양한 종류의 딥러닝 개발 환경__2.2 판다스를 살펴보기 위한 코드__2.3 파이썬의 판다스 데이터프레임__2.4 CSV 파일을 판다스 데이터프레임으로 만들기__2.5 판다스를 사용한 SQL 등의 작업 수행__2.6 주요 예제: 경전철의 지연 예측__2.7 딥러닝을 배우는 데 현실의 데이터셋을 사용해야 하는 이유__2.8 입력 데이터셋의 형식과 범위__2.9 최종 목표: 엔드투엔드 솔루션__2.10 솔루션 코드에 대한 상세한 설명__2.11 개발 환경: 일반적인 환경과 딥러닝이 가능한 환경__2.12 딥러닝을 배척하는 의견들__2.13 딥러닝의 접근성이 좋아진 까닭__2.14 딥러닝 모델 훈련 과정 맛보기__2.15 정리3장 데이터 준비 (1) 데이터의 탐색과 정리__3.1 데이터 탐색 및 정리를 위한 코드__3.2 파이썬에서 설정 파일을 사용하는 방법__3.3 XLS 파일을 판다스 데이터프레임으로 변환하기__3.4 판다스 데이터프레임을 피클링된 파일로 저장하여 세션 간 공유하기__3.5 데이터 탐색__3.6 데이터를 연속형, 범주형, 텍스트로 분류하기__3.7 데이터셋에 내재된 문제 정돈: 누락된 데이터, 오류, 추측성 문제__3.8 딥러닝에 필요한 데이터 규모의 산정__3.9 정리4장 데이터 준비 (2) 데이터 변형4.1 데이터 준비와 변형을 위한 코드__4.2 바르지 못한 값 다루기: Route__4.3 유효하지 않은 값에 대해 하나의 대쳇값만 사용하는 이유__4.4 올바르지 않은 값 다루기: Vehicle__4.5 일관성 없는 값 다루기: Location__4.6 공간 데이터 다루기: Location__4.7 자료형 불일치 문제 다루기__4.8 여전히 잘못된 데이터를 가진 행 다루기__4.9 파생된 열 생성하기__4.10 딥러닝 모델 훈련을 위해 비수치형 데이터를 수치형 데이터로 대체하는 방법__4.11 엔드투엔드 솔루션 구성요소__4.12 정리__5장 모델 준비와 구축__5.1 데이터 누수 및 모델 훈련에 적절한 피처__5.2 도메인 전문성과 데이터 누수를 방지하기 위한 최소 점수 검정__5.3 경전철 지연 예측 문제에서 데이터 누수를 방지하는 방안__5.4 케라스 모델 구축용 코드 살펴보기__5.5 모델 훈련을 위한 데이터프레임의 단계별 리팩토링__5.6 케라스 모델이 원하는 형식으로 데이터프레임 변형하기__5.7 케라스와 텐서플로에 대한 간략한 역사__5.8 텐서플로 1.x에서 2로 마이그레이션하기__5.9 텐서플로와 파이토치__5.10 케라스 딥러닝 모델의 구조__5.11 데이터 구조가 케라스 모델을 정의하는 방식__5.12 임베딩 계층의 능력__5.13 데이터 구조에 따라 자동으로 케라스 모델을 구축하는 코드 __5.14 모델 탐색__5.15 모델 파라미터__5.16 정리6장 모델 훈련과 실험 수행__6.1 딥러닝 모델 훈련을 위한 코드__6.2 딥러닝 모델의 훈련 과정 검토__6.3 경전철 지연 예측용 모델의 최종 목표 검토__6.4 훈련, 검증, 테스트용 데이터셋 선택__6.5 초기 훈련 수행__6.6 모델의 성능 측정__6.7 케라스 콜백: 훈련 과정 중 최상의 결과를 얻는 방법__6.8 여러 훈련 과정에서 동일한 결과를 얻는 방법__6.9 훈련된 모델로 단일 샘플에 대해 예측하기__6.10 훈련된 모델을 직접 저장하기__6.11 일련의 실험을 통해 모델 성능 향상하기__6.12 정리7장 훈련된 모델로 추가적인 실험 수행__7.1 더 많은 실험을 수행하기 위한 코드__7.2 잘못된 값의 제거가 모델 성능을 개선할 수 있는지 검증__7.3 범주형 열에 적용된 임베딩이 모델 성능을 개선할 수 있는지 검증__7.4 딥러닝 모델과 XGBoost의 비교__7.5 딥러닝 모델 개선을 위한 고려사항__7.6 정리8장 모델 배포__8.1 모델 배포의 개요__8.2 중요한 주제인 배포가 어려운 이유__8.3 단일 샘플에 대한 모델의 검증 과정 되돌아보기__8.4 웹 배포에서의 사용자 경험__8.5 모델을 웹에 배포하기 위한 절차__8.6 웹 배포의 이면__8.7 페이스북 메신저 배포에서의 사용자 경험__8.8 페이스북 메신저 배포의 이면__8.9 라사에 대한 추가 배경지식__8.10 모델을 라사로 페이스북 메신저에 배포하기 위한 절차__8.11 파이프라인의 개요__8.12 모델 훈련 단계의 파이프라인 정의__8.13 예측 점수를 매기는 단계에 파이프라인 적용하기__8.14 배포 후 모델을 유지/보수하는 방법__8.15 정리9장 향후 개선 방향__9.1 지금까지 학습한 내용 되돌아보기__9.2 경전철 지연 예측 프로젝트 개선을 위한 기본 아이디어__9.3 상세한 위치 정보 추가 방안__9.4 딥러닝 모델 훈련을 위한 날씨 데이터 추가 방안__9.5 딥러닝 학습을 위한 계절 또는 시간대 데이터 파생 방안__9.6 잘못된 값을 삭제하는 대신 결측값으로 대체하는 대안__9.7 웹 배포용 모델을 외부에 공개하는 방법__9.8 새로운 데이터셋에 대한 모델 구축 방안__9.9 데이터셋 준비와 모델 훈련__9.10 웹 모델 배포를 위한 코드 변경__9.11 페이스북 메신저용 모델 배포__9.12 다른 데이터셋에 적용하기 위한 사례 연구__9.13 추가 학습 자료__9.14 정리부록 A 구글 코랩 가이드 __A.1 코랩이란__A.2 코랩 세션에서 구글 드라이브 사용하기__A.3 제공되는 저장소의 노트북을 코랩에서 실행하기__A.4 코랩과 페이퍼스페이스의 장단점
|
Mark Ryan
박찬성의 다른 상품
|
| 이 책의 구성 | 1장 ‘정형 데이터를 딥러닝으로 다뤄야 하는 이유’는 고수준에서의 딥러닝 개념, 정형 데이터에 딥러닝을 적용하거나 적용하지 말아야 하는 이유를 빠르게 검토합니다. 또한 정형 데이터가 의미하는 바도 여기서 설명합니다.2장 ‘판다스 데이터프레임과 책 전반에서 사용할 예제 소개’는 이 책의 예제 코드를 위한 개발 환경을 설명합니다. 정형 데이터용 파이썬 라이브러리인 판다스를 소개하고, 책의 나머지 부분에서 다루게 될 경전철 시스템의 지연을 예측하는 예제의 개요를 살펴봅니다. 즉 경전철의 지연을 예측하는 문제죠. 2장의 마지막에는 딥러닝 모델을 학습시키는 간단한 예제를 보여줌으로써, 이후의 장에서 배우게 될 내용을 빠르게 맛보는 기회를 제공합니다.3장 ‘데이터 준비(1) 데이터의 탐색과 정리’는 경전철 문제에 대한 데이터셋과 데이터셋에 내재된 다양한 문제를 다루는 방법을 탐색합니다. 또한 딥러닝 모델을 훈련시키는 데 얼마만큼의 데이터가 필요한지에 대해서도 함께 다룹니다.4장 ‘데이터 준비(2) 데이터 변형’은 데이터셋에 내재된 추가적인 문제를 해결하는 방법과, 모든 정리 작업이 완료된 후에도 잘못된 값이 남아 있다면 무엇을 해야 할지 등의 내용을 다룹니다. 또한 비수치형 데이터를 딥러닝 모델에 사용하기 위한 준비 과정도 살펴봅니다. 그리고 처음부터 끝까지의 코드 예제를 요약하며 마무리합니다.5장 ‘모델 준비와 구축’은 경전철 지연 예측 문제를 위한 딥러닝 모델을 구축하는 과정을 다룹니다. 그리고 데이터 누수(예측 시 사용할 수 없는 데이터로 모델을 훈련시키는 현상) 문제와 이 문제를 방지하는 방법도 함께 살펴봅니다. 또한 딥러닝 모델을 구축하는 코드를 자세히 살펴보고, 모델의 구조를 분석하는 다양한 옵션도 소개합니다.6장 ‘모델 훈련과 실험 수행’은 모델을 훈련시키고 검증하기 위한 입력 데이터셋의 일부를 고르는 것부터, 초기 훈련을 수행하고, 훈련된 모델의 성능을 개선하기 위한 여러 가지 실험을 반복적으로 수행하는 것까지 모델 훈련에 대한 모든 과정을 설명합니다. 7장 ‘훈련된 모델로 추가적인 실험 수행’은 6장에서 소개된 모델 훈련의 기법을 확장하여, 좀 더 심도 있는 세 실험을 추가적으로 수행합니다. 그중 첫 번째 실험은 4장의 데이터 정리(유효하지 않은 값이 포함된 기록 삭제)가 모델의 성능을 향상하기 위한 것이었음을 증명합니다. 그리고 두 번째 실험은 범주형 열에 학습된 벡터(임베딩)를 연관시키는 것이 성능 향상에 주는 이점을 보여줍니다. 마지막 세 번째 실험은 딥러닝 모델의 성능과, 딥러닝을 사용하지 않는 유명한 접근법 중 하나인 XGBoost의 성능을 비교합니다. 8장 ‘모델 배포’는 훈련된 딥러닝 모델을 외부 세상에서 유용하게 사용될 수 있도록 만드는 방법을 상세히 다룹니다. 우선 훈련된 모델을 웹에 배포하는 간단한 방식을 살펴본 뒤, 그다음으로 오픈소스 챗봇 프레임워크인 라사(Rasa)를 사용하여 페이스북 메신저로 배포하는 방식을 알아봅니다.9장 ‘향후 개선 방향’은 지금까지 책에서 다룬 내용을 요약 정리합니다. 그런 다음 위치, 날씨 데이터를 포함해 모델의 성능을 개선하는 데 쓰일 수 있는 추가적인 데이터를 살펴봅니다. 그리고 책에서 제공된 코드를 완전히 새로운 정형 데이터 문제에 적용하는 방법을 알아봅니다. 마지막에는 딥러닝과 정형 데이터라는 주제를 배울 수 있는 추가적인 책, 강의, 온라인 자료의 목록을 소개합니다.부록 A ‘구글 코랩 가이드’에서는 책에서 제공하는 예제 코드를 코랩(Colab)이라는 무료 환경에서 실행하는 방법을 다룹니다.각 장은 바로 직전 장의 내용을 기반으로 하기 때문에, 앞에서부터 순서대로 책을 읽기를 권장합니다. 그리고 이 책을 가장 잘 활용하는 방법은 제공되는 코드를 직접 실행해보는 것입니다. 특히 경전철 지연 예측 문제에 대한 코드는 꼭 실행해보세요. 마지막으로 6, 7장에서 다루는 실험과 9장에서 소개하는 추가적인 개선점을 스스로 연습해봄으로써, 정형 데이터에 대한 문제해결 능력을 길러보기 바랍니다.| 이 책의 대상 독자 | 이 책을 최대한 활용하려면 주피터 노트북 환경에서의 파이썬 코딩에 익숙해야만 합니다. 그리고 로지스틱 회귀, 서포트 벡터 머신과 같은 딥러닝 외의 접근법과 머신러닝에서 표준적으로 사용되는 용어에도 익숙한 편이 좋습니다. 만약 행과 열로 구성된 표 형식의 데이터로 작업을 자주 하는 분이라면, 이 책에서 소개한 내용이 여러분의 실제 업무에 쉽게 적용될 수 있다는 사실을 깨닫게 될 것입니다.| 예제 코드 활용과 다운로드 |이 책에서 다루는 예제 코드는 깃허브 페이지(https://github.com/onlybooks/structured-data)에서 내려받을 수 있습니다. 3~8장에서 다루는 경전철 지연 예측 문제에 대한 코드뿐만 아니라, 2장(판다스 라이브러리, 판다스와 SQL 간의 관계를 보임)과 5장(케라스의 순서형, 함수형 API 사용법을 보임)에서 독립적인 예제 코드가 제공됩니다.- 파이썬(버전 3.7이상)- 판다스(Pandas)- 사이킷런(scikit-learn)- 케라스(Keras)- 텐서플로(TensorFlow 2.x)| 출판사 서평 | 대부분의 데이터 과학 프로젝트가 완성되기까지, 데이터를 정리해서 모델이 훈련할 수 있는 형식으로 준비하는 데에 절반 이상의 시간이 투입된다는 사실은 모두가 감추는 불편한 진실이다. 하지만 더 나은 방법도 존재한다. 정형 데이터와 관계형 데이터베이스에 최적화된 딥러닝 기법을 사용하면, 피처 엔지니어링을 치열하게 수행하지 않더라도 분석과 통찰을 얻을 수 있다. 데이터 필터링, 검증, 정리 작업은 확 줄이는 한편, 딥러닝 성능을 드높일 수 있는 기술을 이 책에서 배워보자.이 책에서는 정형 데이터와 관계형 데이터베이스에 대한 강력한 데이터 분석 기법을 알려준다. 현실 세계의 토론토 교통 시스템 데이터셋으로 시작해보자. 배포와 성능 모니터링 등 실제 상용 제품을 만들 때 중요한 고려사항을 해결함은 물론, 정형 데이터셋을 딥러닝에 맞게 구성하는 일이 매우 손쉬워질 것이다. 파이썬과 머신러닝을 이미 알고 있는 독자라면 기량을 드높일 좋은 기회가 될 것이다.지은이의 말지난 50여 년을 되돌아보며 최근 20여 년을 평가할 때, 가장 혁신적인 기술 중 하나로 딥러닝이 꼽힐 것입니다. 딥러닝의 이론적 기반은 1950년대에 세워졌지만, 2012년이 되어서야 비전문가의 눈에도 딥러닝의 잠재력이 보이기 시작했습니다. 그로부터 10년이 지난 현재, 우리의 목소리를 텍스트로 매끄럽게 바꿔주는 스마트 스피커부터 사람의 능력을 초월한 수많은 분야까지, 딥러닝은 우리의 삶 구석구석에 스며들어 있습니다. 이 책은 아직까지 그 가능성이 간과된 정형 데이터(행과 열로 구조화된 데이터)에 딥러닝을 적용하는 내용을 다룹니다.일반적인 통념은 정형 데이터에 딥러닝을 적용하는 일은 피해야 한다는 것입니다. 그리고 딥러닝의 유명한 응용 사례는 이미지 인식과 같은 비정형 데이터에 대한 것들이 대부분이죠. 그렇다면 비정형 데이터를 위한 딥러닝이라는 주제의 책을 읽어야 하는 이유는 무엇일까요? 첫째, 1장과 2장에서 이야기하겠지만 딥러닝으로 정형 데이터 문제를 해결하는 것에 대한 부정적인 시각 중 일부(딥러닝이 너무 복잡하다거나, 정형 데이터셋이 너무 적다는 등)는 오늘날 적용되지 않습니다. 어떤 머신러닝 접근법을 정형 데이터 문제에 적용할지 판단할 때는 열린 마음으로 딥러닝 또한 하나의 잠재적인 해결책으로 고려해야 합니다. 둘째, 딥러닝이 적용된 많은 대표적인 분야에는 비정형 데이터가 연관되어 있지만(이미지 인식, 목소리를 텍스트로 변환, 기계 번역 등), 소비자, 고용인, 시민으로서의 우리 삶은 대체로 표 형식의 정형 데이터로 정의됩니다. 모든 은행 거래, 세금 납부, 보험금 청구 등 우리 일상의 수많은 부분은 정형 데이터를 통해 흐르죠. 딥러닝에 관한 한 초보든 숙련자든 상관없이, 정형 데이터와 관련된 문제를 해결해야 할 때면 언제든 딥러닝을 사용할 준비가 되어 있는 편이 좋습니다.이 책을 읽으면서 여러분은 다양한 정형 데이터 문제에 딥러닝을 적용하는 데 필요한 내용을 터득해나갈 것입니다. 실세계 데이터셋을 통해 딥러닝을 응용하는 전반적인 과정을 배울 것입니다. 즉 딥러닝 모델을 훈련시키기 위해 데이터를 준비하는 것부터 훈련된 모델을 배포하는 전 과정을 경험하게 되는 것이죠. 이 책이 제공하는 예제 코드는 머신러닝 분야의 공통어로 간주되는 파이썬으로 작성됐으며, 산업에서 가장 일반적으로 사용되는 딥러닝 플랫폼인 케라스(Keras)와 텐서플로(TensorFlow)를 활용합니다.옮긴이의 말인공지능의 가능성이 급격히 부상한 2016년 이래로, 점점 더 인간의 상상을 초월하는 능력을 갖춘 인공지능 모델에 대한 연구가 매일 새롭게 경신되고 있습니다. 이렇게 사람의 이목을 집중시키는 수많은 연구와 결과는 이미지, 영상, 텍스트, 오디오 등 비정형 데이터에만 기반한 경우가 대부분입니다. 하지만 사람이 매일 생산하는 데이터 중 큰 부분은 비정형 데이터보다는 정형 데이터가 차지하고 있습니다. 정형 데이터 자체만 놓고 봤을 때는 전통적인 머신러닝 기법만으로도 유의미한 예측 능력을 확보하는 것이 가능했습니다. 물론 딥러닝을 적용하면 조금 더 뛰어난 결과를 얻을 수도 있습니다. 하지만 앞으로 정형 데이터에 딥러닝을 고려해야만 하는 가장 중요한 이유가 있습니다. 비정형과 정형 데이터를 모두 결합해 시너지를 낼 수 있는 기술이 바로 딥러닝이기 때문입니다. 한마디로 비정형 데이터와 정형 데이터를 융합하여 지금까지 얻을 수 없던 통찰을 얻고, 새로운 방향성을 만들어낼 수 있게 됐다는 것이죠.이 책은 실전 데이터셋을 활용해 그 방법의 기초를 다질 수 있는 기회를 제공합니다. 이 책의 가장 큰 장점은 처음부터 끝까지 딥러닝 모델로 완전한 서비스를 만들어내는 전 과정을 다룬다는 점입니다. 특히 처음에는 두서없는 형태를 띤 데이터셋을 판다스, 사이킷런 등의 라이브러리로 가공하는 전처리 작업, 텐서플로/케라스 라이브러리로 손쉽게 딥러닝 모델을 정의하고 훈련시키는 작업, 플라스크를 통한 단순 웹을 포함해 라사(Rasa)와 페이스북 메신저로 모델을 배포해 실제 사용자와 상호작용하는 방법을 다룹니다. 머신러닝으로 가치를 창출할 수 있는 가장 좋은 방법은 처음부터 끝까지의 엔드투엔드 과정을 항상 머릿속에 새긴 채 각 단계를 완성해나가는 것입니다. 사실상 여러 과정이 복잡하게 얽혀 있지만, 불행히도 그중 데이터 또는 모델을 훈련시키는 부분에만 집중한 책이 대부분입니다. 이 책을 통해 실제 구현 능력뿐만 아니라, 정형 데이터에 딥러닝을 적용해 얻을 수 있는 통찰, 실제 가치를 창출할 수 있는 엔드투엔드 과정을 모두 얻어갈 수 있기를 바랍니다.
|