ギークなエンジニアを目指す男

機械学習系の知識を蓄えようとするブログ

Python

ProbSpace「YouTube動画視聴回数予測コンペ」参加メモ 〜MLflow Trackingによる実験管理を添えて〜

こんにちは。takapy(@takapy0210)です。 今回はProbSpaceで開催されていた「YouTube動画視聴回数予測」コンペに参加し、その中でMLflow Trackingで実験管理を行ってみましたので、簡単に振り返りをしようと思います。 ちなみに結果はPrublic 13th → Privat…

自然言語を簡単に可視化・分析できるライブラリ「nlplot」を公開しました

こんにちは。たかぱい(@takapy0210)です。 本日は自然言語の可視化を手軽にできるようにしたパッケージnlplotをPyPIに公開したので、これのご紹介です。 nlplotとは? nlplotで何ができるか 使い方 使用データ 事前準備 ストップワードの計算 N-gram bar c…

PyPIへのアップロード時に「HTTPError: 400 Client Error: The description failed to render in the default format of reStructuredText.」が出る場合の対処方法

こんにちは。takapy(@takapy0210)です。 自作パッケージをPyPIにアップロードしようとしたところ簡易的なミスで数時間溶かしたので、その備忘です。 エラー内容 エラー発生時のsetup.pyの内容 解決方法 やったこと 各種パッケージのアップデート 公式の書…

【言語処理100本ノック 2020】 4章をPythonで解いた

こんにちは。takapy(@takapy0210)です。 本エントリは言語処理100本ノック 2020の4章を解いてみたので、それの備忘です。 nlp100.github.io 例によってコードはGithubに置いてあります。 github.com 第4章: 形態素解析 30. 形態素解析結果の読み込み 31. …

【言語処理100本ノック 2020】 3章をPythonで解いた

こんにちは。たかぱい(@takapy0210)です。 本エントリは言語処理100本ノック 2020の3章を解いてみたので、それの備忘です。 nlp100.github.io 例によってコードはGithubに置いてあります。 github.com 第3章: 正規表現 20. JSONデータの読み込み 21. カテ…

【言語処理100本ノック 2020】 2章をPythonで解いた

こんにちは。たかぱい(@takapy0210)です。 本エントリは言語処理100本ノック 2020の2章を解いてみたので、それの備忘です。 nlp100.github.io 例によってコードはGithubに置いてあります。 github.com 第2章: UNIXコマンド 10. 行数のカウント 11. タブを…

【言語処理100本ノック 2020】 1章をPythonで解いた

こんにちは。たかぱい(@takapy0210)です。 本エントリは言語処理100本ノック 2020の1章を解いてみたので、それの備忘です。 nlp100.github.io コードはGithubに置いてあります。 github.com 第1章: 準備運動 00. 文字列の逆順 01. 「パタトクカシーー」 02…

データ分析コンペで使っているワイの学習・推論パイプラインを晒します

こんにちは!たかぱい(@takapy0210)です。 本記事はKaggle Advent Calendar 2019の14日目の記事です。 昨日はkaggle masterのアライさんのKaggleコード遺産の記事でした! とても参考になり、いくつか自分の遺産にも取り入れさせていただきました。 さて本…

Category Encodersのすゝめ【AI道場「Kaggle」への道 by 日経 xTECH ビジネスAI① Advent Calendar 2019 10日目】

こんにちは!たかぱい(@takapy0210)です。 本記事は、AI道場「Kaggle」への道 by 日経 xTECH ビジネスAI① Advent Calendar 2019の10日目の記事です。 今回は、最近よく使用しているCategory Encodersを動かしてみた結果をまとめてみようと思います。 Categ…

【小ネタ】ipywidgetsを使ってデータフレームのheaderを固定してデータを表示する

こんばんは。takapy(@takapy0210)です。 今日はpythonの小ネタです。 サマリ 手順 ipywidgetsのインストールとjupyterの設定 コード 最後に サマリ 下記のように、headerを固定しながら一覧をスクロールすることができます。 手順 ipywidgetsのインストー…

GloVeを使って単語の分散表現を取得する

こんにちは。takapy(@takapy0210)です。 コンピュータで自然言語を扱う場合は、単語(文書)を何らかの形で数値表現に変換する必要があります。 単語の分散表現を得る方法の一つとして、gensimのword2vecを使うことはよくあると思うのですが、本日はGloVe…

Dockerを使って機械学習実行環境(勾配ブースティング、ニューラルネット含む)を30分で構築する - python, Mecab, LightGBM, xgboost, TensorFlow, keras, Pytorch, etc... -

こんにちは。takapy(@takapy0210)です。 今日はDockerで機械学習の環境を作成したのでそれの備忘です。 はじめに できること Dockerって何 Dockerのインストール 環境構築方法 Dockerイメージのpull コンテナの起動 補足 mecab-ipadic-neologdの使用方法 D…

ランダムフォレストはなぜ「ランダム」なのか

こんにちは。takapy(@takapy0210)です。 本記事は、転職カウントダウンカレンダー 6日目の記事です。 www.takapy.work はじめに ランダムフォレストとは 異なる決定木を作るための2つの乱数選択 ブーストラップサンプリング 特徴量選択 簡単に図で説明 pyt…

AWS Lambdaを利用してpythonでslack通知を実装する

こんにちは。takapy(@takapy0210)です。 本記事は、転職カウントダウンカレンダー 4日目の記事です。リフレッシュを兼ねてDocker以外の記事を挟みます。 www.takapy.work はじめに SlackのWorkspaceにIncoming Webhookを登録 AWS Simple Queue Serviceの作…

Mac環境構築備忘録(Python・Chrome拡張・アプリ)

こんばんは。takapyです。 本記事は、転職カウントダウンカレンダーの1日目の記事です。 www.takapy.work 3月より入社する職場からMacを支給されたので、環境構築がてら手順の備忘をまとめておこうと思います。 python関連 Homebrew pyenv pyenvでpythonをイ…

Python用VSCode拡張機能まとめ

こんばんは。takapyです。 本記事はVSCode拡張機能の備忘です。 python関連 Git関連 その他 python関連 marketplace.visualstudio.com marketplace.visualstudio.com marketplace.visualstudio.com Git関連 marketplace.visualstudio.com marketplace.visual…

pyenvでBUILD FAILED Inspect or clean up the working tree エラーが出た時の対処方法(macOS Mojava 10.14.2)

こんにちは。こんばんは。takapy(@takapy0210)です。 環境構築で少しつまづいたので、備忘です。例のごとく、$で始まる行はコマンドです。 環境 pyenvのインストール python3.6.0のインストールでエラー 解決方法 環境 モデル:Mac book Pro 15インチ OS:…

主成分分析(PCA)の累積寄与率で見る特徴量エンジニアリング【python】

はじめに 主成分分析(PCA)とは 固有値と寄与率と累積寄与率 固有値 寄与率 累積寄与率 cancerデータセットで主成分分析 ロジスティック回帰でテスト 標準化 学習 主成分分析で寄与率を確認 2次元まで圧縮してプロット PCAの欠点 主成分分析後のデータでロ…

単変量解析で見る特徴量エンジニアリング【python】

本日は特徴量エンジニアリングの重要性について、scikit-learnでの簡単な実装を交えながら書いてみようと思います。 はじめに 特徴量エンジニアリング 単変量統計 検証の概要 検証 cancerデータの読み込み ノイズデータの生成 単変量特徴量選択 ロジスティッ…

TF-IDFで見る評価の高いラーメン屋の口コミ傾向(自然言語処理, TF-IDF, Mecab, wordcloud, 形態素解析、分かち書き)

年末〜学習している日本語口コミデータの解析について一区切り(?)ついたので、まとめてみようと思います。 はじめに データ読み込み & EDA データの読み込み EDA 前処理(欠損値、形態素解析&分かち書き、ストップワード除去) 欠損値削除 数字の扱い Mec…

【初学者向け】TFIDFについて簡単にまとめてみた

本日は、TF-IDFについて簡単に勉強してみたので、それのまとめです。 TF-IDFとは Term Frequency Inverse Document Frequency TF-IDF(Term Frequency - Inverse Document Frequency)を求める scikit-learnで計算してみる TF-IDFとは Term Frequency - Invers…

単語と図で理解する自然言語処理(word2vec, RNN, LSTM)後編

前回に引き続き、後編です。 www.takapy.work 前編の簡単な復習 言語モデル 言語モデルにおけるフィードフォワード型ニューラルネットワーク(word2vec)の問題点 RNN BPTT(Backpropagation Through Time) BPTTの問題点 Truncated BPTT Truncated BPTTのミニ…

単語と図で理解する自然言語処理(word2vec, RNN, LSTM)前編

「ゼロから作るDeepLearning2」を読了しましたので、要点や自分なりの解釈をまとめておきます。 www.oreilly.co.jp まとめていたら長編になってしまったため(それってまとまってなくね?)、前編と後編に分割することにしました。 自然言語と単語の分散表現…

WebサイトをPythonでスクレイピングしてみた

先日宣言しておりました下記について、エラーなども解消し無事に動くところまでできました。 www.takapy.work 自然言語処理の学習のためのデータ集めなどをしている。自分の好きなデータだとやる気が出ると思っての題材選定だが、腹しか減らん。 pic.twitter…

年末年始は口コミデータの解析などをしてみたいと思う。

来年3月からMLエンジニアとして仕事をしていくわけですが、なるべく実力をつけた状態で新しい職場にいきたいので、年末年始という大型連休をどうにか有効に使えないかと考えました。 新しい職場では、まずは自然言語処理業務に関わると聞いているため、せっ…

python3からMecabを使ってみた(インストール手順も)

年末年始で自然言語処理の勉強をするため、Mecabをインストールして使ってみました。 その時のインストール手順などの備忘録です。 インストール環境 インストール手順 Homebrew Mecabと辞書をインストール mecab-ipadic-NEologdをインストール Pythonバイン…

機械学習初心者が約10ヶ月でメダルより大切なものを獲得できた話【kaggle Advent Calendar 17日目】

本記事は、kaggle Advent Calendar 2018の17日目の記事です。 qiita.com 何を書くか直前まで悩んでいましたが、16日に参加したAIもくもく会の中で、 機械学習に興味はあるけど、どのような手順で、何から勉強していったら良いかわからない という方が数名い…

技術書典5に参加してきました in 池袋サンシャイン

10月8日(月)に技術書典に初めて参加してきました! 技術書典ってなに?って方はこちら techbookfest.org なぜ参加しようと思ったか 戦利品 参加してみて 次に参加するときに注意したい点 なぜ参加しようと思ったか ある日、Twitterで 技術書展 なるエンジ…

Kaggler-ja in-classコンペ途中経過 〜Fashion MNISTをkerasで〜

現在、7月9日より開催されているkaggler-jaというslackグループのin-classコンペに参加しています。 今日はその途中経過を報告したいと思います。 また、このモデルを構築するまでに試行錯誤したことなど、最後にまとめてありますので良ければご参考になさっ…

クラス分類のための線形モデル(ロジスティック回帰 / 線形サポートベクタマシン)

こんばんは。 今日はクラス分類に用いることができる線形モデルを紹介します。 (ロジスティック回帰がメインです) それぞれの線形モデルの境界線を表示してみる 正則化パラメータ:Cの変更 ロジスティック回帰とcancerデータセット p.s. 第100回 甲子園大…