IBM Cloud Blog

信頼できるAIを実現するWatson OpenScaleの始め方①

記事をシェアする:

「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%という結果は、例えばクレジット利用履歴、勤続年数、年齢等のどの要素が寄与しているのか。

 

機械学習モデルのデプロイ

モデルのデプロイのための設定を行います。

  1. IBM Cloudにログインし、以下のサービスのインスタンスを作成します。今回は全てLiteプランで作成します。
    ・Watson Studio
    Watson Studio
    ・Watson Machine Learning
    Watson Machine Learning
    ・Object Storage
    Object Storage
  2. Watson Studio (英語)にログインし、Create Project -> Standard を選択します。
    Watson Studioにログインし、Create Project -> Standard を選択します。
  3. 適当な名前をつけてプロジェクトを作成します。
    適当な名前をつけてプロジェクトを作成します。
  4. プロジェクトのSettingタブを選択し、Associated services セクションの Add serviceからWatsonを選択します。
    プロジェクトのSetting タブを選択し、Associated services セクションの Add service からWatsonを選択します。
  5. Machine LearningタイルのAddをクリックし、作成済みのインスタンスを選択します。
    Machine LearningタイルのAddをクリックし、作成済みのインスタンスを選択します。
  6. Assetsタブを選択し、Watson Machine Learning modelsセクションのNew Watson Machine Learning modelを選択します。
    Assetsタブを選択し、Watson Machine Learning models セクションのNew Watson Machine Learning modelを選択します。
  7. Select model typeFrom sampleを選択し、リストされるサンプルからCredit Riskモデルを作成します。
    Select model typeでFrom sampleを選択し、リストされるサンプルからCredit Riskモデルを作成します。
  8. Deploymentsタブを選択し、Add Deploymentを選択します。
    Deploymentsタブを選択し、Add Deploymentを選択します。
  9. 名前を入力してデプロイメントを保存します。
    名前を入力してデプロイメントを保存します。
  10. STATUSがINITIALIZINGからDEPLOY_SUCCESSになると、モデルがWatson Machine Learning上で稼働したことになります。(表示が変わらない場合は画面をリロードしてみてください。)
    STATUSがINITIALIZINGからDEPLOY_SUCCESSになると、モデルがWatson Machine Learning上で稼働したことになります。(表示が変わらない場合は画面をリロードしてみてください。)
  11. 稼働しているモデルはブラウザ上でテストすることができます。デプロイメントの名前(credit-risk-deploy)をクリックし、Testタブを選択すると、Enter input data に入力した値にもとづく予測値を取得することができます。ここではProvide input data as JSONを選択し、JSONフォーマットのデータでテストしてみます。
    稼働しているモデルはブラウザ上でテストすることができます。デプロイメントの名前(credit-risk-deploy)をクリックし、Testタブを選択すると、Enter input dataに入力した値にもとづく予測値を取得することができます。ここではProvide input data as JSONを選択し、JSONフォーマットのデータでテストしてみます。
  12. サンプルとして以下のようなデータをテキストボックスに入力して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”と判定されたことが分かります。
    こちらの結果から、”No Risk” と判定されたことが分かります。
    ここまででWatson Machine Learning上で機械学習モデルを稼働させることができたので、次回はこのモデルをWatson OpenScaleでモニタリングする方法を紹介します。

More IBM Cloud Blog stories

信頼できるAIを実現するWatson OpenScaleの始め方③

IBM Cloud Blog

前回はWatson OpenScaleのインスタンスを作成し、モデルのモニタリングの設定を行いました。今回はデ ...続きを読む


信頼できるAIを実現するWatson OpenScaleの始め方②

IBM Cloud Blog

前回は信用リスクモデルを稼働させるところまでを実施しました。今回はWatson OpenScaleのインスタン ...続きを読む


リソース不⾜への対策

IBM Cloud Blog

業務・IT環境・運用管理、それぞれのリソース不足に最適な解決策と事例 「リソース不足」という難儀な言葉は、いた ...続きを読む