개발자_이훈규
천천히, 빠르게. 개발자의 Repository
개발자_이훈규
전체 방문자
오늘
어제
  • 분류 전체보기 (473)
    • 티스토리 (4)
    • 개발자 뉴스 (2)
    • 소프트웨어 (203)
      • C (7)
      • c++ (25)
      • Objective-C (3)
      • Do it! 반응형 웹디자인 (4)
      • openGL (8)
      • Java (24)
      • Jni (3)
      • Android (9)
      • Wordpress (2)
      • 버그 만난 후 느낀점 (2)
      • Git (3)
      • node js (2)
      • window tablet (1)
      • HTML (3)
      • javascript (3)
      • perl (1)
      • AngularJS (0)
      • JSON (0)
      • Docker (3)
      • python (5)
      • jQuery (1)
      • MFC (4)
      • cocos studio (6)
      • Golang (1)
      • SQLite3 (0)
      • Spring Boot (8)
      • thymeleaf (0)
      • Django (0)
      • iOS (3)
      • skia (0)
      • VBA (0)
      • PHP (2)
      • Oracle (1)
      • JSP (0)
      • R (0)
    • TCP IP (2)
    • 금융 (0)
      • 금융 Study (0)
      • 금융 Archive (0)
      • 금융 Article (0)
    • 개인 프로젝트 (7)
      • gif 홈페이지 만들기 (0)
      • study app만들기 (0)
      • 크롤러 만들기 (1)
      • 카툰 홈페이지 만들기 (1)
      • 외주 홈페이지 만들기 (3)
      • 웹 홈페이지 만들기 (0)
      • 미디어 서버 만들기 (0)
      • 소개팅 어플 만들기 (0)
      • 인스타그램 풀스택 클론 코딩(인강 노트) (0)
      • 주식 모의거래 만들기 (1)
    • html php mysql (0)
    • node.Js (2)
    • 일상 (2)
    • 빈공간 uml 공부 (0)
    • Ubuntu(linux) (12)
    • 맥OS (10)
      • android 설치하기 (2)
    • Programming quizzes (0)
    • IoT (구 유비쿼터스) (16)
      • 라즈베리 파이 (11)
      • 아두이노 (5)
    • 하드웨어 (5)
      • 아수스 비보탭 노트8 asus vivotap no.. (2)
      • 크레마 카르타 (3)
    • 분석할 문장, 구문, 코드 (0)
    • 키보드 (1)
      • 해피해킹 (1)
    • 코드 라이언 (0)
    • 전자기기 (4)
    • Ted (0)
    • NAS (0)
    • 알고리즘 (0)
    • 연합인포맥스 (0)
    • 이벤트 응모함 (4)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • 에러
  • 코드
  • 소스
  • install
  • C
  • Python
  • error
  • 예제
  • 설명
  • 설치
  • CODE
  • 방법
  • 라즈베리 파이
  • GIT
  • Example
  • ubuntu
  • 우분투
  • Java
  • C++
  • 개발

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
개발자_이훈규

천천히, 빠르게. 개발자의 Repository

카테고리 없음

인공지능 강의를 듣고난 후 정리한 글

2019. 9. 2. 09:13

강의 자료

https://drive.google.com/file/d/1UJMa8BQkq0cHA4NMPt_ylPYqlVdy6uQN/view?usp=sharing https://drive.google.com/file/d/1Nik0RghjAC0Bnn_eUFnBkzyMpz5cHqZ4/view?usp=sharing

 

인공지능 관련 기술

기반 기술 : 데이터 수집, 데이터 정재 등

대용량 데이터 처리가 어렵다. (10G 넘어가는 것들) (tip : 하둡 - 대용량 데이터 쿼리에 용의)

 

인공지능 개념

테스트 기법

1950년 튜링 테스트 계산 기계와 지능 Computing Machinery and Intelligence

1980년, 철학자인 존 설(John Searle)은 '마음, 두뇌 및 프로그램Minds, Brains, and Programs' 이라는 논문을 통해 튜링 테스트를 반박 (중국어 방)

2005년, 미래학자 레이 커즈와일(Ray Kurzweil)은 그의 저서 '특이점이 온다 The Singularity Is Near'를 통해 중국어방 논증을 다음과 같이 반박

 

개념

1950년, 클라우드 섀넌(Claude Shannon)은 일반 체스게임이 10120 번의 이동 횟수를 포함한다는 점을 지적하는 체스게임 기계에 관한 논문을 발표함 (ex 경사하강법)

 

1956년 , 미국 다트머스 대학에 있던 존 매카시 교수가 마빈 민스키와 클로이드 섀넌 등과 공동으로 컨퍼런스를 주최 (여기에서 인공지능이란 단어와 과학 분야가 탄생) (기호주의 : 마빈 민스키(Marvin Minsky)가 인간의 지식을 기호화하고 그 기호 간의 관계를 일일이 입력하여 학습을 시키거나 프로그래밍을 하면 컴퓨터는 인간과 비슷한 입력을 얻었을 때 출력 또한 비슷하게 낼 것이라고 주장함) ( <-> 연결주의 : 뉴런 신경망의 모델을 신봉하는 개념)

 

1958년, 프랭크 로젠블랫(Rosenblatt)은 신경망의 원형인 perceptron을 발표 퍼셉트론은 뉴런 모델을 OR/AND/NOT 함수로 만들어 낼 수 있다는 맥클록-피츠 모델에 기반 맥클록과 피츠가 시작한 인공신경망을 기초로 도널드 헵(Donald Olding Hebb)의 학습 이론을 추가해서 퍼셉트론 이론이 탄생함 즉, 실제로 생물학적 신경망 내에서 반복적인 시그널이 발생할 때 신경세포들은 그 시그널을 기억하는 일종의 학습효과가 있는데, 이를 가중치를 이용하여 인공신경망에 구현함

=> 가중치를 휴리스틱으로 조절함

1960년, 새로운 인공신경망 알고리즘에 대한 논문을 발표함 이 인공신경망을 Adaptive Linear Neuron, 줄여서 아달라인Adaline이라 부름 아달라인은 분류(classification) 보다 발전된 머신러닝 알고리즘인 회귀 (regression), 로지스틱 회귀(logistic regression), SVM(Support Vector Machine)에 대한 알고리즘의 토대를 마련하게 됨 일반적으로 Adaline의 학습은 최소제곱법Least Mean Square을 사용하고, 경사하강법(gradient descent) 을 통해 오차가 최소가 되는 가중치를 찾음

=> 미분을 사용해서 값을 구해야하는데 휴리스틱을 이용해서 가중치를 구함

 

인공지능 구분

강인공지능 ex) 터미네이터

약인공지능 ex) 밥솥

 

실습

개발환경 종류

1) python + vscode

2) python + pycharm

3) google colab (https://colab.research.google.com/notebooks/welcome.ipynb)

 

google colab에서 실습 시작

환경설정

런타임 -> 런타임 유형 변경 -> 하드웨어 가속기 -> GPU 로 변경

도구 -> 환경설정 -> 테마변경, 행 번호 표시 on

 

예제 1. 손글씨 분석 (머신러닝)

0) 전체 코드

https://colab.research.google.com/drive/1ldHLp7Fna7Ow0GfjLO-VhXQB4oWHVXhU

 

예제 2. wordCloud로 word빈도수 시각화하기 (데이터 시각화)

0) 전체 코드

https://colab.research.google.com/drive/18svu7QOOISmrCy6nPeqsm0HL79iI723w

 

예제 3. 타이타닉 승객 리스트를 이용하여 생존자 판별하기 (머신러닝)

0) 전체 코드

https://colab.research.google.com/drive/1UoBDR_djokRG5DyO-0ASqX0mP1eqnM0D

 

 

참고

visual code

단축키 : 커서 위에서 shift + enter

Library install

$ pip install sklearn

 

참고

1) 하드웨어 사양이 안좋을 때, 이곳에서 사용하는것도 좋다 https://colab.research.google.com/notebooks/welcome.ipynb

2) 알고리즘 참고 https://www.kaggle.com/

3) scikit-learn site https://scikit-learn.org/stable/index.html

4) 예제들 - https://scikit-learn.org/stable/auto_examples/index.html 

5) 손글씨를 분류로 하는 것 - https://scikit-learn.org/stable/auto_examples/cluster/plot_kmeans_digits.html#sphx-glr-auto-examples-cluster-plot-kmeans-digits-py

6) dataset 배포 https://archive.ics.uci.edu/ml/index.php

7) 유용한 캡처 프로그램 https://picpick.app/ko/

저작자표시 (새창열림)
    개발자_이훈규
    개발자_이훈규
    혼자 꽁양꽁양 개발하면서 놀아요~ - 노트같은 블로그

    티스토리툴바