意見交換
テーマ、知りたいこと
健常者(正常)と障害者(異常)のそれぞれから動作解析装置で得られたデータを学習させ,分類していない未知のデータを読み込み,正常か異常の判定を行う分類モデルをpythonで作成したいです。
背景、状況
健常者と障害者に歩行を行なっていただき,その状況を動作解析装置で計測したデータを所持しています。データは,1列目:フレーム数,2列目:時間,3列目:頭部マーカー情報,4列目:肩マーカー情報…(その他多くのマーカー情報)のように格納されております。
心電図のような波形データのどこの部分に異常があるかを判定するためモデルを作成したというサイトは散見されますが,該当の波形全体をみて正常か異常かを判定するためのモデルの作成を説明している情報が見つかりません…
上記の処理を解決する方法,わかりやすく説明しているサイトや書籍などをご教示いただけますと幸いです。
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
下記のような質問は推奨されていません。
- 質問になっていない投稿
- スパムや攻撃的な表現を用いた投稿
適切な質問に修正を依頼しましょう。
回答5件
#1
総合スコア2768
投稿2023/02/02 04:15
編集2023/02/05 01:452023-02-05追記
脳波の分析例
ライセンスの明記はありませんが「てんかん患者(?)脳波をGNN(グラフニューラルネットワーク)で捌いて評価した」というものもありますね。これの方が質問の意図に近そうに思います。「発作の検出云々」とあるので、波形データをずっと見ていったときに、発作が起きた時に「発作だ!」と認識させるような使い方ができそうに思います。
――もう少し根気よく探せばライセンス的に問題ないものもあるかと思いますが、研究・開発用途(商売をしない)というのであればメールで「あなたのソースコードを使って発表をしたいが、クレジットに名前を載せさせてもらってもよいか」くらいの感じの対応をすれば彼らの論文の引用回数が増えますので悪い顔はされないだろうと思います。
出典:https://github.com/tsy935/eeg-gnn-ssl
間接位置の推定からの分類の例
10分くらいググると、一例として(今回の課題とは用途は違うかもしれませんが、データを差し替えれば手法自体は)Action recognitionと呼ばれるタスクの解法が使えそうなことが分かります。ここで拾い上げたキーワードがAction recognitionです。
※なぜAction recognitionという単語に行きついたかというと、時系列データを捌くLSTMというネットワーク構造と、姿勢認識で使われるMediapipeというライブラリを組み合わせてグーグル検索した結果、「Action recognition」という単語に行きついた具合です。
なので、
-
"Action recognition" site:github.comとグーグル検索してみる
-
"Action recognition" site:paperswithcode.comとグーグル検索してみる
といろいろ出てきます。
出典:https://paperswithcode.com/sota/action-recognition-in-videos-on-something
たとえば、FacebookresearchがApacheライセンス2.0(要旨:商用OK、コード開示義務なし、ただしクレジットの表示は必要)で公開しているSlowFastはどうでしょうか?
ファイルがでかくて画像をアップロードできませんでしたが、同リポジトリのGIF画像を見て頂けると何ができるか分かりやすいと思います。2値分類ですので、こんなに「立っている」「見つめている」「ものを持っている」のような分類ではなく、「健常」「リスクあり」(+ほぼほぼ確定)のような2~3値分類の問題に差し替えられそうに思います。
出典:https://github.com/facebookresearch/SlowFast/raw/main/demo/ava_demo.gif
元の投稿
今回の課題のデータについて、イメージできるような説明(合ってますか?)
例えばですが、PythonのライブラリでいうOpenPoseやMediapipeのような、1フレームにおける人毎について全身の関節ごとの画像上のXY座標and/or実際のXYZメートル座標のようなものが各列に収まっているデータを想定しました(細かいことはさておき、です)。
本題とは違いますが、心電図などの~
ご指摘の通り、心電図などのデータは1次元のデータが高さを持っているような波形として現れます。心電図を捌いたことは無いのでわかりませんが、センサごとにほかのセンサの値と緩く連動しているかもしれませんし、全く別の動きもあることもあるかもしれません。こういった場合はほかのセンサの値を気にすることなく波形から特徴量だけ吸い出して「一軸だけ気にすればいい×センサ数」のような捌き方ができます。
じゃあ、軸(列)毎の関係性をどう表現するよ?
波形全体をみて正常か異常かを判定するためのモデル
データの理解の整理:
画像では1フレームごとにどんな姿勢かを推定することになると思いますし、動画であれば近傍●フレーム(いくつが良いかは検討もつきません)を使って同じようなことをするようになるのだと思います。
仮に私がするならば:
仮に関節の位置を使った動作推定(立っている、歩いている等)であれば、こういう関節群から何をしているか推定するのが得意な手法は、一般的にはTransformerやGNN(Graph Neural Network)だろうと思います。
という感じでキーワード検索をすると…:
大体こういった「世界中のみんなが課題として抱えているリストにあるあるな感じの課題」を解決するための手法は、論文で既に公開されていて、しかも運が良ければ実際に動かせるコードも公開されていて、さらに運が良いと非GPLなライセンスで公開されています。あとは、どれがいいかなとえり好みするだけです。
これができるサイトはpaperswithcode.comです。URLの例では、MicrosoftのCOCOデータセットという巨大な画像データセットに含まれている人の動作を認識させよう、というもののようです。こんな感じで探っていくと沢山手法がヒットしますので、好みのものを使えばよろしいかと思います。
出典:https://paperswithcode.com/sota/human-object-interaction-detection-on-v-coco
タイトルくらいしか見ておりませんが、恐らく私が先に挙げたTransomerやGNNをベースにした手法が並んでいることだろうと思います。あと何年この状況が続くかは分かりませんが、恐らく斬新な手法が現れるまで、これらがあと数年はその斬新な手法を独占し続けるものと思います。
#2
総合スコア2768
投稿2023/02/02 04:15
編集2023/02/05 01:45
2023-02-05追記
脳波の分析例
ライセンスの明記はありませんが「てんかん患者(?)脳波をGNN(グラフニューラルネットワーク)で捌いて評価した」というものもありますね。これの方が質問の意図に近そうに思います。「発作の検出云々」とあるので、波形データをずっと見ていったときに、発作が起きた時に「発作だ!」と認識させるような使い方ができそうに思います。
――もう少し根気よく探せばライセンス的に問題ないものもあるかと思いますが、研究・開発用途(商売をしない)というのであればメールで「あなたのソースコードを使って発表をしたいが、クレジットに名前を載せさせてもらってもよいか」くらいの感じの対応をすれば彼らの論文の引用回数が増えますので悪い顔はされないだろうと思います。
出典:https://github.com/tsy935/eeg-gnn-ssl
間接位置の推定からの分類の例
10分くらいググると、一例として(今回の課題とは用途は違うかもしれませんが、データを差し替えれば手法自体は)Action recognitionと呼ばれるタスクの解法が使えそうなことが分かります。ここで拾い上げたキーワードがAction recognitionです。
※なぜAction recognitionという単語に行きついたかというと、時系列データを捌くLSTMというネットワーク構造と、姿勢認識で使われるMediapipeというライブラリを組み合わせてグーグル検索した結果、「Action recognition」という単語に行きついた具合です。
なので、
-
"Action recognition" site:github.comとグーグル検索してみる
-
"Action recognition" site:paperswithcode.comとグーグル検索してみる
といろいろ出てきます。
出典:https://paperswithcode.com/sota/action-recognition-in-videos-on-something
たとえば、FacebookresearchがApacheライセンス2.0(要旨:商用OK、コード開示義務なし、ただしクレジットの表示は必要)で公開しているSlowFastはどうでしょうか?
ファイルがでかくて画像をアップロードできませんでしたが、同リポジトリのGIF画像を見て頂けると何ができるか分かりやすいと思います。2値分類ですので、こんなに「立っている」「見つめている」「ものを持っている」のような分類ではなく、「健常」「リスクあり」(+ほぼほぼ確定)のような2~3値分類の問題に差し替えられそうに思います。
出典:https://github.com/facebookresearch/SlowFast/raw/main/demo/ava_demo.gif
元の投稿
今回の課題のデータについて、イメージできるような説明(合ってますか?)
例えばですが、PythonのライブラリでいうOpenPoseやMediapipeのような、1フレームにおける人毎について全身の関節ごとの画像上のXY座標and/or実際のXYZメートル座標のようなものが各列に収まっているデータを想定しました(細かいことはさておき、です)。
本題とは違いますが、心電図などの~
ご指摘の通り、心電図などのデータは1次元のデータが高さを持っているような波形として現れます。心電図を捌いたことは無いのでわかりませんが、センサごとにほかのセンサの値と緩く連動しているかもしれませんし、全く別の動きもあることもあるかもしれません。こういった場合はほかのセンサの値を気にすることなく波形から特徴量だけ吸い出して「一軸だけ気にすればいい×センサ数」のような捌き方ができます。
じゃあ、軸(列)毎の関係性をどう表現するよ?
波形全体をみて正常か異常かを判定するためのモデル
データの理解の整理:
画像では1フレームごとにどんな姿勢かを推定することになると思いますし、動画であれば近傍●フレーム(いくつが良いかは検討もつきません)を使って同じようなことをするようになるのだと思います。
仮に私がするならば:
仮に関節の位置を使った動作推定(立っている、歩いている等)であれば、こういう関節群から何をしているか推定するのが得意な手法は、一般的にはTransformerやGNN(Graph Neural Network)だろうと思います。
という感じでキーワード検索をすると…:
大体こういった「世界中のみんなが課題として抱えているリストにあるあるな感じの課題」を解決するための手法は、論文で既に公開されていて、しかも運が良ければ実際に動かせるコードも公開されていて、さらに運が良いと非GPLなライセンスで公開されています。あとは、どれがいいかなとえり好みするだけです。
これができるサイトはpaperswithcode.comです。URLの例では、MicrosoftのCOCOデータセットという巨大な画像データセットに含まれている人の動作を認識させよう、というもののようです。こんな感じで探っていくと沢山手法がヒットしますので、好みのものを使えばよろしいかと思います。
出典:https://paperswithcode.com/sota/human-object-interaction-detection-on-v-coco
タイトルくらいしか見ておりませんが、恐らく私が先に挙げたTransomerやGNNをベースにした手法が並んでいることだろうと思います。あと何年この状況が続くかは分かりませんが、恐らく斬新な手法が現れるまで、これらがあと数年はその斬新な手法を独占し続けるものと思います。
ご返信が遅くなって申し訳ございません。
心電図と動作解析データから得られるデータの違いも踏まえ,ご丁寧にご教示いただきありがとうございます!私自身,非エンジニアでなく医療職のため情報に疎く,このようなサイトを教えていただけて非常に勉強になります。
動作解析装置で得られたデータを学習させ,正常か異常の判定を行う分類モデルを作成している情報がないか私の方で確認してみます。もしこれが近いんじゃないかっていう情報があれば,お声掛けいただけると幸いです(図々しいお願いで申し訳ございません…)。
下記のような回答は推奨されていません。
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
#3
総合スコア2768
投稿2023/02/02 04:15
編集2023/02/05 01:45
2023-02-05追記
脳波の分析例
ライセンスの明記はありませんが「てんかん患者(?)脳波をGNN(グラフニューラルネットワーク)で捌いて評価した」というものもありますね。これの方が質問の意図に近そうに思います。「発作の検出云々」とあるので、波形データをずっと見ていったときに、発作が起きた時に「発作だ!」と認識させるような使い方ができそうに思います。
――もう少し根気よく探せばライセンス的に問題ないものもあるかと思いますが、研究・開発用途(商売をしない)というのであればメールで「あなたのソースコードを使って発表をしたいが、クレジットに名前を載せさせてもらってもよいか」くらいの感じの対応をすれば彼らの論文の引用回数が増えますので悪い顔はされないだろうと思います。
出典:https://github.com/tsy935/eeg-gnn-ssl
間接位置の推定からの分類の例
10分くらいググると、一例として(今回の課題とは用途は違うかもしれませんが、データを差し替えれば手法自体は)Action recognitionと呼ばれるタスクの解法が使えそうなことが分かります。ここで拾い上げたキーワードがAction recognitionです。
※なぜAction recognitionという単語に行きついたかというと、時系列データを捌くLSTMというネットワーク構造と、姿勢認識で使われるMediapipeというライブラリを組み合わせてグーグル検索した結果、「Action recognition」という単語に行きついた具合です。
なので、
-
"Action recognition" site:github.comとグーグル検索してみる
-
"Action recognition" site:paperswithcode.comとグーグル検索してみる
といろいろ出てきます。
出典:https://paperswithcode.com/sota/action-recognition-in-videos-on-something
たとえば、FacebookresearchがApacheライセンス2.0(要旨:商用OK、コード開示義務なし、ただしクレジットの表示は必要)で公開しているSlowFastはどうでしょうか?
ファイルがでかくて画像をアップロードできませんでしたが、同リポジトリのGIF画像を見て頂けると何ができるか分かりやすいと思います。2値分類ですので、こんなに「立っている」「見つめている」「ものを持っている」のような分類ではなく、「健常」「リスクあり」(+ほぼほぼ確定)のような2~3値分類の問題に差し替えられそうに思います。
出典:https://github.com/facebookresearch/SlowFast/raw/main/demo/ava_demo.gif
元の投稿
今回の課題のデータについて、イメージできるような説明(合ってますか?)
例えばですが、PythonのライブラリでいうOpenPoseやMediapipeのような、1フレームにおける人毎について全身の関節ごとの画像上のXY座標and/or実際のXYZメートル座標のようなものが各列に収まっているデータを想定しました(細かいことはさておき、です)。
本題とは違いますが、心電図などの~
ご指摘の通り、心電図などのデータは1次元のデータが高さを持っているような波形として現れます。心電図を捌いたことは無いのでわかりませんが、センサごとにほかのセンサの値と緩く連動しているかもしれませんし、全く別の動きもあることもあるかもしれません。こういった場合はほかのセンサの値を気にすることなく波形から特徴量だけ吸い出して「一軸だけ気にすればいい×センサ数」のような捌き方ができます。
じゃあ、軸(列)毎の関係性をどう表現するよ?
波形全体をみて正常か異常かを判定するためのモデル
データの理解の整理:
画像では1フレームごとにどんな姿勢かを推定することになると思いますし、動画であれば近傍●フレーム(いくつが良いかは検討もつきません)を使って同じようなことをするようになるのだと思います。
仮に私がするならば:
仮に関節の位置を使った動作推定(立っている、歩いている等)であれば、こういう関節群から何をしているか推定するのが得意な手法は、一般的にはTransformerやGNN(Graph Neural Network)だろうと思います。
という感じでキーワード検索をすると…:
大体こういった「世界中のみんなが課題として抱えているリストにあるあるな感じの課題」を解決するための手法は、論文で既に公開されていて、しかも運が良ければ実際に動かせるコードも公開されていて、さらに運が良いと非GPLなライセンスで公開されています。あとは、どれがいいかなとえり好みするだけです。
これができるサイトはpaperswithcode.comです。URLの例では、MicrosoftのCOCOデータセットという巨大な画像データセットに含まれている人の動作を認識させよう、というもののようです。こんな感じで探っていくと沢山手法がヒットしますので、好みのものを使えばよろしいかと思います。
出典:https://paperswithcode.com/sota/human-object-interaction-detection-on-v-coco
タイトルくらいしか見ておりませんが、恐らく私が先に挙げたTransomerやGNNをベースにした手法が並んでいることだろうと思います。あと何年この状況が続くかは分かりませんが、恐らく斬新な手法が現れるまで、これらがあと数年はその斬新な手法を独占し続けるものと思います。
細部に渡ってご教示いただき心より感謝申し上げます。
私一人の技量だけではここまでの情報に辿り着くことができず,本当に助かりました!あとは私が技術的にできるかどうかという(大きな)問題もあるため,terateilで皆様のお力を借りながら,実現したいことを進めて参ります。
下記のような回答は推奨されていません。
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
#4
総合スコア7576
投稿2023/02/06 04:23
健常者と障害者に歩行を行なっていただき,その状況を動作解析装置で計測したデータを所持しています。
歩行データなら周期性があると思うので、これが参考になるかも
生活に溶け込む人工知能による病気発見:医工連携におけるLessons Learned
(20ページ〜)
下記のような回答は推奨されていません。
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
#5
総合スコア7576
投稿2023/02/06 04:23
健常者と障害者に歩行を行なっていただき,その状況を動作解析装置で計測したデータを所持しています。
歩行データなら周期性があると思うので、これが参考になるかも
生活に溶け込む人工知能による病気発見:医工連携におけるLessons Learned
(20ページ〜)
有意義な情報をご教示いただきありがとうございます!
様々な方からご助言いただけて嬉しい限りです。ご参考にさせていただきます!
下記のような回答は推奨されていません。
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
このような回答には修正を依頼しましょう。
関連した質問
意見交換
受付中
WebARのメリットを教えてください。またWebARのメリットを人に教えるいい方法はありますか?
回答3
クリップ0
更新
2023/03/22
意見交換
受付中
AIによる影響についての皆様の意見に対して
回答9
クリップ1
更新
2023/03/30
Q&A
受付中
デシクショナリーオブジェクトを利用して、重複データを格納したい
回答7
クリップ0
更新
2023/03/29
意見交換
受付中
プログラマを目指す際の進路について
回答35
クリップ2
更新
2023/03/18
意見交換
受付中
SELECT~INSERTにORDER BYをつける意味
回答5
クリップ0
更新
2023/03/31
意見交換
受付中
データセットをグラフ化する手段
回答20
クリップ0
更新
2023/03/07
Q&A
解決済
pydubによるwavデータの自動再生ができない
回答3
クリップ1
更新
2023/03/30
同じタグがついた質問を見る
DataSetは、ADO.NETアーキテクチャのコンポーネントです。データベースから取得したレコードをメモリ領域に格納するクラスを指します。データの保持やテーブル間のリレーション・制約といった保持も可能です。
scikit-learnは、Pythonで使用できるオープンソースプロジェクトの機械学習用ライブラリです。多くの機械学習アルゴリズムが実装されていますが、どのアルゴリズムも同じような書き方で利用できます。
Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。