



안녕하세요. 박해선입니다. <케라스 창시자에게 배우는 딥러닝 2판>, <개발자를 위한 머신러닝&딥러닝>, <머신 러닝 교과서 3판>, <딥러닝 일러스트레이티드>의 텐서플로 코드를 코랩-텐서플로 버전 2.9.2에서 모두 재실행하여 깃허브에 업데이트했습니다. 감사합니다! (늦었지만 블로그에 방문하시는 모든 분들 새해 복 많이 받으세요! 🙂 )
안녕하세요. 박해선입니다. <케라스 창시자에게 배우는 딥러닝 2판>, <개발자를 위한 머신러닝&딥러닝>, <머신 러닝 교과서 3판>, <딥러닝 일러스트레이티드>의 텐서플로 코드를 코랩-텐서플로 버전 2.9.2에서 모두 재실행하여 깃허브에 업데이트했습니다. 감사합니다! (늦었지만 블로그에 방문하시는 모든 분들 새해 복 많이 받으세요! 🙂 )
구글의 수석 AI 애드보커트인 로런스 모로니(Laurence Moroney)가 쓴 아마존 베스트셀러 <AI and Machine Learning For Corders>를 번역한 <개발자를 위한 머신러닝&딥러닝> 책이 출간되었습니다!
이 책은 어려운 이론을 들먹이지 않고 직관적인 설명과 쉬운 비유로 신경망과 딥러닝의 정글을 헤쳐 나갑니다. 인공지능 석학 중 한명인 앤드류 응(Andew Ng)이 추천한 이 책으로 로런스 모로니와 흥미진진한 여행을 떠나보시죠! 여행 지도는 다음과 같습니다! 🙂
올해 상반기에 작업한 <케라스 창시자에게 배우는 딥러닝 2판>과 <개발자를 위한 머신러닝&딥러닝> 책이 곧 출간될 예정입니다. 아마 두 책 모두 다음 주 중에 예약 판매가 시작되고 이달 말에 배송이 될 것 같습니다.
<케라스 창시자에게 배우는 딥러닝 2판>은 길벗 출판사의 머신러닝 시리즈 디자인을 선택하지 않고 특별히 원서 표지를 사용합니다. 또 고급 양장본으로 출간됩니다! 출판사에서 이렇게 한 책에 특별한 예외를 두는 것은 쉬운 일이 아닙니다. 이 책의 가치를 믿고 독자들의 의견을 적극 수용해 주신 덕분입니다. 이 책은 읽는데서 끝나지 않고 소장할 가치가 있는 거죠! 저에게도 아주 큰 영광입니다. 양장 도서를 갖게 되다니요! 🙂
<개발자를 위한 머신러닝&딥러닝>은 저자 로런스 모로니에게 출간 소식을 전했더니 특별히 스타필드 별마당도서관에 진열되었으면 좋겠다고 하네요. ㅎ
두 책 모두 기대하셔도 좋습니다. 감사합니다!
케라스(Keras) 라이브러리를 만든 프랑소와 숄레(François Chollet)의 딥러닝 책인 <Deep Learning with Python>의 2판 번역을 마쳤습니다. 원서는 현재 아마존에서 신경망 분야에서 5위에 랭크되어 있습니다. 예상대로 프랑소와의 책이라 매우 높은 인기를 얻고 있네요. 🙂
2판은 1판에 비해 많은 내용이 추가되고 콘텐츠 배열에도 변화가 있었습니다. 가장 대표적인 변화는 텐서플로 2.0 적용, 새로운 케라스 API, 합성곱과 순환 신경망 예제, 트랜스포머 추가 등입니다.
1판과 2판의 차이를 한눈에 보기 쉽게 그림으로 그려보았습니다. 그 아래에는 조금 더 자세히 2판의 장마다 1판의 어떤 부분과 연관이 있는지 새롭게 추가된 부분은 무엇인지 요약했습니다. 책을 보시는데 도움이 되셨으면 좋겠습니다. 이 번역서는 길벗 출판사를 통해 <케라스 창시자에게 배우는 딥러닝 2판>으로 곧 찾아뵙겠습니다! 🙂
build
, call
, __call__
메서드의 존재 이유를 상세히 설명하는 부분이 눈에 띄네요.fit()
, evaluate()
를 사용하면서 나만의 알고리즘을 적용하는 방법도 모두 설명하네요.timeseries_dataset_from_array
함수를 사용하여 코드가 훨씬 간결해졌습니다!TextVectorization
층과 함께 텍스트 전처리에 대해 자세히 소개합니다. BoW와 n-그램도 더욱 자세히 설명하고 1판에 없던 tf-idf 예제도 추가되었습니다. TextVectorization
층을 tf.data
파이프라인 또는 모델에 포함시킬 때를 명확하게 짚어주니 아주 좋네요. 그다음은 자연스럽게 임베딩 층으로 넘어가 사전 훈련된 단어 벡터를 사용하는 것까지 진행됩니다. 텍스트 분류에서 BoW와 RNN을 선택하는 기준에 대한 경험 법칙도 소개합니다. 이제 11장의 나머지 절반은 온통 트랜스포머 이야기입니다. 수식을 사용하지 않으면서 단계적으로 이해하기 쉽게 설명하는 저자의 능력이 여기에서 빛을 발합니다. 셀프 어텐션, 멀티 헤드 어텐션, 트랜스포머 인코더, 위치 임베딩까지 진행한 다음 다시 IMDB 텍스트를 분류해 봅니다. 그다음 텍스트 분류를 넘어서 기계 번역 예제(영어->스페인어)로 이동합니다. 먼저 LSTM으로 seq2seq 모델을 만들면서 인코더, 디코더의 상호 작용을 이해합니다. 그다음 트랜스포머 디코더를 만들고 트랜스포머 인코더와 합쳐서 완전한 기계 번역 모델을 만듭니다! 와우!!! 🙂며칠 전 텐서플로 2.9버전이 릴리스되었습니다. 주요 변경 사항을 텐서플로 블로그에 소개했습니다. 요약하면 다음과 같습니다.
tf.function
의 트레이싱 방식을 개선했습니다.tf.config.experimental.enable_op_determinism()
의 기능을 개선하여 실행마다 동일한 결과를 얻을 수 있습니다.tf.keras.optimizers.experimental
API가 추가되었습니다. 향후 tf.keras.optimizers.experimental
가 tf.keras.optimizers.Optimizer
를 대체합니다.이 외에도 다양한 기능이 추가되고 변경되었습니다. Revisiting ResNets 모델인 tf.keras.applications.resnet_rs
, L2 정규화 층인 tf.keras.layers.UnitNormalization
, 새로운 규제 층인 tf.keras.regularizers.OrthogonalRegularizer
, 새로운 이미지 전처리 층인 tf.keras.layers.RandomBrightness
가 추가되었습니다. 더 자세한 내용은 텐서플로 릴리스 노트를 참고하세요!
<혼자 공부하는 머신러닝+딥러닝> 7장부터 시작하는 딥러닝 파트의 코드를 텐서플로 2.9 버전에서 모두 테스트하여 깃허브에 업데이트했습니다!
항상 최신 버전의 라이브러리에서 테스트하여 예제 코드에 문제가 없도록 하겠습니다! 감사합니다!
얼마전 케라스 2.7.0 버전이 릴리스된 후 이어서 텐서플로 2.7.0 버전이 릴리스되었습니다. 당연하지만 텐서플로 2.7.0은 케라스 2.7.0 버전을 사용합니다. 주요 변경 사항으로는 서브클래싱으로 만든 케라스 모델에서 스칼라 입력을 자동으로 2D 텐서로 확장하지 않습니다. to_yaml()
과 model_from_yaml()
을 사용하지 못하며 대신 json이나 h5 포맷을 사용해야 합니다. 합성곱 층에 convolution_op()
메서드가 추가되어 커스텀 합성곱 층을 만들기 쉬워 집니다. 디버깅에 용이하도록 에러 메시지가 읽기 쉽게 제공됩니다.
더 자세한 내용은 텐서플로 2.7.0의 릴리스 노트를 참고하세요! 감사합니다. 🙂
[핸즈온 머신러닝 2], [GAN 인 액션], [파이썬을 활용한 머신러닝 쿡북], [케라스 창시자에게 배우는 딥러닝]의 주피터 코드를 텐서플로 2.6, 케라스 2.6 버전에서 테스트하여 깃허브에 반영하였습니다. [파이토치로 배우는 자연어 처리]는 파이토치 1.9 버전에서 테스트하여 깃허브에 반영하였습니다. 책을 보실 때 참고하세요. 감사합니다!
[혼자 공부하는 머신러닝+딥러닝], [Do It! 딥러닝 입문], [머신 러닝 교과서 3판], [딥러닝 일러스트레이티드]의 주피터 노트북 코드를 최신 텐서플로 2.6, 케라스 2.6 버전에서 모두 테스트하여 깃허브에 반영하였습니다. 책을 보실 때 참고하세요. 감사합니다!
텐서플로 2.6.0과 케라스 2.6.0 버전이 릴리스되었습니다. 앞서 포스팅에서도 소개했듯이 텐서플로 2.6.0 버전부터 케라스가 다시 분할되어 별개 패키지로 관리됩니다. 이로 인해 멀티백엔드 케라스 버전은 사라지고 github.com/kears-team/keras 저장소는 텐서플로 백엔드 케라스를 호스팅합니다. 의도한 것인지는 모르겠지만 텐서플로와 케라스 버전이 모두 2.6.0이라서 혼돈이 줄어들 것 같습니다. 텐서플로 2.6.0에는 케라스 버전 뭐가 맞아요 같은 질문이 없으려면 앞으로도 두 패키지의 버전이 같게 나왔으면 좋겠습니다. 🙂
기존의 tf.keras
를 사용하는 코드는 그대로 두어도 괜찮습니다. 자동으로 keras
패키지를 사용합니다. tensorflow.python.kreas
는 텐서플로 2.7 버전에서 삭제되므로 이렇게 임포트하는 경우에는 tf.kreas
로 바꾸어야 됩니다.
그외 자세한 내용은 텐서플로 2.6.0 릴리스 노트와 케라스 2.6.0 릴리스 노트를 참고하세요.
텐서플로 2.6.0 RC0 버전이 릴리스되었습니다. 예상대로 텐서플로 2.6 버전에서 케라스 코드가 기존 멀티백엔드 케라스 저장소인 keras-team/keras로 이동합니다. 이제 텐서플로의 케라스 tf.keras는 keras 패키지로 리다이렉션하는 역할만 수행합니다.
keras-team/keras에서 tensorflow/tensorflow로 텐서플로 백엔드 케라스가 분기했고 이제 다시 keras-team/keras로 이전합니다. 멀티백엔드 케라스는 이제 정말 안녕이라고 말해야겠군요. 😦
그 외에도 실험적인 케라스 전처리 층이 코어 모듈로 승격되었습니다. 자세한 내용은 텐서플로 2.6.0 RC0 릴리스 노트를 참고하세요.