IBM Cloud Blog
信頼できるAIを実現するWatson OpenScaleの始め方①
2019年05月22日
カテゴリー IBM Cloud Blog
記事をシェアする:
「AI」という言葉が世の中に急速に普及しており、新聞、雑誌等で目にしない日はないというほどの広まりを見せています。IBMの調査でも82%のお客様がビジネスにAIの適用を検討しているとの結果になっています。
一方で多くのお客様がAIの適用にさまざまなハードルがあると感じています。その中でも大きな割合を占めるのが、AIの信頼性や透明性、すなわちAIの判断を信じても大丈夫か、AIの判断結果に対して説明責任を果たすことができるかという問題です。これは多くの場合、AIによる意思決定支援がブラックボックス化されており、その判断結果の根拠を明確に説明できないことに起因しています。
Watson OpenScaleはAIの「ブラックボックス問題」に対処するための製品です。本連載ではIBM Cloud上のWatson OpenScaleを実際に動かしながらその機能を理解し、実ビジネスで必要な信頼性や透明性とはどういうことか、Watson OpenScaleがどのようにこれらの問題に対処できるかを理解することを目的としています。
1回目はWatson OpenScaleでモニタリングの対象とする機械学習モデル(AI)をIBMの機械学習モデル実行環境であるWatson Machine Learning上で稼働させるところまでを実施します。使用するモデルはWatson Machine Learningがサンプルとして提供している信用リスクモデル(Credit Riskモデル)です。この機械学習モデルでは顧客のクレシット利用履歴、貸付金額、勤続年数、年齢、性別などを入力として、信用リスクを「リスクあり(Risk)」「リスクなし(No Risk)」の2種類に分類します。モデルの判定によりRisk=70%、No Risk=30%のような結果を得ることができますが、Watson OpenScaleではこのモデルに対して、以下のような観点でのモニタリングをします。
- Accuracy – 判定精度は十分か
モデルは必ずしも正しい判定結果を返すとは限りません。ユーザーからのフィードバック(正解データ)をもとに、モデルの精度を測定します。
- Fairness – 公正な判定結果か
モデルの判定が特定のグループに有利になっているようなことがないか。例えば女性よりも男性の方が良い結果(この場合は”No Risk”)となる割合が大きい場合、モデルの判定が公正ではない、と言えます。
- Explainability – 結果を説明可能か
Risk =70%という結果は、例えばクレジット利用履歴、勤続年数、年齢等のどの要素が寄与しているのか。
機械学習モデルのデプロイ
モデルのデプロイのための設定を行います。
- IBM Cloudにログインし、以下のサービスのインスタンスを作成します。今回は全てLiteプランで作成します。
・Watson Studio
・Watson Machine Learning
・Object Storage
- Watson Studio (英語)にログインし、Create Project -> Standard を選択します。
- 適当な名前をつけてプロジェクトを作成します。
- プロジェクトのSettingタブを選択し、Associated services セクションの Add serviceからWatsonを選択します。
- Machine LearningタイルのAddをクリックし、作成済みのインスタンスを選択します。
- Assetsタブを選択し、Watson Machine Learning modelsセクションのNew Watson Machine Learning modelを選択します。
- Select model typeでFrom sampleを選択し、リストされるサンプルからCredit Riskモデルを作成します。
- Deploymentsタブを選択し、Add Deploymentを選択します。
- 名前を入力してデプロイメントを保存します。
- STATUSがINITIALIZINGからDEPLOY_SUCCESSになると、モデルがWatson Machine Learning上で稼働したことになります。(表示が変わらない場合は画面をリロードしてみてください。)
- 稼働しているモデルはブラウザ上でテストすることができます。デプロイメントの名前(credit-risk-deploy)をクリックし、Testタブを選択すると、Enter input data に入力した値にもとづく予測値を取得することができます。ここではProvide input data as JSONを選択し、JSONフォーマットのデータでテストしてみます。
- サンプルとして以下のようなデータをテキストボックスに入力してPredictを選択すると、Watson Machine Learningからの応答が表示されます。
{ "fields": ["CheckingStatus","LoanDuration","CreditHistory","LoanPurpose","LoanAmount","ExistingSavings","EmploymentDuration","InstallmentPercent","Sex","OthersOnLoan","CurrentResidenceDuration","OwnsProperty","Age","InstallmentPlans","Housing","ExistingCreditsCount","Job","Dependents","Telephone","ForeignWorker"], "values": [["0_to_200",48,"credits_paid_to_date","radio_tv",5951,"less_100","1_to_4",2,"female","none",2,"real_estate",22,"none","own",1,"skilled",1,"none","yes"]] }
こちらの結果から、”No Risk”と判定されたことが分かります。
ここまででWatson Machine Learning上で機械学習モデルを稼働させることができたので、次回はこのモデルをWatson OpenScaleでモニタリングする方法を紹介します。
Citrix VM Tools(Xentools)の更新について (5/5)
IBM Cloud Blog, IBM Cloud テクニカルサポート
IBM Cloudをご利用いただきありがとうございます。 前回はxentools7.xと9.xが重複導入されている環境の9.xのクリーンインストール手順についてお話させていただきました。 今回はWindwows Serv ...続きを読む
Citrix VM Tools(Xentools)の更新について (4/5)
IBM Cloud Blog, IBM Cloud テクニカルサポート
IBM Cloudをご利用いただきありがとうございます。 前回はXentools7.xから9.xへのアップグレード手順についてお話させていただきました。 今回はxentools7.xと9.xが重複導入されている環境の9. ...続きを読む
Citrix VM Tools(Xentools)の更新について (3/5)
IBM Cloud Blog, IBM Cloud テクニカルサポート
IBM Cloudをご利用いただきありがとうございます。 前回はXentools9.xの更新についてお話させていただきました。 今回はXentools7.xから9.xへのアップグレード手順について、ご案内していきます。 ...続きを読む