Thành phần đường ống SchemaGen TFX

Một số thành phần TFX sử dụng mô tả dữ liệu đầu vào của bạn được gọi là lược đồ . Lược đồ này là một thể hiện của lược đồ.proto . Nó có thể chỉ định loại dữ liệu cho các giá trị đối tượng, liệu một đối tượng có phải có trong tất cả các ví dụ hay không, phạm vi giá trị được phép và các thuộc tính khác. Thành phần đường dẫn SchemaGen sẽ tự động tạo lược đồ bằng cách suy ra các loại, danh mục và phạm vi từ dữ liệu huấn luyện.

  • Tiêu thụ: số liệu thống kê từ thành phần StatsGen
  • Phát ra: Nguyên mẫu lược đồ dữ liệu

Đây là một đoạn trích từ một sơ đồ lược đồ:

...
feature {
  name: "age"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
feature {
  name: "capital-gain"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
...

Các thư viện TFX sau đây sử dụng lược đồ:

  • Xác thực dữ liệu TensorFlow
  • Biến đổi dòng chảy Tenor
  • Phân tích mô hình TensorFlow

Trong một đường dẫn TFX điển hình, SchemaGen tạo ra một lược đồ được sử dụng bởi các thành phần đường ống khác. Tuy nhiên, lược đồ được tạo tự động là nỗ lực tốt nhất và chỉ cố gắng suy ra các thuộc tính cơ bản của dữ liệu. Dự kiến ​​các nhà phát triển sẽ xem xét và sửa đổi nó khi cần thiết.

Lược đồ đã sửa đổi có thể được đưa trở lại quy trình bằng cách sử dụng thành phần ImportSchemaGen. Thành phần SchemaGen để tạo lược đồ ban đầu có thể được loại bỏ và tất cả các thành phần tiếp theo có thể sử dụng đầu ra của ImportSchemaGen. Bạn cũng nên thêm exampleValidator bằng cách sử dụng lược đồ đã nhập để kiểm tra dữ liệu huấn luyện một cách liên tục.

Xác thực dữ liệu SchemaGen và TensorFlow

SchemaGen sử dụng rộng rãi Xác thực dữ liệu TensorFlow để suy ra lược đồ.

Sử dụng thành phần SchemaGen

Để tạo lược đồ ban đầu

Thành phần đường ống SchemaGen thường rất dễ triển khai và yêu cầu ít tùy chỉnh. Mã điển hình trông như thế này:

schema_gen = tfx.components.SchemaGen(
    statistics=stats_gen.outputs['statistics'])

Thông tin chi tiết hơn có sẵn trong tài liệu tham khảo API SchemaGen .

Đối với việc nhập lược đồ được xem xét

Thêm thành phần ImportSchemaGen vào quy trình để đưa định nghĩa lược đồ đã xem xét vào quy trình.

schema_gen = tfx.components.ImportSchemaGen(
    schema_file='/some/path/schema.pbtxt')

schema_file phải là đường dẫn đầy đủ đến tệp văn bản protobuf.

Thông tin chi tiết hơn có sẵn trong tài liệu tham khảo API ImportSchemaGen .