강화학습 5

[Python] 머신러닝 패키지 및 공부자료

1. 머신러닝 패키지 사용 이유? - 데이터 애널리스트의 경우 'Tableau', 'Knime', 'Spotfire' 등과 같은 데이터 분석을 사용하다가 더 정교하게 모델의 구조나 하이퍼파라미터를 바꿔가면서 실험하고 싶을 때 사용한다. - 데이터 사이언티스트나 리서처가 개발한 모델의 성능 비교가 가능한 '벤치마크'를 얻거나 빠른 시간 내에 대략의 인사이트 도출을 위해 패키지를 사용한다. 2. 머신러닝 패키지 종류 1. 사이킷런(Scikit-learn) - 강화학습을 제외한 지도학습, 비지도학습을 사이킷런을 이용해 손쉽게 사용할 수 있다. 알고리즘뿐 아니라 데이터셋을 나눠 주는 함수, 성능 평가 지표 등 다양한 함수가 구현돼 있을 뿐 아니라 '넘파이', '사이파이' 등과 호환이 잘돼 활용도가 높다. 2. ..

[인공지능] 강화학습 기법 - 종류와 해당 알고리즘 정리

1. 강화학습 기법이란? - 강화학습 기법은 환경과 상호작용해 얻은 정보를 바탕으로 에이전트의 모델을 업데이트하고, 그 모델을 사용해 에이전트의 정책을 개선하는 것이다. 이후 에이전트는 개선한 정책을 사용하거나 다른 정책을 사용해 환경과 상호작용한다. 환경에서 행동을 취하면 '현재 상태', '행동', '다음 상태'의 상태 전이 정보와 '보상'을 데이터로 얻는다. 그다음은 얻은 데이터를 기반으로 에이전트 내의 모델을 업데이트 한다. 이 모델은 모델기반 강화학습에서 환경의 작동 원리가 될 것이고, 모델프리 강화학습에서는 가치함수나 몬테카를로 방식으로 얻은 보상의 합이 될 것이다. 이렇게 얻은 정보를 처리해 모델을 업데이트한 후 모델을 사용해 정책을 개선한다. 끝으로 개선한 정책 또는 다른 정책을 사용해 환경..

[인공지능] 강화학습 프로세스 - 4단계로 정리하기

1. 강화학습 프로세스의 단계 1. 문제 파악하기 2. 강화학습 문제로 정의하기 3. 강화학습 기법 선택 및 에이전트 학습하기 4. 강화학습 에이전트 성능 평가 및 배포하기 2. 문제 파악하기 - 강화학습 프로젝트에서 필수적이고 중요한 단계이다. 일반적으로 '제어 또는 행동을 찾는 문제인가?', '최적의 행동이 무엇인지 정의할 수 있는 평가 지표가 있는가?'라는 두 질문에 '그렇다'라면 강화학습을 시도해 볼 만한 문제라고 간주한다. 강화학습 기법은 문제를 주로 마르코프 결정 과정으로 정의한다. 마르코프 결정 과정은 '가장 중요한 성질은 새로운 상태가 현재 상태와 행동에만 의존한다'는 것이다. 이전 상태와 이전 행동은 독립적이어야만 마르코프 결정 과정이라 할 수 있다. 또한 마르코프 결정 과정에는 상태와 ..

[인공지능] 강화학습 개념 정리 (with 마르코프 결정 과정, 탐색-이용 트레이드오프)

1. 강화학습이란? - 강화학습 문제는 기본적으로 '환경', '에이전트', '상태', '행동', '보상'이라는 요소로 이뤄진다. 강화학습의 목표는 환경 안에 있는 에이전트가 환경과 상호작용을 하면서 최적의 의사결정을 하는 것이다. 에이전트와 환경 간의 상호작용은 상태, 행동, 보상을 주고받음으로써 이뤄진다. 에이전트는 환경에게 행동을 제공하고, 환경은 에이전트에게 상태와 보상을 제공하는 방식이다. 에이전트의 행동을 받아들인 환경은 에이전트에게 새로운 상태와 보상을 제공한다. 상태는 에이전트가 처한 상황을 나타낸다. 에이전트가 행동을 취해 현재 상태에서 다음 상태로 바뀌는 것을 '상태 전이'라고 한다. - 보상은 에이전트의 행동을 평가할 수 있는 지표이다. 상태, 행동, 보상은 강화학습 문제를 정의하는 주..

빅데이터와 머신러닝 (지도학습, 비지도학습, 강화학습)

1. 빅데이터 직종별 머신러닝의 중요도 1. 데이터 사이언티스트, 데이터 리서처 - 모델을 만드는 것이 주업무인 데이터 사이언티스트와 리서처는 머신러닝 모델을 만들고 발전시키는 데 많은 시간을 할애한다. 따라서 머신러닝 기법과 모델 구축 알고리즘에 대한 지식은 필수다. 또한 머신러닝 프로세스 지식도 갖추고 있어야 한다. 해당 지식이 없으면 좋은 모델을 만들기 어렵고, 새로운 알고리즘을 구성해 실제로 구현할 수 있는 프로그래밍 실력을 갖췄더라도 모델 구축을 둘러싼 전반적인 흐름과 논리를 이해하거나 전개하지 못하게 된다. 2. 데이터 애널리스트 - 데이터 애널리스트는 주로 애널리틱스 도구나 머신러닝 패키지에 내장된 몇 개의 기법 중 하나를 선택해 모델을 만들게 된다. 따라서 모델을 만드는 알고리즘의 내부 작..