気ままに実装する機械学習

機械学習に興味のある大学院生によるブログです. 機械学習以外のトピック多めです.

MENU

オイラーのφ関数と競プロにおける例題

競技プログラミングでオイラーのφ関数を用いる問題を見つけたので、本記事では、オイラーのφ関数について軽く説明した後に、どのように用いたかの例を挙げます. オイラーのφ関数 オイラーのφ関数の性質 オイラーのφ関数を用いる問題 エラトステネスの篩の考…

C++で順列生成 next_permutation

競技プログラミングで順列を生成したくなることは良くあります. 例えば、グラフの最短経路問題のときに、訪れるべきノードが複数与えられていて、コストが最短になるような順番を求める問題の時、考えられる全順序を試してその最小を出力すればよくなります.…

統計検定2級に合格するためには

最近、統計検定2級に合格したので、勉強方法などを残していきたいと思います. 1. なんで統計検定? 2. 統計検定の概要 3. 使用した参考書や問題集 4. まとめ 1. なんで統計検定? 私自身機械学習に興味があり、専門書などで勉強をしているのですが、統計の知…

pythonでクローリングするならSeleniumがおすすめ

機械学習などで大量のデータが必要になることは多々あります. Wikipediaなどではdumpファイルで一括ダウンロードできるので問題は起きませんが、必ずしも自分が使いたいデータが一括でダウンロードできるとは限りません. そんな時におすすめなのがSeleniumで…

numpyで集合演算をするための備忘録

研究で集合演算を使うことがあるのですが、すぐに使い方を忘れてしまうため、自分用の備忘録として記事にしたいと思います. 積集合 使い方 結果 和集合 使い方 結果 差集合 使い方 結果 排他的論理和 使い方 結果 積集合 使い方 import numpy as np a = np.a…

AtCoder Beginner Contest 112に参加しました

AtCoder Beginner Contest 112に参加したので記録を残したいと思います. 問題のタイトルは以下のようになっています. A - Programming Education B - Time Limit Exceeded C - Pyramid D - Partition A - Programming Education 問題の概要 解法 B - Time Li…

パターン認識と機械学習 : グラフィカルモデル (準備編)

パターン認識と機械学習 (Pattern Recognition and Machine Learning; PRML) のメイントピックの一つであるグラフィカルモデルについての記事を書いていきたいと思います. 1. 準備 加法定理と乗法定理 2. グラフィカルモデルの特徴 3. 用語の説明 4. 参考文…

AtCoder Beginner Contest 110に参加しました

AtCoder Beginner Contest 110に参加したので記録を残しておきたいと思います. 問題のタイトルは以下のようになっています. A - Maximize the Formula B - 1 Dimensional World's Tale C - String Transformation D - Factorization A. Maximize the Formula…

Macユーザ必見 「shiftIt」で画面分割が快適に

この記事を読んでいるということはMacを使っていると思いますが、複数のソフトウェアを1画面に配置するときどうしていますか? マウスでドラッグしてサイズ調整したりしていませんか? もししているとしたら、非常にめんどくさい作業ではないですか? 私は…

統計学の基礎知識 : 変動係数、相関係数、偏相関係数

今回は変動係数、相関係数、偏相関係数についての記事です. 最後に簡単なプログラムをpythonで書いたのでそちらも載せておきます. 1. 変動係数 2. 相関係数 共分散 相関係数に話を戻します 3. 偏相関係数 4. 実装例 1. 変動係数 標準偏差の他にデータの散ら…

応用情報に最短で合格するためには

1. 本記事について 2. 対象読者 3. こんな記事を読む時間すら惜しい方 4. 合格までに必要な勉強時間 5. 応用情報とは 6. 午前、午後に共通してやること 7. 午前対策 8. 午後対策 9. 前日やること 10. 当日 11. まとめ 1. 本記事について 本記事では、応用情…

AtCoder Beginner Contest 104に参加しました

久しぶりにリアルタイムでAtCoderに参加したのでその感想でも書いておこうかと思います. 今回参加したコンテストはAtCoder Beginner Contest 104です 問題のタイトルは以下のようになっています. A . Rated for Me B . AcCepted C . All Green D . We Love A…

AtCoderの Typical DP Contestを解いてみた (E 数)

E 数 問題の概要 解法 寄り道 (桁DPの勉強) 解法 (本題に戻る) ソース 今回もTypical DP Contestのアウトプットに関する記事です. 今回解いた問題はE 数です 前回までの記事は以下の通りです. A コンテスト B ゲーム C トーナメント D サイコロ E 数 今回は…

AtCoderの Typical DP Contestを解いてみた (C トーナメント)

C トーナメント 問題の概要 解法 ソース 今回もTypical DP Contestのアウトプットに関する記事です. 今回解いた問題はC トーナメントです 前回までの記事は以下の通りです. A コンテスト B ゲーム C トーナメント 今回は「C トーナメント」という問題を解き…

vimでMarkdown記法をローカルでプレビューしたい

MarkdownでgithubのREADMEやはてなブログの記事をMarkdownで書いているとプレビューしたくなります。 今まではgithubであれば、addしてcommitしてpushしてブラウザで更新して間違っている箇所を修正という非常にめんどくさい作業を繰り返してました。。。 そ…

matplotlibのインストールにつまずいたお話

新しいmacbookにmatplotlibをインストールしようとした時に少しつまずいたので備忘録として記事にします。 1. 吐き出したエラー達 2. 解決策 1. 吐き出したエラー達 まず普通に pip install matplotlib でインストールしようとすると Command "python setup.…

天気を知らせてくれるtwitter botを作ってみた

前回はgoogle calendarに予定を追加したり確認したりできるbotを紹介しました。 www.tatsumiya-blog.tokyo 今回は天気を知らせてくれるtwitter botの紹介です。テレビで天気を見てから学校行くなんてことはないですし、(正直)天気アプリを起動してまで確認す…

google calendarに予定を追加するTwitter Botを作ってみた

今回は、Twitter上でgoogle calendarに予定を追加し、確認できるbotを作成してみたので記事にしてみました。 (ソースは一応githubにも載せておきます。)使用言語はpythonです。 予定を追加するときはbotに "r year/month/day/hour of start/minutes of start…

交差検定

交差検定 今回はモデル選択の時に使われる手法の、交差検定について軽くまとめて実装して見たいと思います. 交差検定 交差検定について 交差検定の実装例 交差検定について 訓練とテストに使えるデータには限りがありますが、良いモデルを選択するために得ら…

パターン認識と機械学習 : 多項式曲線フィッティング

多項式フィッティング ビショップ本で最初に取り扱っている多項式曲線フィッティングについての備忘録です. (ビショップ本では、この単純な回帰から多くの重要な概念を説明したいらしい.) 多項式フィッティング 多項式フィッテイングとは 多項式フィッテイ…

テイラー展開

テイラー展開 最適化数学でテイラー展開がたくさん出てきたのでとりあえず実装してみることにしました. 今回はサインカーブを使おうと思います. テイラー展開 1. テイラー展開とは 2. 実装例 1. テイラー展開とは 関数のある一点での導関数の無限和で表され…

勾配法

「これなら分かる最適化数学」を読み始めたので、最適化についても紹介していこうと思います. これなら分かる最適化数学―基礎原理から計算手法まで作者: 金谷健一出版社/メーカー: 共立出版発売日: 2005/09/01メディア: 単行本購入: 29人 クリック: 424回こ…

パターン認識と機械学習 : ガウス分布と条件付きガウス分布

ガウス分布と条件付きガウス分布 今回は、ビショップ本の2章のメインとも言えるガウス分布についてです. ガウス分布については結構な量があるのでいくつかに分けてまとめていきたいと思います. ガウス分布と条件付きガウス分布 1. ガウス分布について 多変量…

パターン認識と機械学習 : ベータ分布

ベータ分布 第2章の確率分布の一番最初に紹介されているベータ分布についての備忘録です. ベータ分布 ベータ分布を考える理由 ベータ分布について ベータ分布の実装例 ベータ分布を考える理由 ベルヌーイ分布と二項分布のパラメータを最尤推定で求めた結果は…

パターン認識と機械学習 : ベルヌーイ分布

ベルヌーイ分布 第2章の確率分布の一番最初に紹介されているベルヌーイ分布についての備忘録です. ベルヌーイ分布 ベルヌーイ分布について ベルヌーイ分布の実装例 ベルヌーイ分布について 二値確率変数 (binary random variable, 以下二値 r.v.) が1つの場…

機械学習の入門におすすめの参考書

この記事の対象読者 「最近機械学習って流行ってるけど何からやればいいのか分からない...」 「純粋に機械学習って難しそう... 」 「機械学習勉強したいんだけど、本屋や図書室行っても機械学習関連の本がありすぎて困る...」 と言う方は多いのではないでし…

論文サーベイ part2

今回は「Face Recognition Face2vec Based on Deep Learning : Small Database Case」 出展 : Automatic Control and Computer Sciences 2017 概要:異なった状態の画像に対して訓練され、その各々のデータ数は少ない、認識率をあげるには約100万の画像が必…

論文サーベイ part1

サーベイした論文の内容が後からみてわかるように自分なりにまとめていこうと思います. Abstract, Introduction, Conclusionはどの論文に対しても簡潔にまとめたものを公開し、興味があるものだけ中身を精読していこうと思います. 今回は「Recurrent Neural …