SW 개발

[스터디] 머신러닝 입문 - 01 : 인공지능개요

. . . 2018. 7. 5. 10:20
반응형

본자료는 머리털나고 처음으로 머신러닝을 공부하는 입장에서 정리한 머신러닝 스터디노트입니다.

  • 오픈소스 강의를 들으면서 정리 및 요약한 자료입니다.
  • 제가 이해한 내용을 중심으로 작성했기 때문에 개인적인 의견 및 오류가 있을수있습니다.
  • 원본 강의는 항상 링크를 올립니다. 본강의와 함께 스터디하시는걸 추천드립니다.

머신러닝_기본_스터디 리스트 :

개요

강의자료

[참고자료]

  1. Machine Learning이란?

강의요약

과학다큐 비욘드 요약

  • 인공지능
    • 영어로 artificial intelligence
  • 오래전부터 인류는 인간을 닮은 지능을 가지기 위해서 노력했다.
  • 그동안 잘안됐다.
  • 그래서 인간의 사고방식을 그대로 컴퓨터로 구현해보도록 하였다.

img

  • 머신러닝은 인간이 배우는 방식을 모방
    • 기계에게 많은 나무를 인식시킴.
    • 각 경험들(데이터) 최대한 기계에게 인식시키고 그 사물을 이해하려고 하도록한다.
  • 알파고의 경우..
    • 바둑을 연구했다기보다는 머신러닝의 일반적인 사항을 바둑에 적용하였다.
    • 머신러닝을 연구하고 실제 대회에 나가게 한것이다.
  • 인간은 뇌는 신경세포 (뉴런) 에 의해서 만들어진다.

img

  • 신경세포 : 시냅스
    • 시냅스의 연결이 약하지기도 강해지기도 한다 -> 학습
  • 자율주행의경우.
    • 비오는날 안개낀날 맑은날등의 데이터를 신경망에 훈련시킨다.
    • 그러면 모든 상황에 대응
    • 이처럼 심층신경망은 다양한 상황에 적용가능
    • 주변정보를 수집, 경험을 쌓아가면서 스스로 학습
  • 결국 많은데이터 수집및 활용이 딥러닝의 핵심


  • 지능은 다양한 문제들을 어떻게 해결 할 것인지 배우는 능력
    • 인공지능은 기계가 지능적으로 행동 할 수 있도록 만드는것
  • 인간은 새를 모방하여 비행기를 만들었다.
    • 하지만, 비행기는 날개를 펄럭이지 않고 잘 날라다닌다.
    • 이렇게 생명에서 연감을 얻은후 독자적으로 기계는 발전한다는 것이다.
    • 두뇌를 똑같이 모방하는것과는 다른방식으로 발전한다.
  • 지능의 정의…
    • 특정 규칙으로 답을내는것이 인간과 동일하다고한다면..
    • 기계가 항상 옳은 답을 낸다면 그것은 지능이 있다고 할수있다고 할수있을까?
  • 즉 어떠한 행동이나 결과가 우리가 의도하지 않은것이 나타난다면.. 그것의 어떻게 나타나는지 원리를 설명할수없다면.. 의미없다고 생각될정도라고 한다면? 그것을 이해할수 인정할수있는가?
  • 어린아이가 성장하는 과정이 있듯이 지금은 인공지능도 발전중.. 성공중이다.

별첨 : 참고자료 스크랩

http://sanghyukchun.github.io/57/

Machine Learnig이 하는 일은 주어진 ‘데이터’ X=(x1,x2,x3,…,xn)X=(x1,x2,x3,…,xn)와 각 데이터에 대응하는 실제 ‘현상’ Y=(y1,y2,…,yn)Y=(y1,y2,…,yn)에 대한 ‘관계’ function ff를 찾는 과정과 같다. 정확한 함수 ff를 찾기 위해 Machine Learnig 알고리즘들은 데이터에 대한 가정을 하고, 그 가정에 따라 주어진 데이터를 ‘최대한 잘 설명할 수 있는’, 함수 f′f′을 찾는다. 이때 이런 f′f′을 Hypothesis라고 한다.

img

Why Machine Learning?

Machine Learning은 왜 사용하는 것일까? 만약 우리가 찾고자하는 것이 아주 간단한 함수이고, 머신러닝 기법을 사용하지 않고도 찾을 수 있다면 머신러닝을 꼭 사용할 필요는 없을 것이다. 그러나 만약 찾고자하는 함수가 매우 복잡하고 어렵다면 머신러닝은 아주 유용하게 쓰일 수 있다. 머신러닝 문제는 결국 어떤 상황을 해결하기 위한 문제를 세우고 그 문제를 풀기 위한 모델을 만들기 위해 데이터에 대한 가설을 세우고, 그 가설에 부합하는 알고리즘을 개발하는 과정이다. 따라서 우리가 명시적으로 문제 해결하는 방법을 결정하는 것이 아니라, 그 대신 문제를 해결하는 방법을 알려주고, 문제는 컴퓨터가 풀도록 할 수 있다. 머신러닝을 사용해 아주 많은 문제들을 풀 수 있다. 계속 예시로 든 스팸필터도 있고, 쇼핑 이력을 보고 고객이 어떤 물건을 더 사고 싶어할지 추천하거나 광고를 할 수도 있다. 날씨와 고속도로의 교통상황의 상관관계를 찾을 수도 있다. 즉, Machine Learning Problem의 형태에 맞게 문제를 만들고, 그 문제를 풀기 위한 데이터와 데이터에 대한 가설만 있다면 그 어떤 문제도 해결할 수 있는 것이다.

또한 최근 들어서 Machine Learning이 급부상하고 있는 가장 큰 이유 중 하나는 ‘빅데이터’이다. 과거와는 비교할 수 없을 정도로 데이터가 많아졌는데, 그 데이터에서 사람이 ‘의미’를 일일이 뽑아내기 너무 어렵기 때문이다. 이에 사람이 데이터를 분석하기보다는 기계에게 데이터를 학습시켜 알아서 문제를 판단하게 할 수 있으면 좋겠다라는 needs가 발생하였고, 이에 사람들이 Machine Learning을 많이 요구하게 되었다. 또한 Machine Learning Algorithm은 input data가 많으면 많을수록 성능이 좋아진다. 요즘같은 ‘빅데이터’가 부상하는 시기에 이만큼 적절한 기술도 찾기 힘들 것이다.

반응형