Tensorflow는 Google에서 제공하는 기계 학습 프레임워크입니다. 알고리즘, 딥 러닝 애플리케이션 등을 구현하기 위해 Python과 함께 사용되는 오픈 소스 프레임워크입니다. 연구 및 생산 목적으로 사용됩니다. 복잡한 수학 연산을 빠르게 수행하는 데 도움이 되는 최적화 기술이 있습니다. NumPy와 다차원 배열을 사용하기 때문입니다. 이러한 다차원 배열은 '텐서'라고도 합니다. 프레임워크는 심층 신경망 작업을 지원합니다.
'tensorflow' 패키지는 아래 코드 줄을 사용하여 Windows에 설치할 수 있습니다. -
pip install tensorflow
Tensor는 TensorFlow에서 사용되는 데이터 구조입니다. 흐름도에서 가장자리를 연결하는 데 도움이 됩니다. 이 흐름도를 '데이터 흐름 그래프'라고 합니다. 텐서는 다차원 배열 또는 목록에 불과합니다.
William Cowper, Edward(Earl of Derby), Samuel Butler의 세 번역 작업의 텍스트 데이터가 포함된 Illiad의 데이터 세트를 사용할 것입니다. 모델은 한 줄의 텍스트가 제공될 때 번역자를 식별하도록 훈련됩니다. 사용된 텍스트 파일은 전처리되었습니다. 여기에는 문서 머리글 및 바닥글, 줄 번호 및 장 제목 제거가 포함됩니다.
Google Colaboratory를 사용하여 아래 코드를 실행하고 있습니다. Google Colab 또는 Colaboratory는 브라우저를 통해 Python 코드를 실행하는 데 도움이 되며 구성이 필요 없고 GPU(그래픽 처리 장치)에 대한 무료 액세스가 필요합니다. Colaboratory는 Jupyter Notebook을 기반으로 구축되었습니다.
예시
다음은 코드 조각입니다 -
vocab_size += 2 print("Configure the dataset for better performance") train_data = configure_dataset(train_data) validation_data = configure_dataset(validation_data) print("Train the model") model = create_model(vocab_size=vocab_size, num_labels=3) model.compile( optimizer='adam', loss=losses.SparseCategoricalCrossentropy(from_logits=True), metrics=['accuracy']) print("Fit the training data to the model") history = model.fit(train_data, validation_data=validation_data, epochs=3) print("Finding the accuracy and loss associated with training") loss, accuracy = model.evaluate(validation_data) print("The loss is : ", loss) print("The accuracy is : {:2.2%}".format(accuracy))
코드 크레딧 - https://www.tensorflow.org/tutorials/load_data/text
출력
Configure the dataset for better performance Train the model Fit the training data to the model Epoch 1/3 697/697 [==============================] - 35s 17ms/step - loss: 0.6891 - accuracy: 0.6736 - val_loss: 0.3718 - val_accuracy: 0.8404 Epoch 2/3 697/697 [==============================] - 8s 11ms/step - loss: 0.3149 - accuracy: 0.8713 - val_loss: 0.3621 - val_accuracy: 0.8422 Epoch 3/3 697/697 [==============================] - 8s 11ms/step - loss: 0.2165 - accuracy: 0.9162 - val_loss: 0.4002 - val_accuracy: 0.8404 Finding the accuracy and loss associated with training 79/79 [==============================] - 1s 2ms/step - loss: 0.4002 - accuracy: 0.8404 The loss is : 0.40021833777427673 The accuracy is : 84.04%
설명
-
모델은 사전 처리되고 벡터화된 데이터 세트에서 학습됩니다.
-
이 작업이 완료되면 컴파일되어 모델에 맞습니다.
-
모델과 관련된 손실 및 정확도는 '평가' 방법을 사용하여 평가됩니다.
-
이 데이터는 콘솔에 표시됩니다.