python 기반 웹 프레임워크라고 하면 대부분 django나 flask 정도를 많이 사용하고 자료 찾기도 용이합니다. 두 프레임워크 모두 풀 스택 프레임워크라서 rest api 서버를 구축하기 위해선 별도의 추가 라이브러리가 필요하고 추가적인 학습이 필요합니다. 아직 1 버전이 나오진 않았지만 fastapi는 이런 문제들을 일부 해결하는 동시에 속도까지 빠른 프레임워크입니다. 프레임워크들은 각자 만들어진 목적과 철학이 다르기 때문에 동일 선상에서 1대 1 비교는 쉽지 않습니다. 그래서 단순 우열을 가리기보다는 내 필요에 맞는 프레임워크가 뭔지를 고민하는게 좋다고 생각합니다.
다양한 선형대수학 책이 나와있고, 프로그래머들을 타겟으로 하는 책, 수식을 최소화하는 책 등 다양한 종류의 책이 있습니다. 16년도 알파고와 함께 나오기 시작한 책들은 대부분 이미 선형대수에 익숙한 사람을을 대상으로 프로그래밍에 특히, 인공지능 분야에 선형대수를 어떻게 적용시킬지 설명하는 책에 가까웠습니다. 선형대수가 가지고 있는 기하학적 특성과 적용시 벡터 공간에서 변화과 주요한 내용이었습니다. 그 후에는 수학적 기반이 약한 프로그래머를 위해서 수식을 최소화하고 설명과 코드만으로 쓰여진 책들이 나왔습니다. 두 종류 모두 각기의 장점을 가지고 있었지만 수학적 베이스는 약하지만 수학그 자체로 좀더 이해하면서 코드로 옮기고 싶었던 저에게는 아쉬웠습니다.
chatGPT가 AlphaGo 이후로 다시 한 번 대중의 관심을 인공지능으로 가지고 왔습니다. prompt engineer라는 용어가 나오고 중고생들부터 학계까지 광범위하게 사용하는 도구가 되었습니다. 이런 흐름 속에 입문을 고민하면서 어쩌다 데이터 분석 with 파이썬을 찾고 계실 것 같습니다.
데이터 과학이라는 큰 범주 내에서는 가까운 사이라고 생각할 수 있지만 AI의 ML/DL(머신러닝/딥러닝)에서 필요로 하는 능력과 데이터 분석은 다소 궤가 다르다고 봐야랍니다. DL을 위해서도 데이터를 분석하고 정제하는 능력이 필요하기 때문에 DL 공부를 염두에 두셔도 볼 만한 책입니다.
골든래빗 출판사로부터 책을 제공받아 작성했습니다
책 바로가기
알파고가 가지고 온 인고지능 쇼크 이후 벌써 6년이라는 시간이 지났습니다. 그 기간동안 다양한 인공지능/딥러닝 관련 서적들이 나왔고, tenosrflow와 pytorch가 인공지능 프레임워크의 두 기둥으로 자리 잡았습니다. 다양한 프레임워크와 네트워크/모델들이 나왔고 그래서 상대적으로 초창기에 나온 책들은 기초적인 MLP, CNN, RNN 정도를 다루고 부록에 GAN, Transformer 등 나름 트랜디하게 뒤에 나온 모델들을 소개하는 정도였습니다. 이번 책은 퍼셉트론을 시작으로 GPT, ViT등 요즘 핫하다고 할 수 있는 대규모 모델 등까지 다루고 있습니다.
파이썬을 이용하다보면 프로젝트마다 필요한 라이브러리들이 다르고 파이썬의 버전도 다른경우가 대부분입니다. 그래서 다양한 가상환경 세팅을 위한 라이브러리들과 환경들이 존재합니다. 제목처럼 Anaconda에서 가상환경을 만들고 jupyter에 커널을 연결하는 방법을 소개드리겠습니다.
1. 환경만들기 conda create -n [env name] [python=ver] Anaconda Prompt에서 위와 같이 입력을 하시면 가상환경이 만들어집니다. 환경변수를 설정해놓으셨다면 윈도우 기준 꼭 Anaconda Prompt가 아니어도 CMD 등 에서도 가능합니다.
[env name] 옵션은 여러분이 만든 가상환경에 붙는 이름입니다. [python=ver]은 필요할 경우 기입하시면 됩니다. 특정 파이썬 버전이 필요하시면 해당 버전을 기입하시면 됩니다.
골든래빗 출판사로부터 책을 제공받아 작성했습니다
책 바로가기
데싸노트의 실전에서 통하는 머신러닝을 선택하기 전에 반드시 아셔야 할 내용이 하나 있습니다. 머신러닝과 딥러닝은 다른 것입니다. 입문 단계에서 가장 많이 헷갈리고 혼용하는 것이 용어입니다. 동일 카테고리에서 특히 많은 혼동이 있는 듯 합니다. 이제는 조금 옛날 이야기가 되어버렸지만 새롭게 인공지능의 붐을 일으킨 알파고 이후 인공지능 == 머신러닝 == 딥러닝으로 알고 있는 사람이 많아져 더욱 용어에 혼란을 느끼는 사람이 많은 듯 합니다. 그래서 이 책은 제목 그대로 머신러닝만을 다루고 있습니다.
전공을 시작 할 때만해도 파이썬은 알고리즘 공부나 대회 준비에 적합하지 않다는 인식이 강했습니다. 제가 가지고 있는 다른 알고리즘 서적들만 해도 C와 cpp가 각 2권씩입니다. 자료구조나 파이썬의 신텍스 슈가 등 때문에 파이썬 자료구조와 알고리즘 책을 시장에서 거의 찾아볼 수 없었습니다.
책이 한 장 한 장 넘어가면서 파이썬이 알고리즘 공부에 별로라는 생각은 편견이라는 걸 다시 느꼈다. 알고리즘에서 중요한 점은 문제 풀이를 위한 논리적인 사고 과정과 사고 과정을 코드로 옮기는 과정이지 구현하는 언어의 문제가 아니었다.