データの偏差を手掛かりに不正行為を予測する  

異なる複数の予測モデルを作成して評価し、予測モデルの精度に対するサンプリング手法の影響を確認する

Last updated | By Sharath Kumar RK, Manjula G Hosurmath, Vishal Chahal

Description

予測アナリティクスでは履歴データを使用して将来のイベントを予測します。通常は履歴データを使用して、重要な傾向を捕捉することを目的とした数学的モデルを作成します。作成した予測モデルを現在のデータに対して使用して、次に何が起こるのかを予測したり、最適な結果を得るために取るべきアクションを提案したりします。このコード・パターンでは、これと同じ手法に従って、クレジット・カード詐欺を検出するためのソリューションを作成します。予測モデルを使用すれば、不正行為の可能性があるアクティビティーを自動的に特定して優先順位を付けることができます。これにより、詐欺に対処する部署は、調査が必要になりそうなインシデントだけを調査できるようになります。このコード・パターンで、異なる複数のサンプリング手法によってデータの偏りに対処し、各種の統計アルゴリズムを使用して正確な予測を生成する方法を学んでください。

Overview

クレジット・カード詐欺の件数は世界中で増加の一途を辿っています。その被害額は、毎年 10 億ドル単位で増加しているほどです。クレジット・カード詐欺とは、取引の際にクレジット・カードやデビット・カードなどの決済カードを不正な資金源として使用するなど、決済カードが関連する窃盗や不正行為を表す広義の言葉です。ACI Worldwide および金融業界のコンサルティング会社である Aite Group が公開した 2016 年のデータによると、過去 5 年の間に、世界中でほぼ 3 人に 1 人の消費者がカード詐欺の被害に遭っています。ベンチマーク調査の結果でも、17 か国のうち 14 か国での調査で、2014 年から 2016 年までの間にカード詐欺の件数が増加していることが明らかになったと報告しています。2016 年の iovation/Aite Group の調査による金融詐欺に関するレポートには、クレジット・カード詐欺による損失は、2020 年までに米国だけでも 100 億ドルに上ることになるという予測が反映されています。このような状況の中、この驚くほどの数値を減らすためにテクノロジーを駆使することが必要不可欠となっています。

不正な取引は被害額が大きいとは言え、あらゆる取引を調査して不正を見つけるのではあまりにも費用がかかり、非効率的です。あらゆる取引を調査できるとしても、調査対象の消費者が無実であれば、カスタマー・エクスペリエンスが損なわれることになり、顧客を失いかねません、予測モデルを使用すれば、詐欺行為の可能性があるアクティビティーを自動的に特定して優先順位を付けることができます。他の有効なソリューションと比べ、人間による誤りのない、効率的かつ正確なソリューションとなります。このソリューションで目標となるのは、不正と予測されたものの、実際には不正ではないインスタンス (誤検出) と、不正であっても予測されなかったインスタンス (検出漏れ) を最小限に減らすことです。

このコード・パターンをひととおり完了すると、以下の方法がわかるようになります。

  • バギングとブースティングという統計手法のそれぞれを使用して予測モデルを作成する
  • 異なる統計モデルを実行して、それぞれの結果を評価する
  • 多数集団と少数集団との間のバランスがとれるようにデータをサンプリングし、データの偏りに対処する
  • サンプリング手法によって予測モデルの精度が向上する仕組みを実証する

Flow

  1. Watson Studio にログインして、オブジェクト・ストレージを組み込んだインスタンスを作成します。
  2. CSV ファイルをオブジェクト・ストレージにアップロードします。
  3. URL から Jupyter Notebook をインポートします。
  4. ノートブック内で予測モデルとサンプリング手法を実行します。
  5. 予測モデルの結果をオブジェクト・ストレージにエクスポートします。

Instructions

詳細な手順については、README を参照してください。手順の概要は以下のとおりです。

  1. IBM Cloud でアカウントを作成します。
  2. 新しい Watson Studio プロジェクトを作成します。
  3. ノートブックを作成します。
  4. データを追加します。
  5. データフレームを挿入します。
  6. ノートブックを実行します。
  7. 結果を分析します。

Related Blogs

IBM Developer へようこそ

新しい IBM Developer へようこそ!私たちはこの新しいプロジェクトに大いに張り切っていますが、まずは皆さんについて、つまり開発者についてお話ししたいと思います。 私は開発者である皆さんを称賛します。私自身も開発者として、この業界で起きていること、つまりクラウド、データ/アナリティクス、人工知能、トランザクション、ブロックチェーンのコンバージェンスを目にしていますが、開発者の皆さんの、文字どおりすぐに新しいテクノロジーに対応する能力に心から敬服します。これまでの歴史全体を通して、ソフトウェア開発者という職業を、今ほど誇らしく思える時代はありません。IBM での私たちの使命は、開発者という専門的職業を、世界で最も尊敬すべき、最も需要の高い職業として受け止められるようにすることです。 なぜなら、開発者は毎日、未来を築いているからです。このサイトは、皆さんと一緒に築いていきたい未来を映し出し、讃えるためのものです。 私たちのチームは、開発者のアドボケイト (支持者)、デザイナー、コンテンツ編集者で構成されています。この有能なチームが、必要なツールを確実に開発者に提供できるよう、全力を尽くします。 間違いなく、このサイトは皆さんのサイトです。私たちは開発者の価値観を反映するために、コード、コンテンツ、コミュニティーからなる IBM Developer サイトを立ち上げました。私たちがこのサイトで目標としているのは、皆さんが開発者としての責務をより迅速に、よりスマートに、より効果的に果たせるよう支援することに尽きます。 この目標を達成する IBM Developer ならではの手段として、コード、コンテンツ、コミュニティーを 1 つのエンティティーにまとめています。 コード 開発者の能力は、開発者が世に送り出すコードにそのまま反映されます。開発者の能力がコードの威力を超えることはありません。だからこそ、開発者が非の打ちどころのない美しいコードをより迅速に作成し、競争相手よりも迅速にコードをデプロイして市場に送り出せるようサポートすることが、私たちの任務だと思っているのです。ただそれだけです。 IBM Developer を開始するきっかけとなったのは、開発者にフォーカスしたサイトを作成したらどうだろうかというアイデアです。そのサイトでコードを前面に押し出し、実際の問題を解決することを重点に置き、開発者がその責務をより迅速に、よりスマートに、より効果的に果たすために利用できるようにするには、どこから始めればよいだろうか考えました。 答えは明白です。コードが出発点となります。 開発者の目標は、開発者自身と同じく、それぞれに異なります。意図も、情熱も、才能もそれぞれに異なる開発者が取り組むプロジェクトは、とんでもなくシンプルなものから気が遠くなるほどに複雑なものまで、多岐にわたります。 独自のアプリケーションを開発して数分で稼働できるよう開発者をサポートするためには、すぐに使えるコードを用意し、開発者が簡単にそれを入手してフォークし、本番アプリケーションに組み込めなければなりません。単純にとらえ過ぎていると思われるかもしれませんが、文字どおり単純な話なのです。そして、コードをすぐに利用できるようにする手段となるのが、私たちが作成するコンテンツです。 コンテンツ 開発者が利用するコンテンツについてと、そうしたコンテンツをどのような方法で利用したいかについて、開発者たちとかなりの時間をかけて話し合いました。その結果、クラウド、データ、AI、ブロックチェーンなどのテクノロジーを使用して特定の機能をアプリケーションに統合する方法を垣間見られる、数百のコード・パターンを作成することになりました。どのパターンをクリックしても、最初に表示されるのは、コードを取得するための「コードを入手する」ボタンです。このボタンをクリックしてコードを取得し、開発を始めることができます。 コード・パターンはこのサイトの特徴的なコンテンツですが、その一方で、皆さんは特定のテクノロジーを使用して特定のタスクに取り組む方法について理解するためのチュートリアルもお望みのはずです。そこで、コンテキストを説明し、最先端のテクノロジーに関する理解を広げる、SME による数々の記事も用意しています。また、IBM Developer 動画デモでは特定のテクノロジーを使用する手順を案内し、インタビューでは最新の傾向に対する業界トップの見解を紹介しています。さらに、ニュース・セクションでは、テクノロジー分野での最新の動向に関する洞察を得ることができます。 テクノロジー分野といえば、IBM Developer の寄稿者たちがフォーカスしている主なテクノロジー分野は 20 を超えていますが、コンテンツには 50 以上の主題別にタグを付けているので、探しているコンテンツを簡単に見つけられるようになっています。私たちは IBM であり、開発を公にすることの価値を信じています。このことから、サイトでは全体にわたって、オープンソース・テクノロジーを大きく取り上げていることを見てとれるはずです。200 を超えるオープンソース・プロジェクトを話題にしたコンテンツに、ワンクリックでアクセスできます。これらのプロジェクトを利用して、変更を加え、その成果を IBM Developer にコントリビュートしてください。 私たちは多言語のマルチクラウドの世界に生きているので、IBM 社員以外の人々からの話も聞きたいはずです。そのため、今後数週間にわたり、開発者コミュニティーに大々的にコントリビューションを公開することになっています。そうです。コンテンツに対するこうしたアプローチをオープンソースのように公開することで、より大きなコミュニティーからのコントリビューションを促そうとしているのです。 公開したコンテンツのすべては、エラスティック・サーチを通じて一体化されます。 コミュニティー IBM Coder Community は、開発者たちに、イノベーションを生み、アイデアを交換し、学習する場であるコミュニティーに参加してもらうためのものです。つまり、開発者同士を結び付けて経験を共有するハブの役割を果たします。 IBM...

続けて読む IBM Developer へようこそ

Call for Code Challenge 2018(9/28応募締切!)- まずは参加登録して、自然災害に役立つ IBM Cloud のサービスに触れてみよう

みなさまこんにちは! 年々、テレビのニュースや新聞を見て、異常気象による集中豪雨や猛暑が各地で発生していると感じている方は多いのではないでしょうか。自然災害による甚大な被害をもたらしているのは日本だけではありません。「自然災害」は、今、世界が立ち向かうべき最も大きな試練となっています。 IBMは、2018年5月24日、パートナー団体と共に「Call for Code」をいう取り組みを発表し、世界中のデベロッパーが最新の技術を駆使して、コードで世界にポジティブな変化を与える支援をはじめました。 2018年の Call for Code チャレンジでは、「自然災害」をテーマに自然災害を打ち破り、地域社会や自然災害対策を強化を目指し、IBM Cloud サービスを活用したソリューションを構築するコンペティッションを開催します。18歳以上の個人または最大5名までのチームで参加することができます。優勝チームには USD200,000 (2,200万円相当) が贈られます。 これを機に皆さんにも「Call for Code」にご参加いただき、クラウド、データ、AI、ブロックチェーンを活用するためのIBMのテクノロジーにも触れていただければと思います。詳しくはサイトをご覧ください。 Call for Code(日本語サイト) Call for Code への参加するまでの手引き(日本語解説資料) IBM Code Patterns : Watson を活用した AI やクラウドなどのアプリ開発に役立つサンプルコードを提供

続けて読む Call for Code Challenge 2018(9/28応募締切!)- まずは参加登録して、自然災害に役立つ IBM Cloud のサービスに触れてみよう

Related Links

Data science

知識と洞察を抽出するために、構造化データと非構造化データを分析するシステムと科学的手法。

Analytics

データを解析し、情報を得るためのパターンを見つける。

Python

Python is a programming language that lets you work quickly and integrate systems more effectively.