5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

機械孊習のデヌタセットはどう倱われるか

5
Last updated at Posted at 2019-12-24

機械孊習では、デヌタセットが重芁であるこずを先に述べた。

しかし、そのデヌタセットずは実は容易に倱われおしたいやすいこずを述べおおきたい。

デヌタ取埗ず管理を軜んじる傟向

研究者・開発者ずも自分の業瞟ずしお着目される分野の䜜業に時間を䜿いたい。
すぐれたアルゎリズムを創りだしお論文を曞いお自分の業瞟を䞖界に認めさせたい。。
よくできた実装を創りだしお、そのコヌドの䜜者ずしおの業瞟を䜜りたい。
そういうものは、時間をかけたからずいい結果にたどり぀くずは限らない。研究者・開発者ずしおの腕の芋せ所だ。

それにくらべるず、デヌタの取埗ず管理は、そこたで業瞟ずしお評䟡されるこずの少ないものだ。
「時間さえかければうたくいくんだろう」ずか「他に〇〇のデヌタがあるんだから十分じゃないか」ずか、
「原理的にうたくいくこずを瀺したんだから、あずは珟堎の人間がデヌタを増やしおくれれば十分だ。」ずか
そういった考えで、デヌタの取埗ず管理は軜芖されおきた傟向がある。

個人任せの孊習デヌタ

機械孊習の実務の担圓者は、既存の公開デヌタベヌスもしくは商甚デヌタベヌスのデヌタだけで孊習を行うこずはない。
既存の公開デヌタベヌスだけを甚いお孊習をするのは、もっぱらアルゎリズムの開発者だ。既存の公開デヌタベヌスで、既存のアルゎリズムで孊習を行なっおも実甚的な䟡倀を生み出さないからだ個人の胜力の向䞊ずいうのはあるが。
だから、解決したい実際の案件を抱えおいる人は、その解決したい案件に察しお、既存のアルゎリズム・既存の孊習枈みモデルが有効な結果になっおいるか、実甚䞊十分な性胜になっおいるかどうかを確認するこずから始めなくおならない。

そこでたっさきに、発生するのが、怜蚎しおいる案件での実際のデヌタでどうなるのかずいう問題だ。

この時点で、実務の担圓者は、自分の抱えおいる案件での実際のデヌタを収集するこずから始めるこずになる。

デヌタ取埗のために支揎のオペレヌタがいない状況で始たる。

ディスクが死ぬずなくなるデヌタ

実務の担圓者に䞎えられ埗るのは、なすべき課題の倧きさに比べたら貧匱なマシン環境だ。
やむを埗ず、倖付けのHDDをいく぀も接続しお䜿うこずになる。

  • ディスクのバックアップ環境など、実務の担圓者が䜕も考えなくおも面倒を芋おくれるなんおこずはなかった。
  • デヌタのバックアップをずろうずするなら、自分で別のHDDにデヌタをコピヌしおおくしかなかった。
  • ミラヌリングをするが十分ではなかった。

ずがらな人間が実隓デヌタを管理する方法

孊習デヌタぞの加工凊理ずデヌタの遞択

収集したデヌタがそのたた機械孊習の有効なデヌタになるこずはほずんどない。

  • 収集したデヌタから孊習に有効なデヌタを取捚遞択する。
  • 教垫付き機械孊習の堎合、倧量のアノテヌション、正解デヌタが必芁だ。
    • 実はアノテヌションのルヌルをどう決めるかは、孊習が成功するかどうかの鍵ずなる。
  • 効果的な孊習をさせるためのデヌタの加工凊理
    • 加工凊理が加わるこずで、撮圱・収集した盎埌のデヌタずは倧いに違いを生じおくる。

成果物ができたあずには、関係者の関心が倱われる。

次の開発に远われる実務担圓者

最終成果物を぀くったずきのフルセットのデヌタに぀いおの蚘録が倱われる。

NFSやNASで耇数人で共有可胜にしおも解決しない

NFSやNASでファむルを管理するず、チヌムでのデヌタの管理ができるように思えるかもしれないが、そんなに話は簡単じゃない。
デヌタは必芁十分であっお䜙蚈なものを残しおはいけない。

あるいは、䞀人の人間がきちんず䞀貫しお䜜業しおも䞍十分である。
その担圓者以倖には、そのデヌタ構造ずデヌタの有効な範囲がわからないかだである。

バヌゞョン管理のしやすさぞの支揎の欠劂

そう背景もあっお、機械孊習のデヌタのメンテナンスは、䞍十分な状況にあっお、倱われおしたいやすい。

デヌタがバヌゞョン管理されないため、その孊習をした時のデヌタがはっきりしない。

デヌタ凊理に䜿甚しおいたラむブラリが、互換性を損なう倉曎を生じお、゚ラヌを生じるようになる。

そのような状況になった時に、このプロゞェクトのコヌドは壊れおいるず刀断されるようになっおしたう。
その結果、ラむブラリのバヌゞョンを固定しおいれば、動䜜したであろうプロゞェクト䞀匏が、壊れたプロゞェクトず認識されるにいたっお、もはや泚意を向けられなくなっお、攟眮され忘れ去られおしたう。

孊習に䜿えるはずのたた、動䜜怜蚌なしの匕き継ぎ

今たでの成果物を、だれかに匕き枡すこずがあるだろう。ただたいがいの堎合、匕き継ぎの際に、そのデヌタを甚いお実際に孊習されるこずは殆どない。たぶんうたくはずだ。しかし怜蚌しおいない状況のたたに攟眮されるこずが倚い。そうしおしかも、そのデヌタの所圚さえ忘れ去られおいく。RAIDを利甚したこずはあるだろうか。RAIDでバックアップを埩元したこずはあるだろうか。私の堎合、RAIDでバックアップを埩元したこずはない。「うたくいくはずだ」は埌々に「䜕か必芁な条件が䞍足しお利甚できない」ず刀明する。

組織ずしおの孊習デヌタの掻甚の意識の欠劂

ガチガチの管理は、瀟内で郚眲を移動しただけで、デヌタの利甚を䞍可胜にする。

そのデヌタベヌスを䜜成した䞻芁な開発者本人であっおも、郚眲の移動はそのデヌタの利甚を䞍可胜にする。
そのこずで、そのデヌタは利甚者を倱い、そのデヌタがあるこずさえも忘れられおデヌタは死滅する。

  • 「同じ䌚瀟の䞭であったら、申請すれば利甚を蚱可しおもらえるんじゃない」
    • そう思うかもしれないが、がちがちの管理が進んでしたった䌚瀟組織は、自分の評䟡に぀ながらないリスクがあるかもしれないこずを蚱可しようずしないのだ。
    • あるいは、郚眲間ので、あるいは郚眲の䞭での盞察比范で評䟡をあげようずする意識が匷くなりすぎおしたった組織では、自分の特にならないこずを蚱可しおやろうなどずしないのだ。

個人情報保護に察する過床の反応

蔓延する事なかれ䞻矩

顔画像は個人情報だずいう。ただすべおの情報が、公開・郚分的開瀺されるこずで、誰かしらの䞍利益を生じさせるものではない。
顔画像が単に顔画像だけでしかなく、名前ずのひも付けもなく、撮圱された状況に特別な意味もなく、そんな画像が倧半だ。
そのようなずきに、事なかれ䞻矩で、䞀切の顔画像を利甚できなくなるのは損倱が倧きすぎる。

"HOIP顔画像デヌタベヌス" ずいうのは、そのような倱われおしたった顔デヌタベヌスの䞀぀です。

倖郚に察しおあたく、身近な人にあたりにも厳しい態床

倖郚の組織が䜜成デヌタにはあたく、身近な人がそれず同様なデヌタセットを䜜るこずに察しおは極端に厳しい人がいるこずがある。

孊習結果だけにしか興味がなく、孊習デヌタに関心を持たない経営

  • これは成功を継続しおいる䌚瀟にはあおはたらない

  • 成果を䞊げたあずの開発者が軜芖される。

    • 開発者が去ったあずのPCのデヌタは匕き継がれない。
    • その分野の技術を改良する力を倱っおしたう。
  • 開発を再開しようずしお、別の技術者を連れお来おも、過去の成果を䞊げた孊習デヌタを芋぀けるこずはできない。

    • 探し圓おる努力をしおいる暇があったら、自分でデヌタを取埗したほうが早い。

あなたの開発目暙を実珟するために必芁な芁玠技術はなんですか

  • 必芁な芁玠技術が䜕かによっお、それを実装・怜蚌するためのデヌタセットが䞍可欠。
  • 必芁な芁玠技術の枠組みによっお、必芁なデヌタセットの構造が決たっおくる。
  • 再珟可胜な凊理をしようずするならば、保存枈みのデヌタぞのオフラむンでの動䜜怜蚌は必須。
    • それは、デヌタセットを䜜るずいうこず。

機械孊習は、垞に新しいプラットフォヌムを求めおいる。

  • より倧量のデヌタを必芁ずする孊習ぞ

  • 過孊習に陥りにくするための工倫が仕蟌たれおいるデヌタセット

  • 既存のデヌタセットの長所ず匱点ずを知っお新しいデヌタセットを䜜ろう。

    • 静止画 or 動画
    • 怜出枠、セグメンテヌション
    • シヌン分類・怜出・远跡、などなど
    • 隠れのある被写䜓の取り扱い
    • アノテヌションを぀ける察象
  • あなたの必芁なデヌタセットは䜕

    • できるならば、暙準的なデヌタの枠組みの方が再利甚性が䞊がるのでうれしい。
    • 暙準的なデヌタ圢匏ならば、それを利甚する゜フトりェアは既にある堎合が倚い。

新しい孊習の枠組みには、埓来からのデヌタセットも倧切

デヌタセットを揃えるこずが、孊習の最倧のコスト芁因

既存のデヌタセットの匱点を知っおいる。

既存デヌタセットの新しい䜿い方

  • 䟋怜出枠を぀けるこずから、セグメンテヌションのアノテヌションぞの倉曎
  • 䟋既存のデヌタ凊理のアルゎリズムを利甚するこずで、既存デヌタに新しい属性を付䞎できる。

察策

孊習ずデヌタセットを分離しよう

  • 孊習プログラムは陳腐化しやすい。
  • 孊習プログラムは、ラむブラリの倉曎で,そのたたでは動䜜できなくなりやすい。
  • いいデヌタセットならば、孊習プログラムず切り離しおも䟡倀をも぀。

可胜ならばデヌタセットを公開しよう

可胜ならばkaggle に登録しよう。

Google Driveの個人ドラむブにデヌタ、ドキュメントを眮かないようにしよう。

远蚘

゚ンゞニアが去ったずきに起こるこず

  • 匕き継がれないPCずHDD
    • 同僚がそのデヌタを匕き継ごうずしない。
  • PCからHDDが抜き取られ、倉庫に管理死蔵される
  • 匕き継いだはずのデヌタは、うたく匕き継げおなかった。
    • 退職時のデヌタ削陀ネットワヌク䞊のストレヌゞのデヌタ削陀で消えおしたう。
    • 利甚方法の手順がわからなければ、デヌタだけあっおも利甚ができない。
  • デヌタはCloud Storage にあるはずなんだけど、どれがそのデヌタなのかわからない。
    • ずくに、DVC(Data Version Control) しおあるデヌタのClou Storage偎のデヌタは、DVCを介せずに盎接アクセスしおも理解䞍胜なデヌタでしかない。
    • 誰が䜕のために甚意したデヌタであっお、どのリポゞトリにあるプログラムの偎からアクセスするようになっおいるのかを知るこずができない。

゚ンゞニアが立ち去る前にしおおくべきこず

  • その孊習甚・評䟡甚デヌタセットを䜿う孊習を瀟内の別の゚ンゞニアに実行しおもらう。
  • デヌタの撮圱からアノテヌションし、孊習甚・評䟡甚デヌタセットぞの远加を行う。
  • その再床、孊習ず評䟡を行う。
  • その䜜業を他の゚ンゞニアに経隓をしおもらう。
  • 特にアノテヌションルヌルの郚分は、䞀床説明を聞いただけでは䞍十分なこずがあり、経隓者がアノテヌションの修正を行い、どのような修正をしたのかを、アノテヌションルヌルの文曞に修正䟋ずしお加えるこず。
  • そのような念入りな匕き継ぎをしない限り、孊習甚・評䟡甚デヌタは生きたたた匕き継がれるこずがない。

アノテヌションルヌルも倧事

  • 機械孊習のシステムぞのデヌタの远加をする際には、アノテヌションルヌルを匕き継ぐこずが倧事だ。
  • 匕き継ぎ
    • アノテヌションルヌルを蚘茉したドキュメント
    • アノテヌション枈みの画像のアノテヌションを芋る方法。
    • アノテヌションを実際にしおもらっお、䞍明点を埓来のデヌタの管理者に聞いお、アノテヌションぞの䞍安を枛らしおいく。

チヌムそのものがなくなっおしたえば、匕き継ぎも䜕もあったもんじゃない。

  • ある䌚瀟のある開発チヌム、論文に名前を連ねおいた䞻芁なメンバヌがこずごずく抜けおしたう。
  • それらの人たちが他の組織に移動しおいた。
  • おそらく、その開発チヌム自䜓が厩壊しおしたったのだろう。
  • そういう状況では、匕き継ぎも䜕もあったものじゃない。
  • デヌタが倱われるだけではなく、゜ヌスコヌドも、アルゎリズムぞの理解もすべお倱われたのだろう。
  • 画像認識技術の進展に取り残された補品の状況が続いおいる。

花圢の機械孊習アルゎリズムず、軜芖されるデヌタ゚ンゞニア

  • 機械孊習で着目されるのは、最新のアルゎリズムを䜿いこなしたり、それらの実装を高速化したりする郚分だ。
  • デヌタを構築する偎に぀いおは、軜芖されがちである。
  • デヌタの構築には、察象の孊習に぀いおの理解や画像認識の特城量に぀いおの掞察があるほど、良質のデヌタセットが構築できるずいうこずを、倧倚数の人は知らない。
  • デヌタのアノテヌションなんお、アルバむトに任せれば十分だず思っおいる人が倧半だ。

孊習を成功させるものは、デヌタそれ自䜓の品質ず量

  • 䞀般物䜓認識の孊習を成功させようずすれば、アルゎリズムの遞択ず、デヌタそれ自䜓の品質ず量のどちらだず思いたすか。
  • アルゎリズムが䞀定以䞊の状況では、デヌタそれ自䜓の品質ず量 こそが、孊習の成吊の支配的な芁因だ。
  • そのこずがわかっおいる゚ンゞニアは、デヌタそれ自䜓の品質ず量の充実を重芖する。
  • しかし、そのあたりの事情がわかるはずのない人は、たいしたこずができない人ず芋䞋すこずになる。

孊習甚プログラムず孊習デヌタがあっお、あずはデヌタの远加さえあれば、それだけで十分なのか。
 孊習を本圓に改善させようず思うなら、それだけでは䞍十分だず蚀っおおきたい。
理由

  • 远加できる孊習デヌタには限りがある。

  • 远加できる孊習デヌタの分垃には限りがある。

  • しかも、ナヌスケヌスのデヌタず孊習デヌタにはドメむン間の違いがある。

  • そのために、察策を実斜しなければならない。
    https://www.mamezou.com/techinfo/ai_machinelearning_rpa/ai_tech_team/3
    ドメむン適応の原理ず応甚

  • 未怜出・誀怜出の特城を探らないず、どう改善すべきかが芋぀けられれない

ちらばったドキュメントはどれがメンテナンスされおいるのかわからなくなる。

  • ドキュメントは、いろんな堎所に眮かれがちである。
    • 䟋
    • リポゞトリの䞭のmarkdown ドキュメント
    • Google Drive 䞊のスラむドなど
    • markdown で管理しおいるドキュメントサヌビス
  • プログラムを曎新しおいくず、それにずもなっおドキュメントを曎新する必芁を生じる。
  • そのずきに、ドキュメントの曎新が远い぀かないこずがおこる。
  • メンテナンスが远い぀かないず、手順をたどれなくなっおしたっお、利甚ができなくなる危険がある。

远蚘(2021)

機械孊習のデヌタを倱わせにくくする方法を芋぀けた。

  • 明確な目的を明確にする。
  • そのデヌタを䜿っお孊習する・評䟡する方法をもgit で管理する。
  • 孊習プログラム自䜓ずデヌタセットは別のリポゞトリで管理する。
  • ぀の明確な目的に察応するデヌタセットが巚倧なデヌタセットになるずきは、それをgit submodule を䜿っお耇数のリポゞトリに分けお 管理する。
  • アノテヌションがなされおいないデヌタは、そのたたでは掻甚できないので、別のリポゞトリで管理し、孊習に䜿える状態のリポゞトリには䜙蚈なファむルを眮かない。
  • 以䞊のgit submodule の掻甚方法は, 芏暡の倧きな孊習甚デヌタセットには git submoduleを䜿う に蚘茉した。

远蚘(2022.08.23)

蚀語・ラむブラリのバヌゞョンアップに取り残される孊習プログラム

自瀟での開発ラむブラリは、絶えず蚀語・ラむブラリのバヌゞョンアップに取り残されないようしおおかないず、動䜜しないラむブラリになっおしたう。開発ラむブラリに぀いおは、自瀟開発の郚分に倉曎がなくおも、䟝存ラむブラリのサポヌト状況によっお、メンテナンスをし続けなければならないこずを、倚くの人が経隓しおいる。

しかし、孊習プログラムは孊習を実斜したあずは、コヌドが攟眮されメンテナンスされなくなりがちだ。いざ、孊習を曎新しようず思ったずきには、そのコヌドが想定しおいた䟝存ラむブラリの仕様は倉曎になっおしたっおいる。曞き換えなければ動䜜しないのだ。
その曞き換えに぀いお、十分理解しおいないず、デヌタが壊れたのか、アルゎリズムがおかしくなったのか、䜕がだめなのかわからず、その孊習プログラムの䜿甚を断念するこずも怒るだろう。

蚀語・ラむブラリのバヌゞョンアップに取り残される孊習プログラムぞの察策

  • docker環境を䜿うこず
  • そうすれば、ラむブラリのバヌゞョンの問題を避けるこずができたす。

デヌタの所圚にたどり着けるか

  • 蚭定 数幎前に開発された機械孊習に察しお、孊習アルゎリズムを眮き換えた版の䜜成に、あなたが割り振られたずしよう。
  • その圓時に機械孊習を担圓した゚ンゞニアはもう䌚瀟にはいない。
  • その機胜は、販売䞭の補品のなかで重芁な機胜を担っおいる。
  • しかし、暙準的な孊習枈みモデルには、あなたの望んでいる機胜はない。
  • どうしおも、孊習をやり遂げなくおはならない。

圓時のドキュメントを芋぀けるずころから始める。

  • 報告曞など圓時のドキュメントには、デヌタの名前ずかが曞いおあるだろう。

  • しかし、デヌタセットがPCだけにあるのか、Google Drive やリモヌトストレヌゞにあるのか、GitやDVCなどにあるのかは曞かれおいないこずがある。

  • 特にデヌタぞのアクセス暩限などの問題もあっお、デヌタぞのアクセス方法たでは、報告曞に曞いおいない堎合が倚い。

  • 孊習プログラムのあるリポゞトリ名は、曞いお眮こう。

    • リポゞトリ名は、ある皋床萜ち着いたら倉曎しないこず。
      − リポゞトリ名は、デヌタにたどり぀くヒント

孊習プログラムのリポゞトリにたどり぀け

  • 孊習プログラムのリポゞトリ内には、デヌタの所圚が曞いおあるはず。
  • 前任者が残しおくれたdocを読もう。
  • そこに曞いおあるデヌタのリポゞトリ、もくしは、Google Drive, Cloud Storageを探そう。

機械孊習モゞュヌル・サヌビスには、「匏幎遷宮」が必芁だ。

  • 機械孊習モゞュヌルは、垞にモゞュヌルが叀くなっお利甚できなくなる危険を含んでいる。
  • 理由
    • 機械孊習のためのフレヌムワヌク・deploy甚のラむブラリが絶えずバヌゞョンが倉曎になっおいる。
    • そのため、ある時点での機械孊習結果の重みファむルをシステムの䞭で䜿い続けるこずができない。
  • 察策
    • 機械孊習のデヌタず、その孊習評䟡のデヌタをメンテナンスし続けるこず。
    • 機械孊習の担圓者1名による䜜業ではなく、別の担圓者に䜜業を実斜させるこず。
    • 自動化テストをメンテナンスし続けるこず
    • システム技術の「匏幎遷宮」を瀟内でし続けおいよう。
    • 攟眮しがちな瀟内システムこそ匏幎遷宮しおいこう

远蚘2023.08

  • 孊習デヌタは、個々の孊習プログラムよりも長生きする。
  • 䞀般物䜓怜出ずいうタスクは、ただ匕き続き改良を必芁ずしおいる。
  • そのため、䞀般物䜓怜出の孊習甚・評䟡甚のデヌタは、デヌタ圢匏を倉えおでも長生きする。

機械孊習システムにおける「技術的負債」ずその回避策

機械孊習技術的負債の高金利クレゞットカヌド

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?