Vertex AI を用いた機械学習バッチ推論基盤の運用

寄稿しました。 anymindgroup.com

BigQuery View Table を用いた機械学習向けデータ基盤の作成

寄稿しました。 anymindgroup.com

Vertex AI を用いた機械学習バッチ推論基盤の導入

寄稿しました。 anymindgroup.com

機械学習導入初期フェーズにおける Vertex AI Models / Endpoints を用いたオンライン推論

寄稿しました。 anymindgroup.com

Vertex Pipelines (Kubeflow) の機械学習システムへの導入

寄稿しました。 anymindgroup.com

Cloud Composer (Airflow) を用いた機械学習向けデータ基盤の作成

寄稿しました。 anymindgroup.com

AI Platform Pipelines の機械学習基盤への導入

寄稿しました developers.microad.co.jp

【論文紹介】nnPU learning: Positive-Unlabeled Learning with Non-Negative Risk Estimator

はじめに Positive-Unlabeled Learning with Non-Negative Risk Estimator について過去論文を読みつつまとめたものになります。 勘違いしている点などあればご指摘いただけると幸いです。 はじめに 従来研究における流れ Positive Negative Classification …

【論文紹介】unbiased PU learning: Convex Formulation for Learning from Positive and Unlabeled Data

こちらの記事の続きになります。 nnkkmto.hatenablog.com はじめに Convex Formulation for Learning from Positive and Unlabeled Data についてまとめたものです。 また、こちらの論文は Analysis of Learning from Positive and Unlabeled Data での研究…

【論文紹介】Analysis of Learning from Positive and Unlabeled Data

はじめに Analysis of Learning from Positive and Unlabeled Data の内容をまとめたものになります。 pu-learningを重み付き分類問題に落とし込むという点で、以前以下の記事で検証したLearning Classifiers from Only Positive and Unlabeled Data に続く…

【論文紹介】Learning Classifiers from Only Positive and Unlabeled Data

はじめに 通常の2値分類問題においては、サンプルxに対してラベルがpositive(y=1)であるかnegative(y=0)であるかが明示的に与えられていることを前提とします。 一方で、現実的な問題設定においてnegativeが明示的に与えられないケースも存在し、そのよ…

LightFMで前処理・学習から予測・評価・潜在表現の取得までやってみる

ロゴがかっこいい、、、 概要 こちらのLightFMを実際にMovieLensのデータを使って一通り動かしてみます。 github.com 元になっている論文はこちらです。 arxiv.org 細かい論文の内容に関しては以下の記事でまとめています。 nnkkmto.hatenablog.com また、動…

【論文紹介】LightFM: Metadata Embeddings for User and Item Cold-start Recommendations

はじめに 以下でLightFMとしてパッケージも配布されている Metadata Embeddings for User and Item Cold-start Recommendations を読んでいきます github.com このパッケージ、lossや前処理などメソッドがかなり充実していて使いやすく、またLightFM自体も予…

【論文紹介】Factorization Machines

Factorization Machinesを読んで実装してみました 論文内容 課題 既存手法として、SVMやMatrixFactorizationが存在するが、 レコメンドでよくある問題設定、つまりカテゴリー値が多い(=sparseである)入力において、SVMだと非線形なカーネル空間となるため…

【論文紹介】LightGBM: A Highly Efficient Gradient Boosting Decision Tree

ちゃんと論文読んでなかったので、、、 papers.nips.cc 課題 GBDTにおいて、最も計算コストのかかるのが決定木の学習、その中でも分岐の決定。 従来のGBDTにおいては、全てのあり得る分岐点を考慮するため、全てのレコードを元に学習を行うため、以下の二つ…

pandasでmulti-hot encodingする

pivot_tableに関しては以下参照しています datascience.stackexchange.com やりたいこと 以下のようにpandasでlistとして保持しているカテゴリー値を 以下のようにmulti-hot encodingしたい やり方 全体処理 以下のように、一度listを展開し、pivot_tableで…

dictで保持している特徴量のtrain_test_split

やりたいこと 以下のように辞書型で保持している特徴量を {'field1': array([0, 1, 2, 3, 4, 5]), 'field2': array([5, 4, 3, 2, 1, 0]), 'label': array([1, 0, 1, 0, 0, 0])} 以下のように辞書型を保持したまま分割したい {'field1': array([4, 0, 3]), 'f…

Pythonで不規則な2次元標準リストをflattenする

やりたいこと [0, 0, [0, 0], 0, [0]] みたいな不規則にlistが含まれる標準リストを以下のように平坦化したい [0, 0, 0, 0, 0, 0] やり方 一度全ての値をリスト化して、その上でitertools.chain.from_iterableを適用すればできた def flatten_sequences(sequ…

one-hot encodingされた特徴量を逆に元のカテゴリー値に戻す

MovieLensのデータセットがこんな感じで処理がめんどくさかったのでメモとして やりたいこと 以下のように one-hot encoding された状態で渡されたデータセットを movie_id action horror romance sf 0 1 1 0 0 0 1 2 0 0 1 0 2 2 1 0 0 0 3 3 0 0 0 1 4 3 1…

時系列に考慮したシーケンシャル・カテゴリ特徴量へのログデータの省メモリな変換

はじめに こんにちは、今回は時系列情報を考慮する必要のあるログデータに対して、メモリ消費を抑えつつ前処理を行う方法について書いていきます。 やりたいこと このようなユーザーごとの行動ログの入ったデータセットがあったとして、 userid itemid categ…

ログデータの省メモリなmatrix変換

やりたいこと 以下のような、user, item などキーとして階層的に値を持つログデータがあるとして、 (以下、user item はケースによって読み替えてください) >>> df = pd.DataFrame([['user1','item1',5],['user1','item2',4],['user2','item2',5],['user2'…

Google Compute Engine を用いた機械学習モデル学習バッチのスケジュール実行

寄稿しました developers.microad.co.jp