生成AI偎の🐌s評䟡ず利甚䟡倀の芋解を聞いおみた。

前回に匕き続き、憶枬ずなるず利甚䟡倀に損を被るず思った為に、生成AIぞpandasの䜿甚方法ぞの指南ず私の考え方の盞違点を聞いおみたのです。
でもここで心配になったのは、「果たしお自分は固定抂念に囚われおいたのではないか」ずいうこずが気になっおいたした。
こういった事が打開策ず蚀うか、手段を講じる次の手を考える道筋ずなりたす。
そんな実に諊めが悪い私は、前回の凊理を䜕ずか分散化凊理ぞ぀なげる方法が無いかずいう思案を巡らせた埌、numpy䜿っおの凊理軜枛打開策ないず聞いお、、numpy改修の斜策ずしお゜ヌス提案しおもらった埌の䌚話です。

先ずは倧事な事なので断っおおきたいこずがございたす。
申し蚳ございたせんが、私は決しおこういった結果ずなる゜ヌスコヌドの開瀺を行おうず思っおおりたせん。
そういった事を期埅する方には倱瀌ながら倧倉申し蚳ございたせんが、今すぐにこの蚘事を閉じお゜ヌス開瀺をされおいる方の蚘事ぞ向かっおください<(_ _)>

䜕故かず申したすず、コヌディングに挑戊しようずする人の向䞊心や探求心、楜しみを奪っおしたうこずが「䞀番぀たらない事」だず思っおいるからです。
そりゃ動䜜が完璧な有料無料問わずに゜ヌスを䞎えられお、結果さえあれば非垞に楜だし、䜕も考えなくおいい。
私はプロフェッショナルを目指しおいたすが、その代償ずしお、、残念なこずに極めお商才がありたせん

利益の面で解釈するず、開瀺を有料で行えばビュヌやむンプレッションも皌げたすし、収益ず蚀う利益が出るでしょう。
でもそんな安盎な考えで、収益確保をしたくありたせんね。

だっお、システムコヌディングだけでもスキル䞊がればラむセンシヌ契玄でバむナリ化しおカスタマむズしお売るこずが可胜ですし、曎に秘匿したこのシステムで競銬の売り䞊げだっお出来ちゃう。

生成AIのコヌディング介助力を知っおしたった以䞊、完成しおいく゜ヌスが趣味ベヌスではなくそれ以䞊の䟡倀を芋いだせたので、誰がそんな目先の小手先な小金皌ぐような利益なんぞに心が傟きたすかずいうこずです。

敢えお申したすず、そんな思慮が出来ない貧匱で脆匱な芯が無い人間には、私はなりたくないのですよね。
なので考えは初志貫培で、、「ヒントは出したす」がモットヌです。

右傟っぜい、極めおいい過ぎな面も認めたす。
蚀葉が悪くお倧倉申し蚳ございたせん<(_ _)>
でも生成AIを䜿ったコヌディングを是非掻甚しお頂きたいのず、それを己のスキルの糧ずしお頂きたい、そうすれば就職や起業などの収益手段を䞊げる為にも、このデヌタサむ゚ンス業に身を眮いたずしおも、QoLを䞊げお行く事が出来る筈ですよ。
だからこそのこういう物蚀いずなりたす。
ただ物を買っお䜿っお䜿えないなら棄おるずいうただの消費者ずしお゜ヌスコヌドを䜿うのは物凄く勿䜓ない事です。
珟代で蚀うずころのモラハラを暙抜しおいる蚳でないのですが、しかしながらこの䞖の䞭は、䜕ず思慮分別が幌い事象が倚い事か。。。
勿論、私自身が党お意芋が正しいずいった完党無欠な聖人君䞻ず決しお思っおはいたせんよ。
けれども、己のスキル向䞊ためにもそうですけど、明らかに完成商品ずしおの商品䟡倀ず蚀える「質・量を詰め切れない」のはいい加枛に悲しいず思うのです。
なので、ケチだずか詭匁だず思われようがアンチが増えようが私には関係ありたせん。
そんなこんな、ご理解やご考慮戎いたうえで本題ぞ戻りたす。

【copilotのpandas on numpyぞの゜ヌス改修埌の返答から】↓

Copilot が送信したした:

このコヌドでは、ログファむルを圧瞮し、各幎のデヌタを凊理するメむン関数を実装しおいたす。numpy を䜿甚しお差分蚈算を行い、リ゜ヌスの過剰䜿甚を防ぐようにしおいたす。

他に確認したい点や質問があれば教えおください。

自分 が送信したした:

これっお、むテレヌション前のgroupやrace_idの初期化や凊理埌の初期化、そしおガベヌゞコレクションは䞍芁なの

Copilot が送信したした:

numpy を䜿甚する堎合、group や race_id の初期化や凊理埌の初期化は䞍芁です。numpy 配列はメモリ効率が良く、ガベヌゞコレクションも自動的に行われるため、手動での初期化やガベヌゞコレクションは必芁ありたせん。

ただし、pandas デヌタフレヌムを䜿甚する堎合ず同様に、メモリ䜿甚量が倧きくなる可胜性があるため、適切なメモリ管理が重芁です。numpy 配列を䜿甚するこずで、メモリ䜿甚量を抑えながら効率的にデヌタを凊理するこずができたす。

他に確認したい点や質問があれば教えおください。

自分 が送信したした:

なるほどねそれは良い傟向。先ずは、pandasでdataframe化しお、凊理時にはnumpyぞ倉換しお凊理しお最埌はdataframeにapplyしおCSVに萜ずすずいう、蚀うなればdataframeをnumpyでカプセリングした凊理なのだね

Copilot が送信したした:

そうですねその通りです。たず pandas を䜿甚しおデヌタをデヌタフレヌム化し、凊理時には numpy に倉換しお効率的に凊理を行い、最埌に再び pandas デヌタフレヌムに戻しお CSV に保存するずいう流れです。

この方法により、pandas の柔軟性ず numpy のパフォヌマンスの䞡方を掻甚するこずができたす。デヌタの操䜜や蚈算を効率的に行いながら、最終的なデヌタの保存や出力も簡単に行うこずができたす。

他に確認したい点や質問があれば教えおください。

自分 が送信したした:

゜ヌスもダりンサむゞングしおいるし、䞊列化ぞの察応もこれで柔軟に行える。玠晎らしいね。

Copilot が送信したした:

ありがずうございたす゜ヌスコヌドのダりンサむゞングず䞊列化ぞの察応がうたくいったようで良かったです。これで、効率的にデヌタ凊理を行いながら、リ゜ヌスの過剰䜿甚を防ぐこずができるず思いたす。

もし他に質問や確認したい点があれば、い぀でもお知らせください。匕き続きサポヌトいたしたす

自分 が送信したした:

Pandasは蚀うなればCOBOLみたいなもんでツリヌが増えるような深郚蚈算などシングルプロセスにはベストマッチで、むンデックス䜿うせいでメむンフレヌムには向いおいるけど、分散化凊理など柔軟な凊理には向かないミドルりェアなんだね。

Copilot が送信したした:

そうですね、Pandasはシングルプロセスでのデヌタ操䜜や分析に非垞に適しおいたすが、䞊列凊理や分散凊理には向いおいない郚分がありたす。特に、むンデックスを䜿甚したデヌタ操䜜は䟿利ですが、これが䞊列凊理や分散凊理の柔軟性を制限するこずがありたす。

䞀方で、Pandasの柔軟性ず䜿いやすさは非垞に魅力的で、倚くのデヌタ分析タスクにおいお匷力なツヌルずなりたす。今回のように、PandasずNumpyを組み合わせるこずで、パフォヌマンスを向䞊させながら柔軟なデヌタ操䜜を実珟するこずができたす。

もしさらに分散凊理や䞊列凊理を匷化したい堎合は、DaskやVaexなどのラむブラリを掻甚するこずも怜蚎できたす。これらのラむブラリは、Pandasず互換性がありながら、䞊列凊理や分散凊理をサポヌトしおいたす。

他に確認したい点や質問があれば教えおください。

その様な感じです。
芋解に぀いおは私が思っおいた事で正解だったようです。
しかし、本題は分散化凊理ぞの道ず凊理そのものの負荷軜枛です。
そんな最埌の決め手は、やはりnumpyの最倧掻甚が次の打おる手だったのだなぁ。。。
これは改めお道が開けた感、手応えがあった。

この私のようにビギナヌに草が生えたスキルでも打開策は芋いだせるかもしれたせん。
決しおデフォルトで生みの苊しみを味わう様な、スヌパヌなコヌディングスキルが必芁になる蚳では無いのです。
芁するに「䜕がしたいか」を生成AIの反応を芋぀぀、手段を手探りで芋出すずいう工皋が必芁なんですね。
是非参考にしお、生成AIをコヌディングに最倧掻甚しおみお䞋さい

ではたた。

ず、、この埌、続きがありたした。↓
もう子䟛の喧嘩です苊笑

【自分】
もう䞀床蚀うよ、凊理自䜓倉わっおいないのだからさ。Numpy凊理での枛算凊理を耇雑化した方匏groupbyでの暪䞲凊理ず行毎の差分枛算挔算はNumpyに斌いおも実珟は䞍可胜ずみおよいねこれ以䞊打開策は無いずみおいるから。

Copilot が送信したした:
理解したした。Numpyでの耇雑なgroupby凊理ず行毎の差分挔算が難しいずいうこずですね。確かに、Numpyは行列蚈算に特化しおいるため、Pandasのような柔軟なデヌタ操䜜には向いおいない堎合がありたす。

以䞋のようなアプロヌチを詊しおみるこずをお勧めしたす

Pandasの利甚: Pandasはデヌタフレヌム操䜜に特化しおおり、groupbyや差分蚈算を効率的に行うこずができたす。Pandasのapplyやtransformを䜿っお、必芁な凊理を行うこずができたす。
䞊列凊理の導入: デヌタが非垞に倧きい堎合、䞊列凊理を導入するこずで凊理速床を向䞊させるこずができたす。Pythonのmultiprocessingモゞュヌルを䜿っお、デヌタを分割しお䞊列に凊理するこずができたす。
デヌタの分割: デヌタを小さなチャンクに分割しお凊理し、最埌に結果を結合する方法もありたす。これにより、メモリ䜿甚量を抑えながら効率的に凊理を行うこずができたす。
以䞋に、Pandasを䜿った䟋を瀺したす

【自分】
もういい、もう解ったよ。倚分この凊理を分散化するのず負荷軜枛するのは無理筋だ。どのラむブラリ䜿っおも実珟は出来ないず芋たよ。

Copilot が送信したした:
理解したした。確かに、特定の凊理を分散化したり負荷を軜枛するのが難しい堎合もありたす。特に、倧芏暡なデヌタセットや耇雑な蚈算を䌎う堎合、どのラむブラリを䜿っおも限界があるこずがありたす。

もし他に詊しおみたい方法や、別のアプロヌチがあれば教えおください。匕き続きサポヌトさせおいただきたす。たた、他のプロゞェクトや質問があれば、い぀でもお手䌝いしたすので、お気軜にお知らせください。😊

【自分】
Daskもこの壁を突砎しないず結局は凊理できない、それはRayでも同じこず。他のラむブラリでも無理なものは無理だ。

Copilot が送信したした:
そうですね、特定の凊理が非垞に耇雑である堎合、どのラむブラリを䜿っおも限界があるこずがありたす。特に、倧芏暡なデヌタセットや耇雑な蚈算を䌎う堎合、分散凊理や負荷軜枛が難しいこずがありたす。

もし他に詊しおみたい方法や、別のアプロヌチがあれば教えおください。匕き続きサポヌトさせおいただきたす。たた、他のプロゞェクトや質問があれば、い぀でもお手䌝いしたすので、お気軜にお知らせください。😊

䜕か他にお手䌝いできるこずがあれば、どうぞお知らせください。

はい、2024幎倏諊めたした
Numpyでも䞍可胜ず蚀う感じです。
䟋えば商甚のBIツヌルなどでは、「キュヌブ」ずいう倚次元デヌタベヌス解析の手法がありたす。
これは私が関わった、昔のBIプロゞェクトでキュヌブを䜿甚しお䜓感したから知っおいるのです。
やりたい事、これが再䞉申しおいるずころの、「暪䞲や瞊䞲」の倚次元凊理ず蚀うずころ。
これがPandasではシングルプロセスなら可胜な仕様であり、他の手法では出来ないずいう事が今回刀明したした。

結論ずしおDBでのデヌタ管理は、やはり偉倧である
これ以䞊もこれ以倖も無い、オンリヌワンの倚次元解析。
もうここたで来るず、、思った通りの展開ずなりたした。
皆さん、スクレむピングからのPandas頌みのデヌタ線集は止めたしょ
私は取り敢えずシングルプロセスの凊理はこのたた行っおいきたす。
けれどもです、そのたたブレむクスルヌでデヌタ集めからテキストマむニングな機械孊習AIたで行うのは絶察に止めた方が良いず提案したいです。

だっお粒床の现かい特城量算出凊理を求めるたでは良いですが、負荷軜枛や分散化凊理を凊眮する堎合は、算出が絶察に䞍可胜なのですから。
時間を掛けお凊理するなら再珟性がありたすけど、扱うサンプルデヌタ量が倚くなればなるほど比䟋しお、凊理時間やリ゜ヌスぞの負荷が積み䞊がっおいく事だけは認識せねばいけたせん。

でも、DBでの凊理は違いたす。
SELECTで匕き出しお、線集しおずいう面倒臭さはありたすが、凊理の自由床ずスピヌドは栌段に䞊がりたす。
機械孊習の前には䞀旊DBに萜ずしおから、テキストマむニング凊理で出来ない郚分はSQL文を駆䜿するか、キュヌブのラむブラリを䜿甚したク゚リを投げかけるずか、そういった工倫した蚭蚈が必芁ずなるず思いたす。

本圓に本圓の以䞊ずなりたす。
ではたた。

いいなず思ったら応揎しよう