Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: SQL Server 2016 (13.x)
SQL Server 2017 (14.x)
SQL Server 2019 (15.x)
Bu makale SQL Server 2016 (13.x), SQL Server 2017 (14.x) ve SQL Server 2019 (15.x) için geçerlidir.
Bu makalede, R veya Python tümleştirmesi olan bir SQL Server örneğine yaklaşım analizi ve görüntü özellikleri için ücretsiz önceden eğitilmiş makine öğrenmesi modelleri eklemek için PowerShell'in nasıl kullanılacağı açıklanmaktadır. Önceden eğitilen modeller, Microsoft tarafından oluşturulur ve kullanıma hazır olarak bir örneğe yükleme sonrası görev olarak eklenir. Bu modeller hakkında daha fazla bilgi için bu makalenin Kaynaklar bölümüne bakın.
SQL Server 2022 'den (16.x) başlayarak, R, Python ve Java çalışma zamanları artık SQL Kurulumu ile yüklenmez. Bunun yerine, istediğiniz R ve/veya Python özel çalışma zamanlarını ve paketlerini yükleyin. Daha fazla bilgi için bkz. Windows'a SQL Server 2022 Machine Learning Services(Python ve R) yükleme .
Yüklendikten sonra, önceden eğitilen modeller MicrosoftML (R) ve microsoftml (Python) kitaplıklarındaki belirli işlevleri destekleyen bir uygulama ayrıntısı olarak kabul edilir. Modelleri görüntülememeli, özelleştirmemeli veya yeniden eğitmemelisiniz veya bunları özel kodda veya eşleştirilmiş diğer işlevlerde bağımsız bir kaynak olarak kabul edemezsiniz.
Önceden eğitilmiş modelleri kullanmak için aşağıdaki tabloda listelenen işlevleri çağırın.
| R işlevi (MicrosoftML) | Python fonksiyonu (microsoftml) | Usage |
|---|---|---|
| getSentiment | get_sentiment | Metin girişleri üzerinde pozitif-negatif yaklaşım puanı oluşturur. |
| featurizeImage | featurize_image | Resim dosyası girişlerinden metin bilgilerini ayıklar. |
Prerequisites
Makine öğrenmesi algoritmaları hesaplama açısından yoğundur. Tüm örnek verileri kullanarak öğretici kılavuzunun tamamlanması dahil olmak üzere düşük-orta düzey iş yükleri için 16 GB RAM öneririz.
Önceden eğitilmiş modeller eklemek için bilgisayarda ve SQL Server'da yönetici haklarına sahip olmanız gerekir.
Dış betiklerin etkinleştirilmesi ve SQL Server LaunchPad hizmetinin çalışıyor olması gerekir. Yükleme yönergeleri, bu özellikleri etkinleştirme ve doğrulama adımlarını sağlar.
SQL Server sürümünüz için en son toplu güncelleştirmeyi indirin ve yükleyin. Bkz. Microsoft SQL Server için en son güncelleştirmeler.
MicrosoftML R paketi veya microsoftml Python paketi önceden eğitilmiş modelleri içerir.
SQL Server Machine Learning Services , makine öğrenmesi kitaplığının her iki dil sürümünü de içerdiğinden bu önkoşul sizin için başka bir işlem yapılmadan karşılanır. Kitaplıklar mevcut olduğundan, bu kitaplıklara önceden eğitilmiş modelleri eklemek için bu makalede açıklanan PowerShell betiğini kullanabilirsiniz.
MicrosoftML R paketi , önceden eğitilmiş modelleri içerir.
Yalnızca R olan SQL Server R Services, MicrosoftML paketini kullanıma sunmaz. MicrosoftML eklemek için bir bileşen yükseltmesi yapmanız gerekir. Bileşen yükseltmesinin avantajlarından biri, powershell betiğini çalıştırmayı gereksiz hale getiren önceden eğitilmiş modelleri aynı anda ekleyebilmenizdir. Ancak, önceden yükselttiyseniz ancak önceden eğitilmiş modelleri ilk kez eklemeyi kaçırdıysanız, PowerShell betiğini bu makalede açıklandığı gibi çalıştırabilirsiniz. Sql Server'ın her iki sürümünde de çalışır. Bunu gerçekleştirmeden önce, MicrosoftML kitaplığının C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\R_SERVICES\library konumunda mevcut olup olmadığını onaylayın.
Önceden eğitilmiş modellerin yüklü olup olmadığını kontrol edin
R ve Python modelleri için yükleme yolları aşağıdaki gibidir:
R için:
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\R_SERVICES\library\MicrosoftML\mxLibs\x64Python için:
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICES\Lib\site-packages\microsoftml\mxLibs
Model dosyası adları aşağıdaki listede yer alıyor:
AlexNet_Updated.modelImageNet1K_mean.xmlpretrained.modelResNet_101_Updated.modelResNet_18_Updated.modelResNet_50_Updated.model
Modeller zaten yüklüyse, kullanılabilirliği onaylamak için doğrulama adımına atlayın.
Yükleme betiğini indirme
https://aka.ms/mlm4sql Install-MLModels.ps1 dosyasını indirmek için web adresini ziyaret edin. GitHub sayfasında Ham dosyayı indir'i seçin.
Yükseltilmiş ayrıcalıklarla çalıştır
PowerShell'i başlatın. Görev çubuğunda PowerShell programı simgesine sağ tıklayın ve Yönetici olarak çalıştır'ı seçin.
Yükleme sırasında önerilen yürütme ilkesi "RemoteSigned" şeklindedir. PowerShell yürütme ilkesini ayarlama hakkında daha fazla bilgi için bkz . Set-ExecutionPolicy. Örneğin:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserYükleme betiği dosyasının tam yolunu girin ve örnek adını ekleyin. İndirilenler klasörünü ve varsayılan bir örneği varsayarsak, komut aşağıdaki gibi görünebilir:
PS C:\WINDOWS\system32> C:\Users\<user-name>\Downloads\Install-MLModels.ps1 MSSQLSERVER
Output
R ve Python ile İnternet'e bağlı bir SQL Server Machine Learning Services varsayılan örneğinde aşağıdakine benzer iletiler görmeniz gerekir.
MSSQL14.MSSQLSERVER
Verifying R models [9.2.0.24]
Downloading R models [C:\Users\<user-name>\AppData\Local\Temp]
Installing R models [C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\R_SERVICES\]
Verifying Python models [9.2.0.24]
Installing Python models [C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICES\]
PS C:\WINDOWS\system32>
Yüklemeyi doğrulama
İlk olarak , mxlibs klasöründeki yeni dosyaları denetleyin. Ardından, modellerin yüklendiğini ve işlevsel olduğunu onaylamak için tanıtım kodunu çalıştırın.
R doğrulama adımları
RGUI.EXE'yi
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\R_SERVICES\bin\x64başlatın.Komut isteminde aşağıdaki R betiğini yapıştırın.
# Create the data CustomerReviews <- data.frame(Review = c( "I really did not like the taste of it", "It was surprisingly quite good!", "I will never ever ever go to that place again!!"), stringsAsFactors = FALSE) # Get the sentiment scores sentimentScores <- rxFeaturize(data = CustomerReviews, mlTransforms = getSentiment(vars = list(SentimentScore = "Review"))) # Let's translate the score to something more meaningful sentimentScores$PredictedRating <- ifelse(sentimentScores$SentimentScore > 0.6, "AWESOMENESS", "BLAH") # Let's look at the results sentimentScoresYaklaşım puanlarını görüntülemek için Enter tuşuna basın. Çıktı aşağıdaki gibi olmalıdır:
> sentimentScores Review SentimentScore 1 I really did not like the taste of it 0.4617899 2 It was surprisingly quite good! 0.9601924 3 I will never ever ever go to that place again!! 0.3103435 PredictedRating 1 BLAH 2 AWESOMENESS 3 BLAH
Python doğrulama adımları
adresindenPython.exe
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICESbaşlatın.Komut isteminde aşağıdaki Python betiğini yapıştırın.
import numpy import pandas from microsoftml import rx_logistic_regression, rx_featurize, rx_predict, get_sentiment # Create the data customer_reviews = pandas.DataFrame(data=dict(review=[ "I really did not like the taste of it", "It was surprisingly quite good!", "I will never ever ever go to that place again!!"])) # Get the sentiment scores sentiment_scores = rx_featurize( data=customer_reviews, ml_transforms=[get_sentiment(cols=dict(scores="review"))]) # Let's translate the score to something more meaningful sentiment_scores["eval"] = sentiment_scores.scores.apply( lambda score: "AWESOMENESS" if score > 0.6 else "BLAH") print(sentiment_scores)Puanları yazdırmak için Enter tuşuna basın. Çıktı aşağıdaki gibi olmalıdır:
>>> print(sentiment_scores) review scores eval 0 I really did not like the taste of it 0.461790 BLAH 1 It was surprisingly quite good! 0.960192 AWESOMENESS 2 I will never ever ever go to that place again!! 0.310344 BLAH >>>
Note
Tanıtım betikleri başarısız olursa, önce dosya konumunu denetleyin. BIRDEN çok SQL Server örneğine sahip sistemlerde veya tek başına sürümlerle yan yana çalışan örneklerde, yükleme betiğinin ortamı yanlış okuması ve dosyaları yanlış konuma yerleştirmesi mümkündür. Genellikle, dosyaları el ile doğru mxlib klasörüne kopyalamak sorunu çözer.
Önceden eğitilmiş modellerin kullanıldığı örnekler
Aşağıdaki bağlantı, önceden eğitilen modelleri çağıran örnek kodu içerir.
Araştırma ve kaynaklar
Şu anda kullanılabilen modeller yaklaşım analizi ve görüntü sınıflandırması için derin sinir ağı (DNN) modelleridir. Önceden eğitilen tüm modeller Microsoft'un Hesaplama Ağı Araç Seti (CNTK) kullanılarak eğitilmiştir.
Her ağın yapılandırması aşağıdaki başvuru uygulamalarına dayanıyordu:
ResNet-18ResNet-50ResNet-101AlexNet
Bu derin öğrenme modellerinde kullanılan algoritmalar ve CNTK kullanılarak nasıl uygulanıp eğitildikleri hakkında daha fazla bilgi için şu makalelere bakın: