Hướng dẫn tensorflow mongodb - tensorflow mongodb

Tổng quan

Hướng dẫn này tập trung vào việc chuẩn bị các


sudo apt install -y mongodb >log
service mongodb start
0 bằng cách đọc dữ liệu từ các bộ sưu tập MongoDB và sử dụng nó để đào tạo mô hình

sudo apt install -y mongodb >log
service mongodb start
1.

Gói thiết lập

Hướng dẫn này sử dụng


sudo apt install -y mongodb >log
service mongodb start
2 như một gói trợ giúp để tạo cơ sở dữ liệu và bộ sưu tập MongoDB mới để lưu trữ dữ liệu.

Cài đặt các gói Tensorflow-IO và MongoDB (trợ giúp) cần thiết

pip install -q tensorflow-io
pip install -q pymongo

Nhập gói

import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient

Xác thực nhập khẩu TF và TFIO

print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0

Tải xuống và thiết lập phiên bản MongoDB

Đối với mục đích demo, phiên bản miền mở của MongoDB được sử dụng.


sudo apt install -y mongodb >log
service mongodb start
* Starting database mongodb
   ...done.
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76, <> line 8.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
dpkg-preconfigure: unable to re-open stdin:
# Sleep for few seconds to let the instance start.
time.sleep(5)

Khi phiên bản đã được bắt đầu, grep cho


sudo apt install -y mongodb >log
service mongodb start
3 trong danh sách quy trình để xác nhận tính khả dụng.


ps -ef | grep mongo
mongodb      580       1 13 17:38 ?        00:00:00 /usr/bin/mongod --config /etc/mongodb.conf
root         612     610  0 17:38 ?        00:00:00 grep mongo

Truy vấn điểm cuối cơ sở để truy xuất thông tin về cụm.

client = MongoClient()
client.list_database_names() # ['admin', 'local']
import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
0

Khám phá bộ dữ liệu

Với mục đích của hướng dẫn này, hãy tải xuống bộ dữ liệu Petfinder và cung cấp dữ liệu vào MongoDB theo cách thủ công. Mục tiêu của vấn đề phân loại này được dự đoán nếu thú cưng sẽ được thông qua hay không.

import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
1
import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
2
import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
3

Với mục đích của hướng dẫn, các sửa đổi được thực hiện cho cột nhãn. 0 sẽ cho biết thú cưng không được thông qua, và 1 sẽ chỉ ra rằng nó là như vậy.

import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
4
import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
5
import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
6

Chia dữ liệu

import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
7
import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
8

Lưu trữ dữ liệu tàu hỏa và thử nghiệm trong các bộ sưu tập Mongo

import os
import time
from pprint import pprint
from sklearn.model_selection import train_test_split
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
import tensorflow_io as tfio
from pymongo import MongoClient
9
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
0
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
1
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
2

Chuẩn bị bộ dữ liệu TFIO

Khi dữ liệu có sẵn trong cụm, lớp


sudo apt install -y mongodb >log
service mongodb start
4 được sử dụng cho mục đích này. Lớp kế thừa từ

sudo apt install -y mongodb >log
service mongodb start
0 và do đó phơi bày tất cả các chức năng hữu ích của

sudo apt install -y mongodb >log
service mongodb start
0 ra khỏi hộp.

Bộ dữ liệu đào tạo

print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
3
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
4

Mỗi mục trong


sudo apt install -y mongodb >log
service mongodb start
7 là một chuỗi cần được giải mã thành JSON. Để làm như vậy, bạn chỉ có thể chọn một tập hợp con của các cột bằng cách chỉ định

sudo apt install -y mongodb >log
service mongodb start
8

print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
5
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
6
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
7
print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
8

Kiểm tra bộ dữ liệu

print("tensorflow-io version: {}".format(tfio.__version__))
print("tensorflow version: {}".format(tf.__version__))
9
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
0

Xác định các lớp tiền xử lý Keras

Theo hướng dẫn dữ liệu có cấu trúc, nên sử dụng các lớp tiền xử lý Keras vì chúng trực quan hơn và có thể dễ dàng tích hợp với các mô hình. Tuy nhiên, tính năng tiêu chuẩn_columns cũng có thể được sử dụng.

Để hiểu rõ hơn về


sudo apt install -y mongodb >log
service mongodb start
9 trong phân loại dữ liệu có cấu trúc, vui lòng tham khảo hướng dẫn dữ liệu có cấu trúc

tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
1
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
2

Xây dựng, biên dịch và đào tạo mô hình

tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
3
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
4
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
5
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
6
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
7

Suy luận trên dữ liệu kiểm tra

tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
8
tensorflow-io version: 0.20.0
tensorflow version: 2.6.0
9

References:

  • MongoDB

  • Bộ dữ liệu Petfinder

  • Phân loại dữ liệu có cấu trúc bằng cách sử dụng keras