제가 정말 정말 좋아하는 번역자이자 작가이신 박해선님이 내놓은 또 하나의 역작이 나왔다.

 

"혼자 공부하는 데이터 분석 with 파이썬"

 

 

요즘은 딥러닝 모델에 대해서 공부하는 것 보다

데이터 분석하는 것이 더 많이 유행하고 있는 듯 하다.

 

이런 분위기에 정말 딱 맞게 나온 책이 아닌가 싶다.

 

우리 회사에서도 DS 인증 프로그램을... @.@

 

 

박해선님은 번역하신 책이든, 직접 작성하신 책이든 항상 정성이 가득하다.

 

실습 내용도 하나 하나 모두 직접 업데이트 해주시고

Youtube로 강의도 제공하여 주시고, 심지어 오픈채팅까지도 운영해주신다니...

 

 

무려 13개의 강의 동영상을 제공해주신다!

- https://www.youtube.com/playlist?list=PLVsNizTWUw7FGzSRCkQrPEEe-ljVXgS7k 

 

 

직접 물어보고 대답을 들을 수 있는 카카오 오픈채팅 !!!

- https://open.kakao.com/o/gBF5aQ1c

 

 

1월 2일, 새해가 시작하자마자 1쇄 발행을 하다니... 너무 한 것 아닌가?! ㅋㅋㅋ

 

 

박해선님은 항상 도식화를 좋아하시는 것 같다 ^^

 

 

딥러닝 모델링에 대해서 공부하려면 수학이 발목을 잡는 것 처럼

데이터 분석에 대해서 공부하려면 파이썬이 발목을 잡는다.

 

발목 잡히지 않으려면 시간을 들여서 제대로 파이썬을 공부해놓는 것이 좋다.

 

 

도식화, 로드맵을 정말 좋아하시는 박해선님! ^^

 

 

오해하면 안된다.

"이 도서가 얼마나 인기가 좋을까요?"는 정말 이 책에 대한 것이 아니라

데이터 분석의 첫 번째 예제일 뿐이다 ^^

 

 

박해선님은 그림도 잘 그리신다~ ^^

 

 

ML/DL

머신러닝과 딥러닝이 막 알려지면서 사람들이 공부를 시작할 때에는

DS(Data Science, 데이터 과학)에 대한 영역이 대중적으로 정착되지 않았었다.

 

지금은 Data Scientist, Data Engineer 직종이 정착된 것 같다.

외부에서 만나는 많은 분들이 "저는 OO에서 데이터 사이언스로 일하고 있어요"라고 하고 있다는...

 

 

책 구성을 보면 정말 정성 가득함이 엿보인다.

 

 

이 책을 보다가 새롭게 배운 지식

 

"Data Analytics(데이터 분석) vs. Data Science(데이터 과학)"

 

 

음 ... 이 정도면 ... Full Stack ... 만능 아닌가 ?!

 

 

Summary 까지 꼼꼼하게 되어 있다.

 

 

혼자서, 또는 다같이 공부할 수 있도록 "확인 문제"도 제공해준다.

주관식은 너무 어렵다는...

 

 

직접 실습을 해볼 수 있도록 GitHub 저장소도 제공해주고, 설명도 친절히 해준다.

 

 

링크까지 꼼꼼히 제공해주는 박해선님!!!

 

 

리뷰 때문에 살펴보다가 알게된 정말 꿀팁 !!!

 

정부 주도로 진행한 데이터들일텐데,

요즘 시대에 아직도 Euc-KR 형식으로 만들어진 데이터 볼 때마다 정말 ... 에휴 ... 할말하않 !!!

 

 

 

이 책은 뭐 두말할 필요 없이 무조건 추천한다.

 

박해선님이 지은 책이라는 것 만으로도 추천하지만,

책 내용 및 책 외부적으로 제공되는 컨텐츠 모두 정말 정성 가득한 책이다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

반응형

 

GitHub Pages 기능을 이용한 개인 포트폴리오 웹서비스를 해보려고

이것 저것 알아보던 중 몇 가지 템플릿을 찾았는데

 

사용법에 등장한 'npm'

 

"응?! npm을 설치해야겠구만!"

 

 

'npm'의 약자는 'Node Package Manager'이다.

 

즉, node.js 기반으로 미리 잘 만들어진 패키지들을 사용하고 싶을 때

의존성 있는 패키지들을 설치하려면 npm을 이용하면 된다.

 

 

다른 프로그래밍 언어들도 각자 나름의 패키지 매니저가 있다.

Language Package Manager
Ruby Gem
PHP Composer
C# NuGet
Java Jpm
Python pip

 

다시 npm 이야기로 돌아와서

node와 npm이 짝궁이라면 node만 설치해도 npm이 같이 설치가 된다는 말인데,

node를 설치하려고 봤더니 정말 다양한 버전의 node가 있다.

 

 

상황에 따라 여러 버전의 node를 사용하게 된다는 것인데,

하나의 시스템에서 여러 버전의 node를 사용하려면 귀차니즘이 발동할 수 있다는...

 

 

그래서, 여기저기 기웃거리다가 찾게된 'nvm'

 

'nvm'의 약자는 'Node Version Manager'이다.

 

 

 

nvm 저장소 주소는 다음과 같다.

  - https://github.com/nvm-sh/nvm

 

nvm

 

 

'nvm' 설치 방법은 다양하게 제공되고 있고

일반적으로는 'curl' 명령어를 이용해서 install script를 실행하는 방식을 가이드하고 있다.

 

하지만, 여기에서는 개인적인 취향으로

깔끔하게 git clone 받아서 직접 설치하는 방법으로 결정했다.

  - https://github.com/nvm-sh/nvm#git-install

 

 

이하 과정은 Ubuntu 20.04 LTS 환경에서 진행했다.

 

❯ git clone https://github.com/nvm-sh/nvm.git ~/.nvm

❯ cd ~/.nvm

git switch -c v0.39.3 tags/v0.39.3

 

개인적으로 zsh을 사용하고 있으므로 이를 기준으로 해서 후속 작업 진행했지만,

bash를 사용하는 경우에도 동일한 과정이다.

 

❯ nano ~/.zshrc

 

...
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

 

위의 내용을 추가해주고, 터미널 재시작하면 'nvm' 명령어를 먹는다.

 

❯ nvm --version
0.39.3

 

nvm에서 설치 가능한 node version 목록을 확인하고 싶다면 다음 명령어를 사용하면 된다.

 

❯ nvm ls-remote

 

최신 버전의 node를 설치하려면 다음 명령어를 통해 가능하다.

 

❯ nvm install node
Downloading and installing node v19.3.0...
Downloading https://nodejs.org/dist/v19.3.0/node-v19.3.0-linux-x64.tar.xz...
####################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v19.3.0 (npm v9.2.0)
Creating default alias: default -> node (-> v19.3.0)

❯ node --version
v19.3.0

 

특정 버전의 node는 다음과 같이 설치할 수 있다.

 

❯ nvm install 14.7.0
Downloading and installing node v14.7.0...
Downloading https://nodejs.org/dist/v14.7.0/node-v14.7.0-linux-x64.tar.xz...
####################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v14.7.0 (npm v6.14.7)

❯ node --version
v14.7.0

 

앞에서 설치한 버전으로 변경하고자 한다면 다음과 같이 할 수 있다.

 

❯ nvm use node 19.3.0
Now using node v19.3.0 (npm v9.2.0)

❯ node --version
v19.3.0

 

어디에 설치되어 있는지(실행 파일의 위치를) 확인하고 싶다면 다음과 같이 하면 된다.

 

nvm which 19.3.0
/home/chani22/.nvm/versions/node/v19.3.0/bin/node

 

어?! 여기서 잠깐 !!!

우리가 지금 여기까지 진행한 이유는 npm 설치를 하려던 것이다. npm을 확인해보자.

 

❯ node --version
v19.3.0

❯ npm --version
9.2.0

❯ nvm use node 14.7.0
Now using node v14.7.0 (npm v6.14.7)

❯ node --version
v14.7.0

❯ npm --version
6.14.7

 

중간에 node 버전을 변경해봤더니, npm도 버전이 바뀌었다는 것을 볼 수 있었다.

 

 

여기까지 해서 마무리~!!!

반응형

'Programming > Web' 카테고리의 다른 글

백엔드 프레임워크 - KeystoneJS  (1) 2023.07.13

 

최근 회사에서 Data Science 교육을 받고 있는데,

마침 그에 알맞는 책을 리뷰하게 되었다.

 

표지

 

Machine-Learning 공부할 때에도 만났었고

Data-Mining 공부할 때에도 만났었는데,

이번에 Data-Science를 공부할 때 또 만났다.

 

징그러운 베이지안 !!!

 

2판

 

초판(1판)이 2014년도에 출간 되었었는데,

2판이 8년만에 2022년 6월에 출간되었다.

 

우와~ 역사가 오래된 책이네...

그렇다는 것은, 베이지안 공부가 필요한 사람이 여전히 꾸준히 많다는 것이겠지.

 

원서의 경우에도 1판은 2013년도에 출간되었고,

2판은 2011년에 출간되었다.

 

대상

 

이 책으로 공부하기 위해서 필요한 것은 오직 "파이썬" !!!

 

목차

 

책 제목에 "베이지안"이 써있다고 해서

"베이지안"에 대해서만 설명하는 책은 아니다.

 

확률, 분포, 포아송, 의사결정분석, 로지스틱 회귀 ...

필요한 것들 다~ 있다 ^^

 

본문

 

친절한 설명과 함께 실행 결과도 예쁘게 보여준다.

 

요약

 

뒷 부분에는 친절하게 요약까지 해주고 있다.

 

연습문제

 

심지어 연습문제도 있다.

 

혼자서 공부하기에도 좋고

스터디로 진행하기에도 좋고

교재로 사용하기에도 좋다.

 

 

더더욱 멋진 것은... 책이 무료 공개되어있다.

http://allendowney.github.io/ThinkBayes2/index.html

 

eBook

 

심지어 친절하게 PDF 다운로드 링크까지도 제공해준다.

 

 

소스코드도 제공된다.

https://github.com/AllenDowney/ThinkBayes2

 

GitHub

 

솔직히 영어 부담만 없다면,

PDF보다 이렇게 노트북으로 보는게 훨씬 더 좋을 것 같다.

 

하지만, 우리는 한글을 사용하는 민족 !!!

일단 책 구매하고

제공되는 리소스들을 이용해서 훨씬 더 열심히 공부하면

몇 배 더 효율적으로 배울 수 있다 !!!

 

 

이 책 말고도

저자 Allen B. Downey님은 쓰신 책들을

무료로 제공해주고 있다.

 

Green Tea Press

https://greenteapress.com/wp/

 

 

파이썬 언어를 가지고 데이터싸이언스 공부를 하신다면

기본 교재로 추천합니다!

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

반응형

 

그냥 예뻐보여서 질러버린 2-key 매크로 키보드

 

 

LED가 예쁜게 아니라, 키가 2개 밖에 없는 그냥 쪼꼬만한 것이 이뻤다.

 

 

사놓고... 귀찮아서 방치하고 있다가,

그래도 뭔가 설정을 해줘야 할 것 같아서 꺼내보았다.

 

USB 연결하면 기본 장치로 잘 등록된다.

그리고 바로 사용도 가능하다.

 

기본 설정된 키 값은 (Ctrl+c), (Ctrl+v)로 되어있다.

 

 

 

하지만, 나는 "키 값을 바꾸고 싶다!"

 

 

 

1. ZDDKeyboardSetter

  - 매크로 키보드를 구매할 때 안내받았던 SW를 우선 다운로드 받아봤다.

  - https://github.com/TabbycatPie/CustomKeyboard/releases

 

 

  - 다운로드 받아서 압축 풀고, 실행을 해봤다.

 

 

  - 그런데, 장치를 못찾는다.

  - 버려!

 

 

2. HID Macros

  - 단순히 키보드 키 매핑을 변경하는 용도 말고,

  - 멀티 키보드 상태에서 원하는 키보드의 키 매핑만 변경하고자 했을 때

  - 유명하고, 한글도 지원하고, 사용하기에도 편리한 HID Macros !!!

  - http://www.hidmacros.eu/download.php

 

 

  - `매크로` 탭에서 `새로` 추가한 다음에 `스캔` 선택한 다음에 바꾸고자 하는 키를 누르면 된다

  - 그 다음에 `액션`을 등록해주면 되는데 ...

 

  - 뭔가 잘 안된다.

  - 보통 일반적인 상태에서는 잘 될텐데, 내가 갖고 있는 2-Key 매크로 키보드가 좀 특이한 것 같다.

 

 

여기까지는 실패기!


여기부터는 성공기!

 

 

3. Interception

  - 키보드 입력을 가로채서 원하는 동작을 하도록 할 수 있는 인터페이스이다.

  - http://www.oblita.com/interception

  - https://github.com/oblitum/Interception/releases

 

 

 

  - 설치를 하려면, 다운로드 받은 후 압축 풀고 Power Shell을 통해서 아래와 같이 실행하면 된다.

 

> cd `command line installer`
> install-interception.exe /install

 

 

  - 설치한 다음에는 `재부팅`을 하자

 

 

4. AutoHotkey

  - 뒤에서 설정할 내용들이 기본이 되는 솔루션을 설치해야 한다.

  - https://www.autohotkey.com/

 

 

  - 다운로드 받아서 설치하면 된다.

 

 

5. AutoHotInterception

  - 이제 거의 다 왔다.

  - Interception과 pair로 동작하는 솔루션을 추가로 설치하자.

  - https://github.com/evilC/AutoHotInterception/releases

 

 

  - 다운로드 받은 후 압축을 풀자.

  - 다음과 같이 2개의 파일을 복사하자

    . Interception\library\x64\interception.dll  →  AutoHotInterception\Lib\x64\

    . Interception\library\x86\interception.dll  →  AutoHotInterception\Lib\x86\

 

 

  - AutoHotInterception\Lib\Unblocker.ps1 실행

 

 

  - 키보드 정보 및 키 입력값 확인을 위해 Monitor.ahk 실행

 

 

  - Keyboards 중에서 하나씩 선택(체크)해서 키를 눌러보면, 작업하고자 하는 키보드가 어떤 것인지 찾을 수 있다.

 

 

  - HID Macros 에서 원하는대로 동작하지 않는 이유를 이제야 찾았다.

    . 키 하나에 2개의 값이 나오고 있다. (Left-Control + c)

    . HID Macros에서는 이런 경우에 대해서는 아직 지원해주지 않는다.

  - 2번 반복되는 이유는 키가 눌릴 때와 뗄 때 (State 1/0) 2가지 경우이기 때문이다.

 

  - AutoHotInterception/Context Example.ahk 파일을 수정해보자

 

 

  - Monitor.ahk 에서 `VID / HID` 값을 복사 한 뒤에 파일에서 아랫 부분을 업데이트 해주면 된다.

 

id1 := AHI.GetKeyboardId(0x8808, 0x6601, 1)

 

  - 그리고 밑에는 원하는 키 매핑을 작성하면 된다.

  - 원하는 만큼 작업했으면 해당 파일을 실행해주면 된다.

 

 

 

키보드 키 매핑이다 보니 마땅히 결과를 보여주기가 애매하긴 한데, 잘 동작했다.

위의 파일 내용을 보면 알겠지만, 나름의 꼼수작업을 통해서 원하는 결과를 얻기는 했다.

 

LControl::return
LControl Up::return

 

Left-Control 기능을 무시하도록 만듦으로써 제대로 키 입력을 가로채서 원하는 키 값으로 동작하게 만들었다.

 

예쁜 장난감 가지고 잘 놀아야쥐~

 

반응형

'Fun' 카테고리의 다른 글

라떼는 이런 게임을 ... (Best Old Game, BOG)  (0) 2022.09.11
동탄 무봉산 만의사  (0) 2011.11.12

 

파이썬으로 자연어 처리를 하고 싶다면

공부해볼만한 책 한 권을 소개하고자 한다.

 

표지

 

원서 제목은 다음과 같다.

"Blueprints for Text Analytics Using Python"

 

초판

 

발행한지 얼마 안된 따끈따끈한 책이다.

 

원서는 2020년 12월에 출간되었으니

약 2년의 시차가 있어서 조금 아쉽기는 하지만

지금 공부하기 해서 활용하는데에는 부족함이 없다.

 

독자

 

이 책은 텍스트 분석에 대해서 처음 접하는 분들이 아니라

텍스트 분석을 실제 구현하고자 하는 분들을 위한 책이다.

 

제약

 

다만, 기본적으로 영어를 기반으로 하기 때문에

한글 텍스트 분석을 위해서는

추가적인 학습이 필요하긴 하다.

 

원서와 2년의 차이가 있는데,

이왕이면 실습 코드만이라도 한글 지원을 추가해줬으면

훨씬 더 좋았을 것 같다.

 

챕터 개요

 

각 챕터(장)에서 어떤 데이터셋을 사용하고

어떤 라이브러리를 이용했는지

깔끔하게 정리를 해줘서

필요할 때 손쉽게 찾아볼 수 있다.

 

추천 도서

 

이 책에서는 기본적인 이론 등에 대해서 설명해주지 않기 때문에

추가적으로 공부하면 좋을 책들을 추천해주고 있다.

 

심지어 한빛미디어 출판이 아닌 책도 추천을 해준다 ^^

 

본문

 

책은 아쉽게도 흑백이다.

컬러 추종자로써 조금 아쉽다 ^^

 

원서 eBook을 보면 컬러로 나오던데...

 

구성

 

각 챕터(장)별로

학습목표와 데이터셋에 대한 설명을 해준다.

 

해당 챕터에서 뭘 하고자 하는 것인지

어떤 데이터를 가지고 하는 것인지

설명을 해주기에 공부할 때 많은 도움이 된다.

 

 

그리고, 중요한 실습 코드 !!!

 

https://github.com/blueprints-for-text-analytics-python/blueprints-text

 

실습 코드

각 챕터별로

README.md

내용을 너무나 예쁘게 잘 작성해줘서 기분이 좋았다.

 

JupyterNotebook

 

JupyterNotebook 파일도 깔끔하게 작성되어 있다.

 

사실 책 내용을 보면 책에서 설명하고 있는 내용이

JupyterNotebook 파일에 작성되어 있으면

공부할 때 훨씬 더 손쉽게 접근할 수 있을 것 같지만...

그것까지 바라는 것은 욕심인 것 같기도 하고...

 

 

NLP에 대해서 기본적인 사항을 공부한 다음

실제 코드로 만져보고 싶은 분들에게는

엄청 유용한 도움이 될 책이다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

반응형

최근 SW 개발자들이라면 `Git`이라는 버전관리 도구를 무조건 한 번 이상 사용해봤을 것이다.

 

사실 대부분 회사일로던 개인적인 사유로던 `GitHub` 계정이 이미 있을 것이고

Repository 하나 이상쯤은 만들어봤고, clone도 받아봤을 것이다.

 

`Git` 외에 다른 버전관리 도구들이 다양하게 존재하긴 하지만

일단 `Git`이 SW 개발자의 기본 소양이 되어버렸다는 사실은 그 누구도 부정하지 못할 것이다.

 

 

`StackOverflow Survey 2021` 에서 개발자들의 약 93%가 Git을 사용한다고 답한 것을 보면 확실하다!!!

'22년 Survey에서도 결과를 확인할 수 있으면 좋았을텐데, Git 항목이 2022년에는 빠져서... 아쉽다.

  - https://insights.stackoverflow.com/survey/2021#other-tools

 

 

그러면, 여러 Global 기업들도 모두 Git을 사용할까?!

`결론은 대부분 Git을 사용한다!` 이지만, 지금은 이걸 알아볼 때가 아니니 다음 기회로 넘기기로 하고...

 

Facebook(현 Meta)에서는 어떤 개발환경을 사용하고 있을까!?

  - 버전관리: Mercurial

  - 코드리뷰 및 태스크 관리: Phabricator

 

https://engineering.fb.com/2014/01/07/core-data/scaling-mercurial-at-facebook/

https://secure.phabricator.com/book/phabricator/article/introduction/

 

 

그런데, 위에 있는 링크를 타고 들어가보면 알겠지만,

Meta에서는 Mercurial을 그대로 사용하지 않고 상당히 많은 customizing을 가해서 사용하고 있었다.

 

Mercurial 자체도 Git과의 호환성을 보장하지만,

Meta에서는 특히 Git을 중심에 두고 GitHub 지원도 강화하기 위해 막대한 투자를 했다고 한다.

 

그리고 이렇게 Meta에서 10년 동안 열심히 개발한 버전관리 도구를 "Sapling"이라는 이름으로 공개했다!

  - https://engineering.fb.com/2022/11/15/open-source/sapling-source-control-scalable/

 

 

어떤 도구인지 직접 한 번 설치해 보고 사용해봤다.

개발환경 구성이니만큼 Ubuntu 20.04 환경에서 진행했다.

 

사실 Ububtu 18.04 환경에서 하고자 했으나, Sapling이 Ubuntu 20.04/22.04 버전만 지원한다.

 

 

1. GitHub CLI

  - Sapling에서 GitHub 연결할 수 있도록 하기 위해 GitHub CLI 도구를 설치하자

  - https://cli.github.com/

 

 

  - Ubuntu 환경에서의 설치는 아래 링크에 친절히 나와있다.

  - https://github.com/cli/cli/releases/download/v2.20.2/gh_2.20.2_linux_amd64.deb

 

  - 1회성으로 다운로드 받아서 설치할 수도 있다.

  - https://github.com/cli/cli/releases

 

❯ wget https://github.com/cli/cli/releases/download/v2.20.2/gh_2.20.2_linux_amd64.deb

❯ sudo dpkg --install gh_2.20.2_linux_amd64.deb

❯ gh --version                                             
gh version 2.20.2 (2022-11-15)
https://github.com/cli/cli/releases/tag/v2.20.2

 

  - 인증 정보도 등록하자

❯ gh auth login --git-protocol https

 

 

 

2. Sapling Install

  - 본래 주력으로 사용하고 있는 Ubuntu 18.04에서 테스트 진행하려다 보니... 안타깝게도 18.04는 지원하지 않는다.

  - 빌드를 직접 해보면 될지 모르겠지만, 귀차니즘으로... 그냥 20.04 환경에서 진행했다.

 

  - 설치 과정은 다음 링크를 참조하면 된다.

  - https://sapling-scm.com/docs/introduction/installation#linux

 

❯ wget https://github.com/facebook/sapling/releases/download/0.1.20221118-210929-cfbb68aa/sapling_0.1.20221118-210929-cfbb68aa_amd64.Ubuntu20.04.deb

❯ sudo dpkg --install sapling_0.1.20221118-210929-cfbb68aa_amd64.Ubuntu20.04.deb

❯ sl --version                                                                  
Sapling 0.1.20221118-210929-cfbb68aa

❯ sl config --user ui.username "whatwant <whatwant@gmail.com>"

 

 

3. clone

  - 기본적인 사용법은 git 명령어 체계를 따라가는 것 같다.

❯ sl clone https://github.com/whatwant/whatwant               
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
오브젝트 묶음 푸는 중: 100% (6/6), 15.87 KiB | 7.93 MiB/s, 완료.
https://github.com/whatwant/whatwant URL에서
 * [새로운 레퍼런스] babeb04a267ae7ac642532df70c03517d1ea86ca -> remote/main
2 files updated, 0 files merged, 0 files removed, 0 files unresolved

 

  - 기본적인 모습은 조금 특이하긴 하다.

  - clone을 받았을 때 `.git` 디렉토리가 아니라 `.sl` 디렉토리가 생긴다.

  - `sl` 명령어를 치면 지금 현재 브랜치 정보를 보여준다.

❯ cd whatwant

 ls -al
합계 76
drwxrwxr-x 3 chani22 chani22  4096 11월 24 15:25 .
drwxr-xr-x 3 chani22 chani22  4096 11월 24 15:25 ..
drwxrwxr-x 6 chani22 chani22  4096 11월 24 15:29 .sl
-rw-rw-r-- 1 chani22 chani22   443 11월 24 15:25 README.md
-rw-rw-r-- 1 chani22 chani22 58078 11월 24 15:25 career.md

❯ sl
@  babeb04a2  2021-10-17 04:04  whatwant  remote/main
│  Create career.md
~

 

 

4. commit

  - committ 생성 과정을 살펴보자.

  - `git` 하고 차이는 마지막에 `sl` 명령어를 쳤을 때 나오는 정보 뿐이다.

❯ touch sapling.txt 

❯ sl add .                                     
adding sapling.txt

❯ sl commit -m 'my first commit with Sapling'                 

❯ sl                                         
  @  f63c3b928  6 seconds ago  whatwant
╭─╯  my first commit with Sapling

o  babeb04a2  2021-10-17 04:04  whatwant  remote/main
│  Create career.md
~

 

 

5. web (SmartLog)

  - Sapling은 멋지게도 web 인터페이스를 제공해주는데 ... 그냥 실행하면 에러 나온다.

❯ sl web                                     
ERROR: `node` is required to run Interactive Smartlog, but it was not
found on the $PATH. For information on installing Node.js, see:
https://nodejs.dev/en/learn/how-to-install-nodejs/

 

  - nodejs 설치하자

❯ sudo apt install nodejs npm

❯ nodejs --version                           
v10.19.0

 

  - 이제 다시 web !!

❯ sl web

  - 깔끔하고 예쁘다.

 

 

6. Pull-Request

  - PR 생성도 그냥 명령어 한 줄이면 된다.

❯ sl pr 
pushing 1 to https://github.com/whatwant/whatwant
created new pull request: https://github.com/whatwant/whatwant/pull/1
updated body for https://github.com/whatwant/whatwant/pull/1

 

  - 실제 GitHub에 생성되었는지 확인해보자.

 

 

여기까지 간단한 사용법을 살펴봤는데... 그냥 Git을 사용하는 것과의 큰 차이는 느끼지 못하겠다.

 

Git과의 차이점을 설명해주고는 있다.

  - https://sapling-scm.com/docs/introduction/differences-git

 

Staging Area가 없는 것과 몇 가지 차이가 보이기는 하지만,

사실 대용량 Repository일 때 Sapling의 장점이 돋보일 것 같기는 한데...

 

실제 작업하면서 사용을 해봐야 제대로 느껴볼 수 있을 것 같다.

 

 

이번 포스팅은 그냥 Sapling 맛만 보는 것으로...

 

 

반응형

 

표지

 

최근 전세계적인 어려운 경제 상황에

운명처럼 만나게 된 책

 

"파이썬 기반 금융 인공지능 (Artificial Intelligence in Finance)"

 

초판 1쇄

 

받아본 책은

이제 태어난지 갖 1달 된 따끈따끈한 책이지만...

원서는 2020년에 첫 출간되었었다.

 

First Edition

 

2년이 지난 책이라 조금 아쉬움은 있지만,

그래도 이렇게 번역서가 나온 것만으로도 정말 고마운 일이다.

 


예전에 퀀트 투자 관련된 책을 살짝 살펴본 적이 있었는데

그래서인지 이 책 제목을 보고

제일 먼저 든 생각은

"이 책도 퀀트 투자 관련된 것이겠구나!"

였다.

 

 

그래서 살펴본 목차는 다음과 같다.


[PART I 기계지능]

CHAPTER 1 인공지능
CHAPTER 2 초지능

[PART II 금융과 머신러닝]

CHAPTER 3 규범적 금융
CHAPTER 4 데이터 기반 금융
CHAPTER 5 머신러닝
CHAPTER 6 인공지능 우선 금융

[PART III 통계적 비효율성]

CHAPTER 7 밀집 신경망
CHAPTER 8 재귀 신경망
CHAPTER 9 강화 학습

[PART Ⅳ 알고리즘 트레이딩]

CHAPTER 10 벡터화된 백테스팅
CHAPTER 11 리스크 관리
CHAPTER 12 집행 및 배포

[PART Ⅴ 전망]

CHAPTER 13 인공지능 경쟁
CHAPTER 14 금융 특이점

[PART Ⅵ 부록]

APPENDIX A 상호작용형 신경망
APPENDIX B 신경망 클래스
APPENDIX C 합성곱 신경망

 

 

퀀트 투자 책인 것은 맞지만,

금융 데이터들을 어떻게 AI를 활용하면 좋을지에 대해서

포커스가 맞춰진 책이다.

 

목차 설명

각 목차 앞에서는 어떤 의도로 작성되었는지,

어떤 내용인지에 대해서 설명을 먼저 해주고 있다.


정말 친절하게도 학습 플랫폼도 제공을 해주고 있다.

 

https://aiif.pqp.io/

 

학습 플랫폼

 

이메일 주소를 가지고 계정을 등록해야하는 불편함은 있다.

이메일 인증 후 로그인 하면 다음과 같은 플랫폼을 사용할 수 있다.

 

Jupyter Notebook

 

커널도 제공을 하고 있는 것 같지만,

뭔가 설정을 필요로 하는 것인지...

실제 실행을 하면 에러가 발생했다.

 

커널 에러

 

다운로드 받아서 colab에서 실행을 해보니

잘 된다.

 

colab


금융데이터를 가지고 어떻게 인공지능(AI/ML)을 이용해서

다뤄야 할지 공부할 수 있는 좋은 책이다.

 

이 책에서 다루는 라이브러리는 다음과 같은데,

 

python / scikit-learn / tensorflow / keras

 

일반적으로 많이 사용되는 라이브러리들이기에

많은 분들에게 쉽게 다가설 수 있을 것이다.

 

다만, 소스코드를 제공하는 방식이

사실 조금 불편하긴 하다.

 

본래 플랫폼까지 제공해주려는 의도인 것 같기는 하지만

그냥 GitHub로 제공을 해주고

Colab을 사용하도록 가이드하는 것이

훨씬 더 접근성이 좋지 않았을까 한다.

 

소스코드가 업데이트 된지도 2년이 되었던데,

독자적인 플랫폼 제공이 어떤 의미가 있는지는....

 

언젠가 퀀트 투자를 이용해서 용돈벌이를 할 수 있기를 꿈꾸며

여기까지 서평을 마치겠다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

반응형

 

컴퓨터공학을 전공한 코딩쟁이로써

머신러닝, 딥러닝을 공부하면서 항상 수학이라는 엄청난 장벽에 어려움을 겪고 있다.

(공돌이라고 누구나 수학을 잘하지 않아요 !!! 😥)

 

나는 엔지니어(Engineer)이지 사이언티스트(Scientist)가 아니다.

사실 GPT-3에서 사용된 Transformer가 어떤 특징이 있는지 그런건 별로 궁금하지 않다. 😑

 

내가 관심있는 것은 그것을 어떻게 구현했는지 이고,

그걸 사용하려면 어떻게 해야하는지 그런 것이 훨씬 더 궁금하다.

 

그런데, 역시 오레일리에서는 나같은 코딩쟁이들을 위한 책을 내놨고,

멋진 한빛미디어에서 존경스러운 박해선님이 번역한 책을 출간해주셨다 !!! 😍

 

표지

 

말 그대로 "개발자를 위한 (For Coders)" 책이다 !!!

 

한글판은 나온지 얼마 안된 따끈따끈한 책이지만, 원서는 2020년 10월 1일에 출간했으니 시간이 좀...

하지만, 머신러닝 번역서의 장인이신 박해선님이 예제를 비롯하여 내용들을 모두 살펴봐주셨으니, 믿습니다 !!! 😎

 

초판

 

다시 한 번 말하지만, 이 책은 개발자를 위한 책이다.

모델의 수학적 배경을 알고 싶다거나 머신러닝 자체에 대해서 공부하기를 원한다면 다른 책을 찾아봐야 한다.

 

아! 그리고, 이 책은 텐서플로(Tensorflow)를 사용하고 있다.

파이토치(PyTorch)를 원한다면 역시 다른 책을 ... 🙄

 

대상 독자

 

이 책은 크게 `모델구축``모델 사용`의 두 묶음으로 구분이 되어 있다.

 

`모델 구축`에 있어서도 (비전, 자연어, 시퀀스) 3가지 유형에 대해서 모두 설명해준다.

 

모델 구축

 

`모델 사용` 부분에서는 모바일 환경에서 사용할 수 있는

`텐서플로 라이트(Tensorflw Lite)`를 설명해주고 있으며 심지어 iOS 앱으로 구현하는 것까지도 알려준다.

 

모델 사용

 

그리고, 20장을 보면

짧게나마 윤리/공정성/개인정보에 대한 이야기도 해준다.

 

 

책의 전체적인 내용에 대해서

박해선님이 직접 설명해주신 그림도 있다.

 

[출처] https://tensorflow.blog/aiml4coders/

 

 

'이론과 실습' 측면에서 바라보면 이 책은 '실습'에 충실한 책이다.

뒤늦게 머신러닝을 공부하고자 하는 개발자에게는 속시원한 책이지 않을까 한다.

 

 

책의 정오표는 아래 링크에서 확인할 수 있다.

  - https://tensorflow.blog/aiml4coders/

 

 

예제 파일(쥬피터 노트북)은 아래 링크에서 확인할 수 있다.

  - https://github.com/rickiepark/aiml4coders

 

예제 파일은 원서의 것을 그대로 공유하는 것이 아니라

박해선님이 확인하고 다듬어서 올려주신 것으로 알고 있다.

 

주석이 별도로 없는 것은 조금 아쉽지만, 그래도... !!! 😋

 

 

마지막으로,

개인적인 취향으로 ... 이 책은 Coloful 하다 !!! 😁

 

그림

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

반응형

+ Recent posts