TF-IDF

概要 文章を特徴づける単語を見つけたい 「今日も蒸し暑いですね。ところで、『君の名は』って映画知ってます?」という会話なら、ポイントとなるのは多分『君の名は』の部分(蒸し暑い~の部分は社交辞令だし、多分特徴として価値が小さい、なぜなら他の会話に…

CSSのposition属性を覚える

CSS

前置き 数多のCSSerが説明を試みたこの登竜門(?) absolute = 絶対、原点、relative = 相対、自身との比較、自省、...のような感じで妄想を膨らませる イメージ ある親子がラーメン店を営んでいる。 現在は父親が店主を務めており、子は修行中である。先祖代…

自分の行動履歴からID行列を作成する

概要 (日数, 1日をN等分するN) のサイズの行列データを作りたい 自然言語処理 (CBoWとか) のそれと同じような感覚 python manage.py のコマンド → CSVファイルに書き込み、という流れとする 50 日分くらいのデータが溜まった Apple Home まだか イメージ ニ…

D3.js + django -- 目標に費やした時間(累積)を折れ線グラフで描画する(2)

概要 前回D3.js + django -- 目標に費やした時間(累積)を折れ線グラフで描画する(1) - Dassen blogの続き JSON データから累積時間を計算 → 折れ線グラフに描画 累積データを作成する データが 1 件しかない場合でも線を描画したいので、開始日のデータをあ…

D3.js + django -- 目標に費やした時間(累積)を折れ線グラフで描画する(1)

概要 ある目標に対して、どれだけの時間を費やしているのか知りたい 新しく言語を学ぶ場合などで、学習に必要な時間の目安を得られる(かもしれない) 今回は Django でのモデル定義 → (データの蓄積) → JSON でレスポンスを返す、部分まで モデルを定義する …

Python,BeautifulSoup -- table要素のデータを抽出してCSVファイルに書き込む

概要 table 要素のデータを抽出して CSV ファイルに書き込みたい CSVファイルさえあれば、pandas.DataFrame() として読み込める 世界中の (バラバラな書式の) table 要素に対応しようと一瞬思ったがやめた 大学教授系の機械学習 (の授業) 用サイトからデータ…

D3.js -- 睡眠時間をグラフにプロットする

概要 睡眠時間をタイムテーブル(時間割のイメージ)にプロットしたい 結論 作ろうと思えば作れないものはない 想定しているデータ形式 自環境ではDjangoからJSON形式でデータを取得している。 let sleepList = [ [ new Date("2018-02-14 23:55:55"), // 睡眠…

JavaScript -- 現在時刻を設定するボタンを作る (django用)

概要 時/分/秒のフォームに現在時刻を設定してくれるボタンが欲しい djangoでフォームを定義すると、フォーム要素のidが"id_" + "フィールド名"、となることを利用する イメージ ボタン要素の id を指定する。ボタンをラップするイメージ。 /* 現在時刻をセ…

D3.js -- x軸、y軸の目盛りを描画する & グリッドを描画する

概要 D3.js で軸と罫線を描きたい 軸と目盛り、罫線が描けると色々できるのでちゃんと理解したい 結論 目盛り(g要素)の平行移動と、スケールによる出力位置の調整を使い分けるべき(または、その二つのを適宜組み合わせるべし) 下準備 (HTML) 以下のようなHTM…

JavaScript -- 日付変更線をまたぐデータを翌日の00:00:00で分割する

概要 [睡眠開始時刻, 睡眠終了時刻] のようなデータを扱いたい が、データが日付をまたいでいると d3.js などでプロットしにくい 前日の睡眠開始時刻 ~ 前日の 23:59:59、翌日の 00:00:00 ~ 翌日の睡眠終了時刻、のようにデータを分割したい 下準備 JavaScri…

線形判別分析

概要 特徴空間をよく分離する尺度を見つけ出す そもそも 例えば以下のような場合に主成分分析は使えない。特徴空間の分散を最大化する方向に分布が存在するとは限らないため。というかそもそも主成分分析は複数の分布を区別するためのものでは(直接)ない。し…

NumPy - 等高線を描画する

概要 np.meshgrid()の動作イメージを思い出せるようにしておきたい イメージ ファイナルファンタジータクティクスの盤面?(数値=高さ、的な) コード import numpy as np from matplotlib import pyplot as plt def main(): """等高線を描画する""" # まず、値…

平滑化 (移動平均) フィルタ

概要 画素の色の違いを滑らかにする (周囲の画素と平均する) イメージ 黒板の文字を黒板消しで消そうとしたが、完全には消えていない状態 (= チョークの粉を引き延ばした状態?) 分かった部分 カーネル適用部分の中心部分を注目画素という。畳み込みを行った…

VeryFitProの歩数データをヒストグラムでプロットする

概要 Fitbitは高くて買えない 安価なウェアラブル端末で歩数をカウントした ヒストグラムでプロットしたい 苦労した点 plt.hist()のrangeパラメータを指定しておらず、バーの幅がまちまちになった 基本的にデータを採取すること自体を忘れていることがある …

決定木 (離散データ用)

概要 エントロピーを最も下げる、データ集合の分割方法を (再帰的に) 得たい 特徴値が連続値の場合は大小比較 (気温が25℃以上とか) 、離散値の場合はそのままカウント が、連続値の場合は前処理によって離散値に変換し直すことができる (離散値) の場合、値…

graphvizを使ってツリー構造をpng画像化できる基本ノードクラス

概要 ツリーを構築でき、構造をpng画像として出力できるノードクラスが欲しい 存在するかもしれないが、作ってみる graphviz、pydotplusを使用した DOMへの敬意を込めてappend_child()というメソッド名をjsから拝借した 良かった点 print_labels()、print_ed…

Fuzzy C-means法

概要 クラスタ中心との距離の逆数に応じた所属確率を用いる K-means法では最近傍のクラスタのみに所属させていた イメージ 自宅が吉祥寺駅と三鷹駅の間にあるとき、吉祥寺駅との距離をk、三鷹駅との距離をmとすると k 吉祥寺駅の近くに住んでいると自慢して…

k-means法をpythonで実装してみる

概要 実装してみた k-means法を実装してみたくなる一番の理由は「実装できそうな気がするから」 fit()、fit_predict()という2メソッドの名前だけsklearnを参考にした 実装 import numpy as np class MyKMeans(object): """クラスタリングを行うためのクラス"…

ADFGVX暗号の暗号化/解読用モジュールを書いてみた

8946|ハッキングチャレンジサイトさんの#34でADFGVX形式の暗号が出てきた 自分の手で書けそうだと思ったので書いてみたが、以外と面倒だった ADFGVXの文字で変換後、文字行列を縦に読むのか横に読むのか仕様が分からず、両方を実装するのに苦労した(NumPy.a…

Time-based SQLインジェクションをRubyで(2) (Mechanizeバージョン)

Mechanizeでも書いておく メールアドレスの長さまでは分からないので、何回ループさせればよいか分からないと思っていた(終了判定の条件が分からず結果が~.comzzzzzzz...とかになる) あらかじめ調べればよいことに気づいた メールアドレスの長さをあらかじめ…

(備忘録/Rails)作業ログから今日の作業時間(合計)を求める

自前の作業管理アプリについて.. 今日の0:00~現在までの作業時間計を得たい ログイン中のユーザーをcurrent_userで取得しており、 Logモデル(テーブル)にminutes(作業時間)カラムがある きれいに書けたので # ログイン中のユーザーのログ(今日)の作業時間(分…

Time-based SQLインジェクションをRubyで(二分探索バージョン)

Blind SQLインジェクションは1文字を確定させるためのリクエスト回数が多い 二分探索でASCIIコードの範囲を絞り込む、ということをする MySQLのSLEEP(n)は該当するレコードが複数存在すると、その1件毎にスリープしてしまうので時間の比較がしづらい 従って…

Time-based SQL injectionなるものを知った

(今更かよというツッコミはさておき) Blind SQL injectionの発展形 SQLの結果をレスポンス画面から取得できない場合、値の埋め込みの成否が判定できない 成否の判定にSLEEP(5)などを用いる(SQL実行結果がレスポンスとして返らずとも、レスポンスが遅いこと自…

Digest認証の仕組みを検証してみた

ksnctfさんの#9 Digest is secure!という問題を解きたく、Digest認証を実装レベルで理解する必要があった やはり、中の値を自分の手で確認するとよく分かる 最終的に何(クライアント側の)と何(サーバ側の)をチェックすることになるのかを理解するのが重要だ…

SQLインジェクション用のPHPコードを書いた

気兼ねなくテストしたく。 setAttribute(PDO::ATTR_EMULATE_PREPARES,…

RubyからBasic認証をともなうアクセス

当然ですが、認証が必要なので普通にGETするだけでは無理で、 require "net/http" require "uri" url = "http://localhost:4002/a/a.php" uri = URI.parse url =begin # 普通にアクセスするだけではだめ res = Net::HTTP.start(uri.host, uri.port) do |http…

画像のマジックナンバーを眺めてみた

マジックナンバー=画像識別のための共通文字列 参考URL: マジックナンバーまとめ - Qiita (他に、音声動画、実行ファイルもあり参考になりました) ファイルの先頭に存在する。バイナリエディタでも確認できるが、

rot13を復号するスクリプトを書いてみた

class Rot def initialize(cipher) @cipher = cipher @chars = "abcdefghijklmnopqrstuvwxyz" end # 文字をn文字ズラす(加算) def rotate_c(c, n) ind = @chars.index(c) new_ind = ind + n if new_ind > @chars.length - 1 new_ind = new_ind % @chars.leng…

16-09-08

本日のコード(1)[PHP] ~CTFの続き 参考URL: PHP Object Injection - OWASP上記のサイトを参考に、少し変化を加えてを書いてみる。 '); } } /* シリアライズデータを生成しておく */ /* fil…

16-09-07

本日のコード(1)[Mongodb,PHP] MMA CTF 2nd 2016 : get-the-admin-password-100 のWrite-upを読んでいて、自分で環境を作って試したくなった。 が、この問題に関しては少なくとも(?)データベースがMongodb(or NoSQLの類)である ことが分からないので、' OR 1…