1.機械学習と深い学習

9130 ワード

人工知能?機械学習...?深く走る...?


  • 人工知能:コンピュータシステムで人類の学習能力、推論能力、知覚能力、自然言語理解能力などを実現する技術を指す.
  • 機械学習


    1.機械学習の概要

  • データを分類して分析し、収集したデータによって学習し、情報に基づいて決定する.
  • 2.機械学習例)


    機械学習のアルゴリズムの例は,人工知能caroを例に,聴衆が好む音楽を収集して学習することにより,類似聴衆のデータを関連付け,音楽を推奨する機械学習の例とすることができる.

    -ショパンの曲を学び、似たような曲を作る-



    -卓球のやり方を学び卓球をするロボット-



    深く勉強する.


    1.深さ学習の概要


    深さ学習は機械学習を利用する方法であり,学習過程で人工ニューラルネットワークを用いて大量のデータから得られた規則を独立に分離し訓練する.

    2.神経網?


    人間の脳は物事を処理する仕事の中で過程を行っている.
    各ニューロンは他のニューロンからの入力を受け、ニューロンに存在する入力の効果はスナップショット重み付けによって制御される.
    -人間のニューラルネットワーク

    -深さ学習の深さ階層-

    機械学習の種類


    1.指導的な学習

  • 概要
    指導学習は,答えのあるデータを用いてデータを学習する方法である.
    これは,計算機に問題(Feature)と正解(Label)データを学習させ,運用データを分類またはフィッティングさせるアルゴリズムである.
  • 2.指導学習なし

  • 概要
    入力データには結果値(Label)は含まれておらず,システムの自主学習を訓練する学習方法である.
    たとえば、購入モデルに基づいて顧客をグループ化(クラスタ化)し、データセンターポイント値を利用します.
  • 3.強化学習

  • 概要
    コンピューターの行為によって「補償」を与えて学習訓練を行うという意味だ.例えば、子犬を見ると、手を伸ばしたときにおやつを食べさせると、同じ行為の奨励を何度も学び、学習を強化するように繰り返しの行為を実行します.
  • 機械学習実習


    1.実習環境

  • アナコンダ
  • tensorflow
  • keras
  • Gensim
  • Scikit-learn
  • NLTK
  • KoNLPy
  • Pandas
  • 2.ライブラリのインストール

    # 텐서플로우와 keras는 서로 버전연관성을 갖고있기에 버전에 주의하자
    pip install tensorflow==2.3.0
    # tensorflow(텐서플로우)는 구글이 2015년에 공개한 머신 러닝 오픈소스 라이브러리이다. 머신 러닝과 딥 러닝을 직관적이고 손쉽게 할 수 있도록 설계되었다.
    pip install keras==2.4
    # Keras(케라스)는 딥 러닝 프레임워크인 텐서플로우에 대한 추상화 된 API를 제공한다. 케라스는 백엔드로 텐서플로우를 사용하며, 좀 더 쉽게 딥 러닝을 사용할 수 있게 해준다. 텐서플로우 코드를 훨씬 간단하게 작성할 수 있다.
    pip install gensim
    # Gensim(젠심)은 머신 러닝을 사용하여 토픽 모델링과 자연어 처리 등을 수행할 수 있게 해주는 오픈 소스 라이브러리이다
    pip install scikit-learn
    # scikit-learn(사이킨런)은 파이썬의 머신러닝 라이브러리중 하나이다. 다양한 머신 러닝 모듈을 불러올 수 있으며, 여러 실습을 할 수 있는 데이터를 제공하고있다.
    pip install nltk
    # NLTK(엔엘티케이)는 자연어 처리를 위한 파이썬 패키지이다.
    # NLTK의 기능을 정확하게 사용하기 위해서는 NLTK Data라는 여러 데이터들을 추가적으로 설치해야한다. 이를 위해서는 파이썬 코드 내에서 import nltk 이후에 nltk.download()라는 코드를 수행하여 설치
    pip install konlpy
    # KoNLPy(코엔엘파이)는 한국어 자연어 처리를 위한 형태소 분석기 패키지이다
    pip install pandas
    # 데이터를 분석하기 위한 필수 패키지인 Pandas(판다스)는 파이썬을 이용한 데이터 분석과 같은 작업에서 필수 라이브러리로 알려져있다. Pandas실습은 3번 chapter 실습에서 진행해본다
    
    # 버전을 잘못설치하여 에러가 발생하는경우 아래와 같이 해결하자
    pip uninstall keras -y
    pip uninstall keras-nightly -y
    pip uninstall keras-Preprocessing -y
    pip uninstall keras-vis -y
    pip uninstall tensorflow -y
    
    pip install tensorflow==2.3.0
    pip install keras==2.4

    3.実習


    1.パンダ
    Pandasは3種類のデータ構造を使用
    1.シリーズ2.データフレーム3.パネル

    <シリーズクラス>


    1次元配列の値(values)に各値に対応するインデックスを付与できる構造を有する.
    import pandas as pd
    sr = pd.Series([20000, 50000, 30000],index=["볼펜", "만년필", "책"])
    # 이를이용하여 다양한 데이터 접근방식을 이용할 수 있다.
    print(sr) 
    # 결과값: 볼펜 20000 만년필 50000 책 30000
    print (sr[:2])
    # 결과값: 볼펜 20000 만년필 50000

    <データフレームクラス>


    データフレームは、2 Dリストをパラメータとして渡します.2 Dなので、行方向インデックス(index)と列方向インデックス(column)があります.すなわち、行と列を持つ資料構造です.シリーズがインデックス(index)と値(values)で構成されている場合、データフレームはカラム(columns)に追加され、カラム(columns)、インデックス(index)、値(values)で構成されます.
    import pandas as pd
    values = [[10, 24, 30], [24, 45, 16], [17, 28, 19]]
    index = ['1', '2', '3']
    columns = ['로또1', '로또2', '로또3']
    
    sf = pd.DataFrame(values, index=index, columns=columns)
    print(sf)
    
    # 결과 값       
    로또1  로또2  로또3
    1    10  24  30
    2    24  45  16
    3  17  28  19