글자 크기

빌드

창업과 자동화 기록 – 아이디어에서 실험, 실패, 수정까지

수순 복기 기능을 만들며 겪은 Streamlit의 함정들

단순한 요구사항 300수짜리 기보가 있다. 1수부터 300수까지 넘겨보고 싶다. 필요한 건 세 가지. 슬라이더 (드래그로 이동) 버튼 (◀ ▶ 하나씩 이동) 키보드 단축키 (방향키로 이동) 간단해 보였다. Streamlit이면 금방 만들겠지. move = st.slider(“수순”, 0, 300, value=0) 슬라이더 완성. 5분 걸렸다. 그리고 지옥이 시작됐다. 첫 번째 함정: 버튼이 슬라이더를 못 바꾼다 “다음 수” 버튼을 만들었다. if 계속 읽기 →

수순 복기 기능을 만들며 겪은 Streamlit의 함정들 더 읽기"

AI 추천수를 바둑판에 그리기까지

텍스트의 한계 KataGo 연동에 성공하고 나서, 추천수를 이렇게 보여줬다. 💡 AI 추천수: A. Q16 (승률 54.2%) B. D16 (승률 53.8%) C. R14 (승률 53.1%) 틀린 건 아니다. 정보는 다 있다. 그런데 바둑을 아는 사람은 알 것이다. Q16이 어디인지 머릿속으로 변환해야 한다는 걸. “Q니까… I를 빼면… 16번째 줄이니까…” 이건 복기가 아니라 수학 문제다. 바둑판 위에 직접 계속 읽기 →

AI 추천수를 바둑판에 그리기까지 더 읽기"

드디어 진짜 AI가 붙었다: KataGo 연동기

목업의 한계 첫 번째 버전을 만들 때, 나는 가짜 데이터를 썼다. 승률 변화? 랜덤. 전환점 감지? 하드코딩. AI 추천수? 없음. “일단 돌아가는 것”이 목표였으니까. MVP라는 이름으로 스스로를 납득시켰다. 하지만 내 바둑을 분석한다면서 AI가 진짜로 보지 않는다는 건, 코치 앱이라는 이름이 무색한 일이었다. KataGo를 선택한 이유 바둑 AI 하면 AlphaGo가 떠오르지만, 일반인이 쓸 수 있는 건 계속 읽기 →

드디어 진짜 AI가 붙었다: KataGo 연동기 더 읽기"

늦깎이 바둑코치, 벽을 만났다

MVP가 나왔다. URL도 생겼다. 내 기보를 올리면 분석 화면이 뜬다. 그런데 직접 써보니 문제가 보였다. 첫 번째 벽 20년치 기보를 꺼낼 수가 없다. 나는 20년 동안 오로바둑에서만 바둑을 뒀다. 태블릿으로, 모바일로, 수천 판을 뒀다. 그런데 이 앱은 기보 내보내기를 지원하지 않는다. SGF 파일로 추출하는 버튼도 없다. 웹사이트에서 다운로드하는 기능도 없다. 클라우드 동기화도 없다. 20년치 데이터가 계속 읽기 →

늦깎이 바둑코치, 벽을 만났다 더 읽기"

늦깎이 바둑코치, 첫 번째 버전이 나왔다

시작은 단순했다. “내 실수를 기록하고, 패턴을 찾고, 조금씩 나아지고 싶다.” 그런데 기존 바둑 앱들은 전부 “이 수가 틀렸다.” 라는 말만 한다. 왜 틀렸는지, 내가 어떤 습관을 가지고 있는지는 알려주지 않는다. 그래서 직접 만들기로 했다. 이름은 KaiGo Coach “改” — 고친다는 뜻이다. 첫 번째 원칙을 세웠다 “게임이 아니라 성장의 흔적을 저장한다.” 승패가 아니라 “오늘 어디서 흔들렸는가”를 계속 읽기 →

늦깎이 바둑코치, 첫 번째 버전이 나왔다 더 읽기"

늦깎이 바둑코치를 만들기로 했다

나는 바둑을 좋아한다. 그렇다고 잘 두는 건 아니다. AI가 추천해주는 수를 보면 늘 감탄한다. 하지만 동시에 늘 같은 감정을 느꼈다. “그래서 나는 뭐가 문제인데?” 승률이 18% 떨어졌다고 한다. 추천 수는 B3라고 한다. 그런데 나는 여전히 모른다. 왜 나는 초반에 흔들리는지. 왜 방향을 잘못 잡는지. 왜 같은 실수를 반복하는지. 강한 AI는 이미 충분하다 KataGo는 강하다. Leela 계속 읽기 →

늦깎이 바둑코치를 만들기로 했다 더 읽기"

바둑 AI를 만들며 배운 것: 멈추는 것도 한 수다

늦깎이연구소 | 바둑 AI 개발기 #4 (시즌 1 마무리) 27번의 자기 대국, 그 후 Policy Loss 3.49 → 3.35. 수치로만 보면 개선이다. 하지만 체감은 없었다. AI는 여전히 이상한 곳에 돌을 뒀다. 1선에 의미 없는 착점. 급소를 피해가는 행마. 수백 시간의 CPU 연산. 수천 판의 자기 대국. 그 끝에서 나는 멈췄다. 버그를 고치며 깨달은 것 프로젝트 계속 읽기 →

바둑 AI를 만들며 배운 것: 멈추는 것도 한 수다 더 읽기"

아내에게 지지 않기 위해, 나는 카드 게임을 만들기 시작했다

Tiến Lên 카드 앱 빌드 기록 #1 처음엔 그냥 재미였다. 베트남에서 자란 아내는 Tiến Lên을 정말 잘한다. 처음 몇 판은 웃으며 졌다. 그 다음엔 조금 억울했고, 그 다음엔 오기가 생겼다. “이건 좀 연구해봐야겠다.” 그게 시작이었다. 왜 하필 Tiến Lên이었을까 Tiến Lên은 단순한 카드 게임이 아니다. 4명이 참여하고 순위로 승부가 나고 강한 패를 언제 쓸지, 언제 계속 읽기 →

아내에게 지지 않기 위해, 나는 카드 게임을 만들기 시작했다 더 읽기"

AI는 어떻게 수를 읽을까: MCTS 완전 정복

늦깎이연구소 | 바둑 AI 개발기 #3 체스와 바둑의 결정적 차이 체스 AI는 1990년대에 이미 세계 챔피언을 이겼다. 하지만 바둑 AI는 2016년이 되어서야 성공했다. 왜 20년이나 차이가 날까? 분기 계수(Branching Factor) 때문이다. 체스: 평균 35개의 선택지 바둑: 평균 250개의 선택지 (19×19 기준) 체스에서 쓰던 방법 — 미니맥스(Minimax) — 은 모든 가능한 수를 탐색한다. 하지만 바둑에서는? 차원의 계속 읽기 →

AI는 어떻게 수를 읽을까: MCTS 완전 정복 더 읽기"

바둑 AI를 만들며 배운 것: “초보들끼리 두면 늘지 않는다”

늦깎이연구소 | 바둑 AI 개발기 #2 이상한 일이 일어났다 AI를 학습시키기 시작했다. 스스로 바둑을 두고, 결과를 보고, 배우는 방식. AlphaGo Zero가 썼던 그 방법 — 셀프플레이. 그런데 이상했다. Iteration 1 | Policy Loss: 3.41 Iteration 2 | Policy Loss: 3.48 Iteration 3 | Policy Loss: 3.57 Policy Loss가 올라갔다. Loss는 “틀린 정도”다. 학습하면 내려가야 한다. 계속 읽기 →

바둑 AI를 만들며 배운 것: “초보들끼리 두면 늘지 않는다” 더 읽기"