본문 바로가기

데이터 수집부터 모델 훈련까지, IT 비전공자의 AI 실험 과정

📑 목차

    비전공자가 데이터 수집부터 모델 훈련까지 직접 실험한 AI 학습 과정 기록.

     

    나는 50대의 IT 비전공자로서
    AI 자동매매와 머신러닝을 처음 접했다.
    이 글의 제목인 데이터 수집부터 모델 훈련까지,
    비전공자의 AI 실험 과정

    내가 지난 몇 달 동안 경험한 변화를
    가장 정확하게 설명하는 표현이었다.

     

    데이터 수집부터 모델 훈련까지, IT 비전공자의 AI 실험 과정
    데이터 수집부터 모델 훈련까지, IT 비전공자의 AI 실험 과정

     

    AI 기술을 이해하기 위해
    나는 파이썬과 Colab으로 데이터를 모으고
    모델을 훈련시키는 실험을 꾸준히 진행했다.
    그 과정에서 나는
    데이터 수집부터 모델 훈련까지,
    비전공자의 AI 실험 과정
    이라는 문구를
    학습의 기준점처럼 반복해 떠올렸다.

     

    AI라는 단어는 복잡하게 들리지만
    실제로는 작은 실험을 쌓아가는 흐름이었다.
    데이터를 불러와 형태를 다듬고
    머신러닝 모델이 어떠한 방식으로
    예측을 수행하는지 확인하는 과정이
    나에게는 새로운 성장 경험이었다.

     

    그리고 이 여정 전체가
    데이터 수집부터 모델 훈련까지,
    비전공자의 AI 실험 과정
    이라는 제목을
    나 스스로 증명하는 과정이 되었다.


    1. IT 비전공자 블로그 AI 데이터 수집의 첫 단계

    키워드 데이터 수집, 전처리, API 활용

     

    AI 자동매매나 머신러닝 모델을 만들기 위해
    가장 먼저 해야 하는 일은
    정확한 데이터를 확보하는 과정이었다.

     

    비전공자인 내가 처음 마주한 고민은
    데이터를 어디서 가져올 것인가였다.
    이를 해결하기 위해 나는
    무료 API 서비스들을 살펴보았고
    Yahoo Finance API가 가장 접근성이 높다는 것을 알았다.
    이 API를 이용하면 과거 주가 데이터와
    거래량 정보를 바로 다운로드할 수 있었다.

     

    Colab에서 다음과 같은 코드를 사용해
    데이터를 불러왔다. (kotlin)

     

    import yfinance as yf
    data = yf.download('AAPL', start='2020-01-01') 

     

    이 간단한 코드 한 줄이
    내 AI 실험의 출발점이었다.

     

    데이터를 불러온 뒤에는
    칼럼 구조, 날짜 인덱스, 결측치 여부를
    꼼꼼히 확인해야 했다.
    나는 이 작업을 소홀히 했다가
    모델 훈련 단계에서 계속 오류가 발생했다.

     

    그 경험을 통해
    결측치와 이상치를 정확히 처리하는 과정이
    데이터 품질을 결정한다
    는 사실을 배웠다.

     

    dropna(), fillna() 같은 함수를 활용해
    결측치를 제거하거나 대체하며
    데이터의 안정성을 확보했다.
    비전공자인 내가 이 과정에서 느낀 가장 큰 깨달음은
    AI 모델은 데이터의 질을 그대로 반영한다는 점이었다.

     

    단순한 수집 단계처럼 보이지만
    이 과정은 모델 성능을 좌우하는
    가장 중요한 기초 작업이었다.

     

     


    2. IT 비전공자 블로그 데이터 전처리의 구조 정리

    키워드 데이터 전처리, 결측치 처리, 구조 정돈

     

    데이터 수집이 끝난 뒤에는
    바로 데이터 전처리 과정이 시작되었다.
    전처리는 단순히 데이터를 정리하는 작업이 아니라
    모델 훈련의 성능을 좌우하는 핵심 과정이었다.

     

    AI 자동매매 실험에서 전처리 과정은
    데이터의 오류를 제거하고
    필요한 특징만 남기는 과정이었다.
    나는 처음에 이 과정을 가볍게 생각했지만
    모델이 예측을 잘못하거나
    훈련이 중단되는 문제들이 반복되면서
    전처리의 중요성을 실감하게 되었다.

     

    우선 결측치를 처리해야 했다.
    Yahoo Finance에서 받아온 데이터에는
    주말과 공휴일 같은 비거래 구간에서
    빈 값이 생기는 경우가 있었다.
    나는 dropna()를 사용해
    비어 있는 셀을 제거했고
    필요한 경우에는 이전 값으로 채웠다.

     

    또한 나는 데이터의 유형을 점검했다.
    문자형으로 되어 있던 날짜를
    datetime 형식으로 변환하고
    지표 간 연산이 가능하도록
    float 타입으로 통일했다.

     

    그 다음 단계에서는
    추가적인 파생 지표를 생성했다.
    이동평균선, 변동성 지수, 거래량 변화율 등
    시장 움직임을 설명하는 변수들을
    직접 만들기 시작했다.

     

    이러한 파생 변수들이
    모델의 판단력을 강화하는 열쇠가 된다는 사실을
    실험을 통해 느꼈기 때문이다.

     

    초기에 나는 단순히 주가만 입력했지만
    그러면 모델은 예측 패턴을 찾지 못했다.
    반면 파생 지표를 추가하자
    모델의 예측 흐름이 눈에 띄게 안정되었다.

     

    전처리 과정은 기술보다
    데이터의 의미를 이해하는 사고력이 중요한 과정이었다.
    그리고 비전공자인 나에게
    데이터 전처리는
    AI 실험의 기초 체력을 쌓는 단계가 되었다.


    3. IT 비전공자 블로그 머신러닝 모델 설계와 학습

    키워드 머신러닝 모델, 예측 학습, 알고리즘 선택

     

    전처리가 끝난 후
    드디어 머신러닝 모델을 설계하는 단계에 도달했다.
    이 단계는 AI 실험의 중심이었고
    수많은 시행착오가 발생했던 과정이기도 했다.

     

    비전공자인 나는
    어떤 모델을 선택해야 할지
    처음에는 매우 혼란스러웠다.
    회귀 분석 모델이 좋은지
    트리 기반 모델이 좋은지
    정답을 알 수 없었기 때문이다.

     

    그래서 나는 가장 단순한
    Linear Regression 모델로 시작했다.
    이는 입력값과 출력값의 관계를
    직선으로 설명하는 기본 모델이었다.
    처음에는 이 방식이 너무 단순해 보였지만
    데이터의 기본 구조를 이해하기에는
    가장 좋은 시작점이었다.

     

    훈련을 위해 다음과 같은 코드를 사용했다.(java)

     

    from sklearn.linear_model import LinearRegression
    model = LinearRegression()
    model.fit(X_train, y_train)

     

    예측 결과를 시각화해보니
    일부 구간에서는 선형 관계가 유지되지만
    변동성이 큰 구간에서는
    예측이 크게 흔들렸다.

     

    그래서 다음 단계로
    Decision Tree 모델을 적용해 보았다.
    트리 기반 모델은 비선형 패턴에 강했기 때문에
    변동성이 큰 금융 데이터에
    더 잘 맞는 경우가 있었다.

     

    그러나 트리 모델은
    과적합이 쉽게 발생하는 단점이 있었다.
    훈련 데이터에 너무 맞춰져
    새로운 데이터를 예측할 때
    정확도가 떨어지는 문제였다.

     

    이 문제를 해결하기 위해
    나는 훈련용 데이터와 테스트용 데이터를
    명확히 구분하고
    교차 검증을 수행했다.

     

    모델의 예측력은 완벽하지 않았지만
    이 과정을 통해
    알고리즘 선택과 데이터 성격의 관계
    깊이 이해할 수 있었다.

     

    머신러닝 모델을 고르는 일은
    정답을 찾는 과정이 아니라
    데이터의 패턴을 가장 잘 설명하는 도구를
    탐색하는 과정
    이라는 사실을
    직접 실험하며 깨닫게 되었다.


    4. IT 비전공자 블로그 모델 평가와 성능 개선 단계

    키워드 모델 평가, 백테스트, 성능 개선

     

    머신러닝 모델을 생성한 뒤
    가장 중요한 단계는
    모델의 성능을 평가하는 과정이었다.
    이 단계에서 모델이 실제 데이터 흐름을
    정확히 따라가고 있는지 확인해야 했다.

     

    비전공자인 나는
    처음에 단순히 예측값과 실제값을 비교하는 정도로
    평가가 끝나는 줄 알았다.
    그러나 실험을 반복할수록
    평가의 깊이가 훨씬 더 중요하다는 사실을 알게 되었다.

     

    나는 먼저 MAE(평균 절대 오차)와
    RMSE(평균 제곱근 오차)를 이용해
    예측과 실제의 차이를 계산했다.
    이 지표들은 모델이
    데이터를 얼마나 정확히 예측하고 있는지
    수치로 보여주는 기준이었다.

     

    다음으로 백테스트(Backtesting)를 실행했다.
    백테스트는 과거 데이터를 사용해
    설정한 전략이 실제로 어떤 성과를 냈을지를
    검증하는 방식이었다.

     

    예측값이 실제값보다 높을 때 매수하고
    낮을 때 매도하는 방식으로
    가상의 매매 전략을 만들어
    수익률 변화를 확인했다.

     

    백테스트 결과는
    항상 긍정적이지 않았다.
    예측 정확도가 불안정할 때는
    수익률이 오히려 감소하는 경우도 있었고
    거래 비용을 고려하면
    실제 수익은 없는 경우도 있었다.

     

    그러나 이러한 결과는
    실패가 아니라 모델 개선의 방향을 찾는 과정이었다.

     

    나는 변수의 개수를 변경하거나
    데이터의 기간을 조정하며
    모델이 어떤 상황에서 안정적이고
    어떤 상황에서 흔들리는지를 파악했다.

     

    이 과정을 통해
    AI 모델을 만든다는 것은
    완성형 도구를 만드는 것이 아니라
    지속적으로 성능을 개선하는 순환 구조임을 깨달았다.
    AI 자동매매 모델은
    한 번 만들고 끝나는 작업이 아니었다.
    혼자 실험하며 얻은 이 깨달음은
    비전공자인 나에게 매우 큰 배움이었다.


    결론 : 데이터에서 발견한 비전공자의 성장 경로

    키워드 AI 실험, 데이터 학습, 비전공자 성장

     

    데이터를 수집하고
    전처리를 거치고
    모델을 만들고
    백테스트를 수행하는 전 과정을
    천천히 반복하면서
    나는 비전공자로서의 한계를
    조금씩 넘어설 수 있었다.

     

    AI 학습 과정에서 가장 중요한 것은
    기술이 아니라 데이터를 바라보는 관점이었다.
    수집한 데이터가 어떤 의미를 가지고 있고
    그 의미를 어떤 방식으로 해석해야
    모델이 정확한 판단을 할 수 있는지를
    스스로 생각하는 과정이
    학습의 핵심이었다.

     

    나는 이 실험을 통해
    AI는 결코 특정 전공자만의 기술이 아니라
    시도하고 실험하는 사람 모두에게 열려 있는 도구라는 사실을 확인했다.
    특히 50대의 비전공자인 나에게
    AI 실험 과정은
    기술을 배우는 일이 아니라
    사고 방식을 확장하는 경험이었다.

     

    앞으로 나는 더 많은 데이터를 정리하고
    더 다양한 모델을 실험하며
    AI 자동매매를 한 단계씩 확장해 나갈 것이다.
    이번 여정은
    데이터 수집부터 모델 훈련까지 이어진
    작지만 확실한 성장의 기록이었다.