SK네트웍스 Family AI 캠프 1기 12주차 회고
SK Networks AI Camp
Weekly 회고 - 12주차
포스트를 읽기 전에..
이 포스트는 SK네트웍스 Family AI 캠프를 다니면서 느낀 개인적인 생각을 정리한 포스트입니다.
배운 내용이나 스킬셋에 대한 설명은 별도로 작성하지 않았기 때문에, 그에 대한 정보는 다른 포스트를 참고해주세요!
Liked
안녕하세요! SK Networks Family AI 캠프 12주차 회고입니다.
이번 주에 좋았던 점은 AWS를 이용한 CI/CD 설정을 마무리하고, 본격적인 LLM 강의에 돌입했다는 것입니다.
AWS 설정을 마무리한 것도 좋지만 LLM을 공부하는 것도 계속 기대했던 일이기 때문에 좋았던 점에 같이 작성해보았습니다. 이제 막 LLM을 시작해서 아직 어려운 내용은 배우진 않았지만, 방심하다가 중요한 내용을 놓치지 않도록 주의해야겠습니다!
Learned
이번 주에는 LLM의 기초라고 할 수 있는 nltk 모듈의 sent_tokenize와 word_tokenize의 사용법에 대해 배웠습니다.
NLTK(Natural Language ToolKit)는 자연어 처리 라이브러리로, 텍스트를 분석하고 처리하는 데에 매우 유용합니다.
sent_tokenize
sent_tokenize
함수는 텍스트를 문장 단위로 분할합니다.
즉, 긴 텍스트를 여러 개의 개별 문장으로 나눕니다.
이 함수는 문장 경계를 인식하고 이를 기준으로 텍스트를 분할합니다.
사용 예시
1
2
3
4
5
from nltk.tokenize import sent_tokenize
text = "Hello there. How are you? I hope you're doing well."
sentences = sent_tokenize(text)
print(sentences)
위와 같이 코드를 입력하고 실행하면 아래와 같은 출력을 확인할 수 있습니다.
1
['Hello there', 'How are you?', "I hope you're doing well."]
word_tokenize
word_tokenize
함수는 텍스트를 단어 단위로 분할합니다.
이 함수는 문장에서 단어와 구두점을 인식하고 이를 기준으로 텍스트를 분할합니다.
사용 예시
1
2
3
4
5
from nltk.tokenize import word_tokenize
text = "Hello there. How are you?"
words = word_tokenize(text)
print(words)
위와 같이 코드를 입력하고 실행하면 아래와 같은 출력을 확인할 수 있습니다.
1
['Hello', 'there', '.', 'How', 'are', 'you', '?']
결 론
-
sent_tokenize
- 텍스트를 문장 단위로 분할하는 함수입니다.
- 문장 경계를 인식하여 텍스트를 나눕니다.
-
word_tokenize
- 텍스트를 단어 단위로 분할하는 함수입니다.
- 단어와 구두점을 인식하여 텍스트를 나눕니다.
그리고 한 가지 더 배운 내용은 Rule-based Chatbot을 만드는 방법입니다.
Rule-based Chatbot은 미리 정의된 규칙과 패턴에 따라 사용자 입력을 처리하고 응답하는 시스템입니다. 이러한 챗봇은 자연어 처리 기술을 사용하 텍스트를 분석하고 이해하며, 이에 기반하여 적절한 답변을 생성합니다.
이번에는 아래와 같은 간단한 구조로 이루어진 챗봇을 만들어보았습니다.
1
2
3
4
5
fixedResponseList = {
"hi": "안녕! 오늘은 무엇을 도와줄까 ?",
"hello": "응 안녕! 무슨 일이야 ?",
"bye": "잘가!",
}
위 딕셔너리의 왼쪽과 같이 입력하게 되면, 오른쪽과 같이 대답을 해주는 구조입니다.
위의 챗봇 구조는 가장 간단한 구조이고, 여기에 복잡한 로직을 적용하게 되면 보다 복잡한 대답을 처리할 수 있는 챗봇을 만들 수 있습니다.
Lacked
제가 느낀 부족한 점은 LLM에 대한 지식 부족입니다.
캠프에 들어오기 전에 컴퓨터 비전은 공부해보았지만 자연어 처리는 공부해본 적이 없었기 때문입니다. 무언가 모르는 내용이 있을 땐 혼자 공부해서 채워나갔는데 한번도 공부해본 적이 없다보니까 어떤 식으로 공부를 시작해야될지 모르겠습니다.
책으로 공부하는 것보단 코드를 쓰면서 공부하는 타입이다보니 무언가 만들고자 하는 목표가 있으면 좋을 것 같은데, 스스로 어느정도까지 구현할 수 있을 지 모르니까 목표를 잡기도 애매한 것 같습니다.
일단 강의 흐름을 따라서 공부해보다가 어느정도 제 한계를 알게되면 그 한계에 맞는 목표를 잡고 프로젝트를 진행해보며 부족한 부분을 채워야될 것 같습니다.
Longed for
스스로에게 바라는 점은 휴가 기간동안은 공부도 하긴해야겠지만 너무 공부에 집착하지 않고 휴식에도 집중해보자 라는 것입니다.
캠프를 시작한 이후에 아무것도 안하면 무언가 뒤쳐지는 것 같고, 불안한 생각이 들어서 쉬는 날에도 공부를 조금씩이라도 해왔던 것 같습니다. 그러다보니 체력적으로나 정신적으로 많이 피곤해져서 항상 피곤하다는 생각이 들고 몸도 잘 회복되지 않는 것을 느꼈습니다.
어쩌다보니 생긴 휴가이지만, 어차피 쉬게 되었으니 며칠정도는 아무 생각없이 푹 쉬려고 합니다!
이 글을 읽는 여러분도 열심히 노력하는 사이사이에 휴식을 꼭 챙기시길 바랍니다. 푹 쉬고 다음에 만나요~