Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để Tensorflow có thể được sử dụng để tải tập dữ liệu chứa các câu hỏi về stackoverflow bằng Python?

Tensorflow là một khuôn khổ học máy được cung cấp bởi Google. Nó là một khung công tác mã nguồn mở được sử dụng kết hợp với Python để triển khai các thuật toán, ứng dụng học sâu và hơn thế nữa. Nó được sử dụng trong nghiên cứu và cho mục đích sản xuất. Nó có các kỹ thuật tối ưu hóa giúp thực hiện các phép toán phức tạp một cách nhanh chóng.

Điều này là do nó sử dụng NumPy và các mảng đa chiều. Các mảng đa chiều này còn được gọi là 'tensors'. Khung hỗ trợ làm việc với một mạng nơ-ron sâu. Nó có khả năng mở rộng cao và đi kèm với nhiều bộ dữ liệu phổ biến. Nó sử dụng tính toán GPU và tự động hóa việc quản lý tài nguyên. Nó đi kèm với vô số thư viện máy học, được hỗ trợ tốt và được lập thành tài liệu. Khung có khả năng chạy các mô hình mạng nơ-ron sâu, đào tạo chúng và tạo các ứng dụng dự đoán các đặc điểm liên quan của các bộ dữ liệu tương ứng.

Gói 'tensorflow' có thể được cài đặt trên Windows bằng dòng mã bên dưới -

pip install tensorflow

Chúng tôi đang sử dụng Google Colaboratory để chạy đoạn mã dưới đây. Google Colab hoặc Colaboratory giúp chạy mã Python qua trình duyệt và không yêu cầu cấu hình cũng như quyền truy cập miễn phí vào GPU (Đơn vị xử lý đồ họa). Cộng tác đã được xây dựng trên Jupyter Notebook. Sau đây là đoạn mã để tải tập dữ liệu chứa các câu hỏi về StackOverflow bằng Python -

Ví dụ

batch_size = 32
seed = 42
print("The training parameters have been defined")
raw_train_ds = preprocessing.text_dataset_from_directory(
   train_dir,
   batch_size=batch_size,
   validation_split=0.25,
   subset='training',
   seed=seed)
for text_batch, label_batch in raw_train_ds.take(1):
   for i in range(10):
      print("Question: ", text_batch.numpy()[i][:100], '...')
      print("Label:", label_batch.numpy()[i])

Tín dụng mã - https://www.tensorflow.org/tutorials/load_data/text

Đầu ra

The training parameters have been defined
Found 8000 files belonging to 4 classes.
Using 6000 files for training.
Question: b'"my tester is going to the wrong constructor i am new to programming so if i ask a
question that can' ...
Label: 1
Question: b'"blank code slow skin detection this code changes the color space to lab and using a
threshold finds' ...
Label: 3
Question: b'"option and validation in blank i want to add a new option on my system where i
want to add two text' ...
Label: 1
Question: b'"exception: dynamic sql generation for the updatecommand is not supported against
a selectcommand th' ...
Label: 0
Question: b'"parameter with question mark and super in blank, i\'ve come across a method that
is formatted like t' ...
Label: 1
Question: b'call two objects wsdl the first time i got a very strange wsdl. ..i would like to call the
object (i' ...
Label: 0
Question: b'how to correctly make the icon for systemtray in blank using icon sizes of any
dimension for systemt' ...
Label: 0
Question: b'"is there a way to check a variable that exists in a different script than the original
one? i\'m try' ...
Label: 3
Question: b'"blank control flow i made a number which asks for 2 numbers with blank and
responds with the corre' ...
Label: 0
Question: b'"credentials cannot be used for ntlm authentication i am getting
org.apache.commons.httpclient.auth.' ...
Label: 1

Giải thích

  • Dữ liệu được tải ra khỏi đĩa và chuẩn bị ở dạng thích hợp để đào tạo nó.

  • Tiện ích ‘text_dataset_from_dataset’ được sử dụng để tạo tập dữ liệu được gắn nhãn.

  • ‘Tf.Data’ là một tập hợp các công cụ mạnh mẽ và được sử dụng để xây dựng các đường ống dẫn đầu vào.

  • Cấu trúc thư mục được chuyển tới tiện ích ‘text_dataset_from_dataset’.

  • Tập dữ liệu câu hỏi StackOverflow được chia thành tập dữ liệu đào tạo và kiểm tra.

  • Tập hợp xác thực được tạo bằng phương thức ‘validation_split’.

  • Các nhãn là 0 hoặc 1 hoặc 2 hoặc 3.