気がつくと身についていたテクニック

金曜日です。

違います。木曜日です(素で間違えた)(規則的に見えて時折規則に反する書き出しをするのは parse 時に不便なのでは)(parse するのか?)(しない)(完)。


労は今日もテンサーフ労でした。ついにテンサーフ力(てんさーふちから)に覚醒し大きな進捗がありました。また、深的ペアプロで褒められがありました(よい)。

論文読み勉強会がありました。微分不可能な損失関数に対して上から押さえつけるような代理損失関数を用意してそっちを最小化するというようなタイプの手法の話でした。機械学習との付き合いが長いとこのタイプのテクニックはよく見かける気がしますが、なんらかの書にまとまって書いてあるわけでもなく、なんとなくなるほど〜でわかっていったので、初心者に「この本を読んでおけばだいたいわかるよ」っていう感じにはできないのが厳しいなと感じました(まとまりのない文章)。


帰りの電車に異常な混雑がありダメージを受けました。アサシンズプライド6巻を読み進めたものの、読了には至りませんでした。

帰宅後はアイカツスターズを見ました。OPのダンスシーンに小春ちゃんが追加されており最高でした。また、本編も圧倒的百合が炸裂し、突然の百合に困惑していた人々も最高の百合パフォーマンスを見たあとで「百合・・・百合・・・」という感じになっていたのが最高でした。最高でした・・・。


その後、Rust(chapter3最後まで)をやりました。

以上です。寝ます。


一応、Rust ドキュメント chapter3 の最後の練習問題っぽいやつもやったのでコードをはっておきます(ぎっはぶに置くほどのものではないので)。

chapter3_1/src/main.rs

use std::io;


fn main() {
    loop {
       println!("input celsius temperature!");

       let mut line = String::new();
       io::stdin().read_line(&mut line)
           .expect("cannot read line");

       let c: f64 = match line.trim().parse() {
           Ok(num) => num,
           Err(_)  => break,
       };

       let f = celsius_to_fahrenheit(c);
       println!("{:.*}°C is {:.*}°F", 2, c, 2, f);
    }
}


fn celsius_to_fahrenheit(temperature: f64) -> f64 {
    temperature * 9.0 / 5.0 + 32.0
}

chapter3_2/src/main.rs

fn main() {
    for index in 0..10 {
        let f = fibonacci(index);
        println!("fibonacci({}) is {}", index, f);
    }
}


fn fibonacci(index: i32) -> i32 {
    if index == 0 {
        1
    } else if index == 1 {
        1
    } else {
        fibonacci(index - 2) + fibonacci(index - 1)
    }
}

chapter3_3/src/main.rs

fn main() {
    the_twelve_days_of_christmas();
}

fn the_twelve_days_of_christmas() {
    let ordinal_numbers = [
        "first", "second", "third", "fourth", "fifth", "sixth",
        "seventh", "eighth", "ninth", "tenth", "eleventh", "twelfth",
    ];
    let ordinal_lyrics = [
        "and a Partridge in a Pear Tree",
        "2 Turtle Doves",
        "3 French Hens",
        "4 Calling Birds",
        "5 Golden Rings",
        "6 Geese a Laying",
        "7 Swans a Swimming",
        "8 Maids a Milking",
        "9 Ladies Dancing",
        "10 Lords a Leaping",
        "11 Pipers Piping",
        "12 Drummers Drumming",
    ];

    for i in 0..12 {
        println!("On the {} day of Christmas", ordinal_numbers[i]);
        println!("my true love sent to me:");

        if i == 0 {
           println!("A Partridge in a Pear Tree");
        } else {
           for j in (0..(i + 1)).rev() {
               println!("{}", ordinal_lyrics[j]);
           }
        }
        println!("");
    }
}