MindStudio Bölüm 1: MindStudio’ya Giriş

Alper Balmumcu
Huawei Developers - Türkiye
5 min readFeb 10, 2023
Source

Giriş

Selamlar! Bugün MindStudio serimizin ilk yazısında sizlerleyiz. Bu yazımızda; MindStudio’nun temellerinden,yükleme adımlarından ve ayrıca fonksiyon ve kullanım metotlarından bahsedeceğiz.

Hadi başlayalım!

MindStudio Nedir?

Mindstudio, Huawei tarafından geliştirilen bir grafiksel geliştirme aracıdır. Aslında bir IDE’dir, ancak normal bir IDE’den daha fazla işlevi bulunmaktadır. MindStudio’ya, işlevlerine ve kullanım yöntemlerine göz atalım.

MindStudio, one-stop bir yapay zeka geliştirme toolchain platformudur. Burada “one-stop”, yazılım geliştirme için kapsamlı ve hepsi bir arada çözümler olan geniş araç ve özellik yelpazesini ifade eder. Ayrıca, kullanımı kolay ve kullanıcı dostu bir arayüze sahip olup, geliştiricilerin geliştirme ortamlarını kurmak veya yapılandırmak için çok fazla zaman harcamak zorunda kalmadan, işlerine hızlı bir şekilde başlamalarına olanak tanır.

MindStudio Genel Bakış

MindStudio’nun toolchain platformu, IntelliJ framework temel alınarak geliştirilmiştir. Uygulama geliştirme, model dönüştürme ve model görselleştirme gibi işlevler sağlar. Ayrıca network migration ve optimizasyon analizi gibi işlevleri de bulunmaktadır. MindStudio tarafından sağlanan toolchain platformu, 3rd party operasyonlar geliştirmek için de kullanılabilir. Python ve C/C++ kullanarak kod geliştirme, oluşturma, hata ayıklama ve çalıştırma gibi temel işlevleri ve bunlara ek olarak, Tensor Boost Engine(TBE) ve AI CPU operatör geliştirmelerini destekler. Şu an için, MindStudio’nun AI framework desteği MindSpore, TensorFlow, PyTorch ve ONNX içindir.

MindStudio; modelleri eğitmek, eğitilen modeller ile çıkarım uygulamaları geliştirmek ve aynı zamanda özel operatörler geliştirmek için uçtan uca araçlar sağlayarak verimliliği büyük ölçüde artırır.

Kurulum Aşamaları

Peki, MindStudio’yu nasıl yükleyebiliriz?

MindStudio’yu Linux veya Windows cihazlarına kurabilirsiniz. Temel olarak, kurulum için iki senaryo vardır. Bunlar Pure Development ve Development and Operating senaryolarıdır. Onlara bakalım;

Pure Development (ayrı dağıtım modu): Bu senaryo için MindStudio ve Ascend-CANN-Toolkit’in Ascend AI olmayan bir cihaza yüklenmesi gerekir. Bu ortam, yalnızca kod geliştirme ve oluşturma gibi Ascend cihazlarına bağlı olmayan geliştirme faaliyetleri için kullanılabilir (örneğin, ATC ile model dönüştürme ve inference uygulamaları). Bir uygulamayı çalıştırmak veya bir modeli eğitmek için, bir işletim ortamının gerektirdiği yazılım paketlerinin dağıtıldığı bir Ascend AI cihazına bağlanmak için MindStudio’nun uzak bağlantı işlevini kullanmanız gerekmektedir.

Development and Operating (ortak dağıtım modu): Bu senaryo için MindStudio, Ascend-CANN-Toolkit, npu-firmware, npu-driver ve AI framework (model eğitimi için gereklidir) paketlerini kurmanız gerekir. Bir Ascend AI cihazında, geliştiricilerin projeleri yönetmesine, kod yazmasına ve oluşturmasına ve modelleri dönüştürmesine olanak tanır. İşletim ortamı olarak uygulamaları çalıştırır veya modelleri eğitir.

1. Linux

Öncelikle yukarıda bahsettiğim senaryoları içeren Linux kurulum şemasına bakalım.

Linux için yükleme şeması

MindStudio ve Ascend-CANN-Toolkit, Linux sunucusunun yerel masaüstü terminali gnome-terminal kullanılarak kurulabilir. Alternatif olarak, bunları yüklemek için SSH modunda bir Windows sunucusundan Linux sunucusunda oturum açabilirsiniz. MindStudio GUI tabanlı bir IDE’dir. Bu nedenle, SSH modunda Windows sunucusundan Linux sunucusuna giriş yapmak için, X sunucusuyla entegre SSH terminalini (örneğin, MobaXterm v20.2 veya üstü) kullanmanız gerekir.

2. Windows

Şimdi, Windows’ta kurulum aşamalarına göz gezdirelim.

Windows için yükleme şeması

MindStudio, Windows’a bağımsız olarak kurulabilir. Windows Server veya Windows işletim sistemi ile çalışan bir Endüstriyel Bilgisayar üzerine kurabilirsiniz. MindStudio kurulumundan önce Ascend-CANN-Toolkit’i bir Linux sunucusuna kurmanız ve ardından Windows’ta MindStudio’yu kurmanız gerekir. Kurulum tamamlandıktan sonra, full-pipeline geliştirme yapmak için MindStudio’nun bulunduğu Windows sunucusu veya Windows endüstriyel bilgisayar ile Ascend-CANN-Toolkit’in bulunduğu Linux sunucusu arasında bir bağlantı kurulmalıdır.Bu adım ise uzak bağlantı modu ile yapılandırılmalıdır.

Genel Bakış

Kurulum adımları tamamlandıktan sonra artık kullanmaya başlayabiliriz.

Bu bölümde MindStudio’da nasıl proje oluşturulacağını, bir modelin nasıl dönüştürüleceğini ve bir modelin nasıl görselleştirileceğini göreceğiz. Hadi başlayalım!

1. Proje Yönetimi

MindStudio’yu çalıştırdıktan sonra bizi bir arayüz karşılıyor. Bu arayüzü kullanarak, MindStudio’nun sunduğu özellikleri keşfetmek için yeni bir proje oluşturacağız.

1.1. Yeni Proje Oluşturma

Yeni bir proje için 3 farklı başlangıç ​​senaryosu vardır. Boş bir şablonla, bir IR şablonuyla veya TensorFlow kaynak kodunu kullanarak başlayabilirsiniz. Boş bir şablon yalnızca framework kodunu içerir. Bir IR şablonu, yapılandırılmış operatör parametrelerini içerir. TensorFlow kaynak kodu ise operatör uygulama dosyasını hızlı bir şekilde oluşturmak için kullanılır. İhtiyaçlarınıza göre seçebilirsiniz.

Yeni Proje Oluşturma

1.2. Proje Şablonu

Proje şablonu ile başlamayı seçerseniz, sistem sizin için yeni oluşturulmuş bir operatör projesi üretecektir. Oluşturulan bir operatör projesi; operatör prototip dosyası, operatör eklentisi, operatör bilgi kitaplığı ve operatör uygulama dosyalarını içerir.

Proje Şablonu

2. Model Dönüşümü

Bir projenin nasıl oluşturulacağını gördük. Ve eğer projenizi bitirdiyseniz ve bir model eğittiyseniz, bir sonraki adım modelinizi Ascend AI cihazında çalışacak şekilde dönüştürmek olacaktır.

Bir önceki makalemizde ATC’den bahsetmiştik. ATC ile model dönüştürmeyi daha iyi anlamak için makalemize göz atabilirsiniz.

Model Dönüşümü

MindStudio; Caffe, TensorFlow, MindSpore ve ONNX modellerini çevrimdışı modellere (OM) dönüştürmek için kapsüllenmiş ATC aracına sahiptir. Komutları çalıştırmak yerine MindStudio’nun arayüzünü kullanarak işlemleri gerçekleştirebilirsiniz. MindStudio tarafından sağlanan bu kullanımı kolay arayüzü kullanarak, modelinize özelleştirilmiş preprocessing kısmı ekleyebilir ve çıkış düğümlerini ayarlayarak da dönüştürebilirsiniz.

3. Model Görselleştirme

Model Görselleştirme, modeli analiz etmek için önemli bir adımdır. MindStudio tarafından sağlanan Model Visulizer aracını kullanarak; ağ yapısını ve ağda bulunan nodeların ayrıntılarını görüntüleme ve ayrıca node arama gibi çok daha fazla bilgiyi görselleştirerek elde edebiliriz.

Model Görselleştirme

Şu an için model görselleştirme aracının desteklediği model formatları; OM, PB, ONNX ve Caffe’dir.

Sonuç

Bu yazımızda MindSpore’u ve temel kullanımını öğrendik. Ayrıca farklı işletim sistemleri için kurulum adımlarını ve MindStudio’nun temel fonksiyonlarını kısaca anlattık. Herhangi bir sorunuz olursa, lütfen bizimle iletişime geçmekten çekinmeyin.

Tebrikler!

Bir sonraki yazımız için takipte kalın!

--

--