처음 처음 | 이전 이전 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |다음 다음 | 마지막 마지막
실무로 통하는 ML 문제 해결 with 파이썬 - 전처리부터 딥러닝까지, 216개 실용 예제로 익히는 문제 해결 기법
카일 갤러틴.크리스 알본 지음, 박해선 옮김 / 한빛미디어 / 2024년 4월
평점 :
장바구니담기


책 제목이 <실무로 통하는...>이라서 이 책을 처음 봤을 때는 기대하는 바가 있었다. 패** 같은 강의 사이트에서 실무로 해결한다는 강의를 봐도 뜬구름 잡는 느낌이었다. 엔지니어가 바라보는 문제/문제 해결 방법과 실무자가 바라보는 문제/문제 해결 방법의 간극을 좁혀주지 못한다는 것. 엔지니어는 엔지니어의 틀 안에서 생각한다. 이 차이를 줄여나가는 것이 내 강의의 일차적인 목표이다. 그래서 이 책에서도 어떤 데이터를 어떤 관점에서 다뤘냐를 유심히 보게 되었다.

우선 책의 목차를 보면 정형데이터부터 자연어, 이미지까지 모두 담고 있다. 눈에 띈 것은 다른 책에서는 잘 보이지 않던 다양한 소스에서 데이터를 불러오는 것이었다. CSV, 엑셀, JSON, 파케이(Parquet), 아브로(Avro), SQLite, 원격 SQL 데이터베이스, 구글 시트, S3 버킷, 비구조적인 텍스트 파일. 파케이나 아브로, S3버킷은 전혀 사용해보지 않은 것이다. 아마 앞으로도 쓸 일이 없을 것이지만 알아두면 좋을 내용이다.


목차를 왜 이런 식으로 했는지 좀 낯설다.

데이터 적재 - 데이터 전처리 - 텍스트 다루기(로딩부터 감성분석까지) - 날짜/시간 다루기(데이터 전처리의 영역) - 이미지 다루기(로딩부터 이미지 분류까지) - 차원 축소 - 모델 평가 - 모델 선택 - 머신러닝 모델 소개(선형 회귀, 트리, 랜덤포레스트, kNN, 로지스틱 회귀, SVM, 나이브베이즈)와 군집화(k-Means, 평균이동, DBSCAN, 계층적군집화) - 파이토치로 텐서 다루기 - 신경망 - 모델 저장/로딩/서빙

순서가 다른 책들과 확 달라서 처음 접하는 사람은 혼란스러울 수도 있겠다는 생각이 든다. 첫페이지부터 따라가며 보려고 하지 말고 필요한 부분들을 찾아가면서 보는 것이 오히려 나을 것 같다. 이해가 안 되는 부분이 있으면 일단 넘어가고 뒷부분을 읽은 다음에 다시 돌아오는 방식으로. 다른 책에서 많이 다루는 '시각화' 관련된 내용은 많이 나오지 않는다. 모델 성능 평가할 때 라인차트를 그려본다거나 혼동행렬 그리는 것과 결정트리 모델 그리기, 특성 중요도를 바차트로 그려보는 정도..


161쪽까지 약 1/3 가량을 할애해 데이터를 가져와서 전처리하는 과정을 다룬다.

이어지는 '6장. 텍스트 다루기'에서는 널리 사용되는 전처리 기법과 사전 훈련된 머신러닝 모델을 활용하는 방법을 다룬다. 공백, 구두점, 특수문자, 불용어 등을 제거하거나 HTML 요소를 추출해내는 것 등이다. NLTK를 사용해 토큰화, 어간추출, 품사태깅을 하고 spaCy를 사용해 개체명 인식을 수행한다. 사이킷런의 CountVertorizer를 사용해 BoW로 인코딩하고 TfidfVectorizer를 사용해 단어에 중요도가중치를 부여한 행렬을 만든다. 이어 텍스트 유사도 계산, 감성 분류를 소개한다. 전체적으로는 간단하고 짤막하게만 소개하고 있다. 실제로 텍스트를 처리하는 업무를 한다면 여기에서는 아주 기초적인 내용만 훑고 자연어처리에 관한 다른 책을 봐야한다. '8장. 이미지 다루기'도 마찬가지이다. 감만 익힌다고 생각하고 가볍게 보면 된다. 강의로 치면 8시간 하루 좍 훑어가며 수업할 내용이다. 이어지는 차원축소 부분은 개념을 잘 이해하고 넘어기면 좋겠다. 사실 라이브러리가 너무 잘 되어 있어서 호출해서 사용하면 한두 줄이면 끝나는 부분이라 왜 하고 어떻게 동작하는지, 어떤 때 사용하면 유용한지 등을 알아두면 좋다.


이후는 일반적인 머신러닝 알고리즘과 모델 이야기라서 특별히 인상적인 것은 없었다. 데이터도 바로 만들어서 사용하는 단순한 데이터나 흔하게 사용하는 iris데이터를 불러 쓰는 정도...사실 이 부분에서 살짝 실망했다.


아마 텐서플로를 주로 쓰는 사람들과 파이토치를 쓰는 사람들이 갈릴 텐데, 텐서플로를 쓴다면 파이토치 텐서 부분은 건너 뛰어도 될 것이다. 그런데 이 책에서는 이후에도 파이토치를 사용하기 때문에 책을 끝까지 보고 싶다면 익혀두면 좋겠지. 텐서플로를 하는 사람들은 '21장. 신경망' 부터는 개념만 잘 이해하고 책에 제시된 파이토치 코드에 대응하는 텐서플로 코드를 찾아보거나 직접 만들어 보는 방식으로 학습을 하면 될 것이다.


분량이 많지는 않지만 '22장. 비정형 데이터를 위한 신경망'은 흥미로웠다. 요즘 핫한 생성형인공지능의 핵심기술인 트랜스포머(Transformer)를 살짝이라도 맛볼 수 있기 때문이다. '23장. 훈련 모델의 저장, 로딩, 서빙' 도 웹서버에 간단하게 서빙하는 방법을 알려준다.


전체적으로는 내가 원했던 것을 이루지는 못했다. 아주 간단한 데이터나 널리 알려진 데이터 몇 가지를 사용해 기초부터 찬찬히 설명해줬기 때문에...실무 적용은 또 숙제로 남았다. 하지만 앞에서 언급한 저런 내용들이 필요한 독자라면 책이 눈에 잘 들어오게 구성되어 있기 때문에 찬찬히 읽어봐도 좋겠다. 꼼꼼하게 읽고 코드를 실행했다면 이제 실무로 통하는 문은 연 것이다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
챗GPT API를 활용한 챗봇 만들기 - : 5일만에 배우는 AI 챗봇 개발의 모든것(LLM,프롬프트 엔지니어링, 오픈AI API, 에이전트, 벡터DB)
이승우 지음 / 한빛미디어 / 2024년 3월
평점 :
장바구니담기



 

챗GPT API를 이용해 챗봇을 만들어 본 적은 있는데 배포까지는 해본 적이 없어서 그 부분에 대한 기대감이 있었다. 오래전에(챗GPT가 없던 시절) 카카오톡 챗봇을 만들어서 잠시 유지하다가 흥미가 떨어져서^^ 방치하고 있는 사이에 카카오톡에 챗봇을 올리는 조건이 좀 까다로워졌다는 소식만 접하고 관심을 끊고 있었는데, 이 책에서는 카카오톡에 배포하는 방법을 다루고 있다.



10년 후에는 AI챗봇이 10배 정도 성장할 것이라는 전망을 인용했는데, 이 부분은 어떤 게 정답이다 말하기 어려울 것 같다. 하지만 수요가 점점 늘어날 것이라는 건 의심할 여지가 없어 보인다.


전 세계 챗봇 시장 규모는 2023년 57억 달러에서, 2024년부터 2032년까지 CAGR 21.5%를 기록해 2032년에는 346억 달러에 이를 것으로 예상된다.

https://www.gttkorea.com/news/articleView.html?idxno=8837



이 책을 통해 쌓아 가게 될 학습 스택을 먼저 도표로 보여준 점이 좋았다. 전체적인 내용을 한 눈에 파악하고 어떤 것들을 다루게 될지에 대한 기대감을 갖게 했다.

구름 IDE를 사용하는 것도 무난하고, 파이썬은 이미 사용하고 있고, 오픈AI의 API키도 받아둔 것이 있기에 시작은 무난히 할 것 같았지만...'카카오 비즈니스' 화면에 들어가 채널을 개설하고 챗봇을 생성하는 건 첫 번째 장벽이었다. 뚜렷한 목적을 가지고 있는 사업자들은 별 문제가 없겠지만...



어찌저찌 이 과정을 통과하고 파이썬 기초 문법에 대해서 익히고, 챗GPT에 대해서도 익숙해지고, 프롬프트 엔지니어링에 대해서도 익히고....이런 부분에 대해서는 설명과 코드가 비교적 쉽고 자세히 되어 있어서 그대로 따라가기만 하면 된다. 자잘한 팁들은 '궁금해요' 코너에서 간단하게 설명해준다.




책의 대부분은 코드 구현에 할당되어 있고 그대로 따라가기만 하면 되기 때문에 큰 어려움은 없다. 중간중간 개념정리가 필요한 부분에서는 도표로 개념을 설명해주는데 이해하기 쉽게 그려놓았다.


16장에서는 GPTs를 만드는 과정에 대해서도 설명하고 있는데 살짝 뜬금없다는 생각이 들었다. 하지만 GPTs를 직접 만들어 보고 싶었던 사람들에게는 도움이 될 것이다. 저자는 '다양한 상황에 맞추어 필요한 기술을 선택하기 위해서 알아야 할 사항'이기 때문에 다루었다고 적었다.

부록으로 업그레이드에 대응하는 방법을 기술해 두었는데 이것도 도움이 될 것 같다. 카카오톡 채널 개설이나 오픈API의 모델 업그레이드, 정책 변경 등에 관한 것은 언제 어떻게 바뀔지 모르는 사항이라 이런 부분에 대해서 지속적으로 서포트를 해주면 좋을 것 같다. 문제가 발생하는 경우엔 네이버카페를 통해서 해결할 수도 있다.



전체적인 느낌은 "어렵지 않네!"였다. 아무런 개념이 없는 분들에게는 조금 어려울 수도 있지만 그 분들은 3시간씩 5일이 아니라 더 많은 시간을 투자하는 것만 필요할 뿐인 것 같다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
쉽고 빠르게 익히는 실전 LLM - ChatGPT 활용부터 LLM 파인튜닝, 임베딩, 고급 프롬프트 엔지니어링까지 I LLM FAQ, AI/ML 용어 해설집 수록
시난 오즈데미르 지음, 신병훈 옮김 / 한빛미디어 / 2024년 2월
평점 :
장바구니담기


제목에는 '쉽고 빠르게 익히는'이라는 표현이 들어있지만... 세상에 쉽고 빠르게 익힐 수 있는 건 별로 없다. 설명이 쉽고 간단하면 더 깊은 내용을 알고 싶고, 깊은 내용을 설명하다 보면 어렵고 느려진다. 이러저러한 책이나 영상 강의들을 보지만 '문과도 할 수 있다'. '초보자도 알 수 있다'면서 쉽게 설명하는 것은 그냥 혀끝으로 맛을 보고 "아, 달구나!"라고 느끼는 딱 거기까지인 경우가 많다. 정작 알고 싶은 것은 단맛 중에서도 어떤 단맛이 나는지, 저 단맛은 어떻게 만든 건지, 저런 단맛이 나는 다른 요리는 어떻게 만들 수 있는지 이런 것들인데 이건 또 다른 영역이다.

이 책은 그보다는 조금 더 깊은 맛을 느낄 수 있도록 되어 있다. 원제가 <Quick Start Guide to Large Language Model>이다. 이미 만들어진 LLM들을 현실 시나리오에 빠르고 효과적으로 적용할 수 있는 방법을 보여주기 위해서 씌여진 것 같다. 즉, 구슬은 이미 서 말이 있고 그걸 효과적으로 잘 꿰는 방법을 가르쳐주는 것이다. 앞부분에서 구슬이 어떻게 만들어진 것일까? 하는 궁금증에 대해서도 간단하게 설명해 준다. 하지만 이미 배경지식이 있는 사람이 정리하는 차원에서 읽기에 좋지 초보자가 볼 수 있는 책은 아닌 것 같다.

화려하지는 않지만 적당한 그림들이 삽입되어 있어서 그림만 보고도 이해하기 쉽게 되어 있고, 간략한 코드도 제공된다. 특히 용어에 대해서 하나하나씩 짚어서 설명해 놓은 것은 매우 유용하다.

1부에서는 LLM에 대해 소개하고 있다. LLM이 무엇인지 어떻게 동작하는지 설명하고 의미 기반 검색에 대해 설명한다. 마지막으로 프롬프트 엔지니어링에 대해서 소개한다. 프롬프트 엔지니어링만 따로 다루는 책들도 많이 나와 있는데 이 장은 굉장히 일반적이고 기본적인 내용을 다룬다. 2부에서는 맞춤형 파인튜닝, 고급 프롬프트 엔지니어링, 모델 아키텍처와 임베딩을 맞춤화 하는 방법을 다룬다. 몇 가지 알고리즘에 대한 설명과 실습 코드가 있다. 깊고 방대한 내용을 다루는 것은 아니지만 역시 낯선 용어나 개념을 이해할 수 있도록 조목조목 설명해 놓아서 정리하기에 좋다. 3부에서는 고급 LLM 사용법을 다루면서 최종적으로는 프로덕션 환경에서 LLM을 배포하는 방법을 다루고 있는데 이 책을 읽는 사람들은 이 3부에 제일 관심이 많지 않을까 싶다. 300페이지 가량 되는 책이라서 세세하게 설명을 붙여놓지는 않았지만, 그래서 스터디용으로 사용하기에 좋은 책 같다. 기초부터 배포까지 전체적인 흐름과 방향은 잡아주면서 실제 삽질은 스터디를 통해 해결하게 하는.. 원래 실력은 삽질의 시간에 비례해지 않던가.^^

마지막 LLM에 관해 많이 하는 질문들, 용어들, LLM 애플리케이션 개발 시 고려할 사항들을 부록으로 붙여준 것도 도움이 많이 된다. 그리고 전체적으로 옮긴이가 독자의 이해를 돕기 위해 주석을 다는 데 신경을 많이 썼구나 하는 것을 느낄 수 있었다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
밑바닥부터 시작하는 딥러닝 4 밑바닥부터 시작하는 딥러닝 4
사이토 고키 지음, 개앞맵시 옮김 / 한빛미디어 / 2024년 1월
평점 :
장바구니담기


아직도 이쪽으로 파고 또 파야 한다는 강박과 미련을 버리지 못했나보다.

마음으로는 LLM 쪽으로 중심을 옮겨보고 싶었다. 그런데 그게 마음대로 되지는 않는구나.

4편은 강화학습에 관한 책이다. 이 책에 관심을 갖는 사람들은 당연히 머신러닝, 딥러닝에 대한 기본적인 이해 이상의 식견이 있는 사람들일 것이다. 나도 강의를 하면서 강화학습에 대해서 살짝 언급을 하기만 하지 구체적으로 어떻게 흘러가는지는 잘 모르고, 또 접할 기회도 별로 없었기에 강화학습 스터디모임을 만들어 다들 해보는 미로찾기 소스코드 분석해 보다가 "이게 왜 되지?" 하는 식의 현타가 오기도 했었다^^.

이 책은 "밑바닥부터 만들어 가면서 강화학습의 핵심 이론을 익히고, 문제를 풀고, 심층 강화학습까지 한 권으로 공부할 수 있는 책"이라고 소개하고 있다. 목차를 보아도 뭔가 알아야 할 것들을 차례차례, 차곡차곡 알려주는 느낌이다. 그런데 끝까지 다 보지는 못하고 리뷰를 써본다.........

책의 내용이 쉬운 내용은 아닌데 앞장부터 한 장씩 읽어가다 보면 묘하게 설득이 된다. 용어 설명, 원리를 쉬운 예를 들어서 설명한다. 그러다가 휘발성 메모리를 가진 내가 "앞에서 무슨 얘기 했더라" 하는 생각이 들 때쯤 코드로 구현을 통해 일단 다지기를 시연한다. 한 단원을 마무리하기 전에는 한 페이지 정도를 할애해서 '정리'를 해준다. 이런 식으로 한 챕터씩 읽어 나가다 보면 적어도 한 가지 개념에 대해서는 확실하게 알고 넘어갈 수 있는 구조로 되어 있다. 강화학습이 궁금해서 몇 가지 책을 뒤적여(만) 본 내가 느끼기엔 설명이 비교적 자세하고 친절한 책에 속한다.




그렇다고 해서 쉽다는 얘기는 아니다. 수식이 계속 나오기 때문에 우선은 수식에 대한 거부감을 없애고 나서 읽어야 지루하지 않게 넘어갈 수 있다.



10장 4절에서는 바둑, 장기와 같은 보드계임, 로봇제어, NAS(Neural Architecture Search, 최적의 아키텍처를 컴퓨터가 자동으로 설계하는 연구) 등의 사례들도 소개하고 있는데 조금 더 자세하면 좋겠지만^^ 이것들만 읽어봐도 재미있다. 특히 자율주행은 우리 생활과 밀접하면서도 빠르게 실현될 분야일 것이다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
한눈에 보이는 데이터 과학과 AI 그림책 한눈에 보이는 그림책
한선관.박소영 지음 / 성안당 / 2023년 3월
평점 :
장바구니담기


이 책을 받는 순간 "많이 보던 책인데!" 하는 생각이 들었다. 어쩌다 소장하게 된 <한눈에 보이는 인공지능 그림책>과 비슷한 표지, 저자 중 한 명이 동일인. 비슷해 보이다 보니 우선 목차 비교부터 하게 되었다.

<한눈에 보이는 인공지능 그림책>이 알고리즘, 추론, 머신러닝, 데이터과학, 딥러닝, 자연어처리, 로봇, 윤리로 이어지는 반면 이 책은 데이터 과학의 개요, 절차, 실습, 활용, 미래 순으로 되어 있다. 1장 데이터 과학의 개요에 데이터부터 인공지능까지 전반적인 이야기들이 있다. 전체적으로는 '그림책' 답게 그림으로 간단간단하게 나와있어서 초보자가 자세하고 구체적인 내용은 알기는 어렵다. 데이터에 대해 어느 정도 아는 사람이라면 그림을 보면서 정리하는 느낌으로 쓱 훑는 것도 좋겠다. 도움이 되는 부분이 있다면 3장의 <데이터 과학 실습: 구체적인 실습문제 따라하기> 편.
썬크림 리뷰 데이터 가져와서 오렌지(OrangeDataMining)로 살펴보고, 별점 개수도 시각화해보고, 리뷰 내용을 워드클라우드로 만들어 보았다.

이 책에서 데이터 분석에 대한 실질적인 도움을 받고 싶다면 이런 과정을 따라서 해보면 좋겠다. 타이타닉 데이터를 다운로드 해서 엑셀로 전처리 하는 과정들이 상세히 설명되어 있다. 그리고 오렌지 도구를 이용해 생존을 예측해 본다.




다음 장에서는 데이터 분석을 활용한 예시를 그림과 함께 간단히 보여준다. 마지막 장에서는 데이터가 경제, 사회에 미치는 영향력에 대해 토론해 보고, 윤리적인 측면에 대해서도 생각할 기회를 준다. 이와 관련해서 ChatGPT가 요즘 한참 세상을 달구고 있는데 편리하다고 개인 정보나 기업의 데이터들을 질의에 마구 넣을 수는 없다. 어느 선에서 또 어떤 방법으로 바르게 사용해야 하는지 생각해야 할 것이다.

전체적인 느낌은 학교 선생님들이 수업 자료 PPT를 준비하고 학생들에게 개괄적인 내용을 설명하며 흐름을 잡는 용도로 도움을 받을 수 있을 것 같다.

댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
처음 처음 | 이전 이전 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |다음 다음 | 마지막 마지막