https://arca.live/b/yandere/97379715?target=all&keyword=%EA%B0%9C%EB%B0%9C+%EC%9D%BC%EC%A7%80&p=1


그러니까, 지난시간. 나는 AI 모델 구축까지 한 걸로 기억한다.
그래서 학습까지 시켜 봤거든?


평가까지 시켜 봄ㅇㅇ

이렇게 99%의 정확도를 보이는 것을 볼 수 있었음. 근데...


이새끼 왜 이럼?

이 때 멘탈이 나가서 얀순 만들기를 그만 뒀다.


하지만 뭐. 시작한건 끝내야겠지? 그래서 최근에 다시 프로젝트를 재개했었고, 우여곡절을 겪은 끝에야 성공 비스무리 한 것을 할 수 있었다.


나는 실패의 원인을 3가지로 분석했다.

1. 데이터 전처리의 실패

2. 모델 구성의 무지

3. 파일 분리로 인한 스파게티 코드


1번 2번은 내가 처음부터 끝까지 짜고 싶다는 욕심에서 나온 오만함이었고, 3번의 경우 그냥 내 코딩실력 부족이겠지.


그래서, 변경한 사항은 다음과 같다.
개발 환경 변경(VSCode -> Colab)

형태소 변환기 변경(mecab -> Okt)

17000줄 가량의 데이터를 2000줄로 축소.

그리고 서적을 참고하는거. <- 이게 가장 크다고 봄.


이미 성공한 코드를 바탕으로 내게 적용하면 되는 거니까.


과정은 이전이랑 같아.

데이터 전처리 -> 모델 구축 -> 학습 -> 예측(사용)


본격적으로 설명할게.


리스트 생성해서 Q, A열에 있는 2000줄의 데이터들을 뽑고,정규식으로 1차 전처리.



형태소 분리 + 토큰 추가 해 주고


모델은 시퀀스 투 시퀀스 썼음.


여기서 원-핫 인코딩 해줌.




이렇게 .fit으로 학습을 시켜준다.

그러면


이렇게 간지나는 화면이 뜸.


이개 학습 과정도 살펴볼 수 있도록 책에 나와있더라고?

이런식으로 학습 초반에는 이상한 말만 함.

하지만 학습이 진행되고 나면

이렇게  그럴싸한 말도 할줄 알게 됨.


근데 여기서 계속 메모리가 초과되더라.

Colab에서 메모리가 초과되면 런타임이 끊어짐(= 처음부터 다시 코드를 돌려야 함.)


그래서 데이터 전체를 학습시키지 않고 질문, 답의 18글자만 학습시킴.


아무튼 세상 어딘가에 있을 얀순이에게 기도하며 학습시킨 결과, 성공하긴 했음.


이제 챗봇을 만들어 주고


실행시켜 주면,


이렇게 대화할 수 있는 인공지능 얀순이가 완성된다.


근데 거의 퀄리티가 심심이 미만이어서 그냥 폐기하기로 했다.


이런 노잼 글 끝까지 봐줘서 고맙고, 응원해 준 챈럼 있으면 너도 정말 감사하다.

그냥 이런거도 집에서 쉽게 만들 수 있다는걸 보여주고 싶었어.


아무튼 나는 얀순이에게 납치당할 날만을 기다리며 살러 간다.

폐기된 AI 얀순이가 나 잡으로 오겠지?


아무튼 다시 정말 정말 고맙다.