DATAFLUCT Tech Blog

データ技術・データサイエンス・MLOps に関するトレンドを追いかけます

2022-01-01から1年間の記事一覧

データ抽出に特化したAirbyteによるEL(T) 環境構築の実践

こんにちは。今回は、データ基盤の構築の一部を実際に体験してみたいと思います。 データ基盤を作成するにあたり、まずは、社内に眠る様々なデータを集めてくる必要があります。前回の記事では、その機能を「収集」と紹介していました。 データ基盤とは何か…

Metaflowでモデルの学習をpipeline化するまで

皆さんは「MLOps」について取り組んでいらっしゃるでしょうか。私は2018年頃からデータクレンジングや機械学習モデルの構築や運用をしてきましたが、当時の日本で私の耳にはMLOpsという言葉が入ってくることはありませんでした。 ただMLOpsの元となった「Dev…

Responsible AI (責任あるAI)を支える5つの技術トピックを解説

本稿は近年注目を集めているResponsible AI(責任あるAI)の実現をサポートする技術トピックとそれぞれのトピックの実現をサポートするツール群を紹介します。 AI が引き起こす問題 Responsible AI とは? Responsible AI が満たすべき原則 技術トピックと6つ…

PyCaretとMLflowで機械学習の実験を簡単に実行・記録する

こんにちは!nakamura(@naka957)です。今回はPyCaretとMLflowを用いたAutoMLと実験記録を連携した活用方法をご紹介します。今回は様々な機械学習アルゴリズムの比較・モデル実装に加えて、行った実験記録の管理を簡単に行う方法をご紹介します。実施事項が…

機械学習 実践 - クラスタリングでデータ間の関係を把握する

こんにちは! nakamura(@naka957)です。 今回はクラスタリングをご説明します。クラスタリングは教師なし学習に代表される手法の1つで、正解情報なしでデータ間の類似性を推定し、グループ化する手法です。DATA Campusでは、これまでに教師なし学習の概要…

WordCloudの弱点と精度を高めるための形態素解析について

みなさん、こんにちは。DATAFLUCTのKazumiです。 前回の記事( WordCloudで小説の特徴を テキストマップ化してみた )でWordCloudを用いたテキストマップの作成を紹介しました。そこではWordCloudを使って、テキスト内でよく使われる単語を可視化できました…

MLflowの環境構築を解説〜Docker Composeを用いてデータ分析環境と実験記録の保存場所を分けて構築〜

こんにちは!nakamura(@naka957)です。今回はDocker Composeを用いたMLflowの環境構築方法をご説明します。 前回の記事 ではMLflowの初心者向けチュートリアルをご紹介しました。MLflowを用いることで、実験記録の管理を簡単に行えることを解説しています…

お手軽で高速なFastAPIでCloudRunに推論APIを公開するまで

FastAPIとは 特徴 API作成までの手軽さ Flaskよりも非常に高速 ドキュメントの自動生成 簡単なAPIを作る インストール シンプルなGETのAPIを作る 自動生成されるドキュメント 推論APIを作る 学習済みモデル(.pkl)の読み込み リクエストボディから推論を行う …

文系出身のデータサイエンティストが実践してきた勉強法を徹底解説

こんにちは! AIがトレンドとなって世間で騒がれる中、『文系だけどAIの開発ができるようになりたい!』と思う方も多いのではないでしょうか。 今回は文系出身の私、小笠原がAIにも通ずるデータサイエンスの知識を得るまでに行った勉強方法を紹介します。デ…

機械学習を利用するコンポーネントの継続的な性能検証と Locust を利用した負荷テストの実施方法

こんにちは。本稿では機械学習を利用したコンポーネントの処理速度の計測方法、および負荷テストのやり方について解説してゆきます。 機械学習を利用するコンポーネントの処理速度を計測する必要性 機械学習アルゴリズムを適用する関数の処理速度を検証 実行…

MLflowの使い方 - 機械学習初心者にもできる実験記録の管理 -

こんにちは!nakamura(@naka957)です。今回はMLflowをご紹介します。 読者の皆さんは、機械学習モデルのハイパーパラメータ調整を手作業で管理し、苦労した経験がないでしょうか。実験記録の管理は大事な一方で、なかなか大変です。 今回紹介するMLflowは…

Tensorflow Data Validationを用いた機械学習用データセットの検証方法

こんにちは!nakamura(@naka957)です。本記事では、TensorFlowの拡張機能であるTensorFlow Data Validationを用いたデータセット検証を行う方法をご紹介します。 データセット検証とは、機械学習モデルの構築時に使う訓練データと運用データの間の違いを調…

実装方法から読み解くファインチューニングと転移学習の違いとは

ファインチューニングとは 転移学習との違い 実装方法の違い 実装時の2つの注意点 1. 学習済みモデルの全層を更新しない 2.学習率を小さな値にする ファインチューニングの実装 MobileNet V2を使ったファインチューニング 学習可能な層の比較 学習率の比較 …

WordCloudで小説の特徴をテキストマップ化してみた

みなさん、こんにちは。DATAFLUCTのKazumiです。 今回は文章の解析を簡単に知ってもらうために、WordCloudというPythonのライブラリを用いて小説の「テキストマップ」を見ていきます。テキスト中の単語の出現頻度を大きさで表現することで、視覚的に描写する…

時系列分析をお手軽に!機械学習ライブラリDartsの実演

こんにちは! 以前にDartsという時系列分析に特化したpythonライブラリを紹介しました。 前編はこちら 今回は実際にDartsを動かしていきましょう。 Darts内にもデータセットがありますが、公式でも触れられているのであえて、外部のデータを参照してみましょ…

教師なし学習の実践 主成分分析で高次元データを可視化する

こんにちは!nakamura(@naka957)です。今回は、主成分分析(PCA)をご説明します。 主成分分析は教師なし学習の重要手法の1つです。教師なし学習は正解情報なしでデータのパターンを推測する手法です。その中でも、主成分分析は多数の特徴量を少数の特徴…

時系列分析をお手軽に!機械学習ライブラリDartsの解説

こんにちは! 皆さんはAutoMLと呼ばれるツールをご存じでしょうか?AutoMLは機械学習の面倒なデータ処理からモデルの選定、実際に学習を行って予測値を算出するまでを自動で行ってくれる便利なツールです。 今回はその中でもDartsというAutoMLを紹介します。…

PyCaretからAutoVizを使用して探索的データ分析(EDA)を簡単に行ってみる

こんにちは!nakamura(@naka957)です。本記事では、PyCaretで簡単に探索的データ分析を行う方法をご紹介します。 探索的データ分析(Explanatory Data Analysis: EDA)とは、データセットを様々な視点から分析し、データを考察することを目的に行うことで…

データ基盤とは何か? 収集・変換・統制の3つの構成要素に分けて解説

こんにちは。今回は、データ基盤を俯瞰して、全体像を理解してみたいと思います。 突然ですが、皆さんが所属されている会社では、データの活用は進んでいますでしょうか?自社内で、どういう風に、データの活用を進めていくとしても、データ基盤の整備は非常…

【データが少なくても諦めないで!】知っておくべき転移学習について

こんにちは! 皆さんは機械学習モデルを作ろうとした時にデータが少なくても、思ったような精度が出ずに困ったことはないでしょうか。 筆者は機械学習を用いたプロジェクトで、「やりたいことはあるけど....データがない...ッ!」といつも困っていました。 …

機械学習における教師なし学習の理解を深める

こんにちは!nakamura(@naka957)です。今回は、教師なし学習をご説明します。 機械学習では、学習データに正解情報が含まれている教師あり学習への注目が多いかもしれません。一方で、学習データに正解情報を含まない教師なし学習も存在します。教師なし学…

機械学習で知っておくべきデータの種類と構造化・非構造化データとは

こんにちは、DATAFLUCTのSaiです。 今回は機械学習には欠かせないデータについて解説します。データにはどんな種類があるかということと、機械学習する際にデータをどのように扱う必要があるかを一緒に見ていきましょう。 データの種類 1.数値データ 2.画像…

2変数 単回帰分析の実践

はじめに 相関関係とは 相関関係と因果関係 回帰分析 最小二乗法 回帰直線の公式 決定係数 注意点(発展) 補足 回帰分析の実例 まとめ はじめに DATA FLUCTのYamaguchiです。今回は、回帰分析の初歩として、最もベーシックな2変数の回帰分析(単回帰分析)…

そもそも機械学習って何?AIとの違いを知ろう

こんにちは!DATAFLUCTのKazumi.Kです。 この記事では機械学習をより深く理解するためにAI、ディープラーニングとの関係に触れて解説します。AIについても意外と中身は知られていないと思いますので、AI・機械学習・ディープラーニングについて見ていきまし…

図解でわかる、機械学習をどこよりも簡単に解説

はじめまして、DATAFLUCTのSaiです。 この記事では「機械学習」について、AIやディープラーニングの違いに触れながら分かりやすく解説していきます。 また機械学習を知る上で欠かせない AI ディープラーニング 教師あり学習、教師なし学習、強化学習 回帰、…

データドリフトを簡単検知!PythonライブラリEvidentlyを使ってみた

こんにちは!nakamura(@naka957)です。今回は機械学習モデルの運用時で特に問題となるドリフトを検知するOSSをご紹介します。 本番環境のモデル精度が低下する現象をドリフトと呼びます。特にデータ由来をデータドリフトと呼びます。 機械学習はデータから…

機械学習の運用に欠かせないドリフト(Drift)の概念と重要性

こんにちは!nakamura(@naka957)です。 ドリフト(Drift)という言葉をご存知でしょうか?機械学習のサービスを運用する上で重要な項目ですが、知らない人も多いのではないでしょうか。 機械学習プロジェクトは、モデルを構築するまでがゴールではありません…

密度分布を比較するためJoyPyでサクッと重ねてみた

こんにちは!nakamura(@naka957)です。今回は可視化で便利なOSSをご紹介します。1次元密度分布をさくっと描画でき、データの傾向を簡単に比較できます。 JoyPyとは ライブラリの読み込み データセットの準備 Joyplotsを試してみる グラフの色をデザインす…

【続き】 AutoMLライブラリPyCaretを使ってみた 〜結果の描画〜

こんにちは!nakamura(@naka957)です。前回記事に引き続き、機械学習を少ないコードで実装できるPyCaretをご紹介します。 【前回の記事】AutoMLライブラリPyCaretを使ってみた〜モデル実装から予測まで〜 PyCaretとは (復習) 機械学習モデルの実装 結果の…

SHAPで機械学習モデルを解釈してみた

こんにちは!nakamura(@naka957)です。今回は機械学習モデルの解釈するために有用な手法であるSHAPをご紹介します。モデル解釈はデータ分析や機械学習の活用において重要な内容ですので、興味がある方は是非参考にしてみてください。 SHAPとは 機械学習モ…