タグ

pythonと*dataに関するsh19910711のブックマーク (262)

  • #15 pd.DataFrame.corrより高速に相関行列を計算してみた

    TL; DRfrom scipy.spatial.distance import pdist from scipy.spatial.distance import squareform1 - squareform(pdist(df.T, 'correlation'))で df.corr() と同じ相関行列が計算できます。 背景機械学習などでは説明変数のカラム同士の多重共線性を考慮して相関が高いカラムの一方を削除するといった前処理がしばしば行われます (LightGBMなどの場合はあまり気にせずそのまま計算しちゃうこともありますが) このように相関行列を計算する時は、すでにデータをpd.DataFrameの形式で保存していることも多く、pandasの pd.DataFrame.corr を使うかなと思います。 しかし、 pd.DataFrame.corrはデータ数や説明変数の数が多いとやはり

    sh19910711
    sh19910711 2024/05/23
    "pd.DataFrame.corr: データ数や説明変数の数が多いとやはり次元の呪いの影響を受け計算コストが高くなりがち / pdist: metrics と呼ばれる引数があり 'correlation' を指定すると 1 — 相関係数を距離として上三角行列を計算" 2019
  • Seaborn Objects ~ グラフィックの文法で強化された Python 可視化ライブラリの新形態 ~ - GMOインターネットグループ グループ研究開発本部

    2023.02.10 Seaborn Objects ~ グラフィックの文法で強化された Python 可視化ライブラリの新形態 ~ お久しぶりです。グループ研究開発部・AI研究開発質の T.I. です。色々あって久しぶりの Blog となりました。今回は、趣向を変え、最近大幅に改良された Python のデータ可視化ライブラリである Seaborn の新しい機能を紹介します。昨年9月にリリースされたばかりということもあるのか、邦どころか英語で検索しても解説資料は公式サイト以外はほぼ皆無(当方調べ)というレアな情報となります。 はじめに データ分析機械学習などにおいて、データの様々な特徴を可視化しながらの調査・探索(Exploratory Data Analysis (EDA))は、対象の正確で深い理解には不可欠なアプローチと言えます。Python のデータ可視化ライブラリとしては、

    Seaborn Objects ~ グラフィックの文法で強化された Python 可視化ライブラリの新形態 ~ - GMOインターネットグループ グループ研究開発本部
    sh19910711
    sh19910711 2024/05/04
    "Seaborn: Seaborn Objects という Interface が追加 / Seaborn Objects: R の ggplot2 と同じ Grammar of Graphics (グラフィックの文法)という思想で開発された機能 / 従来のSeaborn の機能では難しい可視化が直感的に自由にできる" 2023
  • MLflowのデータストアを覗いてみる - 株式会社ホクソエムのブログ

    (2020/08/14 flavorについての記載を一部修正) はじめに こんにちは、ホクソエムサポーターの藤岡です。 最近、MLflowを分析業務で使用しているのですが、お手軽に機械学習のモデルや結果が管理できて重宝しています。 また、特定のライブラリに依存しないなど、使い方の自由度も非常に高いところが魅力的です。 ただ、ザ・分析用のPythonライブラリという感じでとにかく色々なものが隠蔽されており、 サーバにつなぐクライアントさえもプログラマあまりは意識する必要がないという徹底っぷりです。 もちろんマニュアル通りに使う分には問題ないですが、 ちゃんと中身を知っておくと自由度の高さも相まって色々と応用が効くようになり、 様々なシチュエーションで最適な使い方をすることができるようになります。 というわけで、今回はMLflowの記録部分を担う、 Experiment, Run, Artif

    MLflowのデータストアを覗いてみる - 株式会社ホクソエムのブログ
    sh19910711
    sh19910711 2024/05/02
    "MLflow: とにかく色々なものが隠蔽 + ちゃんと中身を知っておくと自由度の高さも相まって色々と応用が効く / データマートとかもMLflowで管理してみたのですが、案外できてしまった(しかも割と便利だった)" 2020
  • LangChain の BigQuery Vector Search 機能によるベクトル検索

    はじめに こんにちは、クラウドエース データソリューション部の松です。 普段は、データ基盤や MLOps を構築したり、Google Cloud 認定トレーナーとしてトレーニングを提供しております。 クラウドエース データソリューション部 について クラウドエースのITエンジニアリングを担う システム開発統括部 の中で、特にデータ基盤構築・分析基盤構築からデータ分析までを含む一貫したデータ課題の解決を専門とするのが データソリューション部 です。 弊社では、新たに仲間に加わってくださる方を募集しています。もし、ご興味があれば エントリー をお待ちしております! 今回は、LangChain の BigQuery Vector Search 機能によるベクトル検索についてご紹介します。 この記事はこんな人にオススメ LangChain と BigQuery を組み合わせたベクトル検索方法をご

    LangChain の BigQuery Vector Search 機能によるベクトル検索
    sh19910711
    sh19910711 2024/05/02
    "LangChain から投げたクエリをもとに BigQuery 上でベクトル検索を実行する / 公式ドキュメントを参考 / LangChain: 様々なデータベースとのインテグレーションが強化 / from langchain_community.vectorstores import BigQueryVectorSearch"
  • Vertex AI Agent Builder の検索システムを Python SDK から試してみる

    はじめに Vertex AI Agent Builder で作る検索システム Vertex AI Agent Builder(旧 Vertex AI Search & Conversation)を使用すると文書検索システムが簡単に構築できて、コンソール上のデモ用検索ポータルから検索処理が体験できます。検索キーワードの「意味」を理解して検索するセマンティックサーチを行うので、次のように微妙にタイプミスをしても、こちらの意図を汲み取って検索結果を返してくれます。また、検索結果のサマリーテキストも表示されます。 コンソールの検索ポータルで検索する例 Vertex AI Agent Builder による検索システムは、次のような構成になります。「データストア」と「検索アプリ」の2つのコンポーネントを作成して利用します。 Agent Builder による検索システムの構成図 データストアは、ドキ

    Vertex AI Agent Builder の検索システムを Python SDK から試してみる
    sh19910711
    sh19910711 2024/05/02
    "Agent Builder: Cloud Storage などのデータソースからドキュメントをインポートするとドキュメントの内容を分析して検索に必要な情報を抽出・保存 / discoveryengine.viewer: ACL を設定して検索できるユーザーを制限"
  • PandasのData FrameとElasticsearchのindexを相互変換する - Qiita

    はじめに Elasticsearchの特定のインデックスにサンプルデータを投入したい。でも手元にあるのはキー項目は共通な別々のCSVファイル。えーこれ全部手でマージすんの? それかスクリプト書く? めんどくさ。。 そんな経験みなさんにもありますよね? そんな時、(結局Pythonスクリプトは書きますが)Elandを使うとPandasのData FrameをそのままElasticsearchとやりとりできるので便利です。というかPandasが便利です。 依存ライブラリ 今回、Pythonのpandas, elasticsearch, elandの各ライブラリを使いますので、インストールされていない場合は以下のコマンドでインストールします。

    PandasのData FrameとElasticsearchのindexを相互変換する - Qiita
    sh19910711
    sh19910711 2024/05/02
    "Eland: PandasのData FrameをそのままElasticsearchとやりとりできるので便利 + 条件を絞り込んで読み込むなどの操作も可能 / Data Frameのindexになっていた日付情報が、ドキュメントIDとして格納されている" 2023
  • 超爆速なcuDFとPandasを比較した - Taste of Tech Topics

    皆さんこんにちは。 @tereka114です。 今年末はKaggleで開催される面白いコンペも多くて日々、エンジョイしています。 最近は巨大なデータを扱うことが増えており、Pandasだと時間がかかりすぎて効率が悪いと感じています。 そのため、データを高速に処理できるcuDFを利用することも多くなってきました。 この記事ではcuDFの魅力と扱う際の注意点を説明していきます。 ※この記事は「Pythonその2 アドベントカレンダー」10日目の記事です。 qiita.com cuDFとは cuDFはNVIDIAさんが開発している、Pandasの代わりに利用することができるGPUのライブラリです。 最も大きな特徴はGPUで計算するため、高速であることです。 主に、カテゴリ変数ごとの平均計算や、テーブル同士の結合といった、時間のかかるテーブル処理で、効果を発揮します。 github.com cuD

    超爆速なcuDFとPandasを比較した - Taste of Tech Topics
    sh19910711
    sh19910711 2024/04/30
    "cuDF: 特徴量を簡単に作れるライブラリであるxfeatでもサポート / Pandasのmergeは元のテーブルと順番が変わりません + cuDFの出力結果は並列計算の都合で元のテーブルと順番が異なります" 2020
  • 『Pythonでスラスラわかる ベイズ推論「超」入門』を読んでみた。 - いものやま。

    Pythonでスラスラわかる ベイズ推論「超」入門』を読んでみたので、軽く感想とか。 Pythonでスラスラわかる ベイズ推論「超」入門 (KS情報科学専門書) 作者:赤石 雅典講談社Amazon 概要と感想 ベイズ推論のはいろいろあるけど、このは理論というよりツールとして活用することに重きをおいた感じの。 サンプリングをどう計算するのかとかはライブラリ(PyMC)に任せてしまってでは解説せず、統計モデルの作り方と得られたサンプリングの結果の使い方の解説が中心になってる。 数理最適化でたとえると、単体法とかの解説はしないでPuLP使ったモデリングの解説をしている感じ。 そういうこともあってすごく読みやすかったし、実用としてはこういうの方が助かるよね。 別に研究者として新しいアルゴリズムを作りたいとかでもないし。 数理最適化もそうだけど、理論とか勉強しても実際に使うときはライブラ

    『Pythonでスラスラわかる ベイズ推論「超」入門』を読んでみた。 - いものやま。
    sh19910711
    sh19910711 2024/04/29
    "統計モデルの作り方と得られたサンプリングの結果の使い方の解説が中心 / 実際に使うときはライブラリ叩くだけで、一番壁になるのはモデルを作る部分なので、その部分がちゃんと解説されてるのはとてもよかった"
  • Streamlitを使ってデータカタログを作ってみた

    sh19910711
    sh19910711 2024/04/27
    "SQLを実行する時にどのテーブルを使うべきか理解するのに苦労 / カタログ型のソフトウェアは高額 + StreamlitがイケてそうだからStreamlitで作ろう / Streamlit in Snowflakeにて、簡単にアプリをデプロイすることもできる"
  • Pyserini(Faiss)を使ってお手軽Entity検索をやってみた! - Retrieva TECH BLOG

    こんにちは。 リサーチャーの勝又です。 私はレトリバで自然言語処理、とくに要約や文法誤り訂正に関する研究の最新動向の調査・キャッチアップなどを行っております。 今回の記事では、Pyseriniという情報検索の研究で使われるPythonライブラリの簡単な使い方、拡張方法について紹介します。 Pyseriniとは Pyseriniを使ってEntityの検索を実施する Entity検索について Pyseriniの準備について Pyseriniを動かす流れ Encodeを行う Indexingを実施する Searcherを作成する Entity検索してみる まとめ Pyseriniとは 近年、Large Language Model(LLM)の流行に伴い、Retrieval-augmented Language Modelのように、情報検索技術の需要は高まっていると思います。 たとえば、LangC

    Pyserini(Faiss)を使ってお手軽Entity検索をやってみた! - Retrieva TECH BLOG
    sh19910711
    sh19910711 2024/04/27
    "Pyserini: Anserini(Luceneベースの情報検索ツール)やFaissのインターフェイス + BM25のような古典的な手法や、Faissを利用したDense Vectorによる検索、 uniCOILやSPLADEといったSparse Vectorによる検索を動かすことができ" 2023
  • [Python] 都道府県における回線品質のマッピング - Qiita

    ただし、JitterとPingの単位はms、DownloadとUploadはMbpsです。 このデータを可視化していきます。 3. 可視化 3.1. ライブラリ 地図データを扱う上で、もっともシンプルであろうGeopandasを採用しました。その他にも、インタラクティブな地図を作れるfoliumや、海外線、陸地、政治的境界線などの様々な特徴を表示可能なCartopyなどのライブラリがあります。 3.2 地図情報 地図情報は国土交通省の下記サイトから拝借しました。 必要に応じて全国か都道府県のデータをダウンロードしてください。今回は埼玉県と東京都のデータを使いたいので、 N03-20230101_11_GML.zip (埼玉県) N03-20230101_13_GML.zip (東京都) をダウンロードします。 圧縮ファイルを解凍すると、*.geojsonという地理空間データがあるのでこれを

    [Python] 都道府県における回線品質のマッピング - Qiita
    sh19910711
    sh19910711 2024/04/20
    "埼玉県における光回線のマッピング / インフラに対して人口が多い・少ないのような情報も見えるかも / Cartopy: 海外線、陸地、政治的境界線などの様々な特徴を表示可能 / folium: インタラクティブな地図を作れる" 2023
  • ChatGPTとNoteableによる科学技術情報分析

    ChatGPTNoteableプラグインを使って、科学技術情報分析ができるかを試した記録と所感メモです。資料では、下記の分析プロセスにおける活用を試しています。 1. 論文情報収集 arXivから指定した検索条件にヒットするプレプリント情報を収集する。 2. 書誌情報分析 時系列推移、カテゴリ集計、著者集計を実施する。 3. テキストマイニング キーフレーズ抽出・集計、クラスタリングと解釈、 俯瞰可視化(二次元可視化)を実施する。 汚いままですが、実際のChatGPTとのやり取りや、生成されたスクリプトも資料の中でURLを公開しています。参考になれば幸いです。 noteでも簡単な説明と補足・追加コメントをまとめました。 https://note.com/hayataka88/n/ndfd913dab62f

    ChatGPTとNoteableによる科学技術情報分析
    sh19910711
    sh19910711 2024/04/20
    "対話的可視化: 指示がないとplotly + Bokehでやって欲しいなどと依頼 / arXiv APIをそのまま叩きに行こうとしていたがうまいクエリが生成できず + pythonラッパーであるarXivを使うように指示したところ、うまく実行された" 2023
  • GIS に欠かせない Shapefile を深堀ってみる - Qiita

    1. はじめに 地理情報システム (GIS) で、使用するデータとして「Shapefile 形式」でデータ提供されていることがあります。この記事では、この Shapefile が、どのような構造となっているのかについて、説明していきます。 1.1. トポロジ構造とは Shapefile について説明していく前に、まずは GIS データ等でよく利用される「トポロジ構造」について説明しておこうと思います。 例えば、トポロジ構造を持つファイルとして、次のようなものがあります。 .gdb: ESRIのファイルジオデータベースは、トポロジを含む複雑な空間データを格納することができます。 .topojson: トポロジを保存するための拡張 GeoJSON 形式で、隣接する地物間の境界を共有することでファイルサイズを削減します。 .gml: 地理マークアップ言語 (Geography Markup La

    GIS に欠かせない Shapefile を深堀ってみる - Qiita
    sh19910711
    sh19910711 2024/04/20
    "Shapefile: ESRI によって開発 + 点、線、ポリゴンなどの地理的要素を保存 / 重ねて表示をしたり、連続性を持たないといった特性 + 処理がシンプル、かつサイズが軽量 / pyshp: Python で Shapefile を扱うためのライブラリ"
  • コサイン類似度のいろんな書き方 - どこにでもいるSEの備忘録

    前にこんなことやってました。 www.nogawanogawa.work コサイン類似度の計算を高速化したくなることがちょくちょくあるのですが、「ぶっちゃけどれくらいのスループットが出せるもんなの?」というのが気になったので完全に興味位でやってみます。 コサイン類似度 定義と素朴なpythonでの実装 コサイン類似度の2つの計算パターン 諸条件 2つのベクトルの配列間ですべての組み合わせのコサイン類似度を計算 baseline numpy sklearn xlr8 pytorch jax Numba 実行速度結果 2つのベクトルの配列間で同じインデックスの組み合わせのコサイン類似度を計算 baseline numpy jax Numba 実行速度結果 使用したコード 参考文献 感想 コサイン類似度 定義と素朴なpythonでの実装 コサイン類似度は下記のような式になります。 これがなんの

    コサイン類似度のいろんな書き方 - どこにでもいるSEの備忘録
    sh19910711
    sh19910711 2024/04/19
    "コサイン類似度の計算を高速化したくなることがちょくちょくある / xlr8: 内部実装を見る限りIntel MKLを使用して高速化しているようです / 総合的にはNumba + 型変換が不要な状況であれば、計算自体はjaxが最も高速"
  • GeoPandasは100万行の夢を見るか - Qiita

    年末オープンジオかくし芸大会 でおなじみの、FOSS4GAdventカレンダー2018の23日目です。 はじめに この記事は 地図や位置のデータをPythonで処理したい Python初学者 QGISちょっとわかる PostGISやMySQLなどのサーバー系はちょっとしんどい 商用GISソフトは手元にない 暗中模索話だいすき という方むけの検証記事です。どうぞよろしくおねがいいたします。 きっかけ いろいろとアレで大量のcsvファイルをなだめたりすかしたりクリーニングしたりするために、PythonのライブラリであるPandasをよく使っています。Pandasについては多くの知見があるため割愛しますが、表形式のデータを取り扱うのに様々な命令があるため、結構便利ですし、今後もいろいろ使ってみたいなあと考えています。 ※こちらのパンダさんとはちょっと関係がないかもしれませんが、どこかでなにかつな

    GeoPandasは100万行の夢を見るか - Qiita
    sh19910711
    sh19910711 2024/04/18
    "QGISちょっとわかる + PostGISやMySQLなどのサーバー系はちょっとしんどい / 空間結合: お店などのポイントデータに対して、メッシュや街区などのポリゴンデータから、属性を取ってくる処理" 2018
  • 化学情報学にRDKitとScikit-learnで入門する - Qiita

    このページを見たあなたは、もう化学情報学(ケモインフォマティクス)という世界に足を踏み入れている。まずはこの世界の入り口を概観してみよう。 題材として、水溶解度を取り扱ってみます Water solublity (logS) database http://modem.ucsd.edu/adme/databases/databases_logS.htm にある「database.dat (the SMILES file includes 1290 molecules)」 を使ってみましょう。 まず、データファイルの URL をチェックします。 http://modem.ucsd.edu/adme/data/databases/logS/data_set.dat であることが分かります。今回の目的は、このファイルの左端の列にある文字列(SMILES)から、水溶解度(logS)を予測する機械学

    化学情報学にRDKitとScikit-learnで入門する - Qiita
    sh19910711
    sh19910711 2024/04/18
    "RDKit: 化合物の絵が描ける / 化合物を数字で表現する方法: フィンガープリントと呼ばれるベクトル + フィンガープリント以外にもさまざまな「化学構造記述子」があり / フィンガープリントから水溶解度を回帰" 2018
  • これからのデータ分析はPandasにDuckDBも併用して高速化しようという話

    こんにちは。 株式会社アイデミーでデータサイエンティストをやっている米倉と申します。 今回はデータ分析を高速化するために、従来のPandasによる実装に加えてDuckDBも併用して高速化を図ってみたのでご紹介します。 BI(ダッシュボード)作った → データ重すぎて動かない問題 データサイエンティストや機械学習エンジニアの代表的な日常業務として、データ分析があります。 データ分析作業を楽にしたり、より良い意思決定に繋げるための考察を得る手段として、BIツール(ダッシュボード)を作ることがあります。 Pythonでダッシュボード的なものを作ろうとした場合、WEBアプリ系のフレームワークがいくつか存在します。 代表的なものとして、私も日々の業務で使っているStreamlitがあります。 Streamlit: とにかく簡単に作れて、速攻で可視化できるのが、現場のデータサイエンティストには大助かり

    これからのデータ分析はPandasにDuckDBも併用して高速化しようという話
    sh19910711
    sh19910711 2024/04/09
    "PyGWalker: Dataframeからドラッグ&ドロップでX軸とY軸にする列を選択してグラフを作成 + DuckDBをベースとした内部エンジンがあり、それを有効化できるとのこと" 2023
  • pythonによる共分散構造分析 ~MMMを添えて~ - Qiita

    はじめに 共分散構造分析をする時、どうすればいいだろうか。 Amos?いやいや有料だし、R?いやいやメインで普段使っていないし、python?いやいや共分散構造分析簡単にできないんじゃ…。 ドウゾ( ´·ω·)つ [semopy] ということでpythonで共分散構造分析が簡単に?できるsemopyを使用してみた。 実務で使うような想定でMMM(マーケティングミックスモデリング)の真似事をしながら試してみて、結果をlavaanやAmosの結果と比較した。 ちなみにMMMのことはほとんど知らないので調べながら実践。 結論を言うと、実務でも使えるツールだと思う。 参考文献 共分散構造分析[Amos編] - 豊田 秀樹(著) Pythonによるマーケティングミックスモデリング(MMM:Marketing Mix Modeling)超入門 その2 MMM(マーケティングミックスモデル)をRob

    pythonによる共分散構造分析 ~MMMを添えて~ - Qiita
    sh19910711
    sh19910711 2024/04/06
    "共分散構造分析: 分析者の仮説とその分析結果を表現してくれる便利な道具 / semopy: lavaanのように文字列でパス図を定義 + 2021年にも論文:semopy2が書かれている / semopyを使って、共分散構造分析を行い、MMMの真似事" 2022
  • BigQuery DataFramesを使ってみる | DevelopersIO

    このデータをBigQuery DataFramesで扱います。内容としては{project_id}.data_set_test.jp_weatherのデータを使ってPandasで行う一般的な分析操作を行います。コードは以下になります。 import os import bigframes.pandas as bpd bpd.options.bigquery.project = os.environ.get("GOOGLE_PROJECT_ID") bpd.options.bigquery.location = "asia-northeast1" df1 = bpd.read_gbq("{project_id}.data_set_test.jp_weather") # df1 = bpd.read_gbq("SELECT * FROM {project_id}.data_set_test.j

    BigQuery DataFramesを使ってみる | DevelopersIO
    sh19910711
    sh19910711 2024/04/03
    "BigQuery DataFrames: pandas互換のPythonic DataFrameのbigframes.pandasモジュールとscikit-learnライクのbigframes\.mlモジュール / Pandasと同じ関数を使って分析を行うことができ非常に便利" 2023
  • PolarsとPanderaで実現する高速でロバストなデータ処理

    CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again

    PolarsとPanderaで実現する高速でロバストなデータ処理
    sh19910711
    sh19910711 2024/03/31
    "データ品質: 想定外のデータや意図しない処理が誤った分析やモデルの性能劣化につながる / Pandera: データが満たすべき性質をスキーマとしてコードに定義 + どんなデータが入出力されるか?をコードをから読み取れる"