데모 데이터 생성부터 모델 학습까지 [파이썬으로 구현하는 CF 알고리즘]으로 따라잡기

파이썬으로 배우는 콜라보레이티브 필터링 / Collaborative Filtering by Python

구름EDU에 [파이썬으로 구현하는 CF 알고리즘] 강좌를 소개해주신 최욱진 님과 이야기를 나누어보았습니다.

최욱진 님은 실무에서 추천 시스템이 구현되는 원리인 협력 알고리즘(Collaborative Filtering)을 파이썬으로 구현해보는 강좌를 소개해주셨는데요. 이번 강좌에서는 공개된 샘플 데이터를 다운받는 것부터 시작하는 ‘샘플 데이터 생성’부터 ‘모델 학습’까지 직접 해보는 것을 목표로 합니다.

그럼 최욱진 님의 이야기를 빠르게 만나볼까요?

goorm: 안녕하세요 최욱진(👨🏻‍💻)님, 구르머분들께 자기소개 부탁드립니다!

👨🏻‍💻: 안녕하세요, 현업에서 데이터 관련 직무를 맡고 있는 최욱진입니다.

4년 차 직장인이고 2년 이상 개발 과외를 병행하고 있습니다 😀
항상 파이썬 또는 머신러닝 내용을 최대한 이해하기 쉽도록 강의하고자 많이 고민하고 있습니다.

스스로 규칙을 만들고 그 규칙 속에서 새로운 세상을 만들어내는 프로그래밍의 매력에 빠져 커리어를 정하게 되었습니다.

Above image is provided by Freepik

☁ goorm: 최욱진 님이 생각하는 프로그래밍의 매력이란?

👨🏻‍💻: 앞서 말씀드렸던 것처럼, 프로그래밍은 스스로 만든 규칙으로 세상을 만드는 것이라고 생각합니다. 저는 그 세상을 만들어내는 도구로 파이썬을 사용하고 있는 거고요.

저는 일단 프로그래밍을 배우고 싶어서 파이썬 문법을 익혔는데 뭘 만들지 모르겠다면 먼저 주변에서 아이디어를 찾아보라고 말씀드리고 싶어요. 회계 업무를 맡고 계신다면 이를 프로그래밍을 통해 조금 더 편하게 할 수 있는 방법을 고민해 보는 것도 좋고요, 주식이나 비트코인을 투자하고 계신 분들은 파이썬으로 데이터를 분석해 볼 수도 있겠죠?

처음부터 큰 서비스나 프로그램을 만들려고 하기보다는 작은 프로그램을 만들어 보는 경험을 쌓아 보는 것이 중요합니다. 그 과정에서 자신감도 생기고요, 결국은 본인 직접 코딩을 많이 해보는 게 가장 중요하다고 생각합니다!

빙고 게임, 오목, 테트리스, 똥 피하기 게임 등 간단해 보이는 것부터 목표로 설정하고 도전해보세요! 사실 저런 게임도 구현하려면 정말 어렵습니다. 쉬울 거라고 생각했던 걸 막상 만들려고 보니 어려운 거죠. 생각지도 못한 문제들을 해결해야 하니까요. 이렇게 시각이 달라지고 이를 해결하는 과정이 프로그래밍의 가장 큰 매력이라고 생각합니다!

goorm: [파이썬으로 구현하는 CF 알고리즘]은 파이썬 및 인공지능을 다루고 있는데요, 최욱진 님은 인공지능과 관련 알고리즘에 어떻게 재미를 붙이셨나요?

👨🏻‍💻: 개인적으로는 프로그래밍 자체 보다는 무언가 만드는 것에 더 흥미가 있었던 것 같아요.

예를 들면 앱 게임을 만들어 보고 싶어 자마린 문서를 찾아본다든지, pc 게임을 구현해보고 싶어 TCP를 공부해 보거나 하는 식으로요.

저는 오히려 이런 방법이 코딩 능력을 키우는 더 빠른 방법이라고 생각해요. 머신러닝도 그 자체 학습도 중요하지만 결국은 문제해결을 위한 도구이기 때문에 해결하고자 하는 ‘문제’를 먼저 설정하고 관련 자료를 찾아보는 학습 방법은 어떨까 생각해요.

물론 이 분야에 전문가가 되고자 한다면 얘기는 다르겠지만요, 그러나 개발자 또는 연구원으로 커리어를 희망하지는 않지만, 취미나 교양으로 학습을 하려고 하시는 분들께는 이러한 방법이 최적일 거라 생각해요!

Above image is provided by Freepik

goorm: 이번 강좌의 난이도를 [어려움]이라고 설정해주셨더라구요. 어떤 분들이 들으면 좋을까요?

👨🏻‍💻: 머신러닝에 관심이 있어서 공부는 했는데, 이걸 진짜 만들어보지는 못했다. 이제 만들어볼 때가 왔다! 라는 생각이 들기 시작한 분들께 추천하고 싶습니다.

제가 혼자 프로그래밍을 공부하면서 가장 아쉬웠던 점은 문법이나 입문 강의는 많지만 이후 문법을 이용하여 프로그램을 만들거나 직접 구현하며 특정 개념들을 소화하는 강의는 많지 않았다는 것인데요, 그러던 중 ‘밑바닥부터 시작하는 딥러닝’이라는 책이 저의 아쉬움을 속 시원하게 해소해 주었던 기억이 있습니다.

그래서 혹시나 저와 같은 아쉬움을 가지고 계신 분들에게 조금이라도 이러한 부분들을 채우고자 강의를 만들었습니다. 물론 위 책과 같은 명저와 비교하면 매우 매우 부족한 강의이지만요. 데모 데이터 생성부터 모델 학습까지 최대한 직접 코딩해보는 내용으로 기획해 보았습니다!

☁ goorm: 혹시 다음 강좌를 준비 하고 계신다면, 살짝 힌트를 주실 수 있을까요?

👨🏻‍💻: 역시나 문법이나 입문 강의 보다는, 프로그래밍에서 중요한 개념들을 직접 구현하며 배워가는 수업을 기획하려 합니다, 데이터 관련 프로그래밍에서는 함수형 프로그래밍에 대한 이해가 매우 중요한데 이를 조금 더 친숙하게 이해할 수 있도록 강의를 만들어 보고 싶어요^_^

☁ goorm: 구름EDU의 강의자가 되어보니 어떠셨나요?

👨🏻‍💻: 먼저 누군가에게 내가 기획한 영상이 보이는 것이 처음에는 정말 생소한 경험이었습니다.

대면 강의는 많이 해보았지만, 온라인 강의는 이번이 처음이어서요. 그래도 매니저님께서 관련 가이드나 도움을 많이 주시고, 소개 페이지 제작도 너무 잘해주셔서 많은 도움이 됐습니다. 요즘 대면에 많은 제약이 생기다 보니 구름에듀에 강의를 등록하기로 결심했는데요. 후회는 전혀 없고 앞으로 강의 제작 스킬을 높여서 또 도전해보고 싶습니다!

그리고 강의 관리 페이지에서 제공되는 기능들이 정말 알찬 것 같아요! 관리자 입장에서 꼭 필요한 기능들이 전부 있습니다!

cf_algorithm_implemented_in_python
파이썬으로 배우는 콜라보레이티브 필터링 / cf_algorithm_implemented_in_python

최욱진님의 파이썬으로 구현하는 CF 알고리즘 강좌는
구름EDU에서 만날 수 있습니다.

Posted by
goorm

ANYONE CAN DEVELOP