석사 학위를 좋은 학교에서 ML(머신러닝)로 취득했음. 학교에서 배운 것은 혼자서도 배울 수 있었지만, 학교는 혼자서는 할 수 없는 집중과 압박을 제공함.
논문 구현이 가장 많이 배운 경험임. 강의와 교과서는 단어에 불과하고, 실제로 해보는 것이 훨씬 깊은 지식을 줌.
다양한 커리큘럼을 제안할 수 있지만, 1시간 동안의 집중된 문제 해결이 가장 좋음.
몇 가지 프로젝트 제안: 간단한 함수 학습을 위한 베이비 신경망 훈련, MNIST 숫자 분류기, 특수한 말뭉치로 GPT2 미세 조정, 시각적 유사성 측정을 위한 쌍둥이 신경망 훈련 등.
자신의 신경망과 역전파를 작성하는 데 시간을 낭비하지 말고, 프로파일링 및 디버깅 도구 사용법을 배우라고 조언함.
AI 연구자 및 기술 창업자의 조언
최신 발전에 대해 이야기하는 것으로 가정하고, 선형적인 경로를 따르지 말 것을 권장함. 한 과정과 작은 프로젝트를 하고, 시간을 정해두고 끝내려고 노력할 것.
흥미로운 연구 분야를 찾아 해당 GitHub 코드를 실행하고, 개선하거나 앱에서 사용할 방법을 찾을 것.
fast.ai 과정 수강, 카파시의 블로그 포스트 읽기, 스탠포드 cs231n 및 cs234 과정 수강 등을 제안함.
관심 있는 프로젝트를 찾아 실행할 것.
ML 실용화의 중요성
많은 댓글이 ML의 저수준 부분을 강조할 것이지만, 현재 ML에 필요한 것은 구현 수준에서 똑똑한 사람들임.
기존 LLM 기술을 활용하여 일반 사람들이 사용할 수 있는 소프트웨어를 만드는 것이 중요하고 필요한 작업임.
일상적인 실습은 애플리케이션 스케치, 프롬프트 및 함수 호출 구성, 창조한 것을 마케팅하는 방법 학습, 제로에서 하나로 가는 도구 만들기 등임.
예시로, 아리스토텔레스 시대의 공통 장서 기술을 현대의 임베딩 시대에 적용한 것과 순수 MD 사양을 이해하고 스트리밍 생성 모델을 통합한 것을 들 수 있음.
AI/ML을 일상 업무로 전환하기
AI/ML을 중요한 경로에 두는 방법을 찾음. 새로운 언어를 배우는 것과 같이, 완전한 몰입만큼 효과적인 것은 없음.
아직 분야에서 일자리를 얻을 만큼 충분한 기반을 갖추지 못했다면, 열정 프로젝트를 찾고 새로운 해결 방법을 계속 생각하는 것이 다음으로 좋은 방법임.
마지막으로, 학교로 돌아가는 것을 고려할 것. 하루 1시간 이상이 걸리지만, 다른 학습 전략보다 훨씬 빠르고 구체적인 결과를 볼 수 있음.
전형적인 ML/AI 학생의 로드맵
수학, 컴퓨터 과학 등의 선행 학습이 필요함. 이는 보통 미적분, 선형대수, 확률 및 통계, 프로그래밍, 객체지향 프로그래밍, 데이터 구조 및 알고리즘 등을 포함함.
기본적인 ML 과정을 거친 후, 빠르게 변화하는 DL(딥러닝)의 기본 부분을 다룸.
ML 엔지니어링과 ML 연구로 나뉨. 엔지니어링은 ML 파이프라인과 관련된 기술적인 것들을, 연구는 과학 자체에 집중함.
다른 사람들의 말처럼, 도구를 사용하여 구현하는 것이 재미있고 도움이 됨. 모든 모델을 구현하려고 하면 매우 어려움을 겪을 수 있음.
"실용적인" ML을 배울 때, API를 통해 데이터를 입력하고 결과를 받을 수 있는 방식으로 모델을 구현하려고 함. 이는 데이터 처리, 소프트웨어 개발 및 호스팅, API 개발 등의 도전을 포함함.
AI/ML의 한계 인식
상상력을 너무 풀어놓거나 AI/ML이 할 수 있는 것에 대해 과신하지 말 것.
주요 회사에서 2년간 ML 프로젝트에 참여했으나, 기존의 통계적 방법보다 개선되지 않았고, ML의 "블랙 박스"를 이해하는 능력이 없어 프로세스에 실질적인 개선이 없었음을 깨달음.
많은 ML 작업이 문제를 찾는 해결책이었음.
데이터베이스(SQL 및 비SQL) 사용 방법을 이해하는 것이 중요함. ML을 효과적으로 사용하려면 대량의 데이터를 성능 좋게 프로그래밍하는 데 뛰어난 기술이 필요함.
AI/ML 공부 방법
Hastie 등의 "An Introduction to Statistical Learning with Applications in R/Python"을 처음부터 끝까지 읽고 설명된 개념/아이디어/뉘앙스/미묘함을 이해할 것.
수학/통계 책을 준비해두고, 모르는 수학 기법이 나오면 즉시 이 책들을 참고하거나 짧은 유튜브 동영상을 보며 개념과 사용법을 이해할 것.
이것이 AI/ML을 공부하고 이해하는 가장 간단하고 직접적인 방법임. 이 스레드에서 언급된 다른 모든 것은 이것이 끝난 후에 해야 함.
ML과 엔지니어링의 결합
ML과 엔지니어링 사이의 결합을 살펴볼 것.
ML ops, DevOps 적용, ML 공간에서의 테스트 및 ci/cd, 여러 GPU에서 훈련하는 방법, 특히 대규모 및 저렴하게 LLM을 호스팅하는 방법 등을 고려할 것.
학계에서 강력한 학문적 배경을 가진 수백 명의 후보자가 있지만, 그들의 야망을 실현할 수 있는 경험 많은 엔지니어는 매우 적음.
딥러닝에 초점을 맞춤
대부분의 LLM은 변환기 아키텍처를 사용함. 이에 대해 시각적으로 배울 수 있으며, 블로그 포스트나 Andrej Karpathy의 블로그 포스트와 자료를 통해 배울 수 있음.
매주 발표되는 논문을 최신 상태로 유지하기 위해 매주 일요일 요약을 읽음.
엔지니어링 측면을 더 배우기 위해 EleutherAI의 Discord 서버에 가입하거나 llama.cpp와 같은 프로젝트의 GitHub 토론을 따를 수 있음.
가장 효율적인 개발 방법은 아마도 분야의 주요 논문을 재구현하는 것일 것임. 명확한 목표가 있고, 성공의 명확한 징후가 있으며, 작업을 확인하고 비교하며 배울 수 있는 많은 구현이 있음.
LLM 초보자를 위한 퀴즈
비CS(생의학) 대학원생을 위한 LLM 소개 강의를 최근에 진행함. 숙제 퀴즈를 할당하고 싶었지만 좋은 것을 찾지 못해 다지선다형 퀴즈를 만듦. 이 퀴즈는 "악마적"이며, 단단한 이해가 없으면 넘어질 수 있음. 몇 가지 질문은 이해를 시험하고 올바른 답을 찾으려고 노력함으로써 배우는 데 도움이 되는 뉘앙스를 가지고 있음. 이메일을 수집하지 않는 Google 양식임.
Hacker News 의견
학위 경험 공유
AI 연구자 및 기술 창업자의 조언
ML 실용화의 중요성
AI/ML을 일상 업무로 전환하기
전형적인 ML/AI 학생의 로드맵
AI/ML의 한계 인식
AI/ML 공부 방법
ML과 엔지니어링의 결합
딥러닝에 초점을 맞춤
LLM 초보자를 위한 퀴즈