Search

Vagrantで立てたUbuntu 16.04上のWireSharkで遊ぶ

Network engineering Advent Calendar 2018の8日目の記事.諸事情によりVagrantで立てたUbuntu 16.04上でWireSharkを操作する必要があったため,環境設定をまとめておく.

VirtualBox+Vagrantでns-3.27環境を構築する

Network engineering Advent Calendar 2018の1日目の記事.一年以上前にQiitaでns-3.26の環境構築に関する記事を書いた.この一年で私も少しだけ成長して,Vagrantを使えるようになった1ので,コマンド一発でns-3.27の環境を構築できるよう,Vagrantfileを作成した.これからns3で遊びたいという方のお役に立てれば幸い.

  1. いくらなんでも今更すぎるが,ご容赦いただきたい. 

Pythonでディレクトリの有無を確認して自動作成する

Pythonでディレクトリの有無を確認して,自動生成するスクリプトをメモしておく.例えばCross validationでフォールドごとにデータを分けるときなどに使う.

Customized Regression Model for Airbnb Dynamic Pricingを読んだ

Peng Ye, et al., Customized Regression Model for Airbnb Dynamic Pricing, KDD2018を読んだ.Airbnbで実際に使われている価格推奨モデルについて,非常にわかりやすくまとめられている.

PlotlyでSeabornライクに色指定する

Plotlyはとても便利だが,Seaborncolor_paletteのように柔軟に色指定ができない.そこで,Plotlyのcolor引数として使用可能なRGB値を,Seabornのcolor_paletteから取得するラッパー関数を作成した.

時間制約付き巡回セールスマン問題について調査した

時間制約付き巡回セールスマン問題(TSP-TW: Traveling Salesman Problem with Time Window constraint)について調査した.TSP-TWは,各点の訪問時間に制約のある巡回セールスマン問題(TSP: Traveling Salesman Problem)で,NP困難に属する.時間帯指定のある宅配業者の経路最適化など,実応用が期待される研究分野である.

Qiitaで情報発信していたら技術書デビューした

Qiitaで公開していたTCPの比較記事(本サイトのns-3でTCPの輻輳制御を観察する)の結果を,中嶋謙互,クラウドゲームをつくる技術―マルチプレイゲーム開発の新戦力,技術評論社に載せたいとオファーがあった.先日,ついに見本版が届いて,とても嬉しかったので経緯をメモしておく.

DMM英会話受講メモ:2018年8月

DMM英会話の受講メモ.7回/31日なので,1/4以下.先月よりさらに頻度が下がったが,後半は本当に忙しかったのでしょうがない.

DMM英会話受講メモ:2018年7月

DMM英会話の受講メモ.9回/31日なので,1/3以下.もう少し頑張りたいところ.

あまりに暑いのでProphetで140年分の気温を分析した

2018年7月22日,東京の最高気温は36.5度となり,今年最高を更新した.あまりに暑くてムシャクシャしたので,気象庁から約140年分(1872年1月1日-2018年7月21日)の東京の気温データを入手し,Prophetで分析した.平均・最高・最低気温の全てに関して,1920年付近から上昇し続けており,そのトレンドを考慮してもなお,ここ数日は特に暑いことを確認できた.

Trevor Hastie,統計的学習の基礎:2章,教師あり学習の基礎

夏休みの宿題として,Trevor Hastie,統計的学習の基礎 ―データマイニング・推論・予測―を勉強している.以下は,第2章:教師あり学習の概要 のメモ.

7年もののMacBook ProがUbuntu 16.04に生まれ変わった

MacBook Pro(13-inch Early 2011)の動作が怪しくなってきた.かれこれ7年以上使っているので,そろそろ寿命なのかもしれない.Ubuntu 16.04をインストールして,第二の人生を歩んでもらうことにした.

EC2にJupyter環境を構築する

AWSのEC2(Ubuntu 16.04 LTS)に,Jupyter notebookの環境を構築する手順をメモしておく.前提として,EC2インスタンスに対してSSH接続済みであり,Jupyterもインストール済みとする.EC2に限らず,リモートサーバ一般に共通する手順だと思う.

EC2にS3をマウントする

AWSのEC2(Ubuntu 16.04 LTS)に,S3をマウントする手順をメモしておく.前提として,EC2インスタンスに対して,SSH接続済みとする.

ns-3でTCPの輻輳制御を観察する

ns-3でTCPの輻輳制御アルゴリズムをシミュレートし,その動作をmatplotlibで可視化した.本記事は,2017年2月20日にQiitaに投稿した記事を,本サイト向けに再構成したもの.

JekyllにBokehのグラフを埋め込む

Bokehで作成したインタラクティブなグラフを,Jekyllに埋め込みたくなった.Embedding Bokeh Plots with Github Pages - Paige McKenzieを参考にしたら,簡単にできた.日本語もちゃんと表示されている.

MacでKaggle-apiを使う

ものすごく今更ながら,kaggle-apiをMacBookで使ってみた.簡単だった.

萩原淳一郎,基礎からわかる時系列分析

萩原淳一郎,基礎からわかる時系列分析 ―Rで実践するカルマンフィルタ・MCMC・粒子フィルターをざっと読んで状態空間モデルを勉強した.

DMM英会話受講メモ:2018年6月

DMM英会話の受講メモ.12回/30日なので,4割程度の実施率.仕事の忙しさを考えると,このあたりが現実的な数字かもしれない.

Light GBMを使うとOMPエラーでカーネルが死ぬ

業務でも趣味でもよくLight GBMにお世話になっているが,この前手元のMacで使おうとしたらDead kernelエラーが発生した.condaで入れたLight GBMを一旦アンインストールして,Installation Guide - LightGBMに従って再インストールしたら解決した.

PythonとLight GBMで遊ぶNotebookを作った

知り合いから「プログラミングしたことないけどLight GBMを使ってみたい.2時間くらいで教えてくれ」と言われた.2時間だと理論面をカバーするのは難しいので,とりあえず触ってみることを目標に,Pythonおよび関連ライブラリの基礎(のさらにごく一部)でさくっと遊ぶNotebookを作った.勉強会当日は一緒に動かしながらレクチャーする予定.

OpenSSLが古すぎてbundle updateできない

Algoliaで全文検索機能を実装するためにGemfileを書き換えて$ bundle updateしたところ,OpenSSLが古すぎると叱られた.How to troubleshoot RubyGems and Bundler TLS/SSL Issues - Bundler Docsを参考に対応したら解決した.

JekyllにAlgoliaで全文検索機能を実装する

本サイトに待望の全文検索機能を実装した.Algolia社のDocSearchの審査に通らなかったので,同社のFree hacker planを利用した.

CentrariumのPostsをCategoriesにリネームする

近々,全文検索機能を実装し,現在のPostsページに配置しようと考えている.とは言え,現在のPostsページのcategories一覧は便利なので,できれば残したい.そこで,一旦PostsページをCategoriesページとしてリネームして退避することにした.

Centrariumのjekyll-archives問題を回避する

このウェブサイトのベーステーマであるCentrariumは,非常に完成度が高く,使い勝手が良いテーマである.しかし,私の力不足のため,内部で利用されているjekyll-archivesがまともに動作せず,各ポストのカテゴリリンク先が正しく貼れていなかった.いろいろ試した結果,_config.ymljekyll-archivesを無効化したら,すべての問題が解決したのでメモしておく.

UCOMにAirMacを接続してWifi環境を構築する

引越し先のマンションがUcomに契約していたので,壁付けのコンセントにLANケーブルを繋げばインターネットに接続できる.手持ちのAirMac Time Capsuleで無線LAN環境を構築したかったが,ネット上に情報が少なく,めちゃくちゃ苦戦した.試行錯誤の記録を残しておく.

Jekyll-CentrariumにDisqusを導入する

このウェブサイトにDisqusでコメント機能を追加した.Centrariumの作り込みが素晴らしいので,Disqus上の登録と,_config.ymlの変更だけで実現できた.

DMM英会話受講メモ:2018年5月

DMM英会話の受講メモ.後半にかけて仕事が非常に忙しくなり,なかなか時間が取れなかった.英語力が日に日に落ちていくのを実感している.だんだん仕事にも慣れてきたので,6月以降はもっと時間が取れると思う.

DMM英会話受講メモ:2018年4月

DMM英会話の受講メモ.4月末は仕事がバタつき,なかなか時間を取れなかった.

東京大学教養学部統計学教室編,統計学入門

東京大学教養学部統計学教室編,統計学入門を読んだ.統計学の基礎知識を復習できた.

JekyllのCategories一覧をアルファベット順にする

PostsページのCategoriesが出現順で使いづらかったので,アルファベット順になるようコードをを修正した.

DMM英会話受講メモ:2018年3月

仕事が落ち着いてきたので,DMM英会話を再開することにした.

Fast.ai,Practical Deep Learning for Coders 2018:1.Dogs and cats

更新中Fast.aiのMOOCPractical Deep Learning for Coders 2018の受講を開始した.全7回の講座で,KaggleマスターのJeremy Howardから無料でDeep learningを教えてもらえるらしい.第1回は,犬と猫の分類コンペをベースに,CNNのチューニングについて学ぶ.

Jupyter notebookのフォントを変更する

Jupyter notebookのコードブロックを等幅フォントにしたい.Jupyterthemeを使っても良いが,拡張機能のボタンが消えてしまうことがあり不便.~/.jupyter/custom/custom.cssをいじって変更した.

Kaggle,Web Traffic Time Series Forecasting,1st place solution

Kaggle,Web Traffic Time Series Forecasting1st place solutionのメモ.Wikipediaのpageviewを予測するコンテスト.解法のポイントは,一年前と四半期前の値を特徴量として追加し,RNN seq2seqを使うこと.

多田洋介,行動経済学入門

更新中多田洋介,行動経済学入門を読んだ.心理学の発想を経済活動や経済減少の分析に活かす,行動経済学の基本を学ぶことができた.

HTTPS+トークンで複数のGitHubアカウントを制御する

複数のGitHubアカウントを制御したい.SSHの秘密鍵を複数管理する方法もあるが,設定が結構大変で私には荷が重い.いろいろ調べた結果,HTTPSとトークンを使用する方法が手軽で良さそう.毎回検索するのが面倒なので,メモしておく.

Brett Slatkin,Effective Python

更新中Brett Slatkin,Effective Python ―Pythonプログラムを改良する59項目を読む.Pythonを効率的に書くための59のヒントが紹介されている.

Ubuntu 16.04にFish環境を構築する

Fish(Frendly Interactive SHell)とは,シェルの一種.デフォルトのタブ保管が便利なので,Macでは重宝している.ローカルのUbuntuデスクトップでも使いたくなり,環境を構築することにした.

マーク・ジェフリー,データ・ドリブン・マーケティング

マーク・ジェフリー,データ・ドリブン・マーケティング - 最低限知っておくべき15の指標を読んだ.どうやら原著は2010年1月に発刊されたらしく,古さを感じる部分があるが,勉強のとっかかりとして基本を押さえるには良いと思った.

Jekyll themeをCentrariumに変更する

3連休を利用して,本サイトのJekyll themeEasyBookからCentrariumに変更した.意識高めのアフィブログみたいになってしまったが,個人的には気に入っている.特にロゴがかわいい.

チャットボットを作ろう:3.CSS修正

BotUIを本サイトのAboutページに埋め込んだが,会話が長くなると二重にスライドバーが表示されて使いづらい.そこで,BotUIのCSSを修正することにした.

CourceraのDigital marketing講座を退会した

2017年10月頃から,Courcera,Marketing in a digital worldを受講していたが,退会することにした.転職先の業界の予習のために始めた講座だった.週10時間確保できれば1ヶ月で修了できる予定だったが,転職関連の手続きもあり,60%程度の進捗で時間切れとなった.受講料は11,000円ほどだったが,まだ書籍化されていないような,業界の最新動向の一端を知ることができたため,受講してよかったと思っている.

Courcera,Marketing in a digital world:4. Price

更新中Courcera,Marketing in a digital worldの受講メモ.本講座は,イリノイ大学主催のオンライン講座であり,全7講座から成るDigital marketing specializationの一つ.四週かけて,デジタル時代のマーケティング・ミックスについて学ぶ.第四週では,Priceを取り扱い,Pay what you wantやPrice comparison toolsについて学ぶ.

DMM英会話受講メモ:2018年1月

DMM英会話を受講している.以下は,2018年1月の受講メモ.バタバタして,なかなか毎日時間を確保できないので,一旦退会することにした.

チャットボットを作ろう:2.JekyllサイトでBotUI

諸事情により,チャットボットを自作したいと思った.paiza開発日誌,JavaScriptだけで本格的なチャットボットを開発できるライブラリ「BotUI」を使ってみた!を参考にチャットボットを作成し,本サイトのAbout欄に埋め込んだ.

チャットボットを作ろう:1.調査

諸事情により,チャットボットを自作したいと思った.まずは,どんなことを実現したいのか,またどうやったら実現できそうか整理してみる.

DMM英会話受講メモ:2017年12月

結局,DMM英会話でセルビア人の先生に習うことにした.以下は,2017年12月の受講記録.

本田哲也,田端信太郎,広告やメディアで人を動かそうとするのは、もう諦めなさい。

本田哲也,田端信太郎,広告やメディアで人を動かそうとするのは、もう諦めなさい。を読んだ.情報爆発により,主導権は消費者にシフトした.このような時代に人を動かすためには,様々なメディアの特性を理解し適切に組み合わせることと,インサイトを掘り出して世の中の空気を作ることが重要.

DMM体験レッスン:2.Article discussion

帰国してから英語力が落ちまくっているので,オンライン英会話を再開することにした.とにかく選択肢が多いので,無料体験をはしごして決める.昨日に引き続き,オンライン英会話最大手のDMM英会話で,Daily newsを体験した.今回もセルビア在住の先生に対応してもらったが,とても親切で,英語での議論に慣れている印象を受けた.

Courcera,Marketing in a digital world:3. Placement

更新中Courcera,Marketing in a digital worldの受講メモ.本講座は,イリノイ大学主催のオンライン講座であり,全7講座から成るDigital marketing specializationの一つ.四週かけて,デジタル時代のマーケティング・ミックスについて学ぶ.第三週では,Placementを取り扱い,New retailや3D printingについて学ぶ.

佐藤達郎,「これからの広告」の教科書

佐藤達郎,「これからの広告」の教科書を読んだ.Courcera,Marketing in a digital world:2. Promotionでも触れたように,近年の技術革新により,市場のパワーバランスが大きく消費者側に傾き始めた.本書では,具体例を用いてわかりやすく,新たな広告手法を学ぶことができた.

DMM体験レッスン:1.Article discussion

帰国してから英語力が落ちまくっているので,オンライン英会話を再開することにした.とにかく選択肢が多いので,無料体験をはしごして決める.今回は,Reajobと並ぶオンライン英会話最大手のDMM英会話で,Daily newsを体験した.セルビア在住の先生に対応してもらったが,とても親切で,英語力も高かった.フィリピン人と比べて元気が無いように感じたのは,雇用情勢のせいだろう.とりあえず,あと二回体験してみる.

BizMate体験レッスン

帰国してから英語力が落ちまくっているので,オンライン英会話を再開することにした.とにかく選択肢が多いので,無料体験をはしごして決める.今回は,ビジネス英会話に強みを持つBizMateの体験レッスン.同じくフィリピン系のReajobの二倍の価格帯だが,講師と教材の質が高く,その価値はあると感じた.

Courcera,Marketing in a digital world:2. Promotion

Courcera,Marketing in a digital worldの受講メモ.本講座は,イリノイ大学主催のオンライン講座であり,全7講座から成るDigital marketing specializationの一つ.四週かけて,デジタル時代のマーケティング・ミックスについて学ぶ.第二週では,Promotionを取り扱い,AuthenticityやUser generated contentについて学ぶ.

SkimaTalk体験レッスン

帰国してから英語力が落ちまくっているので,オンライン英会話を再開することにした.とにかく選択肢が多いので,無料体験をはしごして決める.今回は,友人から紹介されたSkimaTalk.フィリピン系英会話の二倍の価格帯だが,ネイティブスピーカーと話せるのは嬉しい.予算に余裕があればここで決まりか.

Kyran Dale,PythonとJavaScriptではじめるデータビジュアライゼーション

更新中Kyran Dale,PythonとJavaScriptではじめるデータビジュアライゼーションの読書メモ.JavaScript習得の取っ掛かりにしたい.

Reajob体験レッスン:Article discussion

帰国してから英語力が落ちまくっているので,オンライン英会話を再開することにした.とにかく選択肢が多いので,無料体験をはしごして決める.今回は,出国前まで続けていたReajobArticle discussion

古川一郎,マーケティング・サイエンス入門

古川一郎,他,マーケティング・サイエンス入門-市場対応の科学的マネジメントを読んだ.マーケティング・サイエンス全体を俯瞰できる良書.ただし,2011年のものなので,最新技術はカバーできていないので,courceraでカバー予定.

Courcera,Marketing in a digital world:1. Product

Courcera,Marketing in a digital worldの受講メモ.本講座は,イリノイ大学主催のオンライン講座であり,全7講座から成るDigital marketing specializationの一つ.四週かけて,デジタル時代のマーケティング・ミックスについて学ぶ.第一週では,Productを取り扱い,Co-creationやDoppelgänger brand imageについて学ぶ.

Jekyllで下書き記事管理

これまでは下書き記事を(作成中)と注意書きして公開していたが,見栄えが良くないので,Jekyllのdrafts機能で一旦非公開1にすることにした.ただし,途中経過を公開する意味がありそうな,読書メモや受講メモはそのまま残す.

  1. 万が一リンクを保存していた方がいたらごめんなさい. 

Windows 7でAnaconda 5.0.0

Anacondaとは,Pythonのライブラリパッケージである.普段はUbuntuでコーディングしているが,以前の記事で述べたように,しばらくWindowsで作業する必要が出てきた.そこで,Windows 7にAnaconda 5.0.0環境を構築した.仮想環境のactivateにハマったのでメモしておく.

コトラー,アームストロング,恩藏のマーケティング原理

コトラー,アームストロング,恩藏のマーケティング原理の読書メモ.マーケティングの基本を,実例付きでわかりやすく解説してくれる名著.マーケティングとは,意図的に,顧客と良好な関係を築くための手法である.顧客の意識の有り様は,時代の流れに大きく左右されるため,マーケティング理論を常にアップデートし続ける必要がある.

Windows7でJekyll+GitHub Pages

船便でアメリカから送ったため,2ヶ月ほどLinuxが使えなくなった.そこで,手元のWindowsノートPC(Windows 7 Professional, Service Pack 1, 64 bit)にJekyll+GitHub Pages環境を構築した.

武井由紀子,ユーザ中心ウェブビジネス戦略

武井由紀子,三木順哉,ユーザ中心ウェブビジネス戦略を読んだ.インターネットはユーザが能動的に情報を取捨選択可能なメディアであるため,ウェブビジネスにおいては,ターゲットユーザを徹底的に理解する必要がある.ユーザ理解のためのツールとして,ユーザ行動パターン検証ツール(アクセスログ解析等)と,ユーザ行動理由検証ツール(ユーザ行動観察調査等)がある.両者の特徴を理解して,使い分けることが重要である.

Udacity, Intro to Hadoop and MapReduce

更新中Udacity, Intro to Hadoop and MapReduceの受講メモ.6部構成の無料講座.全ての動画に日本語訳があり,とても助かる.

Udacity, Intro to Relational Databases

更新中Udacity, Intro to Relational Databasesの受講メモ.5部構成の無料講座.

アドテク入門

アドテク(Advertising Technology)とは,広告配信の高度化に関する技術を指す.目的は,広告に関わる全プレーヤー(広告主,メディア,消費者)をwin-winの関係にすること.特にReal time bidding(RTB)市場は成長中であり,例えば機械学習で入札額を最適化する技術などが研究されている.

Kaggle,Zillow Prize概要

KaggleのZillow Prizeは,Zillowが2017年5月に開始したコンペティション.課題は不動産価格の予測であり,賞金は総額1億円以上($1,200,000).

JekyllでGoogle Analytics

JekyllとGitHub Pagesで立ち上げたウェブサイトに,Google Analyticsでトラッキング機能を導入した.

機械学習のプロジェクト計画

くだらないものばかりだけど,今後やりたいことをメモしておく.

機械学習の学習計画

UdacityDeep learning foundations nanodegreeを修了して,基本はある程度押さえられたし,論文も読めるようになった.やりたいことをメモしておく.

JekyllとGitHub Pagesでウェブサイト自作

それなりに技術的なメモが溜まってきたが,Qiitaに投稿するほどではない.これまではevernoteで管理していたが,数式やソースコードを書きづらい.はてなブログ等でMarkdownを書いても良いが,手元にコンテンツが残らないのが嫌だし,haltaroドメインが取れなかった.そこで,JekyllGitHub Pagesで,ウェブサイトを立ち上げた.