최근에 파이썬에 대한 관심이 생겨 문법을 공부하기 시작했는데, 책과 인터넷으로 문법을 읽기만 하는 것 보다는 프로그램을 실제로 작성해 볼 필요를 느끼게 되었다.

 

큰 규모 프로그램을 작성하기에는 아직 기초 문법만 공부하고 있는 상황이어서, 좀 간단하면서도 문법을 다양한 형태로 응용할 방법을 고민하던 중 찾게 된 것이 프로젝트 오일러이다.

 

프로젝트 오일러는 문제가 나와 있고 이를 프로그램으로 해결하여 답안을 제출하면 정답이 맞는지 확인하는 방식으로 되어 있는데, 정답만을 확인하기 때문에 허술해 보이지만 수학문제 정답으로 꼽히는 -1, 0, 1이 답안이 아니라 많은 반복을 통해 구할 수 있는 큰 숫자가 답안이기 때문에 문제를 알고리즘으로 바꿔 정확한 프로그램을 작성하고 실행해야 답안을 얻을 수 있다.

 

파이썬 문법 공부보다는 알고리즘, 논리, 수학에 대해 다시 생각해 보는 일이 더 많기도 했지만, 숫자, 문자열, 리스트, 딕셔너리 등 파이썬에서 제공하는 자료형, 파일 입출력, 함수 등 파이썬 문법을 다양한 방식으로 활용해보고 이해할 수 있게 하는 기회가 되고 있다.

 

문제를 해결하고 나면 다른 사람의 해결방안을 확인해 보기도 하는데, 답안을 구하기 위한 로직 중심으로 프로그램을 작성하기 때문에 훨씬 많은 시간이 걸려 답을 구하는 것을 보면서 많이 놀라고 있다. 그리고, 예전 언어에 비해 파이썬이 얼마나 작성하기 편한지도 느끼고 있고.

 

뒤로 갈수록 난이도는 높아지고 파이썬 보다는 수학 지식이 더 필요한 경우가 많아지게 되고 있기 때문에 현재 기준 840개 문제를 모두 풀지는 않을 것 같지만, 파이썬을 편하게 활용할 수 있을 때까지는 풀고 있을 것 같다.(지금으로 봐서는 100번 전후가 될 것 같다)

날짜 : 2022. 11. 30.

저자 : 이상진 저

출판사 : 시크릿하우스

정가 : 17,000원

이미지 : 예스24

 

빅데이터라는 말이 나올 때 이것을 활용한 새로운 패턴 발견, 예측 분석과 같은 응용을 얘기하면서 그 가능성에 대해 신선하게 생각하고 있었는데, 얼마 지나지 않아 알파고 쇼크와 함께 딥러닝 기반의 인공지능이 더 강력한 존재가 되었다.

 

한때, IT전공자에게 인공지능은 성과가 나오지 않는 세부전공으로 인식되었는데, 2번의 빙하기를 이겨내고 대세가 되고 있다.

 

이 책에서는 인공지능 학습 유형(지도학습, 비지도학습, 강화학습), 인공지능 알고리즘(경사하강법, 분류, 의사결정트리, 합성곱 신경망)을 잘 설명해주고 있다. 실제 프로그램 보다는 개념 중심으로 설명하고 있지만 수학 지식이 일천해서 그런지 제대로 이해하는 것에는 한계를 느낄 수 밖에 없었다.

 

지금은 딥러닝을 기반의 인공지능 응용이 쏟아져나오고 있지만, 저자가 이야기한 '모라벡의 역설'처럼 뜻하지 못한 한계를발견하고 다음번 빙하기가 올 것 같은 생각이 들긴 하는데, 쏟아져나온 응용만으로도 우리의 삶은 (딥러닝 기반의) 인공지능이 나오기 이전과는 많이 달라지게 될 것 같다.

+ Recent posts