ぐるんぐるん

おもむくままに書いてます。

楽天ブロードバンドを解約した

お引っ越しに伴う諸々

一身上の都合により、お引っ越しすることになりました。

その際問題になるのが、引っ越しの申請。最近は宅配便も引っ越し申請できるようで、便利になったなーと思ってた。(意訳:あ、Amazonとかの住所を変えなければ。)

インターネット回線の解約

すっかり忘れてた

よくよく考えると、これを最初にやらなければいけない。と言うのも、以下のプロセスがあることを忘れていた。

  • 回線の解約申請
  • 回線撤去の立ち会い
  • モデムの返却

うわーとか思ってメンバーズサイト見ても、解約届の申請しか書いてない。これはマズい。

と思って電話しました。

電話による解約申請

必要なもの

  • 契約時に登録した電話番号
  • 使用者の名前および住所(本人確認用)
  • (引っ越しなら)引っ越し先の住所

電話

解約方法について教えてください。に書いている場所にTELして、案内の通りにボタンを押す。そうすると、「現在、X人が待っています。」とか言う凄く機能的なアナウンスと音楽が交互に流れてくる。自分の場合は、二人待ちだったが、10分もしないうちに自分の番が回ってきた。

上に書いたとおりの内容を適当に言って、違約金と今月末までの契約の旨を伝えると終わり。意外とすんなり終わった。

まとめ〜ここからが本番だ〜

最後の最後に、「私どもはプロパイダですので、回線は別途解約して頂く必要があります。」と念押しされた。すっかり忘れてた。

手続き方法の一覧がこちらに載っていた。これ探すのにも、かなり苦労した。

自分の場合は、楽天ブロードバンド+OCNだったので、今からOCNを解約する。

なんで、こう解約手続きってクリック回数多いのか。

LBG+Splittingアルゴリズムを作ってみた

背景

とある事情でクラスタリングを行いたかった。しかも非階層型クラスタリング。しかし、k-平均法は「最終的な結果が安定しない」と言うことで、どうしようと悩んでいた。

それに対し、色々な改善方法が提案されているけれど、それでも不安定性は残る。

目的

最終的な結果が一意になるようなクラスタリング手法の実装。

クラスタリングとは

クラスタリングとは、与えられたデータをいくつかの種類に分類する方法。カテゴリー分けなどと言った方が分かりやすいのかな。

主な使用例は

  • twitterの年齢層と性別、投稿数でいくつかのグループに分類、利用層を分析する
  • TVアニメのキャラクターの顔を、目の大きさなどで分類して、名前を付ける
  • ソシャゲのキャラクターを、成長率などに基づいて、大器晩成型などに分類する

k-平均法

k-means法, k平均クラスタリングとも。何故か一般的な非階層型クラスタリング手法です。主な理由としては、ライブラリの標準関数としてあったり、実装が簡単だから・・・じゃないっすかね(適当)。

データN個をk個に分類する際の主な流れとしては、

  • データN個をk個のクラスタにランダムに分ける
  • k個のクラスタの中心点を計算する
  • データN個を再度k個のクラスタに分類する
    • この際、それぞれのクラスタとの中心との距離を算出し、最小距離のクラスタに分類する
  • 適当なタイミングで終了する

これの問題点は、最初のN個を適当にクラスタリング分けすることらしいです。ランダムに決めることによって、初期位置に偏りが生じやすく、それが最後まで解消されないとか*1。そのため、クラスタリング結果が毎回異なり、「分類することが出来るが、それが本当に綺麗に分類した結果か」が不明なようです。

これに対し、初期位置を確率的に決める手法が色々提案されており、k-means++法が一番有名なのかと。

LBGアルゴリズム

これは、実はベクトル量子化アルゴリズムです。簡単に言うと、「この世界では、1と言うデータは0として扱う。」的な感じで、近似値に置き換えるためのアルゴリズムです。

今回は、「近似値にするって、考え的にクラスタリングと同じじゃね?」と思って使ってみるわけです。はい、ご指摘待ってます。

基本的には、k-平均法と同じです。何が違うかというと、最初のベクトルの決定の仕方が違う。簡単に言うと、「ランダムにk/2個のクラスタに分けた後、その中心を計算し、その中心±ε*2を中心として扱う」と言うものです。これにより、収束が早くなる・・・らしい。

作ってみた

n0749086/LBG_Algorithm · GitHub

最初はscipyを使わずに、一次元データを扱う用のスクリプトです。これに関しては、とある研究のデータで一致することを検証済み。

scipyを使った方は、多次元データを扱えるようにしています。こちらは、クラス化しており、色々扱いやすくしているはず・・・です。但しまだ検証していないし、出力が正しいかを視覚的に確認していない。

考察

scipy未使用版は、最終出力結果は、ほとんど動いていなかった。と言うことは、量子化成功=クラスタリング結果が安定・・・?

個人的には、こういう結果が欲しかった。というのは、こういう風にしないと、きちんと理由付けが出来ない。

まとめ

多分出来たっぽい。まだ微修正+検証する必要があるけれど、とりあえず満足してます。

え、主成分分析しろ?あれはちょっと違うよね?けど、主成分分析→クラスタリングは一つの方法としてありなのかなと思う。

今後の課題

*1:他にも理由は色々あります

*2:εは中心と最も遠いベクトルの距離の1%ぐらいが良いとされています

*3:距離最大化という観点から

Amazonで返品してみた。

返品ポリシーの変更(2014/02/13 19:19 追記)

Amazon側から、返品ポリシーの変更が通知されました。これによると、開封済みの商品は最大50%までにしかならないとのこと。

まーた、返品する価値がなくなるんですね(棒

経緯

mac買いました。

ちょっと前にPCを変えることになって、諸々の理由でMacにしました。主な理由は、Apple製品のUIを触ってみたかった。とUnix環境を触れるようになりたかった。なのですが。

Macのことをよく知っている後輩と相談し、「買うならProでしょ!」と言われ、薦められるがままにMac Book Pro Retinaを買いました。

汚すのと壊すのが得意な自分。なので注文と同時にAmazonでケースと液晶保護フィルムを買うことにした。ちなみに買ったのは以下の通り。

ELECOM 液晶保護フィルム 反射低減仕様 13インチワイド MacBookPro用 EF-FLAMP13

ELECOM 液晶保護フィルム 反射低減仕様 13インチワイド MacBookPro用 EF-FLAMP13

やっちまった。

予想通り、保護フィルムの方を間違いました。なんでApple製品は製品型番が分かりづらい上に、周辺機器とかにそれの対応状況書いていないんだよ。Retinaと言う表記が無いことに気づかなかった僕が悪い。

返品手順

用意するもの

  • Amazonのアカウント
  • 適当な段ボール(今回は送られてきた段ボールを流用)

返品商品の申請

返品はこちら的なページからポチポチやる。最終的には「申請が完了しました」的なページに飛び、受付番号とかが表示される。

このとき、宛先とバーコードが表示されるので、印刷する。なおこれに関しては、送られてくるメールに書いてあるので慌てて閉じても問題ない。

自分の場合は、3週間以内に返送すれば良いとのことでした。

返品商品の発送

段ボールの中に、バーコードと商品、段ボール本体に宛先を貼って終わりです。

Amazonのお勧め(?)は郵便局だった。特設HPから、自宅集荷依頼が出来る様子。自分の場合はクロネコヤマトで発送。送り状発行サービスが非常に便利です。

なお、送り状の書き方は、会社名をアマゾン、氏名を「返品 係」にしたら無事返金されたました。名前必須とか辞めてくれよ、とか思ったけれど大丈夫なのだと思います。Amazon側からは、追跡サービスを付けることが推奨されているようです。

返品商品を送った後

送付した商品は、返品センターに到着次第、メールで連絡が来ます。クロネコの到着通知メールよりも早かったのでこれにはビックリしました。その後、商品のチェックが入ります。

商品チェックが終わると、返金しましたメールが届きます。自分の場合は、到着メールの4分後に届きました。チェック早い。まぁ、フィルム1枚だったからか。

メールには、返品商品とその額とかが書いてます。なお、アマゾンポイントで購入した商品は、ポイントで返還される様子。

まとめ

意外と簡単に返品できました。開け方が良かったのか、満額返ってきた。しかし送料が700円ぐらいだったので、500円ぐらいしか戻ってきていない計算。まぁ、これも教訓として良かったんじゃないかなと思ってます。