GO TechTalk #29 タクシーアプリ『GO』のログ解析の民主化を促進するStreamlitの活用 で発表した資料です。 ■ YouTube https://www.youtube.com/watch?v=vcE70wYfrOA ■ connpass https://jtx.co…
こんにちは。2024年5月にJADEに入社した江越です。 前職でデータ加工を生業としていた関係で、現在はデータ分析に関わるサポートをメインに取り組んでいます。……とはいえ、法学部出身ということもあり、統計やデータ分析に関しては「素人に毛が生えた程度」の知識しかありません。 今回は、そんな統計素人の私が Causal Impact という分析パッケージに1ヶ月間触れてみた結果、施策の効果を統計的かつ定量的に説明できる手段が得られた経験をシェアしたいと思います。 【もくじ】 Causal Impactとの出会い 効果検証について持っていた課題感 Causal Impact を知る前の効果検証手段 上記の説明の何が問題なのか? 実際に遊んでみる Causal Impactとは一体何者だ! 何をすれば良いか整理してみる inputとthroughを用意して実行してみる 統計的有意差が見える……見え
はじめに 2023年10月の1ヶ月間、AI事業本部、極予測AI予測チームで CA Tech Job というインターンシッププログラムに参加させていただきました東京大学大学院情報理工学研究科修士1年の武智將平(@shoheiKU)です。普段の研究では機械学習を利用した予測モデル構築やデータサイエンスのようなことをしています。今回のインターンシップで研究では出会うことの少ない、機械学習モデルをサーバーに組み込む場合の手法や並列化について触れることができました。この記事では Apache Beam を利用した並列化及び、Tensorflow の SavedModel というサービングに適した保存形式について触れます。 タスクについて 極予測AI予測チームはクリエイティブデザインから広告効果を予測する機械学習モデルを構築し、サービスとして提供するチームです。 タスクスタート時点での問題点として 広
1. はじめに 近年の計量経済学と機械学習の融合の成果として CausalImpact パッケージが統計的因果推論の枠組みで用いられている。 Brodersen et al. (2015) が考案した causal impact フレームワークは, Rubin 流の因果推論である Difference in Differences (DID, DD) 推定法DIなどの考え方を踏まえて, ベイズ構造時系列モデルの特性を取り入れているのが特徴である。詳しくは、参考のブログ記事を参照。 2.野生イノシシへの豚熱感染による分布の減少 さて、ここで本題の統計的因果推論による検証 したいデータを紹介する。まずは下記のニュースを見てください。 2018年9月以降、各県で野生イノシシにおける豚熱の感染死亡個体が確認され、全国に拡大している。 豚熱というのは、以前は豚コレラと呼ばれていて、豚とイノシシにとっ
TL;DR この記事では,Causal Discovery Toolbox(cdt)を用いて観測データから因果関係を簡単に解析する方法を紹介します.cdtは,Pythonで利用可能なツールで複数の因果分析モデルとアルゴリズムを提供しデータから因果関係を推定し視覚化することができます.特に,PCアルゴリズム,GES,LiNGAMなどの主要なアルゴリズムを使用した因果探索の手順とサンプルコードを提供し,それぞれの性能評価も行います. TL;DR はじめに 因果探索とは Causal Discovery Toolbox(cdt) 環境構築 利用できるアルゴリズム 1.PCアルゴリズム (PC) 2.CAM (Causal addtive model) 3.CGNN (Causal Generative Neural Networks) 4.GES (Greedy Equivalence Sear
手元のデータとか、あまりクラウドに上げて共有したくないような情報があるデータとかをグラフなどで可視化しながら考察したいみたいなとき 今までは対象データをCSVにしてLookerStudioのCSVアップロードでアップして色々可視化してみるっていう流れが多かったが、最近DuckDBを触ってみたらよかったので触発されて他の方法も試してみようかという気持ちになった Colaboratory + PyGWalker いったんこの組み合わせでやってみようという感じになった 理由は 自身でサーバを立てるなどの用意をしなくて良い BigQueryやスプレッドシートなど、Google関連サービスとの連携しやすさ 可視化ツールやプロット系のライブラリとの相性 PyGWalkerもそうだが、データを読ませて可視化のUIを表示します、UI上でがちゃがちゃしてさまざまな種類のグラフをインタラクティブに作れます!っ
はじめに 2024年7月末に Streamlit in Snowflake で Current_User と行アクセスポリシーが利用できるようになりました。 このアップデートの嬉しいところは、アプリケーションに接続した Snowflake ユーザーを識別し、ユーザー毎に処理を変えることが簡単かつセキュアに行うことができるようになったことです。 アプリケーションへのログインの仕組みやユーザー管理テーブルなどを独自に用意しなくても、例えば以下のように1つのアプリケーションをユーザー毎にパーソナライズすることが可能です。 ユーザー毎にアプリケーションの表示を変える ユーザー毎にパーソナライズされた分析ダッシュボードを用意する 行アクセスポリシーを用いてユーザー毎に異なるクエリ出力結果を取得する (Enterprise Edition 以上) 今回はユーザー個人の情報を表示する簡単な ToDo リ
生SQLを扱う $queryRaw TypeScript向けのORMライブラリとしてPrismaがあります。Prismaは直感的で型安全なAPIを提供し、TypeScript向けのORMとしては第一に名前が上がることが多いライブラリです。 しかしそんな人気なPrismaでも、裏側では少しクセのあるSQLが発行されていたり、欲しいSQLがPrismaのAPIでは実現できない場合があります。 そういった場合のために $queryRaw というメソッドが用意されており、これを使うことで生SQLを書いてその結果を受け取ることができました。他のORMにもよくある機能です。 例えば以下のように実装することができます。 const users = await prisma.$queryRaw` SELECT id, name FROM "Users" WHERE id = ${userID} `; co
はじめに データサイエンスをする人ならきっと知っているであろう 「データ解析のための統計モデリング」 通称、「みどり本」を読んだ後の結論としては: 何でもアホみたいに線形回帰すな!データの質を考えろ GLMM以上じゃないと実際問題使えないよ ということだと思います。(私見ですが同意者は多いと思う) もちろん、GLMMとして線形回帰を最終的に選択するパターンもあるのでしょうけど、データ解析をする人間のはしくれとしては、GLMMはおさえておきたいところです。 この「みどり本」は名著ですが、実際にコードを手を動かして解析を進めていくと「??」が出てくるので、7章の「一般化線形混合モデル」におけるモヤモヤ点を解説しながら、MATLABで簡単に実装できることをお見せできればと思います。 今回はGLM(一般化線形モデル)まで実装して、次の記事でGLMMまでやります。 統計モデリング データの取得方法
StanとRでベイズ統計モデリング(通称アヒル本)をだいたい読みました。 StanとRでベイズ統計モデリング (Wonderful R) 作者: 松浦健太郎,石田基広出版社/メーカー: 共立出版発売日: 2016/10/25メディア: 単行本この商品を含むブログ (8件) を見る 本の紹介 既に様々な書評もありますし、方々から賛辞の声を挙げられている本です。僕としても非常に分かりやすく、使える本だと感じました。著者の松浦さんがウリを書いてくださっているので、まずそれを読むのが良いと思います。様々な方の書評も纏められています。 statmodeling.hatenablog.com 読んでみての感想を、良い点と改訂版に期待する点(笑)で書いてみたいと思います。 良い点 使えそうな分布が結構紹介されている これは僕の専門分野が生命情報解析、著者の松浦さんの専門が医療統計で近いということもあるの
アヒル本(StanとRでベイズ統計モデリング)のChapter5にPythonで取り組んでいきます。 練習問題を解いて、本文中に書かれてるグラフをPythonで描いてみます。 なおChapter1~3は導入だったのと、Chapter4は練習問題の内容が「はじめての統計データ分析」と被っていたのでパスします。 Chapter5 基礎的な回帰とモデルのチェック 重回帰 複数の説明変数を用いた回帰のこと 重回帰も結局は正規分布を仮定している 目的 説明変数からの応答変数の予想、及び説明変数の寄与率 分布 複数の説明変数ならScatterplot matrixを利用すると良い MCMCの設定について スケーリング: MCMCを行う前に、各データのオーダーを大体(1前後に)そろえること。 収束がしやすく、早くなる 最大値、標準偏差、標準偏差の倍で割ったりすれば良い 結果の解釈 : モデルの改善に活か
Great Expectations(GE) によるノートブック型環境(Databricks)でのデータ品質保証方法のまとめPythonSparkデータ分析DatabricksGreatExpectations 概要 本記事にて、Great Expectations(GE) によるノートブック型環境(Databricks)でのデータ品質保証方法を共有する。GE がツールの概要を提示した上で、コードとその実行結果を提示する。 実行コードとその出力結果を Github に配置してあり、次のリンクで確認が可能。 Great Expectations とは Great Expectations (GE) とは、データに対する検証、ドキュメント化、および、プロファイリングにより、データ品質の保証と改善を支援する OSS の Python ライブラリである。データに対する品質保証条件(GE では Ex
はじめに Phi-3について調べていたところ、面白い話を見つけたので皆さんに発信したいと思い執筆しています。 「こんな話があったんだなあ」程度で読んでいただけると幸いです。 テーマ(=結論)としては「AIの精度を向上させるためには、学習データの質が重要」ということを伝えたいです。 Phi-3誕生秘話 マイクロソフトのローネン・エルダン氏は、「どのように学習させるのが効率が良いか」に対する解決策を仕事中にずっと考えていました。 仕事が終わったあと、彼は娘に絵本を読んであげていました。その時彼は思いました。 「娘はこの絵本の単語のつながりをどうやって理解しているのだろうか?」 この疑問は小さな火種でした。 LLMによってもたらされた生成AIの大きな進歩は、その大きさによって可能になったと考えられてきました。しかしマイクロソフトの開発チームは、小さくても桁外れの結果を出せるモデルを開発することが
以前から話題になっていたが、最近のアップデートで操作変数法にも対応したということで使ってみたら、めっちゃ早かったのでシェア。 Rで固定効果モデル(経済学でいう固定効果モデル)を推定する場合、方法はいろいろあるが、基本的なものはlm()にダミー変数をfactorで入れたり、 パネルデータ分析のパッケージであるplmパッケージのplm()関数を使うものがある。 estimatrパッケージでも固定効果を入れて推定することが可能である。 keita43a.hatenablog.com ただ、問題はサンプルサイズが大きくなった場合と固定効果の変数の数が増えた場合に、推定に著しく時間がかかることである。 estimatrでも固定効果を3ついれたりすると、収束しなかったりすることがある。 そんな大きなデータセットにおける問題を解決すべく登場したのがlfeパッケージのfelm()関数なのであった。 しかし
マルコフ連鎖モンテカルロ法(メトロポリス法)による混合ガウス分布に従う乱数の生成 - My Life as a Mock Quant でやった内容の欠点とそれを補うためにもうちょっと高尚な手法である拡張アンサンブル法の1つ「レプリカ交換モンテカルロ法」を用いてやりましたよというお話。 シミュレーション条件・パラメーター設定に関しては適当なんで要考察。自分が扱いたい問題に応じてこれはやらないといけない。 通常のマルコフ連鎖モンテカルロ法(MCMC)での問題点 マルコフ連鎖モンテカルロ法(メトロポリス法)による混合ガウス分布に従う乱数の生成 - My Life as a Mock Quant でやった通常のいわゆるマルコフ連鎖モンテカルロ法を用いた「混合ガウス分布」からの乱数生成方法だと、2つのガウシアンのピーク(平均値)が離れているとうまくいかない。 実際に平均値を(-3,-3),(3,3)
はじめに 多重共線性は相関行列を見てもチェックすることはできない。そして Ridge や Lasso などの正則化付き線形モデルも多重共線性をどうにかしてくれるわけではない(これらの方法でどうにかなると思っている人はもうちょっと深く考え直したほうがよい)。 私も普段明示的にはチェックしていない。それはよろしくないと思ったので多重共線性チェッカーを作った。 仕組み的には VIF(variance inflation factor)による多重共線性チェックと同じことで、VIF を計算するだけなら statsmodel ライブラリの variance_inflation_factor でもできる。 今回作成したコードでは、どの変数とどの変数が多重共線性を持っているかの情報まで可視化できる。Google Colabで作成したサンプルは以下。 参考文献 『多重共線性をチェックする』 多重共線性の定義
GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~rag事前学習生成AILLMDocumentIntelligence はじめに 本記事の背景 Retrieval-Augmented Generation(RAG)は、クエリに基づいた情報検索を行い、その結果を基に回答を生成する技術です。これは大規模言語モデル(LLM)の活用法の一つであり、新しい知識や企業文書などに対しても効果的に利用できます。しかし、RAGにはいくつかの課題があり、特に情報の関連付けや意味的理解の不足が精度の低下につながることがあります。 通常のRAGは、主にベクトル類似性を利用して情報を検索します。これは、情報断片の表面的な類似性を評価するものであり、深く複雑な関連性を捉えることが難しいです。また、ベクトル化された情報は独立したエンティティとして扱われるため、文
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く