今日で何日目だろうか…更新が毎日ではなくなってしまったのでタイトルの○○日目がまるで意味をなしていないです、すみません。
今日は、製造業様におけるよく聞くお困りごとを紹介したいともいます。
◆このブログを見てほしい人
- 製造業に努めている人
- 機械学習に興味がある人
- 僕のファン
製造業での最優先事項は設備を止めないこと
製造業において最も重要なことは「いかに設備を止めないか」ということ。
若干当たり前すぎる感じすらありますが、やはりこれがなかなかできてないんです。。
設備が止まってしまう理由はいくつかあります。例えば
- 設備が故障してしまい、製造ラインが止まってしまう
- 急に発注が入ってきてしまい対応できない
- 業務量に対して適切なシフトが組めず、製造が止まってしまう
- 労災発生
など様々な理由があります。
チョコ停なんかも数が増えるとチリツモで無視できないコストになるんだよねぇ
機械学習を使うことで様々な”困りごと”を解決できる
故障予測、異常検知
製造担当者は日々、いかに設備を止めないで目標生産数を達成するかに注力していると思います。
特に設備の故障による長期間のストップは避けたいと思うことでしょう。
予め故障を予測することができれば計画的にオーバーホールすることができます。
その願いを叶える手法の一つに「機械学習を使って異常や故障の発生を予測する」というものとがあります。
例えは、これまで設備をメンテナンスした記録や機械の稼働履歴といったデータがあれば、機械が今現在正常化どうかいわゆる異常検知をすることができます。
また、故障した履歴があればそこから教師データを作成して機械学習で故障を予測することも可能です。
発注量予測
他の悩みとしては在庫管理が挙げられます。
これまでの過去の発注に関する記録データがあれば、今後どのくらいの発注量が来るのかデータに基づいた予測をすることが可能です。
発注量を予測することができれば、様々なことへの展開が可能となります。
それに合わせて在庫管理やシフト管理もしやすくなると思います。
そして属人化解消へ
これまでを振り返ってみて、メンテナンスの時期や材料といった在庫の管理、シフト作成は人間の誰かが担当していることでしょう。
恐らくその方はこれまでに様々な知識や経験をしている大ベテランの方なのではないでしょうか。
大ベテランによる経験則こそが全て。そんな現場は少なくないはずです。
つまり仕事が属人化してしまっています。
この部分を個人の力技に頼らない方法が、データから根拠を持って予測しましょう、というのがデータドリブンな考え方です。
よほど古い機械でなければ、設備の稼働状況は常にログを取っていますし、作業記録として帳票も作っていると思います。
(手書き書類も立派なデータです。せめてエクセルに記載したいですが…)
そういったデータをかき集めて、予測モデルに食わせてやることで人間並みの予測ができてしまいます。
予測だけできても仕方ない、結局どう対策すればいいの?
製造業の中でも設備関連の機械学習プロジェクトではよくある話なのですが、予測すること自体にそこまでメリットはなく、結局故障してしまう原因やそれを防ぐためにはどうしたらよいのか知りたい。
ということろで悩んでるケースをよく聞きます。
そんな時でも機械学習は有効です。
機械学習には予測モデルを作成する上で、どの特徴量が予測に強い影響を与えるか?を副次的に算出することができます。
詳しくは過去のブログでも紹介していますのでこちらを「機械学習で行う予測以外の分析」
この機能を上手く使えば、たとえば設備の故障予測を行うと同時に、データのどこを見れば故障要因なのかを判断することができます。
これにより、次回のメンテナンス時期を計画的に決めたり、故障に対してなにかしらの策を講じることができます。
実際にあったお困りごと例
製造業の中でも、品質保証に携わっている方からあった品質検査に関するお話です。
その内容は、
「人間が五感で確認して下すOK/NGの判定を機械学習でやるこをはできないか?」
というもの。
最終的には人間が感覚で行っている検査を機械にやらせてコスト削減をしたいといったところでしょうか。
ここで言う五感とは、たとえば、”ボタンを押した際に変な音がする”とか、”表面上にわずかに傷がある”、”触り心地に違和感がある”といったものです。
人間はある種の優れた万能センサーを体中に持っています。
手の感触、目、耳、臭い、味などのすべてのセンサーを複合的に使って”何かおかしい”という違和感をアウトプットします。
この”何かおかしい”という事象をデータから判断することは非常に難しく、十分にデータがあり、機械学習を使ったとしても人間のように複合的に判断するということは至難の技です。
”何かおかしい”の”何か”をきちんと定義してやることが必要になります。
例えば”音”の良し悪しを判断するのであれば、人間が感覚で判断した「OKの時の音」と「NGのときの音」をしっかりデータとして取得してしまえば機械学習を使って同様の判断が可能となります。
ここで重要になるのは、「人間は何を根拠にOK/NGを判断しているのか?」です。
人間が感じる違和感をどのようにデータと紐づけるのか?が重要なのです。
先ほどの”音”であれば、音はデジタルデータに変換することが可能なので、分析することが可能です。
求めたい答えをこの音声波形データの中から探すことになります。
つまり、波形データの特徴(最大値、最小値、平均、山の数、カーブの角度などなど)を見れば、人間の感じる違和感とデータを紐づけることができるだろう!ということですね。
データから人間の違和感に繋がる特徴を見つけ出すというのは非常に難しいように聞こえてしまいます。
安心してください、ここから先はPython先生によって簡単に分析することができてしまいます。
今回の”音から違和感を分析する”というテーマであれば、以下の手順で機械的に簡単に特徴量抽出することができてしまいます。
- 音をデジタル化
- フーリエ変換を行い、周波数から特徴を分析
- tsfreshを使って波形から特徴量を抽出
- 機械学習予測モデルを作成
- ツリー系のアルゴリズムにあるPermutaition Importance機能を使って
「影響の高い特徴量=人間が重要と判断している特徴」として根拠に繋げる
(詳しくは過去ブログ)
以上の手順で、簡単に分析ができてしまいます!
Pythonを使ってもデータの前処理や加工がエグくない?
それは今後の課題ですね!
まとめ
- 製造業における困りごとは機械学習で解決できる!かも
- 製造業では予測結果よりもその原因に注目したい場合がある!
- 人間の超優れたセンサーをマネするロボットを実現するのは難しいけど不可能じゃない!
コメント