2019年10月24日木曜日

Windows で Python と R

Anacondaのインストール

ダウンロード


インストール

  • Anaconda*.exe をダブルクリック
  • デフォルトのまま進む.Installing 状態で結構待たされる.

起動

  • Windows の「コマンド プロンプト」が開きつつ,
  • ブラウザが開いて,Jupyter Notebook が起動する.Python3が使える状態

停止

  • Jupyter Notebookを閉じても, 背後で Pythonカーネルが動いている.
  • さきほど開いた「コマンド プロンプト」上で,Ctrl-C を打つと,それが止まる.

R言語のインストール

R for Windows のインストール

  • https://cran.ism.ac.jp/bin/windows/base/

  • ダウンロードされた R-3.6.1-win.exe をクリック.デフォルトのまま進む.
  • 起動チェック 


Jupyter Notebook への登録

  • Rのコンソールを起動して,以下のコマンドを実行.
install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest'))

install.packages('IRkernel')

IRkernel::installspec()

    • 残念ながら最後のコマンドでエラー.R for Windows のRGui のコンソールではダメで,Anaconda で起動したRで実行しないといけないらしい.
    • そこで,Anaconda Prompt を起動し,その中でRを起動する.

    (base) C:\Program Files\R\R-3.6.1\bin>R.exe

    • その中で,さきほどエラーになったコマンドを実行

    > IRkernel::installspec()
    [InstallKernelSpec] Installed kernelspec ir in C:\Users\yoshidak\AppData\Roaming\jupyter\kernels\ir

    • Jupyter Notebook で R が使えるようになった.


    2019年9月30日月曜日

    Kindleでダイレクト・パブリッシングしてみた!

    思いのほか,あっという間に,Kindle本を出版できてしまいました.
    税込み490円で,大変お求めやすくなっております(笑)


    販売開始は,2019年9月17日で,もう2週間ぐらい経ちましたね.
    上位ランキングには程遠いが,全然売れてないわけでもない,みたいな微妙な売れ行きです(笑)
    そうそう,海外アカウントの購入者がいて,びっくりです.

    上記Kindle版は,データ更新が無料なので,すでに何度か訂正を入れてしまいました.
    購入済みの方々のデータは更新されないようなので,申し訳なかったです.
    著者がAmazonに申請して,これが通ると,更新通知が読者に行くみたいだけど,誤植訂正程度だと,渋られるらしい.
    ★2019/10/18追記★ Amazonへの申請が通りまして,購入済みのコンテンツを,訂正後のものに更新できるようになりました.「コンテンツと端末の管理」ページで「アップデートがあります」をクリックしてください.詳しくはhttps://ktysd.github.io/books/pb
    このKindle版,自分でも購入してみましたが,やっぱ数式の多い専門書は,紙のほうが読みやすいかな・・・

    というわけで,POD版の出版準備に入りました.POD版で出版すると,紙の本を販売できます.PODとは,Print on demand のことで,注文があってから製本する出版方式のことです.
    AmazonのPODだと,注文のあった日に即時製本・発送手配となるらしく,普通の本とあまり変わらないスピードで流通するみたいです.

    次のサービスを使う予定.AmazonのPODサービスは,和書は登録業者しか受け付けないので,それを肩代わりしてくれる,個人著者向け代行サービスといったところでしょうか.


    POD版ができたら,それを理由に,Kindle版の更新通知を申請してみようかな・・・

    2019年9月13日金曜日

    電子書籍やってみよっかな

    とある老舗出版社と、講義資料の書籍化の話が進んでいたのですが、内容以外の部分で色々と折り合いがつかず、辞退してしまいました。

    以前3冊も出版させて頂いた日本評論社さんは、担当さんもごりごりの理工系で、彼と二人三脚で作っていくような進め方で非常に楽しかった。しかし、今回はだいぶ勝手が違いました。本の内容は目次まで、あとはビジネスという感じ。

    知らぬ間に関係者が増えていき、最初からの担当さんが板挟み、みたいな流れになっていきました。最後のほうは、俺って出版社の下請け?的な違和感に苛まれつつあったので、円満に辞退できて本当に良かったと思います。

    とはいえ、収穫もありました。書籍化に向けて作業してきたおかげで、資料の完成度は格段に高まりました。学生の輪講で大量にバグだししてもらい、さらに同僚にも、大きなバクを発見してもらいました。

    ここまで作っておいて、塩漬けするのはもったいないので、キンドル・ダイレクト・パブリッシングあたりで、完全なる自力出版を試してみようかなと思っています。

    出版社経由の出版と違って、版を自分で管理できるのが最大のメリット。出版後の訂正も簡単みたい。経験上、大して売れない本に致命的な誤植が発見されると、穴があったら入りたい状態が、絶版になるまで続いてしまうのですが,これが解消できるなら、涙が出るほどありがたい。

    あと、ロイアリティも比べ物にならないです。出版社だと8%の印税だが、キンドルだと70%らしい。一桁違うので、その分、ものすごく安く売ることができます。

    そうこう情報収集しているうちに、出版業界が上乗せする付加価値って、92%分もあるのかなと疑問に思えてきました。そのなかで出版社の取り分は40%ぐらいらしい。著者の5倍ですね。

    昔だったら、手書きの原稿から、連番や相互参照が狂わぬように手作業で版を起こし、本の形にするのは、大変な労力だったと思う。

    でも今は、特に理系の執筆者達は、原稿作成にLaTeX等の組版ソフトを使うので、脱稿の時点で、ほとんど完成している。出版社が上乗せするのは、基本、レイアウトと校正だけ?それで、著者の5倍ってすごくない?

    きっと、YouTube vs テレビ局 みたいな構図が、出版業界にも押し寄せてくるのでしょう。ていうか、もうきてるのか。

    2017年2月7日火曜日

    Evinceのフォント修正

    修論・卒論のフォントがイカれてるので,evinceの修正方法です.
    次のシェルスクリプトをダウンロードし,端末で実行してみてください.
    sh evince-font-fix.sh

    2016年10月28日金曜日

    LaTeXエディタ TeXworks の情報

    LaTeX用のエディタ
    • TeXworks/設定
      • ubuntuの場合:
        • スペルチェッカー辞書は.
        • sudo apt-get install myspell-en-us
        • でインストールしたら,texworksの編集→設定で指定できる.その後は,編集→スペルチェックで起動できる.
    その他の情報

    2016年8月9日火曜日

    CUDA は float が速い!

    最近,暇を見つけてはCUDAプログラミングに没頭しているのですが,
    どうやらGPUの浮動小数点はfloatがデフォルトらしい,

    というのをネットで見つけて,実際やってみました.

    浮動小数点を double にした場合:
    real 147m13.761s
    user 147m0.970s
    sys 0m5.916s

    浮動小数点を float にした場合:
    real 40m51.620s
    user 40m43.707s
    sys 0m5.255s

    というわけで,3.6倍かせげました.こんな違うんだ・・・

    2016年7月13日水曜日

    GPU ライブラリ “ArrayFire” (Ubuntu 14.04)

    C/C++ で力学シミュレータを作るときに,逆行列を掛けるのが面倒なので,
    C++ 用のベクトル・行列ライブラリを探してみました.

    文法の美しさでは Eigen がよかった.すごいかっちょいいソースが書けます.ヘッダーファイルだけというのもお手軽.

    http://eigen.tuxfamily.org/

    でも,CUDA で並列計算したいときは ArrayFire がいい感じ.ソースファイルは共通のまま,g++ のリンカーオプションを取り替えるだけで,CPU用とGPU用をコンパイルできます.

    http://arrayfire.org/


    Ubuntu 14.04 へのインストール


    1.ダウンロード
    http://arrayfire.com/download/

    2.準備
    ※本家の説明ではパッケージ名 libglfw3 が誤植で glfw3 になってた.
    sudo apt-get install libfreeimage-dev libatlas3gf-base libfftw3-dev cmake
    sudo apt-add-repository ppa:keithw/glfw3
    sudo apt-get update
    sudo apt-get install libglfw3

    3.インストール
    sudo sh ArrayFire-*_Linux_x86_64.sh --exclude-subdir --prefix=/usr/local

    4.コンパイル

    ソースコードの例:

    #include <arrayfire.h>
    // Generate random data, sum and print the result.
    int main(void)
    {
        // Generate 10,000 random values
        af::array a = af::randu(10000);
        // Sum the values and copy the result to the CPU:
        double sum = af::sum<float>(a);
        printf("sum: %g\n", sum);
        return 0;
    }


    Makefileの例: ※$(CC)の前は,スペースじゃなくてタブにします.

    #-lafcpu, -lafcuda, or -laf for the CPU, CUDA, and unified backends
    LIBS=-lafcpu
    LIB_PATHS=-L/usr/local/lib
    INCLUDES=-I/usr/local/include
    CC=g++ $(COMPILER_OPTIONS)
    COMPILER_OPTIONS=-std=c++11 -g
    all: main.cpp Makefile
        $(CC) main.cpp -o test $(INCLUDES) $(LIBS) $(LIB_PATHS)