[플레이데이터 SK네트웍스 Family AI 캠프 6기] 9주차 회고

Yunazz·2024년 11월 26일
0

🗓️기간

24.11.18 - 24.11.22

👍Liked

이번 주부터 자연어 처리 수업이 시작되었다. 자연어 처리는 최근 AI 분야에서 가장 중요한 주제 중 하나로, 앞으로 머신러닝, 딥러닝, AI의 다양한 분야에 걸쳐 필수적인 부분이기에 기대와 부담이 동시에 있었다. 처음엔 역시 쉽지 않았지만, 어느 순간부터 개념의 틀이 잡히고 점차 이해가 확장되기 시작했던 것 같다.

📚 Learned

1. 파이썬 정규식

  • re 라이브러리를 사용.

  • grouping - 패턴내 하위 패턴 만들기

    txt = "tel) 010-1234-0909"
    # 전화번호
    p = re.compile(r"(0\d{1,2})-(\d{3,4})-(\d{4})")
    # (1번하위그룹)-(2번하위그룹)-(3번하위그룹)
    
    m = p.search(txt)
    if m is not None:
        print(m.group(0)) # 0: 전체 (default)
        print("지역번호:", m.group(1))
        print("국번:", m.group(2))
        print("번호:", m.group(3))
    
  • Greedy matching

    • 주어진 패턴에 만족하는 문자열을 최대한 넓게(길게) 잡아 찾는다.
  • Non-Greedy(Lazy) matching

    • 주어진 패턴에 만족하는 문자열을 최초의 일치하는 위치까지 찾는다
    • 개수를 나타내는 메타문자(수량자)에 ?를 붙인다.
  • 전방탐색 - 매칭될 문자가 앞에 있는 경우

    • 긍정: \d(?=abc): 숫자 뒤에 abc가 오는 패턴을 찾고 숫자만 매칭한다.
    • 부정: \d(?!abc): 숫자 뒤에 abc가 오지 않는 패턴을 찾고 숫자만 매칭한다.
  • 후방탐색 - 매칭될 문자가 뒤에 있는 경우

    • 긍정: (?<=패턴)%%%
    • 부정: (?<!패턴)%%%

2. NLP(Natural Language Processing): 자연어 처리

전체적인 process 정리

① 데이터 수집: 웹스캐핑, API, 데이터셋 다운로드(Kaggle 등)을 통해 데이터 수집 가능
② 데이터 전처리
- 텍스트 전처리: 불필요한 점제거, HTML태그제거, 숫자제거, 소문자화
- 토큰화: (엉어: NLTK, 한국어: KoNLPy 주요라이브러리가 있다.) -> sbword 토크나이저
- 불용어 제거: 조사제, 접미사, 접속사, 대명사 등
- 어간 추출, 표제어 추출 -> 원형복원(= 데이터의 일관성, 어휘수 감소, 모델 일반화, 연산 효율성을 높여주려고 진행함) : stemming, lemmatization

③ 특성추출

  • BoW(고전적 방식): 단어가 나오는 횟수기반 표현 방식 중 하나.
  • Word 임베: 단어를 고정/동적 vector로 표현함
    - 최근에는 Transformer 기반 모델(BERT, GPT)

④ 데이터분할
- 훈련
- 검증
- 테스트
⑤ 모델 선택 + 모델 학습
⑥ 평가 및 검증 : 평가지표 선택 -> 모델 검증, 조정
⑦ 모델 개선: 오버피팅 방지 (how? 정규화, 드롭아웃), 하이퍼파라미터 튜닝, 특성 엔지니어링
⑧ 테스트 및 배포
- 최종테스트: 테스트 데이터로 최종 모델 성능
- 모델 배포

🚧Lacked

자연어 처리에 대한 기초 개념이 전혀 없는 상태로 시작했기 때문에 모든 것이 새로웠고, 어렵게 느껴졌다. 복습도 중요하지만, 기본적인 키워드나 개념을 예습해 두면 수업 이해도가 더 높아질 것 같다.

🎯Longed For

앞으로 학습 시, 복습과 예습 시간(주요 키워드 미리 찾아보기)을 적절히 분배해 수업 준비를 탄탄히 해야겠다. 수업 시간에 개념을 확실히 이해하는 것을 목표로 하여, 학습 효과를 높이고 싶다.

profile
웹개발(프론트엔드,백엔드)

1개의 댓글

comment-user-thumbnail
2024년 11월 27일

필기도 너무 꼼꼼하게 잘 남기셨는데요!!
지금처럼 수업 내용 필기, 회고 통한 복습 병행하시면 처음 배우는 자연어 처리 파트 개념 잡아가신 것처럼 LLM, 파인튜닝 수업에도 문제 없으실 것 같아요 😉😉
지금처럼 복습하시는 것도 쉬운 일이 아닌데 예습까지 도전하신다니! 도서랑 인프런 강의도 꾸준히 병행하시길 추천드립니닷 :)

답글 달기