lstm 예제 코드

데이터 집합의 입력(X) 및 출력(Y) 요소가 각각 샘플 수, 시간 단계 및 변수 또는 병렬 시간계에 대한 3차원임을 알 수 있습니다. X의 형상은 샘플 수(6), 샘플당 선택된 시간 단계 수(3), 병렬 시간계 또는 피쳐(3)를 포함하여 3차원이다. 우리의 모델은 LSTMs 셀을 구현하여 원래 데이터를 기반으로 비트 코인 가격을 정확하게 예측 할 수있었습니다. 창 길이를 7일에서 3일로 줄임으로써 모델 성능을 향상시킬 수 있습니다. 전체 코드를 조정하여 모델 성능을 최적화할 수 있습니다. 관찰할 수 있듯이 추출된 x 및 y 텐서의 각 행은 length num_steps의 개별 샘플이 되고 행 수는 일괄 처리 길이입니다. 이러한 방식으로 데이터를 구성하면 각 데이터 샘플 내에서 올바른 문장 시퀀스를 유지하면서 배치 데이터를 추출하는 것이 간단합니다. univariate 시간계열과 마찬가지로 이러한 데이터를 입력 및 출력 요소가 있는 샘플로 구성해야 합니다. 나는 „6 단위가 너무 적습니다“이해하지 못합니다. R의 lstm 함수 설명서에서 단위는 „출력 공간의 차원“으로 정의됩니다. 6 개의 열 (6 개월 예측)이있는 출력이 필요하기 때문에 단위 = 6을 정의합니다. 다른 숫자는 내가 원하는 출력을 생성하지 않습니다. 내 해석에 문제가 있습니까? 이전 섹션의 일변량 데이터에 대한 LSTM과 마찬가지로 준비된 샘플의 모양을 먼저 변경해야 합니다.

LSTM은 데이터가 [샘플, 시간 단계, 기능]의 3차원 구조를 가질 것으로 예상하며, 이 경우 모양 변경이 간단하도록 하나의 기능만 있습니다. 그런 다음 각 샘플에 대한 입력 및 출력이 인쇄되어 두 입력 계열각각에 대한 세 가지 시간 단계와 각 샘플에 대한 관련 출력을 보여 주는 것을 볼 수 있습니다. 이 코드는 앞에서 언급한 TensorFlow 자습서의 다음 함수인 read_words, build_vocab 및 file_to_word_ids를 그대로 사용합니다. 이러한 함수를 자세히 설명하지는 않지만 기본적으로 주어진 텍스트 파일을 별도의 단어와 문장 기반 문자(예: 문장 끝 )로 분할합니다. 그런 다음 각 고유 단어가 식별되고 고유한 정수로 할당됩니다. 마지막으로 원본 텍스트 파일은 이러한 고유한 정수 목록으로 변환되어 각 단어가 새 정수 식별자로 대체됩니다.

데이터 집합의 입력(X) 및 출력(Y) 요소가 각각 샘플 수, 시간 단계 및 변수 또는 병렬 시간계에 대한 3차원임을 알 수 있습니다. X의 형상은 샘플 수(6), 샘플당 선택된 시간 단계 수(3), 병렬 시간계 또는 피쳐(3)를 포함하여 3차원이다. 우리의 모델은 LSTMs 셀을 구현하여 원래 데이터를 기반으로 비트 코인 가격을 정확하게 예측 할 수있었습니다. 창 길이를 7일에서 3일로 […] , 2019