タグ

ブックマーク / qiita.com (222)

  • 機械学習で使うベクトルや行列の微分を使った公式の導出 - Qiita

    はじめに 機械学習の勉強をしていると,次のようなベクトルや行列を使った公式達を使わなければならない場面が出てくると思います.機械学習の巻末に書いてあることが多いと思います.(これらはPattern Recognition and Machine Learning (Bishop著, 2006)の巻末に載っている公式です) \frac{\partial}{\partial\boldsymbol{x}}(\boldsymbol{x}^\mathrm{T}\boldsymbol{a}) =\boldsymbol{a} \\ \frac{\partial}{\partial\boldsymbol{A}}\mathrm{Tr}(\boldsymbol{A}\boldsymbol{B})=\boldsymbol{B}^\mathrm{T} \\ \frac{\partial}{\partial\b

    機械学習で使うベクトルや行列の微分を使った公式の導出 - Qiita
  • RFC標準を調べるための知識やツール - Qiita

    はじめに 記事では、RFC (Request for Comments) で提案・標準化された仕様を探して読むための基礎知識や、Web上で利用できるツール等について記します。 想定読者は、Web技術に関わるエンジニアで、RFCを参照して標準仕様を調べる機会がある人です。 ここに書かないこと RFCとは何か Internet-Draft (I-D) 段階の議論の追い方 I-Dから標準化のプロセスに乗るまでの細かい流れ 基礎知識 RFCの種類 すべてのRFCが仕様として標準化されるというわけではありません。 RFCは次のように、いくつかのCategoryに分類されます。 Category 説明

    RFC標準を調べるための知識やツール - Qiita
  • AWS Batchで速く/安くやるデータセットの前処理 - Qiita

    OpenStreamアドベントカレンダーの一日目です。 結構前からやっている趣味DeepLearningですが、最近(実際は結構前から)次のような問題に当たり始めました。 データセットが大きくなってきてHDDが厳しい データセットが大きくなってきて前処理がやばい 小さいデータセット+Augmentationでなんとかなるものはいいんですが、現在最大のデータセットは 画像33万枚、220GB弱 あります。 んで、これを前処理したり何だりしていると、最終的に学習で利用するデータを作成するだけで、HDDが500GBくらい利用されてしまう状態です。 容量も当然厳しいんですが、一番厳しいのは処理時間です。現状の前処理を行うと、大体 12時間くらい かかります。趣味でやるので基的に自分のPCでやっていると、HDDが悲鳴を上げる上に、実行している間はレイテンシが悪すぎて他の作業もできないって状態になっ

    AWS Batchで速く/安くやるデータセットの前処理 - Qiita
  • 「世界最悪のログイン処理コード」を解説してみた

    概要 ところでこのツイートを見てほしい。このソースコードをどう思う? 世界最悪のログイン処理コード。 実際のサービスで可動していたものだとか……https://t.co/C2bG93ZCkj pic.twitter.com/EfVNAEslrn — はっしー@海外プログラマ🇳🇿元社畜 (@hassy_nz) 2018年8月10日 すごく……セキュリティーホールです…… 一応は動いていますが、あまりに問題がありすぎるため、Twitterでも話題になっていました。 問題点は片手に入り切らないぐらいある気がしますが、一つづつ解説していきます。 ※元記事のタイトルに記載されていますが、このコードはイントラネット内で動作していたものです。 問題点リスト 1. クライアント上のJavaScriptで書かれている 他の問題点を全部ぶっ飛ばすぐらいの重大な不具合です。 クライアントと言うのはこの場合、

    「世界最悪のログイン処理コード」を解説してみた
    Makots
    Makots 2018/08/13
    やばくて笑けてくる
  • 書籍「Clean Architecture」が最高すぎたのでエッセンスをまとめてみた

    記事では、書籍「Clean Architecture 達人に学ぶソフトウェアの構造と設計」のポイントを抽出する。ただ、削った部分も多いので、ぜひ書籍を購入してほしい。 第1部 イントロダクション ソフトウェアを「一度だけ」動かすのは、それほど難しいことではない。正しくするのは難しい。 ソフトウェアを正しくすると、不思議なことが起こる。開発や保守に必要な人材はわずかで済む。変更は簡単で迅速になる。欠陥の数は少なく、ほとんど出てこなくなる。労力は最小に抑えられ、機能性と柔軟性は最大になる。 「あとでクリーンにすればいいよ。先に市場に出さなければ!」ソフトウェア開発者たちはそう言ってごまかす。だが、あとでクリーンにすることはない。短期的にも長期的にも、崩壊したコードを書くほうがクリーンなコードを書くよりも常に遅い。早く進む唯一の方法は、うまく進むことである。 すべてのソフトウェアシステムは、2

    書籍「Clean Architecture」が最高すぎたのでエッセンスをまとめてみた
  • GNS3 on AWS で始めるAnsible×Cisco学習環境構築 - Qiita

    provider "aws" { access_key = "${var.aws_access_key}" secret_key = "${var.aws_secret_key}" region = "${var.region}" } resource "aws_instance" "ubuntu" { ami = "ami-4e79ed36" instance_type = "t2.large" key_name = "${var.key_name}" monitoring = true tags { Name = "${var.name}" } security_groups = ["ubuntu-gns3"] iam_instance_profile = "EC2S3Backup" root_block_device = { volume_type = "gp2" volume_si

    GNS3 on AWS で始めるAnsible×Cisco学習環境構築 - Qiita
  • ぼくたちのかんがえたさいきょうのi18n国家

    記事は下記のtweetから始まるスレッドに触発され、@qnighyや@na4zagin3からアイディアを拝借して書いた。 i18n力が最強の国は国内に複数の言語があり、そのうちいくつかは他国でも使われている言語の方言で、1バイト文字での代替表記が困難で、歴史的にISO-2022ベースの文字コードとUnicodeと独自エンコーディングが混在していて、フリガナなどの特殊な組版規則があり、右書き左書き縦書きを併用し、 — Masaki Hara (@qnighy) 2018年8月6日 皆さんのおかげで最強のi18n国家が建設されつつある。一瞬で滅びそう — Masaki Hara (@qnighy) 2018年8月6日 長い前置き ソフトウェアのi18nは難しい。自文化では当たり前と思っていてハードコードしてしまった仮定が崩れて、大幅な再設計を余儀なくされるからだ。気づいて再設計できればまだ良

    ぼくたちのかんがえたさいきょうのi18n国家
  • Data Scientist Cheat Sheets - Qiita

    1. Cheat Sheet 一覧 Python, Data Scientist 向けのCheat Sheetのリンク集を記載します.(最終更新日:2018/07/17) Basics (基礎) トピック サイト 図

    Data Scientist Cheat Sheets - Qiita
  • Microsoft Azure 全体価値訴求資料 v3.0 - Qiita

    [更新 2018.08.08] 以前掲載していた内容 (1~5章) の一部に、最新の情報ではなく、正確性に欠ける部分がありましたので、公開は、Azure サービス内容の説明に限定致しました。 こんにちは、ドクです。 Microsoft Azure 全体価値訴求資料というのを4年くらい前から作っております。 最新バージョン v3.0 についても、一人でコツコツと作成してきましたが、かなり出来上がってきましたので、公開したいと思います。 月に1度くらいは、資料の Update をしておりますので、陳腐化しないのがウリです(笑)... と言っても、メイン業務が他にありますので、限界はあります…ご容赦ください。 Microsoft Azure 全体価値訴求資料 v3.0 - 6章 カテゴリー別のサービス説明 6章の01 Compute 6章の02 Networking 6章の03 Storage

    Microsoft Azure 全体価値訴求資料 v3.0 - Qiita
  • TensorFlow+KerasでCNNを使いミス同志社になれる確率を計算できるAIモドキを作成して、Flask+Herokuで公開してみた。 - Qiita

    TensorFlow+KerasでCNNを使いミス同志社になれる確率を計算できるAIモドキを作成して、Flask+Herokuで公開してみた。PythonHerokuFlaskKerasTensorFlow できたもの ミスAI同志社(メモリ不足で落ちてたらすみません。。。) このアプリは過去のノミネート者に似ているかどうかから判断しています。実際のミス同志社の選ばれる尺度は様々です。 結果は自己責任でお楽しみください。 もし判定したりしたらSNSとかで共有してもらうと私が喜びます。(もちろん顔画像はサーバ上で保存されません。) はじめに 私が在籍している同志社大学の授業でエンジニアリングコンテストたるものが開催され、その時に作成しました。 なぜ作ったのかというと 同志社大学の在籍者数は約3万人 →ミス同志社に選ばれるのは毎年6人だけ。。 →そんなのおかしい →僕も出たい!!!!! →なら

    TensorFlow+KerasでCNNを使いミス同志社になれる確率を計算できるAIモドキを作成して、Flask+Herokuで公開してみた。 - Qiita
  • 個人的にコードリーディングがはかどったテクニックまとめ - Qiita

    はじめに コードリーディングの重要性はそこらじゅうで語り尽くされてる感があります。 僕も地道にコードリーディングをしているのですが、いざやろうとするとハードルが高いことがままあります。そこで、個人的にコードリーディングがはかどったと感じたテクニックをまとめておこうと思います。 筆者環境の前提 ソースコードのバージョン管理は Git を使っている 開発 PCMac を使っている エディタは Vim を使っている ghq + peco で読みたいリポジトリに気軽にたどり着く 読みたいソースコードのリポジトリが増えてくると、ローカル環境でのリポジトリをどのディレクトリに置くか、またいざ読もうとするときにディレクトリを辿っていくのが煩雑になってきます。 そんな時、読みたいリポジトリに気軽にたどり着くことができれば、読むハードルが下がります。 僕は peco と ghq の組み合わせを使ってい

    個人的にコードリーディングがはかどったテクニックまとめ - Qiita
  • テキストに含まれた情報を有向グラフに変換する話(一):可視化の章 - Qiita

    こんにちは。理系大学院で修業中のスーパーケロケロです。趣味で自然言語解析(NLP)の勉強をしています。最近、テキストに含まれた情報を有向グラフに変換するPythonライブラリーnaruhodoを作ったので、ライブラリーの紹介も兼ねて、テキストを有向グラフに変換する話を少ししてみたいと思います。 naruhodoのGithubリポジトリはこちら、最新バージョンはです。 自然言語解析の流れ 自然言語解析を料理に例えれば、入力されたテキストは収穫待ちのコムギのようで、そのままでは使えない。このコムギを形態素解析で脱殻し(形態素単位で分離)、さらに词类(Part-Of-Speech)や依存構造解析で小麦粉にしてから(文法情報の付与)、ようやくパンのような美味しいべ物が作れる(実際の応用)。 テキストが処理されるごとに、使える情報が増えて、応用の幅が広げるわけです。 文=>木、文章=>有向グラフ

    テキストに含まれた情報を有向グラフに変換する話(一):可視化の章 - Qiita
  • fastTextでesaに書かれた文章を分類する - Qiita

    最近、機械学習が流行っていますが、画像解析系が多くてあまり興味が出ませんでした。 しかし、Word2vecやseq2seqなどを使ってテキスト処理も機械学習で色々遊べることに最近気がついたので、まずは簡単な所から試してみることにしました。 この文章は トレタ Advent Calendar 2017 (紹介ブログ)の一環で書いてみました。よければ他の日の記事も見てください。 なにをしよう? トレタでは社内ドキュメントの管理にesaを使っています。 こういうドキュメント管理で難しいのは文章が散らばることですよね。 同じ「プロジェクトA」の文章でも開発や営業など、部署毎にドキュメントがまとめられていたりします。 しかも同じような単語があちらこちらで使われているため、全文検索だとノイズが多くなり利便性が低くなります。 解決策としては文書毎に正しくタグ付けすることですが、それを徹底するのも現実的で

    fastTextでesaに書かれた文章を分類する - Qiita
  • 日本一マクドナルドから遠い場所 - Qiita

    きっかけ 日マクドナルド様のサイトの店舗検索の地図をみてたら、やたらたくさんの店舗が一度に表示できる。 これって全店舗一度に読み込んでるのかな、とChromeのデベロッパーツールで覗いてみると、全店舗分のJSONが見えた。 全店舗2887件。 ちょっと拝借して長年の疑問を晴らしてみようと思った。『はたして、日で一番マクドナルドから遠い場所はどこなのか?』 注) 離島は除きます。離島を含めると南鳥島がぶっちぎりです。 Fusion Tablesでプロットしてみる Fusion Tablesに緯度経度をインポートすることでマップに位置をプロットできるのでやってみた。 Fusion Tablesの導入その他に関しては他に説明を譲ります。 とりあえずデベロッパーツールからJSONを丸ごとコピペして編集の末にCSVファイルをでっちあげた。 Fusion Tablesで扱えるように、先頭行にはカラ

    日本一マクドナルドから遠い場所 - Qiita
  • アルゴリズムとは何か!? ~ 文系理系問わず楽しめる精選 6 問 ~ - Qiita

    今の場合は A さんが 31 歳の場合のストーリーでしたが、A さんが 20 歳~ 35 歳のうちのどの年齢であったとしても、似たようなストーリーで必ず 4 回の質問で当てることができます!(他の例も是非考えてみてください。) ちなみに、このような「真ん中で切ってどちらかに絞って行く」タイプのアルゴリズムには二分探索法という名前がついています。応用情報技術者試験でも頻出のテーマですので馴染みのある方も多いと思います。 1-2. つまり、アルゴリズムとは 上の年齢当てゲームという問題では、相手の年齢を当てる「方法・手順」を二分探索法に基づいて導きました。このようにアルゴリズムとは、 問題を解くための方法・手順 のことです。さて、アルゴリズムと聞くと「コンピュータ上で実装されたプログラム」のことを思い浮かべる方も多いと思いますが、必ずしもコンピュータと関係がある必要はなく、日常生活でも多々登場

    アルゴリズムとは何か!? ~ 文系理系問わず楽しめる精選 6 問 ~ - Qiita
  • Jupyter 知っておくと少し便利なTIPS集 - Qiita

    今まで仕事で使ってきた、メジャーなものからマイナーなものまで含めたJupyter NotebooksのTIPS集です。 入力補完 とりあえずこれが無いと生きていけません。 Nbextensions(Jupyterの拡張機能)自体が未設定であれば、一旦そちらをインストールして、その後にHinterlandという機能にチェックを入れると有効化されます。 AnacondaのJupyter notebookでnbextensionsを使う ※Nbextensionsインストール後、Jupyterのファイルリスト的な画面で、タブで「Nbextensions」という選択肢が追加されます。 Azure Notebooksなどだと、最初からインストール不要で選択できるようになっています。 Google Colaboratoryなどでは、そういった設定ができるのかまだよくわかっていません。(ご存じの方コメン

    Jupyter 知っておくと少し便利なTIPS集 - Qiita
  • データ分析で頻出のPandas基本操作 - Qiita

    はじめに 機械学習や深層学習が人気の昨今ですが、それらのモデルの精度に最もクリティカルに影響するのはインプットするデータの質です。データの質は、データを適切に把握し、不要なデータを取り除いたり、必要なデータを精査する前処理を行うことで高めることができます。 頁では、データ処理の基ツールとしてPandasの使い方を紹介します。Pandasには便利な機能がたくさんありますが、特に分析業務で頻出のPandas関数・メソッドを重点的に取り上げました。 Pandasに便利なメソッドがたくさんあることは知っている、でもワイが知りたいのは分析に最低限必要なやつだけなんや…!、という人のためのPandasマニュアルです。 また、単に機能を説明するだけでは実際の処理動作がわかりにくいため、ここではSIGNATE(旧DeepAnalytics)のお弁当の需要予想を行うコンペのデータを拝借し、このデータに対

    データ分析で頻出のPandas基本操作 - Qiita
  • Google Cloud Functions(Beta)の基本的な仕組み、使い方を学ぶ - Qiita

    概要 Google Cloud Functions(Beta)の基的な仕様や使い方を、オフィシャルドキュメントの入門ガイド、チュートリアルをもとに学習したまとめの記事です。 下記に引用した通りGoogle Cloud Functionsはベータ版(2018年4月現在)です。将来のリリースでこの記事の内容が役に立たなくなるかもしれませんのでご注意ください。 ★ Beta これは、Google Cloud Functionsのベータ版リリースです。このAPIは、下位互換性のない方法で変更される可能性があり、SLAサポート終了予定ポリシーの対象ではありません。 参考 Google Cloud Functionsに関するドキュメント Google Cloud Functionsの概要 関数の実行環境 Google Cloud Functionsで利用しているNode.jsのバージョンは下記に引用

    Google Cloud Functions(Beta)の基本的な仕組み、使い方を学ぶ - Qiita
  • フロントエンド・テストツール比較 Puppeteer #02テスト編 - Qiita

    ・ログイン後の一覧画面に遷移して、ID/パスワードのアサーションとキャプチャ ・リストで以下の要素を登録してキャプチャ(入力したものが、画面にリンクとして反映される) 入力値:javascript, ruby, scala ・リストの順番を入れ替えてキャプチャ 別タブの操作 別タブを開くリンクをクリックする (別タブの操作)タイトルをアサーション・キャプチャ (別タブの操作)タブを閉じる 元のタブでキャプチャする ブラウザバック・フォワードの操作 リストの任意の項目(同タブリンク)をクリックする タイトルをアサーションして、キャプチャ 一覧画面に戻る、進むを行い、それぞれでキャプチャする テストコード 上記で用意したテストケースを網羅できるテストコードを書いていきます。 const puppeteer = require('puppeteer'); const loginUrl = 'ht

    フロントエンド・テストツール比較 Puppeteer #02テスト編 - Qiita
  • EMアルゴリズム徹底解説 - Qiita

    ブログは、混合ガウス分布を題材に、EMアルゴリズムという機械学習界隈では有名なアルゴリズムを丁寧に解説することを目的として書いています。 また、この記事は、「数学とコンピュータ Advent Calendar 2017」の24日目の記事です。 そして長いです。 1. はじめに 観測した確率変数 $X$ をよく表現する、モデル $p(x|\theta)$ のパラメータを求めることが確率分布の推定ではよく行われます。つまり最尤法ですね。より複雑な分布になるとその分布の構造に潜在変数(Latent Variable) $Z$ があると仮定してモデル化を行うと、シンプルな組み合わせで $X$ の分布を表現できることがあります。今回扱う混合ガウス分布もその一つです。 のちに説明しますが、データセットの種別を完全データ集合と不完全データ集合に分けた場合、不完全データ集合に属するようなデータセットはデ

    EMアルゴリズム徹底解説 - Qiita