재미있는 수학

Menu

파이썬 rnn 예제

데이터와 같은 사각 파를 만들려면, 우리는 파이썬의 수학 라이브러리에서 사위 함수를 사용합니다 : 라인 42 : 우리는 100,000 교육 예제를 반복하고 있습니다 나는 재발 신경 망을 공부하려고 처음, 나는 뒤에 이론을 배우려고의 실수를했다 LSTM과 GRS와 같은 것들을 먼저. 선형 대수 방정식을보고 몇 좌절 일 후, 나는 파이썬과 딥 러닝의 다음 구절에 일어났다 : 단어의 수는 매개 변수로 남아있다; 여기에 표시된 예제에 50을 사용하므로 네트워크에 50개의 단어를 제공하고 51번째 를 예측하도록 교육합니다. 네트워크를 교육하는 다른 방법은 시퀀스의 각 지점에서 다음 단어를 예측하도록 하는 것입니다. 여기서 사용되는 구현이 반드시 최적(허용되는 최상의 솔루션은 없지만 잘 작동)은 아닙니다! 알고리즘이 이를 복제할 수 있습니까? 가장 먼저 떠오르는 기술은 신경망(NN)입니다. 그러나 전통적인 NN은 불행히도이 작업을 수행 할 수 없습니다. 동영상에서 다음에 올 내용을 예측하고자 하는 예를 들어 보겠습니다. 기존의 신경망은 정확한 결과를 생성하는 데 어려움을 겪을 것입니다. 이 문서에서는 먼저 일반적인 RNN 모델의 핵심 구성 요소를 빠르게 살펴보겠습니다. 그런 다음 파이썬에서 RNN 모델을 처음부터 구현하여 마침내 해결할 문제 문을 설정합니다. RNN널리 텍스트 분석, 이미지 캡션, 감정 분석 및 기계 번역에 사용됩니다. 예를 들어, 영화 리뷰를 사용하여 영화를 본 후 관중이 느끼는 느낌을 이해할 수 있습니다. 이 작업을 자동화하는 것은 영화 회사가 리뷰를 검토, 레이블 지정, 통합 및 분석할 시간이 충분하지 않은 경우에 매우 유용합니다.

기계는 더 높은 수준의 정확도로 작업을 수행 할 수 있습니다. 마지막으로 출력의 손실 $xi$ (손실)은 입력 데이터의 모든 시퀀스에 대한 평균 제곱 오차 함수 (MSE)를 통해이 예제에서 계산됩니다. 아래에 설명될 예제 코드에서는 텍스트 예측을 수행할 예정입니다. Word2Vec 알고리즘의 이전 자습서에서 설명한 것처럼 단어는 의미 있는 단어 벡터를 사용하여 신경망에 입력됩니다. 이 벡터는 단어의 의미의 일부 측면을 캡처하는 방식으로 인코딩됩니다 (의미는 일반적으로 단어가 일반적으로 발견되는 컨텍스트로 해석됩니다). 따라서 아래의 LSTM 네트워크에 입력된 각 단어는 650 길이 벡터가 됩니다. 다음으로, 언롤링된 LSTM 네트워크에 단어 시퀀스를 입력하기 때문에 각 입력 행에 대해 이러한 단어 벡터 중 35개에 대해 입력합니다. 따라서 각 행의 입력은 크기(35 x 650)가 됩니다. 마지막으로 TensorFlow를 사용하면 다차원 텐서를 통해 데이터 일괄 처리를 처리할 수 있습니다(기본 TensorFlow에 대해 자세히 알아보려면 이 TensorFlow 자습서를 참조하십시오). 일괄 처리 크기가 20인 경우 학습 입력 데이터(20 x 35 x 650)가 됩니다.

No categories

Comments

Sorry, comments are closed for this item.