人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

たとえば1万件のデータをチェックするとして、そのデータが90%の確率で正しいと判断するためにはどういった方法があるでしょうか?

●質問者: stray_sheep
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:データ 確率
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● ToMmY
●19ポイント

どういう意味でしょうか?

データの整合性を調べるんでしょうか?それともアンケート結果の信憑性でしょうか?

後者は守備範囲外なので勘弁してくださいww

前者についてですが、MD5というものがあり、どんなものでも1つに特定できるといわれています。

http://ja.wikipedia.org/wiki/MD5

これだと100%しかチェックできませんが、プログラムで一字一句あわせていけばどれだけ正しいかもチェックできます。

http://www.cybernetic-survival.net/md5.htm

とりあえずMD5の算出のみ載せておきます。

ちょっと意味を取りにくかったので間違えてたらすみません。

◎質問者からの返答

ご回答ありがとうございます。

工場で行われている抜き取り検査みたいなものを、システムのテストに使うとどうなるのかなと、興味を持ちまして。

具体的には顧客データの1件1件について処理を施すスクリプトなのですが、最終的に何件ほどチェックすればほぼ正常に動いていると判断できるものでしょうか。

もちろんホワイトボックス的なチェックも必要でしょうが、ここはあくまでも興味本位の質問ということでご勘弁下さい。

最初のご回答でしたのでお礼は優遇させて頂きます。ありがとうございました。


2 ● aoun
●19ポイント

私はシステム系ではないですし、当件具体的に分かりませんので、何とも言えませんが、具体的にはどういうデータ要件なのでしょうか?。

ただ、似たような話であれば、初心者でも、マイクロソフトアクセスを使えば簡単にできます。

エクセルに地域住民1万行のデータベースがあるとします。住所、年齢、家族構成、などなど1行(1人)につき20列の項目がある仮定すると、データ単位は行ですので、1万行1万人分ですから、1万データです。1万データ×20項目なので、20万データではあっても1万データ(1万人分)です。

この1万人のデータが1人の漏れも無いのかどうか、点検する方法ならあります。ただし、正しいかどうか疑問なデータと、正しいとして手本に出来るデータの両方が必要となります。

上記例ですと、20万個1万人分のデータの正誤を点検したいとした時に

1万行1万人分の住民台帳か何かの氏名データをエクセルデータにしたものが手本としてあるならば、可能となります。

アクセスに両者のエクセルシートをテーブルとして載せておいて、氏名をKey列にして、照合させればいいだけです。初心者用のアクセス教本の水準ですぐ可能になります。氏名が一対一で対応し同じものが存在するものを抽出できます。例えばこれが90%以上であれば、90%以上は正と推測できます。

(氏名データがユニークでなければならない、とか、記述方法やデータ仕様が同じでなければならない、とか、照合結果が合致と出ても理論照合に過ぎませんから事実上は違うなど詳細はありますが)

◎質問者からの返答

ありがとうございます。

ちょっと私の意図とはずれていましたが、住所というテーマはずばり想定通りでした。

データの件数のチェックではなく、加工したデータが想定通りに変換されているかどうかをチェックしたいのですが、件数が多いのでどうしようかと思っています。

もちろんプログラム自体はテスト済みとします。といっても、住所データはナマモノですので最終的に抜き取り検査をして安心するための基準があれば知りたいところです。


3 ● apple-eater
●18ポイント

ならば、1から10000の乱数を10000の90%つまり1000個生成して、それをインデクスとするレコードをチェック関数で調べる。

これってモンテカルロ法になるのかな?

モンテカルロ法 - Wikipedia

◎質問者からの返答

ありがとうございます。

なるほど、モンテカルロ法というのがあるのですね。

ちょっと調べてみました。

解析的に解くことができない問題でも、十分多くの回数シミュレーションを繰り返すことにより、近似的に解を求めることができる。適用範囲が広く、問題によっては他の数値計算手法より簡単に適用できるが、高い精度を得ようとすれば計算回数が膨大になってしまうという弱点もある。

(IT用語辞典より)

確率的に完全に他に従属しないデータを扱う場合は有効のようですね。今回の場合は住所というデータの加工を想定しているので、ある程度の数をこなせば、残りもだいたい大丈夫だろうと想像できそうな気がします。つまりちこょっと従属してるというか・・・。このへん数学的になんとか表現できますでしょうか?


4 ● Mook
●18ポイント

全数調査ができない場合、母集団から抽出した標本を評価し、母集団の性質を推測する手法があります。

データの仮説検定、と呼ばれるものですが、これが今回のケースに適用できるでしょう。


http://ja.wikipedia.org/wiki/%E4%BB%AE%E8%AA%AC%E6%A4%9C%E5%AE%9...


このような統計処理の場合いつでも、ある確率の上で判断を行います。

わかりずらい表現ですが、「90% の確率で正しいということを、何%の確かさで確認する。」という方法です。


統計をある程度理解できないと、正確な判断ができないと思いますが、世の中の製品の品質というものは、多くはこのような方法で管理されています。

◎質問者からの返答

ありがとうございます。

仮説検定、ですね。

なかなか本格的な話題になってきました。

「90% の確率で正しいということを、何%の確かさで確認する。」

ちょっと難しいですね。よくよく考えてみるとシステムのテストの場合はデータ変換の仕組み自体は100%正確でないといけないため、

「100% の確率で正しいということを、何%の確かさで確認する。」

ということになるのでしょうか?

紹介いただいたURLだけではちょっと計算するのは難しそうですね。

ざっくりとでいいのですが具体的な数字というのは計算出来るものなのでしょうか?(疑問点に矛盾があったらすみません)


5 ● aiaina
●18ポイント

全数か抜き取りかは、品質の重要性と、御社の品質の能力しだいです。

初期は要求どおり全数を検査して、品質が安定して全数の必要が無いということがデータで示せるようになれば、お客さんも納得して、抜き取り検査に移行させてくれると思います。

抜取検査についてはJISに計数値検査における抜取検査手順(JIS Z 9015)というのがあります。

これにのっとっておこなうのがベターでしょう。

このへんの検査の緩め方も品質の教科書に書いてありますので、ここは難しくて・・・と言わず勉強しないと顧客の信頼は得られませんし、そういう公のルールに基づいて検査していると言えないと、お客さんも困ってしまいます。

がんばってくださいhttp://q.hatena.ne.jp/1151923407

◎質問者からの返答

ご指摘ありがとうございます。

そうですね、全数がベストなのはおっしゃるとおりです。

ただ、品質の安定をデータで示しにくいのがシステム開発の難しいところでもあります。

計数値検査における抜取検査手順(JIS Z 9015)は大変参考になりました。勉強して、また何かの形で業務に生かせればと思います。


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ