[카테고리:] 생활코딩

  • openai gym cart pole 설정

    openai gym cart pole 설정

    PC를 거실에 설치하고 docker로 tensorflow를 설정했다. docker가 쉽고 간편하여 다 좋은데 그래픽 사용자 인터페이스를 지원하지 않는다. gym을 설정하기 어렵다. 찾다보니 다음 순서로 진행하면 동영상 파일을 만든다. 아직 맛만 보아 뭔지 잘 모르겠으나, 일단 에러없는 화면을 보니 안심된다.

    • pip로 gym 관련 모듈 설치
    • python3-opengl 모듈 설치
    • xvfb 모듈 설치
    • jupyter notebook 설치
    • python에서 wrappers로 실행.

    jupyter notebook을 xvfb-run 아래와 같이 실행한다.

    xvfb-run -s "-screen 0 1400x900x24" jupyter notebook --allow-root

    여기를 웹으로 접속하여 아래 코드를 실행하면 cartPole을 동영상으로 녹화한다.

    import gym
    from gym import wrappers
    
    env = gym.make('CartPole-v1')
    env = wrappers.Monitor(env, "./gym-results-Cart", force=True)
    observation = env.reset()
    for _ in range(1000):
        env.render()
        action = env.action_space.sample()
        observation, reward, done, info = env.step(action)
        if done: break
    env.close()

  • vim으로 non ascii 코드로 입력

    특수문자로 찾아 처리할 때가 있다. 분명 스페이스인데 좀 큰 스페이스..

    327 64779,M CCR1 INRON LINE 버퍼-> 공통버퍼,DATA,삭제
    328 68024,M RH측 ROBOT  차종유,DATA
    329 68025,M RH측 ROBOT 차종 개조차,DATA
    330 68026,M RH측 ROBOT  차종  정상값,DATA
    331 68027,M RH측 ROBOT  차종YD,DATA
    

    해당 위치로 커서를 옮긴 후 :ascii 입력하여 문자 코드를 확인한다. hexa로 3000이다. 이를 찾아 지울려면 코드값을 그대로 입력해야 한다. 여기에서 답을 찾았다.

    요약하면 편집모드에서 ctl+V를 누르고 u를 입력하고 4자리 숫자를 입력한다. u를 입력하지 않으면 최대 255까지 숫자로 인식한다.

  • suspend 후 network 연결 안되는 문제

    우분투를 쓰다보면 절전모드에서 깨어나면 네트웍이 끊어진다. dhcp 문제로 알았는데, 드라이버가 제대로 로드되지 않았나 보다. 여기에 누가 이미 이런 문제를 풀었다. 같은 방법으로 /etc/pm/sleep.d에 스크립트를 만들어 넣었다. 테스트하면 잘 된다.

    root@AMD-1804:/etc/pm/sleep.d# ls -l
    합계 12
    -rwxr-xr-x 1 root root 210  2월  8  2019 10_grub-common
    -rwxr-xr-x 1 root root 672 12월 13  2018 10_unattended-upgrades-hibernate
    -rwxr-xr-x 1 root root 148 11월 24 00:42 refresh-enp2s0
    root@AMD-1804:/etc/pm/sleep.d# ls -l
    합계 12
    -rwxr-xr-x 1 root root 210  2월  8  2019 10_grub-common
    -rwxr-xr-x 1 root root 672 12월 13  2018 10_unattended-upgrades-hibernate
    -rwxr-xr-x 1 root root 148 11월 24 00:42 refresh-enp2s0
    root@AMD-1804:/etc/pm/sleep.d# cat refresh-enp2s0 
    #!/bin/sh
    
    # Refresh enp2s0 after suspend
    # Network card was freezed
    
    case "$1" in
    	resume|thaw)
    		ifdown enps20
    		sleep 10
    		ifup enps20
    		;;
    esac
    root@AMD-1804:/etc/pm/sleep.d# 
    
  • keras로 키워드 분석((5+1)/5)

    정말 간단한 LSTM으로 정확도 80%대까지 올렸다. 23,000개 데이터를 7,000번 학습시겼다. 정확하게 하려면 모든 카테고리 데이터를 동일하게 맞추고, 내부 태그를 정확하게 정리해야 하는데 시간없어 하지 못했다.

    [21:33:28]>cat process | head -100
    로드한 모델 vocab 최대값은 2611
    로드한 모델 vectror 크기는 5
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    Model: "sequential_1"
    _________________________________________________________________
    Layer (type)                 Output Shape              Param #   
    =================================================================
    embedding_1 (Embedding)      (None, 10, 5)             13055     
    _________________________________________________________________
    lstm_1 (LSTM)                (None, 32)                4864      
    _________________________________________________________________
    dropout_1 (Dropout)          (None, 32)                0         
    _________________________________________________________________
    dense_1 (Dense)              (None, 16)                528       
    _________________________________________________________________
    dropout_2 (Dropout)          (None, 16)                0         
    _________________________________________________________________
    dense_2 (Dense)              (None, 9)                 153       
    =================================================================
    Total params: 18,600
    Trainable params: 5,545
    Non-trainable params: 13,055
    _________________________________________________________________
    Train on 18757 samples, validate on 4690 samples
    Epoch 1/1000
     - 5s - loss: 2.1842 - acc: 0.0887 - val_loss: 2.1683 - val_acc: 0.0908
    Epoch 00001: acc improved from -inf to 0.08866, saving model to ./saved_network_weightv2.h5
    Epoch 2/1000
     - 4s - loss: 2.1073 - acc: 0.1674 - val_loss: 2.1181 - val_acc: 0.2066
    Epoch 00002: acc improved from 0.08866 to 0.16735, saving model to ./saved_network_weightv2.h5
    Epoch 3/1000
     - 4s - loss: 2.0133 - acc: 0.2660 - val_loss: 2.0448 - val_acc: 0.2652
    Epoch 02019: acc improved from 0.88084 to 0.88122, saving model to ./saved_network_weightv2.h5
    Epoch 02129: acc improved from 0.88122 to 0.88218, saving model to ./saved_network_weightv2.h5
    Epoch 02190: acc improved from 0.88218 to 0.88292, saving model to ./saved_network_weightv2.h5
    Epoch 02542: acc improved from 0.88292 to 0.88394, saving model to ./saved_network_weightv2.h5
    Epoch 02805: acc improved from 0.88394 to 0.88426, saving model to ./saved_network_weightv2.h5
    Epoch 02928: acc improved from 0.88426 to 0.88474, saving model to ./saved_network_weightv2.h5
    Epoch 03050: acc improved from 0.88474 to 0.88607, saving model to ./saved_network_weightv2.h5
    Epoch 03836: acc improved from 0.88607 to 0.88650, saving model to ./saved_network_weightv2.h5
    Epoch 03940: acc improved from 0.88650 to 0.88762, saving model to ./saved_network_weightv2.h5
    Epoch 04337: acc improved from 0.88762 to 0.88810, saving model to ./saved_network_weightv2.h5
    

    전에 텍스트 0이 인덱스 번호 47번인가 그랬다. 아무래도 이상하여 확이해보니 zero padding에는 0으로 넣었다. 0을 숫자로 처리할지, zero padding 값으로 처리할 지 결정해야 한다. 일단 검증할 경우에는 0을 강제로 입력했다.

    입력한 단어는 ['M', 'YD', '4', 'PIN', 'SHIFT', '1', '전진', '단', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 0.87확율로 [4]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    YD
    1
    [69, 1]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    4
    11
    [69, 1, 11]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    10
    21
    [69, 1, 11, 21]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ST
    0
    [69, 1, 11, 21, 0]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    PIN
    154
    [69, 1, 11, 21, 0, 154]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    후진
    42
    [69, 1, 11, 21, 0, 154, 42]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    단
    13
    [69, 1, 11, 21, 0, 154, 42, 13]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 1, 11, 21, 0, 154, 42, 13, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 1, 11, 21, 0, 154, 42, 13, 0, 0]
    입력한 단어는 ['M', 'YD', '4', '10', 'ST', 'PIN', '후진', '단', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 0.84확율로 [4]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    OTR
    91
    [69, 91]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    랙
    28
    [69, 91, 28]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    10
    21
    [69, 91, 28, 21]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    번방
    121
    [69, 91, 28, 21, 121]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    차종
    6
    [69, 91, 28, 21, 121, 6]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    20
    51
    [69, 91, 28, 21, 121, 6, 51]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    이상
    8
    [69, 91, 28, 21, 121, 6, 51, 8]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 91, 28, 21, 121, 6, 51, 8, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 91, 28, 21, 121, 6, 51, 8, 0, 0]
    입력한 단어는 ['M', 'OTR', '랙', '10', '번방', '차종', '20', '이상', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 1.00확율로 [5]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    70
    36
    [69, 36]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ST
    0
    [69, 36, 0]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    주변
    292
    [69, 36, 0, 292]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    설비
    322
    [69, 36, 0, 292, 322]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    비상
    63
    [69, 36, 0, 292, 322, 63]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    정지
    73
    [69, 36, 0, 292, 322, 63, 73]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 36, 0, 292, 322, 63, 73, 0]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 36, 0, 292, 322, 63, 73, 0, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 36, 0, 292, 322, 63, 73, 0, 0, 0]
    입력한 단어는 ['M', '70', 'ST', '주변', '설비', '비상', '정지', 'ZERO!!', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 1.00확율로 [2]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    보조제어
    리스트에 없는 단어 입력함. 다시 입력하세요
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    보조
    26
    [69, 26]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    제어
    38
    [69, 26, 38]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    GP
    228
    [69, 26, 38, 228]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    동작
    29
    [69, 26, 38, 228, 29]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    선택
    14
    [69, 26, 38, 228, 29, 14]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    16
    448
    [69, 26, 38, 228, 29, 14, 448]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 26, 38, 228, 29, 14, 448, 0]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 26, 38, 228, 29, 14, 448, 0, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 26, 38, 228, 29, 14, 448, 0, 0, 0]
    입력한 단어는 ['M', '보조', '제어', 'GP', '동작', '선택', '16', 'ZERO!!', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 1.00확율로 [0]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    70
    36
    [69, 36]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    RH
    9
    [69, 36, 9]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    피더
    457
    [69, 36, 9, 457]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    전후진
    리스트에 없는 단어 입력함. 다시 입력하세요
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    LS
    75
    [69, 36, 9, 457, 75]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    이상
    8
    [69, 36, 9, 457, 75, 8]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 36, 9, 457, 75, 8, 0]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 36, 9, 457, 75, 8, 0, 0]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 36, 9, 457, 75, 8, 0, 0, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 36, 9, 457, 75, 8, 0, 0, 0, 0]
    입력한 단어는 ['M', '70', 'RH', '피더', 'LS', '이상', 'ZERO!!', 'ZERO!!', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 1.00확율로 [5]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    80
    209
    [69, 209]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    LH
    5
    [69, 209, 5]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    카울
    리스트에 없는 단어 입력함. 다시 입력하세요
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    PIN
    154
    [69, 209, 5, 154]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    LS
    75
    [69, 209, 5, 154, 75]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    이상
    8
    [69, 209, 5, 154, 75, 8]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 209, 5, 154, 75, 8, 0]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 209, 5, 154, 75, 8, 0, 0]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 209, 5, 154, 75, 8, 0, 0, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 209, 5, 154, 75, 8, 0, 0, 0, 0]
    입력한 단어는 ['M', '80', 'LH', 'PIN', 'LS', '이상', 'ZERO!!', 'ZERO!!', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 1.00확율로 [5]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
    1/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    M
    69
    [69]
    2/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    60
    134
    [69, 134]
    3/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    RH
    9
    [69, 134, 9]
    4/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    CAM
    179
    [69, 134, 9, 179]
    5/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    YD
    1
    [69, 134, 9, 179, 1]
    6/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    제품
    50
    [69, 134, 9, 179, 1, 50]
    7/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    감지
    53
    [69, 134, 9, 179, 1, 50, 53]
    8/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    1
    7
    [69, 134, 9, 179, 1, 50, 53, 7]
    9/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    ZERO!!
    zero index는 0
    [69, 134, 9, 179, 1, 50, 53, 7, 0]
    10/10 단어 입력
    끝내려면 END!!를 입력
    마지막까지 0을 채우려면 ZERO!!를 입력
    zero index는 0
    [69, 134, 9, 179, 1, 50, 53, 7, 0, 0]
    입력한 단어는 ['M', '60', 'RH', 'CAM', 'YD', '제품', '감지', '1', 'ZERO!!', 'ZERO!!']
    내 예상은 이번 텍스트가 1.00확율로 [6]임.
    인티저 값은 ['AUX' 'DATA' 'EMER' 'END_A' 'END_B' 'ERROR' 'PROX_INTLK' 'SOL_A' 'SOL_B']
    출력 크기는 9
  • keras로 키워드 분석(5/5)

    간단한 데이터(1,200개)로 태그 분류기를 만들었다. validation을 0.2로 설정하면 val_acc가 0.3에서 움직이지 않는다. 그러나 0.1로 바꾸면 0.99까지 올라가는 마법을 볼수있다. 데이터가 적어 많이 입력하면 어떨지 잘 모르겠다. 똥을 먹으면 똥을 싼다. 똥을 음식으로 바꾸려면 물, 비료도 주고 햇빛도 잘 쬐여야한다. 농사나 손가락 노가다나 별 차이없어 보인다.

    모델을 저장해서, 다시 불러오는 방식으로 바꾸었다. 하도 많이 수정하다 보니 이 방식이 유리하다. 덕분에 디멘전 틀림을 찾았다. 16개 vector를 입력하는 구조에 6개만 입력해도 불만없이 잘? 예측했다. 저장한 모델을 불러오면 여기에서 체크를 한다.