Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

前処理に関するmisshikiのブックマーク (43)

  • 欠損値処理に関する備忘録 - 渋谷駅前で働くデータサイエンティストのブログ

    最近某所で話題になっていたのが「欠損値処理はどうやるべきか」というテーマ。これは太古の昔から「荒れるテーマ」として有名で、今回も大いに荒れていて傍観している側としては面白かったんですが(笑)、古老ともあろう身がただ面白がっているだけでは自分を含めて誰の学びにもならないので、良い機会ということでちょっと欠損値処理に関する備忘録をまとめておこうと思います。いつもながらですが、誤解や理解不足の点などあればどしどしご指摘ください。 大前提 機械学習における欠損値処理は「予測」の助けになるように 統計学における欠損値処理は「パラメータ推定」の助けになるように 感想など 大前提 9年も前にこのブログで書いた記事が今でも時々各所で参照されているようなので引き合いに出しておきますが、そもそも論として機械学習が「予測」を目的とするのに対して統計学は「説明」を目的とすることが多い、という点を指摘しておきます。

    欠損値処理に関する備忘録 - 渋谷駅前で働くデータサイエンティストのブログ
    misshiki
    misshiki 2024/10/29
    “機械学習も統計学も欠損値が発生するメカニズムには注目するものの、その目的が「予測」か「パラメータ推定」かによって結構アプローチが変わっていくもの”
  • https://x.com/misshiki_bkmk/status/1848583600129904742

    misshiki
    misshiki 2024/10/22
    “「欠損値処理」が議論になっています。以下のような意見: - 欠損値は理由を確認してから対処すべき。”
  • [pandas超入門]データセットの前処理をしてみよう

    前回はタイタニックデータセットをpandasに読み込んで、その概要を調べた後、性別と生存率、または旅客クラスと生存率に関連があるかどうかなどを見てみました。このとき、欠損値を含む列('Cabin'列)などについてはそのままにしていました。今回はこのような列をどう処理すればよいのかや、機械的な処理が簡単になるように性別や旅客クラスを数値データに変換する方法などを見ていきます。このような作業のことを「前処理」と呼びます。前処理はデータセットを機械学習やディープラーニングで適切に取り扱えるようにするための重要なステップですが、今回はその練習のようなものです。 取り掛かる前に、タイタニックデータセットの内容をDataFrameオブジェクトに読み込んでおきましょう(タイタニックデータセットは前回同様にpandasのGitHubリポジトリからダウンロードしました)。

    [pandas超入門]データセットの前処理をしてみよう
    misshiki
    misshiki 2024/09/20
    “欠損値の扱い方、不要な列の削除、カテゴリカルデータのエンコーディングなど、前処理の仕方”
  • [pandas超入門]欠損値とその処理

    前回はpandasのDataFrameオブジェクトをNumPyの多次元配列やPythonのリスト、辞書、JSON形式のオブジェクトに変換する方法を紹介しました。今回は、pandasでデータを処理する際には必ずと言っていいほど目にする「欠損値」とその扱いについて見ていきます。 欠損値とは 欠損値とは、取得したデータに含まれる「何らかの理由で存在していないデータ」のことです。何かのデータを計測しているときに来は得られるはずの値がセンサーの誤動作により1つだけ取得できなかったとか、データの伝送時にノイズが入ったためにデータがきちんと読み取れなかったとか、理由はいろいろと考えられますが、あるべきデータがないという状況はよくあり、データを処理する際にはそれらについても考慮する必要があります。 ここでは簡単な例として、次のコードでCSVファイルを作成し、それをDataFrameオブジェクトに読み込ん

    [pandas超入門]欠損値とその処理
    misshiki
    misshiki 2024/08/23
    “欠損値かどうかの判定方法、欠損値が行や列に含まれているかを確認する方法、それら数をカウントする方法、欠損値を含む行や列を削除したり置き換えたりする方法を紹介”
  • [pandas超入門]DataFrameの情報(形状、要素数、要素のデータ型など)を調べてみよう

    前回はpandasのDataFrameオブジェクトの生成とloc属性/iloc属性と軸ラベル/インデックスを組み合わせて要素を選択する方法について話しました。今回はDataFrameオブジェクトに関するさまざまな情報を調べたり、別の種類のオブジェクトに変換したりするのに使える属性やメソッドを紹介していきます。 DataFrameオブジェクトの要素の型/形状/次元数などを調べるには 連載の第1回ではheadメソッドなどを紹介しましたが、ここではまずDataFrameオブジェクトそのものについての情報、例えばどんな種類のデータを格納しているのかや、その形状(何行何列のデータなのか)などを調べる方法を紹介します。ここでは以下に示すコードで生成したDataFrameオブジェクトを例に取りましょう。 df = pd.DataFrame([{'name': 'kawasaki', 'age': 80

    [pandas超入門]DataFrameの情報(形状、要素数、要素のデータ型など)を調べてみよう
    misshiki
    misshiki 2024/05/24
    “DataFrameオブジェクト自体に関する情報を調べたり、これを他のオブジェクトに変換したりするのに使えるものを紹介”
  • PandasからPolarsへ移行した方がいいのか - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? なぜこの記事を書くのか 皆さん、データ解析を行う際にどのようなライブラリを用いているでしょうか。 おそらく大半の人はpandasを使っているのではないでしょうか。 私もpandas使ってます。簡単だよね(´・ω・`) しかし、業務でバカクソでけえデータを読み込もうとしたときに、読み込み時間がとんでもなくかかったり、メモリ不足でそもそも読み込めもしないことが起きていました。 読み込みにメモリわれすぎて他の作業ができずに待機した挙句、燃え尽きたかのようにノーパソのファンが止まると同時にメモリ不足のエラーが出たときには切れ散らかします。 (

    PandasからPolarsへ移行した方がいいのか - Qiita
    misshiki
    misshiki 2024/04/18
    “生物としてもパンダは白熊に勝てないのは明らかであって、PolarsとPandasを比較しても圧倒的な速度の差があり、ライブラリとしての性能もPolarsが圧勝しています。”
  • pandas高速化の新星、FireDucksに迫る|FireDucks

    記事はFireDucksユーザー記事シリーズの第1弾です.記事はBell様に執筆して頂きました. データ処理と分析をする際に、多くの方がPythonを使ていると思います。中でも、PandasライブラリはPythonを用いたデータ処理においてなくてはならないものになっています。Pandasには便利な関数が多数あり、複雑なデータセットを効率的に処理・分析することができます。 しかし、Pandasの使用にあたっては、大規模なデータセットを扱う際にパフォーマンスが課題になることがあります。特に、データの読み込みや変換、集約などの処理を行う際、処理時間が問題となることが少なくありません。このような背景から、色々な手段を用いてより高速に処理を行う方法が試みられてきました。 NECが開発した「FireDucks」は、データ処理の世界に新たな風を吹き込んでいます。FireDucksは、PandasのA

    pandas高速化の新星、FireDucksに迫る|FireDucks
    misshiki
    misshiki 2024/04/08
    “NECが開発した「FireDucks」は、PandasのAPIをベースにしつつ、内部処理の最適化を図ることで、大幅なパフォーマンス向上を実現することを目指したライブラリです。”
  • PolarsとPanderaで実現する高速でロバストなデータ処理

    ReactJS: Keep Simple. Everything can be a component!

    PolarsとPanderaで実現する高速でロバストなデータ処理
    misshiki
    misshiki 2024/04/01
    全15ページのスライド資料。
  • 理論が先か、データ解析・機械学習が先か、特徴量エンジニアリングの方針と注意点

    分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。 モデルに関して、予測精度の高いモデルを構築することも重要ですし、構築したモデルを解釈することでデータセットが取得された実験系やシミュレーション系に新たな知見をフィードバックすることも大事です。モデルの予測精度の向上や解釈性の向上のため、x を検討することが行われます。特徴量エンジニアリングと呼ばれることもあります。 分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プ

    理論が先か、データ解析・機械学習が先か、特徴量エンジニアリングの方針と注意点
    misshiki
    misshiki 2024/03/07
    “どちらの方法が良いのか聞かれたときは、基本的に前者の、理論的に x を作成して機械学習で評価する方法をオススメしています。なぜなら、後者の方法では偶然の相関 (chance correlation) に注意が必要だからです。”
  • 日本語LLMの学習に向けたデータ前処理

    はじめに 大規模言語モデルの学習にあたり、大規模なデータセットで学習することが重要ですが、高品質なデータを用いることも重要です。 Webなどから大規模に収集したデータを用いることが一般的ですが、そのままだとかなりノイズが多く、モデルの学習が困難です。 記事では、言語検出、テキスト正規化、テキストのチャンキング、品質フィルタリングのデータ前処理によりノイズを取り除く方法について解説します。 言語検出 Webから大規模に収集したデータには、様々な言語が含まれます。 日語をターゲットとした言語モデルの学習のためには、日語のデータのみを抽出する必要があります。 言語検出のPythonライブラリとして、pycld3やlangdetectが有名ですが、2022/1/11にlinguaがリリースされています。開発者のベンチマークによると、性能は他のライブラリと比べて高いです。 特にpycld3はp

    日本語LLMの学習に向けたデータ前処理
    misshiki
    misshiki 2024/01/23
    “言語モデルの学習に向けたデータ前処理として、言語検出、テキスト正規化、テキストのチャンキング、品質フィルタリングによりノイズを除去する方法について解説”
  • 第371話|機械学習における多変量代入法:欠損データの克服

    機械学習は、データから学ぶ技術です。しかし、実際のデータは完璧ではありません。特に、データセットにおける欠損データの問題は、機械学習プロジェクトにおいて避けられない課題です。欠損データをどのように扱うかは、モデルの性能に大きな影響を与えます。 伝統的に、欠損データを扱う一般的な方法は「一変量代入法」です。この方法は、欠損値をその変数の平均値や中央値で置き換えるなど、単純明快であり、実装が容易です。しかし、これは各変数を独立して扱うため、変数間の関係を無視してしまうという欠点があります。 ここで、より洗練されたアプローチとして「多変量代入法」が登場します。 この方法は、欠損データのある変数と他の変数との関係を考慮に入れ、欠損値をより正確に推定しようと試みます。多変量代入法は、変数間の相関関係を利用して、欠損データを推測することにより、よりリアルなデータセットを作成することを目指しています。

    第371話|機械学習における多変量代入法:欠損データの克服
    misshiki
    misshiki 2024/01/15
    欠損値を埋める方法として、平均値などの代入ではなく、変数間の関係も考慮してより正確な代入値を推定する方法を説明。主な手法として、回帰分析、K-NN 、MICE (Multiple Imputation by Chained Equations)など。
  • 新しいデータ処理ライブラリの学習はもう不要! Python 初学者のための Ibis 100 本ノック - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Information 2024/7/24: Ibis-Polars vs Native Polars Ibis-Polars と Native Polars の処理速度の比較記事を書かれている方がおりました。 Ibis 経由で Polars を使用しても Polars と処理速度に大きな差がないことを示していました。 ibis-frameworkでPolarsSQLをつかってみた 2024/1/14: Kaggle notebook for Ibis Kaggle で Ibis を使用するための Sample Notebook を用

    新しいデータ処理ライブラリの学習はもう不要! Python 初学者のための Ibis 100 本ノック - Qiita
    misshiki
    misshiki 2024/01/09
    “Ibis という、Python の統合データ処理ライブラリを効率的に学ぶためのコンテンツとして 「 Python 初学者のための Ibis 100 本ノック」 を作成したので公開します。”
  • 機械学習におけるEDAって結局何するの? - ABEJA Tech Blog

    ABEJAでデータサイエンティストをしている服部です。 「EDAって結局何したらいいの?」っていう声をよく聞く気がするので、無謀にも今回はEDAについて記事を書いてみました。 記事はABEJAアドベントカレンダー2023 25日目の記事です。 EDAとは EDAは「Exploratory Data Analysis」の略で「探索的データ分析」と日語では言います。 データの特性だったりデータから何が言えるかを把握するための分析であり、JohnTukey氏により1960~70年頃に統計学の分野で提唱されたようです。 今では機械学習の分野でも、「まずEDAをしてからモデルを作ろう」と言われる場面をよく見かけ、EDAをすることは当たり前になってきています。 en.wikipedia.org 記事のモチベーション EDAに関する情報もたくさん調べると出てきますが、EDAのためのPythonライ

    機械学習におけるEDAって結局何するの? - ABEJA Tech Blog
    misshiki
    misshiki 2023/12/25
    “EDAの目的: データとモデルをつなげる すごく抽象的ですが、EDAの目的はこういうことだと私は考えています。”
  • 機械学習の落とし穴 リーク問題について - ABEJA Tech Blog

    はじめに リークって何? リークの例 テーマ概要 使用できるデータ,手法 例 例1.運用時に使えない情報を使ってしまう 例2.更新された情報を使ってしまう その他例 リークを回避するためには? ドメイン知識をもとにした確認 データを正しく理解する 重要特徴量からの判断 特徴量作成後の可視化 自分がやったことを信用しすぎない まとめ We Are Hiring! はじめに こちらは、ABEJAアドベントカレンダー2023の13日目の記事です。 こんにちは!ABEJAでデータサイエンティストをしております松村です。2021年の入社時から地元広島からフルリモートで働いており、早いものでもうすぐ3年が経過します。 今回は、データサイエンティスト誰もが一度は直面するリーク問題について考えてみました! リークって何? 「機械学習におけるリークとは何か?」について一言で言うと、来使うことのできない情報

    機械学習の落とし穴 リーク問題について - ABEJA Tech Blog
    misshiki
    misshiki 2023/12/18
    “比較的極端な例を挙げて、リークとその回避策についてまとめ。完璧には防げないが、アンチパターンを意識すること、リークしていないかの確認プロセスを挟むことで、発生リスクを一定抑えることはできそう。”
  • 横浜市立大の学生がprimeNumberのインターンシップで学んだ、データ分析において大切なこと|株式会社primeNumber

    primeNumberは横浜市立大学と連携協定を結んでおり、学生の皆さまにPBL実習、いわゆるインターンシップ*を提供してきました。 今年も3週間におよぶ実習を行いました。今回は参加した学生のお二人に、その様子をまとめていただきます!お二人が実習で気付いた、データ分析のポイントとはいったい何なのでしょうか?ぜひご覧ください。 ***** 横浜市立大学からprimeNumberのソリューション部にインターンシップとして参加したデータサイエンス学部3年生の藤と岡です。 今回は3週間のインターンシップを通して取り組んだことや学んだこと、感想などをお話ししたいと思います。 取り組んだことこのインターンシップではprimeNumberのプロダクト「trocco®」の利用データを用いて、顧客分析に取り組みました。分析の目的は「オンボーディングの改善」です。 データの意味や背景を理解するために実際

    横浜市立大の学生がprimeNumberのインターンシップで学んだ、データ分析において大切なこと|株式会社primeNumber
    misshiki
    misshiki 2023/09/27
    “きれいでない実データ、つまり分析用途で収集しているわけではないデータを分析に使えるように整えていく作業は非常に骨が折れました。...重要なのは、その処理の目的、さらにその先の分析の目的を見失わないこと”
  • Pythonデータ分析 実践ハンドブック 実務で使えるデータ加工のテクニック - インプレスブックス

    ■寺田学(てらだ まなぶ) [担当:第1章、第2章(「parquet形式」除く)、第7章(Pythonを使った文字列処理)、第8章(Pillowを使った画像の加工)、付録A・B] Python Web関係の業務を中心にコンサルティングや構築を株式会社CMSコミュニケーションズ代表取締役として手がけている。ほかにも、一般社団法人PyCon JP Association理事や一般社団法人Pythonエンジニア育成推進協会 顧問理事を務める。 Pythonをはじめとした技術話題を扱うPodcast「terapyon channel」https://podcast.terapyon.net/を配信中。共著『見て試してわかる機械学習アルゴリズムの仕組み 機械学習図鑑』『Pythonによるあたらしいデータ分析の教科書 第2版』(いずれも翔泳社)、監修『スラスラわかるPython 第2版』(翔泳社)、監

    Pythonデータ分析 実践ハンドブック 実務で使えるデータ加工のテクニック - インプレスブックス
    misshiki
    misshiki 2023/09/14
    “発売日2023/9/22”
  • pandasライブラリ活用入門[第2版] データクリーニング/前処理など一連の分析プロセスをマスター! - インプレスブックス

    pandasで効率的なデータ操作と可視化を実践! 解釈しやすい形にデータセットを変更できる― データの取り込みからデータ解析をスムーズに進めるためのPythonライブラリとしてpandasが用意されています。書では、pandasなどを使ったデータ分析全体の基手法を網羅的にカバー。巻末では、Python周辺の基を確認できます。初中級レベルの方がコードを試しながら理解を深めたり、おぼろげな知識について確認したりすることで、基礎技術の定着やスキルアップが図れる一冊です。※書は『Pandas for Everyone, 2nd Edition』の翻訳書です。 目次を見る

    pandasライブラリ活用入門[第2版] データクリーニング/前処理など一連の分析プロセスをマスター! - インプレスブックス
    misshiki
    misshiki 2023/09/13
    “発売日2023/9/14”
  • Amazon Sagemaker Data Wrangler が S3 Access Points のサポートを開始

    Amazon Sagemaker Data Wrangler は、SageMaker Data Wrangler へのデータのプレビューとインポート、および SageMaker Data Wrangler からエクスポートされたデータの送信先として S3 Access Points をサポートするようになりました。機械学習用に質の高いデータを準備するには、各種ツールを使用してさまざまなソースからデータを集約する必要があるため、多くの場合、複雑な手順が必要となり、多くの時間がかかります。SageMaker Data Wrangler を使用すると、Amazon S3、Amazon Athena、Amazon Redshift、Snowflake、Databricks といった定評のある各種データソース、および 40 を超える SaaS データソースのデータを探索し、インポートできます。さまざ

    Amazon Sagemaker Data Wrangler が S3 Access Points のサポートを開始
    misshiki
    misshiki 2023/08/31
    “SageMaker Data Wrangler へのデータのプレビューとインポート、および SageMaker Data Wrangler からエクスポートされたデータの送信先として S3 Access Points をサポートするようになりました。”
  • 特徴量エンジンKaskada利用イメージ: 機械学習モデルのトレーニング - Qiita

    from kaskada.api.session import LocalBuilder session = LocalBuilder().build() %load_ext fenlmagic サンプルデータセットの構築 この例では、ゲームプレイヤーの行動に関するイベントを扱います。 イベントには、ユーザーが勝った、負けた、そして物の購入の3種類があります。 イベントは 2 つの CSV ファイルに保存されているものとします(ここではテストデータの作成をJupyterノートブック上で行います)。 game_play.csvには、プレイヤーが行ったゲームの勝敗に関するイベント情報が含まれています。 %%writefile game_play.csv event_at,entity_id,duration,won 2022-01-01 02:30:00+00:00,Alice,10,true

    特徴量エンジンKaskada利用イメージ: 機械学習モデルのトレーニング - Qiita
    misshiki
    misshiki 2023/08/09
    “この例では、ゲームプレイヤーの行動に関するイベントを扱います。ユーザーがアップグレードの料金を支払うかどうかを予測する機械学習モデルを構築するためのトレーニングデータをKaskadaを使って準備します。”
  • Pythonでのランダムオーバーサンプリング(Random Over Sampling)とその実装 - Qiita

    はじめに 不均衡なクラス分布を持つデータセットは、機械学習のタスクでよく遭遇します。例えば、クレジットカード詐欺の検出では、正常な取引(ネガティブクラス)と詐欺取引(ポジティブクラス)の間で極端な不均衡があります。このような状況では、多数クラスの学習が優先され、少数クラスの学習が十分に行われないことがあります。これに対する対策の一つとして、ランダムオーバーサンプリングがあります。 ランダムオーバーサンプリングとは? ランダムオーバーサンプリングは、少数クラスのサンプルをランダムに複製してデータセットに追加することで、クラス間の不均衡を解消する手法です。これにより、クラス間のサンプル数の差を減らし、モデルが少数クラスを無視することを防ぎます。 ただし、ランダムオーバーサンプリングは過学習を引き起こす可能性があることに注意が必要です。なぜなら、同じサンプルを何度も複製することで、モデルが特定の

    Pythonでのランダムオーバーサンプリング(Random Over Sampling)とその実装 - Qiita
    misshiki
    misshiki 2023/07/18
    “ランダムオーバーサンプリングは、少数クラスのサンプルをランダムに複製してデータセットに追加することで、クラス間の不均衡を解消する手法です。”