yiskw note

機械学習やプログラミングについて気まぐれで書きます

【Rust】順列,組み合わせ,重複組み合わせを列挙する

Rustで順列や組み合わせ,重複組み合わせを列挙する方法がわからなかったので, 調べた結果をこちらにメモしておきます. 方法 Rustのitertools::Itertoolsトレイトにはそれぞれ順列,組み合わせ,重複組み合わせを列挙するメソッドである, permutations, c…

Starshipを使ってプロンプトをカスタマイズする

概要 Rust製のソフトウェアであるStarshipを用いて,プロンプトをカスタマイズしてみたので, その使い方についてこちらにメモを残しておきます. ターミナルでの作業の効率化については,他にも記事を書いておりますので,良ければご参照ください. yiskw71…

【Rust】HashMapをソートする方法

RustのHashMapをソートする方法について調べたので,こちらにメモを残しておきます. 方法 HashMapをVecに変換して,キーもしくはバリューでソートすれば良いです. その際にsort_byを用いて,比較の基準をクロージャーで指定します. キーでソートする場合…

【Rust】Vec<f32>やVec<f64>に対してソートを実行する

概要 最近Rustについて勉強しているのですが,Vec<f64>に対してsortを実行しようとしたところ, 以下のようなエラーを吐かれてしまいました. error[E0277]: the trait bound `f64: std::cmp::Ord` is not satisfied そこでVec<f64>に対してソートを行う方法について調</f64></f64>…

【PyTorch】テンソルのデータ型や形状をアノテーションするtorchtypingを使ってみた

概要 github.com PyTorchのテンソルのデータ型や形状をアノテーションできるtorchtypingというライブラリを使ってみたので, 使い方やその使用感について,こちらにメモを残しておきます.

【PyTorch】モデルの可視化を行うtorchinfoを使ってみた

PyTorchでモデルを可視化する方法はいくつかありますが,今回はその中でtorchinfoというものを見つけました. 実際にtorchinfoを使用してみたので,その使い方についてこちらにメモを残しておきます. そのほかの可視化ライブラリについてもまとめております…

すでに転送済みのファイルを無視してscpする

ローカルサーバーからリモートサーバーに(もしくは逆方向に), 大量のファイルをscpコマンドでコピーする際に, 途中でなんらかの原因でコピーが中断されてしまうことがありました. また一から送信し直すのは時間がかかってしまうので, すでにコピー済みの…

【Rust】二つのイテレータを同時に回す

AtCoder ABC148のB - Strings with the Same Lengthを解くにあたり, Rustで二つのイテレータを同時に回す方法(pythonでいうzip関数)について調べたので,こちらにメモを残しておきます.

個人的にオススメなVSCodeの拡張機能

個人的に使用しているVisual Studio Codeの拡張機能を備忘録としてまとめてみました. 一部,言語(python / rust / html)に依存した機能も多いですが,参考になれば幸いです. 拡張機能はアルファベット順で掲載しております.

docker / docker-compose コマンドの補完を設定する

docker / docker-composeのコマンドの補完や,タグの補完をする方法について調べたので,その方法をこちらに残しておきます. 使用環境 macOS Catalina Docker Desktopを使用している場合 docs.docker.com こちらのドキュメントに書いている通りに実行すれば…

【Rust】HashMapを用いて要素の個数を数える

AtCoderのB - Judge Status SummaryをRustで解いている際に, Rustでの配列内の要素の数え方がわからなかったので, 調べた内容をこちらにメモしておきます. 間違っていたり,別の方法がある場合はコメントにて教えていただけると幸いです. HashMap 要素の…

Rustのベクター型をキーを指定してソートする

B - Do you know the second highest mountain?の問題をRustで解くにあたって, ベクター型をキーを指定してソートする必要がありました. その方法について調べたので.解答とともにこちらにメモを残しておきます. ソートの仕方 Vec<i32>など整数型のベクタをソ</i32>…

Rustでベクター型から最大値/最小値を取り出す方法

Rustのベクター型から最大値/最小値を取り出す方法がわからなかったので, こちらに調べた内容をメモしておきます. 何か間違っている点があればコメントにて指摘していただけると嬉しいです. 方法 Vec<T>に対してiterメソッドを呼んでイテレータを作成し, イ</t>…

Djangoのテンプレートで使えるフィルターのまとめ

Djangoのテンプレートで使えるフィルターについて調べたので,こちらにメモを残しておきます. フィルターの書き方 date default dictsort length linebreaksbr lower safe truncatechars truncatewords 参考

DjangoのモデルのCharFieldで小文字のみを使用する方法

pythonのwebフレームワークであるDjangoにおいて,モデルのCharFieldで登録される文字を小文字に限定する方法について調べたので,メモとして残しておきます. やり方 オブジェクトを保存する際に文字列を小文字に変換すればよく, モデルクラスのsaveメソッ…

Don't Judge an Object by Its Context: Learning to Overcome Contextual Biasを読んだのでメモ

概要 既存のモデルは,物体とそのコンテキストの共起性を活用することがあるが,あまりコンテキストに頼りすぎるとコンテキストがない場合に認識できない(上図). 本研究では,コンテキストとカテゴリの特徴表現の相関を減らすことを目的とし,これを実現す…

Removing the Background by Adding the Background: Towards Background Robust Self-supervised Video Representation Learningを読んだのでメモ

動画中の人物行動認識において,背景だけを見て行動分類をしてしまうBackground Cheatingが問題となっている.Background Cheatingをしてしまうと,例えばサッカー場でバク転を行うなど,動きの状況を見ていないと正しく行動を分類できない動画に対応できな…

Pulling Actions out of Context: Explicit Separation for Effective Combinationを読んだのでメモ

概要 動画認識において,現状のシステムでは人間の行動と,それに付随する有意な要因(物体や背景など)の分離がうまくいっておらず,行動認識の結果が背景に影響を受けてしまうことがある. そこで本研究では,行動を含む動画とコンテキスト(背景,物体,カメ…

pytestでloggingのログ出力をテストする

概要 pytestでloggingのログ出力をテストする方法について調べたので,こちらにまとめておきます. ディレクトリ構造 便宜上以下のディレクトリ構造を想定してテストの方法を解説します. . ├── pac │ ├── __init__.py │ └── mod.py └── test_mod.py pac/mod…

スマメイトの対戦データを使用してキャラの安定度や上振れ度を分析してみた

スマメイト13期の対戦成績を解析して,キャラごとの安定度を分析してみました. あくまでオンライン対戦での結果であり,オフラインや競技シーンでの安定度の解析ではございません. また,人口の少ないキャラクターがいてデータに偏りがある関係上, 直感と…

Djangoでフィールド間の大小比較や差の絶対値の計算を行う

概要 Djangoでフィールド間の大小比較をした結果や,フィールド間の差の絶対値を新しいフィールドとして保存する方法について調べたので,メモを残しておきます.

pythonのdefaultdictで定数をデフォルト値に指定する方法

pythonの標準ライブラリであるcollectionで定義されたdefaultdictで,デフォルト値に定数を指定する方法について調べたのでメモしておきます. ダメな例 defaultdictの引数に直接定数を定義してみます. すると,defaultdictの引数は呼び出し可能(callable)…

pandas.DataFrameのfor文を高速化する

概要 最近数百万オーダーのテーブルデータを扱うことがあり,そのデータを読み込んだpandas.DataFrameをfor文で処理が非常に遅く,困っておりました. そこで,pandas.DataFrameのfor文を高速化する方法について調べたので,こちらにメモしておきます.

スマメイト13期の対戦データからレート帯ごとにキャラランクを決めてみた

スマメイト13期の対戦成績を解析して,レート帯ごとのキャラランクを決定してみました. あくまでオンラインでの結果であり,人口の少ないキャラクターがいてデータに偏りがある関係上, 直感とは反する結果が含まれる場合があるので, その点をご理解いただ…

sqlite3のデータベースをpandasで読み出す方法

概要 sqlite3のデータベースをpandasで読み込む方法について調べたので,まとめておきます. 読み出し方 以下で簡単にできます.TABLE_NAMEには適宜テーブルの名前に変えてください. import pandas as pd import sqlite3 TABLE_NAME = "test" filename = "s…

pandasでUNIX時間をdatetime型に変換する

概要 pandasでUNIX時刻をdatetime型に変換する方法について調べたので,備忘録として残しておきます.

スマブラの対戦データを解析して相性補完ができるサブキャラを探してみた

スマメイト13期の対戦成績を解析して,相性補完できるサブキャラを探してみました. あくまでオンラインでの結果であり,データが少なかったり,データに偏りがある関係上,直感とは反する結果が含まれる場合があるので, その点をご理解いただけたらと思い…

pytorchで全結合層以外の重みを固定して学習し直す

概要 pytorchで転移学習を行う際に,全結合層以外の重みを固定するということをよくやるのですが,毎回やり方を忘れて調べていたので,備忘録としてこちらに残しておきます.

Mimetics: Towards Understanding Human Actions Out of Contextを読んだのでメモ

はじめに Philippe Weinzaepfel et al. "Mimetics: Towards Understanding Human Actions Out of Context"を読んだので,その内容をメモしておきます. contextがない行動を集めたMimetics datasetを作成し,Mimeticsデータセットでの様々な手法の比較実験や…

GitHub Actionsを用いて,slackに定期的にメッセージを送信する

概要 以前Herokuとpythonを用いてslackに定期的にメッセージを送るbotを作成したのですが, 調べてみると定期的に実行するだけならGithub Actionsを用いることでできるようでした. そこでGitHub Actionsを用いたSlack botを作成してみたので,こちらにメモ…