Mengumumkan ML.NET 1.0

Kami sangat senang mengumumkan rilis ML.NET 1.0 hari ini. ML.NET adalah kerangka kerja pembelajaran mesin sumber terbuka, lintas platform, dan terbuka yang dirancang untuk menghadirkan kekuatan pembelajaran mesin (ML) ke dalam aplikasi .NET.


Logo ML.NET


https://github.com/dotnet/machinelearning

Mulai: http://dot.net/ml


ML.NET memungkinkan Anda untuk melatih, membangun, dan mengirimkan model pembelajaran mesin kustom menggunakan C # atau F # untuk skenario seperti analisis sentimen, klasifikasi masalah, peramalan, rekomendasi, dan lainnya. Anda dapat memeriksa skenario dan tugas umum ini di repo sampel ML.NET kami.


ML.NET awalnya dikembangkan dalam Microsoft Research, dan berkembang menjadi kerangka kerja penting yang digunakan oleh banyak produk Microsoft seperti Windows Defender, Microsoft Office (ide-ide desain Powerpoint, rekomendasi Chart Excel), Pembelajaran Mesin Azure, influencer kunci PowerBI untuk beberapa nama!


Sejak diluncurkan, ML.NET digunakan oleh banyak organisasi seperti SigParser (Deteksi Email Spam), William Mullens (Klasifikasi Masalah Hukum), dan Perangkat Lunak Evolusi (Deteksi Tingkat Moisture untuk Hazelnut) . Anda dapat mengikuti perjalanan ini dan banyak organisasi lainnya menggunakan ML.NET di showcase pelanggan ML.NET kami. Para pengguna ini memberi tahu kami bahwa kemudahan penggunaan ML.NET, kemampuan untuk menggunakan kembali keterampilan .NET mereka dan menjaga tumpukan teknologi sepenuhnya. NET adalah pendorong utama untuk penggunaan ML.NET.


Bersamaan dengan rilis ML.NET 1.0 kami juga menambahkan fitur pratinjau baru seperti kekuatan Automated machine learning (AutoML) dan alat baru seperti ML.NET CLI dan ML.NET Model Builder yang berarti menambahkan model pembelajaran mesin ke aplikasi Anda sekarang hanya dengan klik kanan saja!


Logo ML.NET

Sisa dari posting ini berfokus pada pengalaman baru ini.



Komponen Inti ML.NET


ML.NET bertujuan untuk menyediakan alur kerja akhir-akhir untuk mengonsumsi ML ke dalam aplikasi .NET di berbagai langkah pembelajaran mesin (pra-pemrosesan, rekayasa fitur, pemodelan, evaluasi, dan operasionalisasi). ML.NET 1.0 menyediakan komponen-komponen utama berikut:


  • Representasi data
    • Jenis-jenis saluran pipa data ML yang mendasar seperti IDataView - tipe jalur pipa data mendasar
    • Pembaca untuk mendukung membaca data dari file teks terbatas atau IEnumerable objek
  • Dukungan untuk tugas pembelajaran mesin:
    • Klasifikasi biner
    • Klasifikasi multi-kelas
    • Regresi
    • Peringkat
    • Deteksi anomali
    • Clustering
    • Rekomendasi (pratinjau)
  • Transformasi dan fitur data
    • Teks
    • Kategori
    • Pemilihan fitur
    • Normalisasi dan penanganan nilai yang hilang
    • Fitur gambar
    • Time Series (pratinjau)
    • Dukungan untuk integrasi model ONNX dan TensorFlow (pratinjau)
  • Lainnya
    • Pemahaman model dan kemampuan menjelaskan
    • Transformasi khusus yang ditentukan pengguna
    • Operasi skema
    • Dukungan untuk manipulasi dataset dan validasi silang

Pratinjau Pembelajaran Mesin Otomatis


Memulai dengan pembelajaran mesin hari ini melibatkan kurva belajar yang curam. Saat membuat model pembelajaran mesin kustom, Anda harus mencari tahu tugas pembelajaran mesin mana yang akan dipilih untuk skenario Anda (mis. Klasifikasi atau regresi?), Transformasikan data Anda ke dalam format yang dapat dipahami oleh algoritma ML (mis. Data tekstual -> vektor angka), dan sesuaikan algoritme ML ini untuk memberikan kinerja terbaik. Jika Anda baru mengenal ML, setiap langkah ini bisa sangat menakutkan!


Pembelajaran Mesin Otomatis membuat perjalanan Anda dengan ML lebih mudah dengan secara otomatis mencari tahu bagaimana mengubah data input Anda dan memilih algoritma ML berkinerja terbaik dengan pengaturan yang tepat memungkinkan Anda untuk membangun model ML kustom terbaik di kelasnya dengan mudah.


Dukungan AutoML di ML.NET sedang dalam pratinjau dan saat ini kami mendukung Regresi (digunakan untuk skenario seperti Prediksi Harga) dan Klasifikasi (digunakan untuk skenario seperti Analisis Sentimen, Klasifikasi Dokumen, Deteksi Spam, dll.) Tugas-tugas ML.


Anda dapat mencoba pengalaman AutoML di ML.NET dalam tiga faktor bentuk menggunakan ML.NET Model Builder, ML.NET CLI atau dengan menggunakan API AutoML secara langsung (sampel dapat ditemukan di sini ).


Untuk pengguna yang baru mengenal Pembelajaran Mesin, kami sarankan memulai dengan ML.NET Model Builder di Visual Studio dan ML.NET CLI pada platform apa pun. API AutoML juga sangat berguna untuk skenario di mana Anda ingin membuat model dengan cepat.


Pratinjau Pembuat Model


Untuk menyederhanakan perjalanan pengembang .NET untuk membangun Model ML, kami hari ini juga bersemangat untuk mengumumkan Pembuat Model ML.NET. Dengan ML.NET Model builder menambahkan pembelajaran mesin ke aplikasi Anda hanya dengan sekali klik saja!


Model Builder adalah alat UI sederhana untuk pengembang yang menggunakan AutoML untuk membangun model ML terbaik di kelas menggunakan dataset yang Anda berikan. Selain itu, Model Builder juga menghasilkan pelatihan model dan kode konsumsi model untuk model dengan kinerja terbaik yang memungkinkan Anda untuk dengan cepat menambahkan ML ke aplikasi Anda yang sudah ada.


Pembuat Model ML.NET


Pelajari lebih lanjut tentang Pembuat Model ML.NET


Model Builder saat ini dalam pratinjau dan kami ingin Anda mencobanya dan memberi tahu kami pendapat Anda!


Pratinjau ML.NET CLI


ML.NET CLI (antarmuka baris perintah) adalah alat baru yang kami perkenalkan hari ini!


ML.NET CLI adalah alat dotnet yang memungkinkan untuk menghasilkan Model ML.NET menggunakan AutoML dan ML.NET. CL. ML.NET dengan cepat beralih melalui dataset Anda untuk Tugas ML tertentu (saat ini mendukung regresi dan klasifikasi) dan menghasilkan model terbaik.


CLI selain menghasilkan model terbaik juga memungkinkan pengguna untuk menghasilkan pelatihan model dan kode konsumsi model untuk model berperforma terbaik.


ML.NET CLI adalah lintas-platform dan merupakan add-on yang mudah untuk .NET CLI. Ekstensi Model Builder Visual Studio juga menggunakan ML.NET CLI untuk memberikan kemampuan pembangun model.


Anda dapat menginstal ML.NET CLI melalui perintah ini.


dotnet tool install -g mlnet 

Gambar berikut menunjukkan ML.NET CLI membangun dataset analisis sentimen.


CLI ML.NET


Pelajari lebih lanjut tentang ML.NET CLI


ML.NET CLI juga sedang dalam pratinjau dan kami ingin Anda mencobanya dan membagikan pendapat Anda di bawah ini!


Mulai!


Jika Anda belum melakukannya, memulai dengan ML.NET mudah dan Anda dapat melakukannya dalam beberapa langkah sederhana seperti yang ditunjukkan di bawah ini. Contoh di bawah ini menunjukkan bagaimana Anda dapat melakukan analisis sentimen dengan ML.NET .


 //Step 1. Create a ML Context var ctx = new MLContext(); //Step 2. Read in the input data for model training IDataView dataReader = ctx.Data .LoadFromTextFile<MyInput>(dataPath, hasHeader: true); //Step 3. Build your estimator IEstimator<ITransformer> est = ctx.Transforms.Text .FeaturizeText("Features", nameof(SentimentIssue.Text)) .Append(ctx.BinaryClassification.Trainers .LbfgsLogisticRegression("Label", "Features")); //Step 4. Train your Model ITransformer trainedModel = est.Fit(dataReader); //Step 5. Make predictions using your model var predictionEngine = ctx.Model .CreatePredictionEngine<MyInput, MyOutput>(trainedModel); var sampleStatement = new MyInput { Text = "This is a horrible movie" }; var prediction = predictionEngine.Predict(sampleStatement); 

Anda juga dapat menjelajahi berbagai sumber belajar lainnya seperti tutorial dan sumber daya untuk ML.NET bersama dengan sampel ML.NET yang menunjukkan skenario populer seperti rekomendasi produk, pendeteksian anomali, dan banyak lagi dalam aksi.


Apa selanjutnya dengan ML.NET


Sementara kami sangat bersemangat untuk merilis ML.NET 1.0 hari ini, tim sudah bekerja keras untuk mengaktifkan fitur berikut untuk rilis rilis ML.NET 1.0.


  • Pengalaman AutoML untuk skenario ML tambahan
  • Peningkatan dukungan untuk skenario pembelajaran yang mendalam
  • Dukungan untuk sumber tambahan lainnya seperti SQL Server, CosmosDB, penyimpanan Azure Blob dan banyak lagi.
  • Gunakan Azure untuk pelatihan model dan konsumsi
  • Dukungan untuk skenario dan fitur ML tambahan saat menggunakan Model Builder dan CLI
  • Integrasi asli untuk pembelajaran mesin pada skala dengan .NET untuk Apache Spark dan ML.NET
  • Jenis ML Baru di. NET misalnya DataFrame

Source: https://habr.com/ru/post/id451334/


All Articles