LatentDirichletAllocationEstimator Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Transformasi LDA mengimplementasikan LightLDA, implementasi alokasi Dirichlet Laten yang canggih.
public sealed class LatentDirichletAllocationEstimator : Microsoft.ML.IEstimator<Microsoft.ML.Transforms.Text.LatentDirichletAllocationTransformer>
type LatentDirichletAllocationEstimator = class
interface IEstimator<LatentDirichletAllocationTransformer>
Public NotInheritable Class LatentDirichletAllocationEstimator
Implements IEstimator(Of LatentDirichletAllocationTransformer)
- Warisan
-
LatentDirichletAllocationEstimator
- Penerapan
Keterangan
Karakteristik Estimator
Apakah estimator ini perlu melihat data untuk melatih parameternya? | Ya |
Jenis data kolom input | Vektor dari Single |
Jenis data kolom output | Vektor dari Single |
Dapat diekspor ke ONNX | Tidak |
Alokasi Dirichlet Laten adalah algoritma pemodelan topik terkenal yang menyimpulkan struktur semantik dari data teks, dan pada akhirnya membantu menjawab pertanyaan tentang "apa dokumen ini?". Ini dapat digunakan untuk menampilkan bidang teks apa pun sebagai vektor topikal dimensi rendah. LightLDA adalah implementasi LDA yang sangat efisien yang menggabungkan sejumlah teknik pengoptimalan. Dengan transformasi LDA, ML.NET pengguna dapat melatih model topik untuk menghasilkan 1 juta topik dengan kosakata 1 juta kata pada dokumen token 1 miliar yang ditetapkan satu komputer tunggal dalam beberapa jam (biasanya, LDA pada skala ini membutuhkan waktu berhari-hari dan membutuhkan kluster besar). Inovasi yang paling signifikan adalah $O(1)$yang sangat efisien. Algoritma pengambilan sampel Metropolis-Hastings, yang biaya berjalannya adalah agnostik ukuran model, memungkinkannya untuk menyatukan hampir urutan besarnya lebih cepat daripada sampelr Gibbs lainnya.
Dalam alur ML.NET, estimator ini memerlukan output dari beberapa pra-pemrosesan, sebagai inputnya. Alur khas yang beroperasi pada teks akan memerlukan normalisasi teks, tokenisasi, dan produksi n-gram untuk disuplai ke estimator LDA. Lihat contoh penggunaan di bagian Lihat Juga untuk saran penggunaan.
Jika kita memiliki tiga contoh teks berikut, sebagai poin data, dan menggunakan transformasi LDA dengan jumlah topik yang diatur ke 3, kita akan mendapatkan hasil yang ditampilkan dalam tabel di bawah ini. Contoh dokumen:
- Aku suka makan pisang.
- Aku makan pisang setiap hari.
- Pertama kali dirayakan pada tahun 1970, Hari Bumi sekarang mencakup acara di lebih dari 193 negara, yang sekarang dikoordinasikan secara global oleh Earth Day Network.
Perhatikan kesamaan nilai baris pertama dan kedua, dibandingkan dengan yang ketiga, dan lihat bagaimana nilai-nilai tersebut menunjukkan kesamaan antara kedua badan teks tersebut (kecil).
Topik1 | Topik2 | Topik 3 |
---|---|---|
0.5714 | 0.0000 | 0.4286 |
0.5714 | 0.0000 | 0.4286 |
0.2400 | 0.3200 | 0.4400 |
Untuk detail teknis selengkapnya, Anda dapat berkonsultasi dengan makalah berikut.
Periksa bagian Lihat Juga untuk tautan ke contoh penggunaan.
Metode
Fit(IDataView) |
Melatih dan mengembalikan LatentDirichletAllocationTransformer. |
GetOutputSchema(SchemaShape) |
Mengembalikan SchemaShape skema yang akan diproduksi oleh transformator. Digunakan untuk propagasi dan verifikasi skema dalam alur. |
Metode Ekstensi
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Tambahkan 'titik pemeriksaan penembolokan' ke rantai estimator. Ini akan memastikan bahwa estimator hilir akan dilatih terhadap data cache. Sangat membantu untuk memiliki titik pemeriksaan penembolokan sebelum pelatih yang mengambil beberapa data berlalu. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Mengingat estimator, kembalikan objek pembungkus yang akan memanggil delegasi setelah Fit(IDataView) dipanggil. Seringkali penting bagi estimator untuk mengembalikan informasi tentang apa yang cocok, itulah sebabnya Fit(IDataView) metode mengembalikan objek yang ditik secara khusus, bukan hanya umum ITransformer. Namun, pada saat yang sama, IEstimator<TTransformer> sering dibentuk menjadi alur dengan banyak objek, jadi kita mungkin perlu membangun rantai estimator melalui EstimatorChain<TLastTransformer> tempat estimator yang ingin kita dapatkan transformator dikubur di suatu tempat dalam rantai ini. Untuk skenario itu, kita dapat melalui metode ini melampirkan delegasi yang akan dipanggil setelah pas dipanggil. |