인공지능 Ai는 매력적인 기술임에 분명합니다. 이를 파이썬(python)으로 구현해볼 수 있는 방법이 있습니다. 우선은 Ai기술에 대한 이해도가 필요합니다.
흔히 영화나 드라마에서 언급되고 있는 Ai는 모든 것이 갖춰진 것입니다. 다시 말해, 인간의 목표점을 생활에 적용한 모습이라 할 수 있습니다.
이제 파이썬을 익혀가는 과정에서 완성된 Ai에 접근하는 것은 어렵습니다. 또한, 완성된 Ai를 가동하기 위한 시스템을 갖추기도 여러운 것이 사실입니다.
그렇다면 서두에 밝힌 ‘실습’이란 이야기는 거짓말이 되는 것일까요. 그렇지는 않습니다. 여기서 말하는 인공지능은 그 개념에서 차이를 보이고 있습니다.
인공지능 Ai 기술에 대한 접근 방법.
인공지능이란 무엇일까요. 사람의 경우 어떤 작용에 의해 유기적으로 작용하는 지능을 가지고 있습니다. 그 정도의 차이는 있지만 말이죠.
컴퓨터의 경우 뛰어난 기술력임에 분명하지만 지능을 가지고 있지 않습니다. 단순 계산을 담당하는 기계에 불과하기 때문입니다.
어려운 수식을 척척 계산하는 컴퓨터지만, 명령이 없으면 그 어떤 것도 할 수 없습니다. 다시 말해, 스스로 ‘판단’을 할 수 없습니다.
반면, 사람은 어린아이라도 자신의 가치관에 따라 판단할 수 있습니다. 상황을 살피고, 이해하고, 행동을 선택합니다.
‘행동’이라는 포괄적인 것을 세분화 해보도록 하겠습니다.
- 말을 한다.
- 표정을 보인다.
- 걸어간다.
- 뛰어간다.
- 단어를 선택해 글을 쓴다.
- 그림을 그린다.
- 노래를 한다.
- 그 밖의 다양한 표현
행동은 표현하는 모든 것이라 할 수 있습니다. 이 표현을 위해 스스로 정보를 분석하고 판단하게 되는 것이죠. 이 부분을 컴퓨터는 할 수 없습니다.
다시 인공지능으로 돌아오겠습니다. 앞서 언급한 ‘표현’의 부분을 명령없이 수행할 수 있다면 인공적으로 만들어진 지능이라 할 수 있습니다.
- 명령하지 않은 노래를 한다.
- 명령하지 않은 글을 쓴다.
- 명령하지 않은 말을 한다.
- 명령하지 않은 동작을 취한다.
- 그 밖의 다양한 표현.
즉, 명령을 제외한 주어진 정보를 활용해 무엇인가를 표현하는 것입니다. 다시 말해 컴퓨터가 ‘분석’을 하고, 그 분석의 결과를 통해 표현으로 이어지게 됩니다.
🔷 우리는 이 부분을 인공지능이라 부를 수 있습니다.
파이썬(python)을 이용한 인공지능의 접근(실습 키워드)
이제 파이썬을 이용한 인공지능에 대한 접근 방법에 대한 이야기를 이어가겠습니다. 관련 키워드를 통해 짜여진 코드를 가져와 실습할 수 있습니다.
머신러닝(machine learning, 기계학습)
사람이 판단을 하기 위해서는 ‘학습’이 선행되는 경우가 많습니다. 이 학습은 추상적인 개념을 익히는 것일 수도 있습니다. 또는, 실제적인 경험이 바탕이 될 수도 있습니다.
컴퓨터도 인간의 학습을 모방할 수 있다면 결과를 도출할 수 있을 것입니다. 데이터를 분석, 분류하고 새롭게 주어진 데이터를 판단하는 것입니다.
이런 내용이 기계학습(머신러닝, machine learning)이라 할 수 있습니다.
👉 기계학습(머신러닝, machine learning)에 도움되는 내용
머신러닝의 분류
머신러닝은 접근하는 방법에 따라 크게 3가지로 분류할 수 있습니다. ‘지도학습’, ‘준지도학습’, ‘강화학습’이 있습니다.
- 지도학습
- 준지도학습
- 강화학습
※ 자세한 내용은 다음을 기약하겠습니다. 각 개념이 궁금하신 분들은 위에 있는 ‘기계학습에 도움되는 내용’을 참고하시기 바랍니다.
파이썬으로 실습해볼 머신러닝의 키워드, “지도학습”
혹시나 부푼 꿈을 안고 접근했다면 실망하실 수 있습니다. 하지만, 이제 시작하는 단계이니 너무 실망하지 마시길 바랍니다.
지도학습은 과련된 정보를 미리 제공함으로써 새로운 정보를 파악하는 방식입니다. 예를 들면 다음과 같습니다.
어떤 모집단을 준비합니다. 여기서 사람이 분류를 하게 됩니다. 우리가 실습하게 될 것은 iris 품종 분류 모델입니다. 당연히 해당 모집단에는 iris 품종을 분류한 데이터가 있습니다.
이 모집단의 분류 데이터를 컴퓨터에 인식시키게 됩니다. 그리고 새로운 iris의 정보를 컴퓨터에게 전달합니다. 알고리즘을 통해 컴퓨터는 주어진 정보가 어떤 품종인지 결괏값을 알려주게 됩니다.
품종을 나누는 기준은 대략 3가지의 정보가 있습니다. 기준을 학습한 컴퓨터는 높은 확률로 결괏값을 도출할 수 있습니다.
주어지는 학습데이터가 분명하기 때문에 ‘지도학습’이라는 명칭이 붙었으리라 생각됩니다.
지도학습 모델, iris 분류모델 파이썬 코드 어디서 찾을 수 있나요.
가장 좋은 방법은 ‘머신러닝’에 관련된 서적을 구입하는 것입니다. 전반적으로 실습을 할 수 있는 코드와 함께 설명이 되어있습니다.
- 👉 머신러닝 교과서
- 👉 머신러닝, 딥러닝 실전개발 입문
- 해당 책은 쿠팡파트너스의 일환으로 구매시 소정의 수수료를 지급받습니다. 구매하지 않고 구경만 하는 것으로는 어떤 문제도 발생되지 않습니다. 관련 서적으로 참고하시면 좋을 것 같습니다.
다음으로 ‘구글링’을 이용하는 방법이 있습니다. iris 분류 모델의 경우 너무나 유명하기 때문에 학습을 위한 전체코드를 쉽게 찾을 수 있습니다.
좀 더 멋진 인공지능을 실습하고 싶어요.
머신러닝 학습에서 처음으로 접근하게 되는 것이 iris 분류모델입니다. 코드를 보면 간단하지만은 않습니다. 추가적인 학습이 이루어져야 합니다.
하지만, 그 내용은 비교적 간단하다고 할 수 있습니다. 기대를 품은 학생에게 실망을 안겨줄 수도 있습니다. 조금 더 복잡하고 멋진 것을 체험하고 싶다면 ‘딥러닝‘을 추천합니다.
강화학습의 일종으로 언어모델, 이미지모델등이 있습니다. 다만, 해당 내용을 실습할 실력이 부족하다면 한걸음 한걸음이 난관일 수 밖에 없습니다.
‘천리길도 한걸음부터’라는 말이 있듯, 천천히 접근하다보면 딥러닝에 도달할 수 있을 것입니다.
참고, 머신러닝실습에 적합한 파이썬 에디터, 주피터(jupyter)를 추천합니다.
스크립트별 오류와 결괏값을 확인할 수 있으며, 시각적인 인터페이스가 매력적인 에디터입니다.