AI 프로그램과 기존 프로그램의 차이점이 무엇인가요?
포스트 난이도: HOO_Intern
# AI를 접목시킨 프로그램
AI(Artificial Intelligence)라고 부르는 인공지능 프로그램은 기존 프로그램을 대체하거나 기존 프로그램에 접목시켜 AI 프로그램이라고 부르며 사용하는 경우가 많아졌다.
그렇다 보니 종종 Bro들이 인공지능 프로그램과 기존 프로그램이 도대체 어떤 차이점을 가지고 있는지를 궁금해하는 경우가 있다.
물론 프로그래밍을 잘 알고 있는 Bro들의 경우에는 현재의 인공지능 시스템이 어떻게 기존 프로그램에 접목되어 있는지를 이해하고 있지만 프로그래밍을 접하지 않은 다른 분야의 Bro들의 경우에는 당연히 모를 수 있는 부분이다.
특히나 이제는 모든 분야에서 인공지능 프로그램을 실질적으로 활용하는 시점에서 IT 분야가 아니더라도 인공지능 프로그램을 사용하는 경우가 많다.
따라서 답답한 Bro들의 위해서 또는 필자처럼 라테 아재인데 개발자가 뭐하는지 좀처럼 모르는 아재들을 위해서 인공지능 프로그램과 기존 프로그램의 차이를 살펴보도록 하겠다.
참고로 인공지능 프로그램에도 다양한 종류가 있겠지만 필자의 Data science와 Machine learning 관점에서의 인공지능을 접목시킨 프로그램과 기존 프로그램의 차이점에 대해서 이야기를 나눠보려고 한다.
# 데이터 기반 인공지능
우선 HOO_Intern 단계의 포스트이기 때문에 현재 사용하고 있는 인공지능에 대해서부터 간단하게 이야기를 나눠보도록 하겠다.
대중적으로 이미 인공지능이라는 정의나 인공지능에 대해서는 많이 알려져 있다.
하지만 현재 사용하고 있는 인공지능은 완전한 인공지능은 아니다.
학술적인 관점에서 우리 대학원생과 교수님들의 노력으로 연구와 논문 작성이 이루어지면서 새로운 단계의 인공지능이 연구 개발 중이지만 지금 실질적으로 사용하는 인공지능은 데이터 기반 인공지능이다.
우리는 이러한 인공지능에 대한 레벨을 나눠서 부르는데 각기 다른 레벨 기준을 가지고 있기에 데이터 기반 인공지능이라고 이해하면 된다.
참고로 자율주행 자동차에서 부르는 인공지능 레벨과는 전체 인공지능 레벨은 다른 이야기이다.
아무튼, 본론으로 돌아와서 데이터 기반 인공지능이란, 말 그대로 데이터를 넣어줘서 컴퓨터가 마치 사람처럼 생각할 수 있는 환경을 만들어주는 것이다.
한마디로 사람의 뇌와 비교한다면 상대적으로 수동적인 구조를 가지고 있는 셈이다.
개발자가 주어진 기초 자료와 알고리즘을 기반으로 인공지능은 해당 정보들을 활용하여 컴퓨팅 작업, 즉 계산이나 결과를 산출해주는 역할을 수행한다.
여기서 중요한 점은 기초 자료와 알고리즘이 충분한 조건을 가지고 있다면 그다음부터는 인공지능이 해당 정보를 기반으로 최종 결과를 산출해낼 수 있다는 것이다.
심지어 새로운 추가적인 데이터의 수집과 저장 및 관리도 인공지능 프로그램이 할 수 있다.
다만 필자가 말한 수동적인 뇌 구조라는 말은 사람처럼 처음부터 스스로가 깨달아서 하거나, 기존의 정보를 토대로 응용되어 새로운 걸 창조하거나, 자율적인 생각과 행동까지는 할 수 없는 게 현재의 인공지능이다.
그렇다 보니 데이터가 중요하고 조금 벗어난 이야기이지만 4차 산업 시대가 데이터 경제 시대라고 부르는 이유이기도 하다.
자 이제 말이 길어지면 Bro들이 싫어하기에 한마디로 요약하자면, 인공지능 프로그램을 기본적으로 구축하고 기본 세팅을 해주고 이것을 기반으로 인공지능 프로그램이 알아서 결과를 도출하거나 업데이트하는 과정을 머신러닝(Machine Learning)이라고 하는 것이다.
# 기존 프로그램과 인공지능 프로그램의 차이점
그렇다면 기존 프로그램과 인공지능 프로그램의 차이점은 무엇일까?
앞서 이야기한 바와 같이 인공지능에는 다양한 분야와 종료가 있다.
하지만 우선적으로 Bro가 궁금해하는 기존 프로그램에 인공지능 프로그램을 접목시킬 경우 어떠한 차이가 있는지에 대해서 살펴보도록 하자.
우선 기존 프로그램과 인공지능 프로그램의 큰 차이점은 머신러닝(Machine learning)이라는 것이다.
머신러닝 즉, 기계가 학습한다는 의미이고 기본 인공지능 시스템을 구현하고 기초 데이터가 충분하다면 인공지능 프로그램은 알아서 다음 단계로 작업을 수행할 수 있게 된다.
예를 들어, 기존 프로그램은 사람이 일일이 매번 데이터를 추가하고 관리하거나 수정하는 일을 했다면 인공지능 프로그램을 접목시킬 경우 이 과정을 인공지능 프로그램이 하도록 할 수 있다는 것이다.
"에이 이것도 알고리즘화 하면 되잖아요."라고 말할 수도 있는데 인공지능 프로그램은 추가되거나 업데이트되는 데이터의 특이점을 발견하고 이를 개발자에게 알려주는 역할도 할 수 있다.
특이점을 안다는 것은 기존 데이터를 비교 분석하여 어떠한 차이가 있고 어떤 문제가 있는지를 인공지능이 인지할 수 있다는 것이다.
또한 고도화된 인공지능 프로그램의 경우에는 각기 특이점에 대한 해결 방법도 모색하여 이를 스스로가 처리하는 과정까지도 가능한 게 현재의 인공지능 프로그램이다.
완전한 새로운 응용까지는 아니지만 기존에 정보를 기반으로 응용된 결과를 도출해낼 수 있다는 걸 의미한다.
결과적으로 현재 기술에서 아이언맨의 자비스나 프라이데이까지는 충분히 개발이 가능하며, 필자도 심심할 때면 만들곤 한다.
'미국 개발자 > HOOTips' 카테고리의 다른 글
[Q&A] 메타데이터(Metadata)와 데이터(Data)의 차이점 (0) | 2022.03.21 |
---|---|
[Q&A] CS 공부를 어떻게 하는 것이 좋을까요? (2) | 2022.03.15 |
[Q&A] 신입생 CS 전공 미국 유학생이 어떤 걸 준비해야 하나요? (0) | 2022.03.01 |
[Q&A] 미국에서 연구 논문 없이 석사 졸업이 가능한가요? (0) | 2022.02.24 |
[HOO's INFO] 개발자 포트폴리오 작성 방법: 기술 경험 위주로 작성해야 한다 (0) | 2022.02.11 |
댓글