科学と非科学の迷宮 2023-12-04T00:00:00+09:00 shiumachi Hatena::Blog hatenablog://blog/13208692334729888015 ペーパードライバー卒業への道 hatenablog://entry/6801883189063414532 2023-12-04T00:00:00+09:00 2023-12-04T00:00:23+09:00 (DALL-E3によって生成しました) この記事はpyspa アドベントカレンダー 2023の4日目です。 昨日は@tokibitoでした。 ペーパードライバー 私は20年前に免許を取って以来、車を運転したことは片手で数えられるレベルの完璧なペーパードライバーでした。 結婚して子供ができてからも旅行はいつもタクシーや公共交通機関を利用していましたが、今回は軽井沢へ旅行をすることになったので、久々に車を運転してみることにしました。 準備 運転に関してはほぼ初心者だった私は、以下のステップで準備を進めました。 ペーパードライバー講習 実際の車を使用して、基本的な操作や運転のコツを学びました。 ペー… <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20231202/20231202150745.png" width="1200" height="686" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span></p> <p>(DALL-E3によって生成しました)</p> <p>この記事は<a href="https://adventar.org/calendars/8595">pyspa アドベントカレンダー 2023</a>の4日目です。</p> <p>昨日は<a href="https://tokibito.hatenablog.com/entry/pyspa-advent-calendar-2023-1203">@tokibito</a>でした。</p> <h1 id="ペーパードライバー">ペーパードライバー</h1> <p>私は20年前に免許を取って以来、車を運転したことは片手で数えられるレベルの完璧なペーパードライバーでした。</p> <p>結婚して子供ができてからも旅行はいつもタクシーや公共<a class="keyword" href="https://d.hatena.ne.jp/keyword/%B8%F2%C4%CC%B5%A1%B4%D8">交通機関</a>を利用していましたが、今回は軽井沢へ旅行をすることになったので、久々に車を運転してみることにしました。</p> <h1 id="準備">準備</h1> <p>運転に関してはほぼ初心者だった私は、以下のステップで準備を進めました。</p> <h2 id="ペーパードライバー講習">ペーパードライバー講習</h2> <p>実際の車を使用して、基本的な操作や運転のコツを学びました。</p> <p>ペーパードライバー講習は現地にいかなくてもわざわざ近くまで車で来てくれて、最後は自宅前で終了できるという非常に便利なものでした。</p> <p>また、子供を連れて乗ってもOKとのことだったので(<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%C1%A5%E3%A5%A4%A5%EB%A5%C9%A5%B7%A1%BC%A5%C8">チャイルドシート</a>も用意してくれる)、夫婦そろってペーパードライバー講習を受けることができました(妻もペーパードライバーだった)</p> <h2 id="ETCカードの手配"><a class="keyword" href="https://d.hatena.ne.jp/keyword/ETC%A5%AB%A1%BC%A5%C9">ETCカード</a>の手配</h2> <p>高速の運転練習をしたかったので、この機会に<a class="keyword" href="https://d.hatena.ne.jp/keyword/ETC%A5%AB%A1%BC%A5%C9">ETCカード</a>を発行しました。</p> <p>ボタン1つで発行できて、1週間ほどで自宅に届きました。</p> <p>驚くほど簡単でした。</p> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fwww.jal.co.jp%2Fjp%2Fja%2Fjalcard%2Ffunction%2Fetccard.html" title="JALカード | ETCカード(カードの機能)" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://www.jal.co.jp/jp/ja/jalcard/function/etccard.html">www.jal.co.jp</a></cite></p> <h2 id="レンタカーの手配">レンタカーの手配</h2> <p>ペーパードライバー講習で使った車が<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%D7%A5%EA%A5%A6%A5%B9">プリウス</a>だったということもあり、<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%C8%A5%E8%A5%BF">トヨタ</a>レンタカーを使って<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%D7%A5%EA%A5%A6%A5%B9">プリウス</a>を選択することにしました。</p> <p>Web上では特に本人確認等もなく、かなりスムーズに予約することができました。</p> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Frent.toyota.co.jp%2F" title="レンタカーならトヨタレンタカー【公式】" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://rent.toyota.co.jp/">rent.toyota.co.jp</a></cite></p> <h2 id="車の説明書を読む">車の説明書を読む</h2> <p>車の機能が多すぎて一発で覚えるのは不可能ですが、やらないよりマシと思って<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%D7%A5%EA%A5%A6%A5%B9">プリウス</a>の説明書600ページ超に目を通しました。</p> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fmanual.toyota.jp%2Fprius%2F" title="トヨタ 取扱説明書 | プリウス | トヨタ自動車WEBサイト" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://manual.toyota.jp/prius/">manual.toyota.jp</a></cite></p> <h2 id="YouTubeを使った予習復習"><a class="keyword" href="https://d.hatena.ne.jp/keyword/YouTube">YouTube</a>を使った予習・復習</h2> <p><a class="keyword" href="https://d.hatena.ne.jp/keyword/YouTube">YouTube</a>には車の操作についての動画もたくさんあるので、それらを見て予習していました。</p> <iframe src="https://www.youtube.com/embed/WTbiWeD7KMM?enablejsapi=1" width="560" height="315" frameborder="0" allowfullscreen></iframe> <p><br><a href="https://www.youtube.com/watch?v=WTbiWeD7KMM">www.youtube.com</a></p> <h2 id="Googleストリートビューでの経路の確認"><a class="keyword" href="https://d.hatena.ne.jp/keyword/Google">Google</a><a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%B9%A5%C8%A5%EA%A1%BC%A5%C8%A5%D3%A5%E5%A1%BC">ストリートビュー</a>での経路の確認</h2> <p>当日どのように移動するかをシミュレーションしながら、その経路にそって<a class="keyword" href="https://d.hatena.ne.jp/keyword/Google">Google</a><a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%B9%A5%C8%A5%EA%A1%BC%A5%C8%A5%D3%A5%E5%A1%BC">ストリートビュー</a>を眺めてみて、どのようなものが見えるのかを確認していきました。</p> <p>それにより、例えば「家の前の道は普段は右折可能だが平日7:30 - 9:30は右折禁止となるのでこのルートは使えない」など、普段の徒歩生活では気づけなかった問題も洗い出すことができました。</p> <h2 id="車につけるアクセサリーの手配">車につけるアクセサリーの手配</h2> <p>子供を数時間も<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%C1%A5%E3%A5%A4%A5%EB%A5%C9%A5%B7%A1%BC%A5%C8">チャイルドシート</a>に縛り付けるので、子供の退屈しのぎをどうするかが課題でした。</p> <p>普段家ではあまり動画等を見せていないのですが、今回はやむなしということで動画閲覧用のアクセサリーを導入することにしました。</p> <p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/dp/B0BQRCVW45?tag=shiumachijigo-22&amp;linkCode=ogi&amp;th=1&amp;psc=1" class="hatena-asin-detail-image-link" target="_blank" rel="noopener"><img src="https://m.media-amazon.com/images/I/51NYTxc9c3L._SL500_.jpg" class="hatena-asin-detail-image" alt="【2023新登場】 Lamicall 伸縮アーム 後部座席 タブレット ホルダー : ヘッドレスト ipad 車載ホルダー スタンド, バーの適用幅範囲72mm-153mm, ipad 10 第十世代, ipad pro, mini, Air, android, 4.7-11インチのスマホ, タブレット に対応 - 黒" title="【2023新登場】 Lamicall 伸縮アーム 後部座席 タブレット ホルダー : ヘッドレスト ipad 車載ホルダー スタンド, バーの適用幅範囲72mm-153mm, ipad 10 第十世代, ipad pro, mini, Air, android, 4.7-11インチのスマホ, タブレット に対応 - 黒"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/dp/B0BQRCVW45?tag=shiumachijigo-22&amp;linkCode=ogi&amp;th=1&amp;psc=1" target="_blank" rel="noopener">【2023新登場】 Lamicall 伸縮アーム 後部座席 タブレット ホルダー : ヘッドレスト ipad 車載ホルダー スタンド, バーの適用幅範囲72mm-153mm, ipad 10 第十世代, ipad pro, mini, Air, android, 4.7-11インチのスマホ, タブレット に対応 - 黒</a></p><ul class="hatena-asin-detail-meta"><li>Lamicall</li></ul><a href="https://www.amazon.co.jp/dp/B0BQRCVW45?tag=shiumachijigo-22&amp;linkCode=ogi&amp;th=1&amp;psc=1" class="asin-detail-buy" target="_blank" rel="noopener">Amazon</a></div></div></p> <h1 id="当日">当日</h1> <h2 id="往路">往路</h2> <p>首都高が難しいというアド<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%D0%A5%A4%A5%B9">バイス</a>を友人からもらっていましたが、本当にその通りで首都高が一番大変でした。</p> <p>ただでさえ慣れない運転をしている上に、子供も乗り慣れていなくて車酔いして泣いたりしていて、その状態で平静を保ちながら運転するのが一番きつかったです。</p> <p>後でFitbitの記録を見たら、首都高を抜けるまでの間は心拍数的に運動をしていたことになっていたようです。</p> <p>自分と子供の<a class="keyword" href="https://d.hatena.ne.jp/keyword/%C8%E8%CF%AB">疲労</a>回復のために、こまめな休憩をとって移動していたのですが、それが<a class="keyword" href="https://d.hatena.ne.jp/keyword/%CE%A2%CC%DC">裏目</a>に出て軽井沢の市街に着いた頃には日が落ちてしまいました。</p> <p>そこからさらに山の中の目的地に移動しなければならないのですが、さらに悪いことに雨も降ってきていました。</p> <p>雨で真っ暗の中の山道を運転するのはかなりハードでした。</p> <p>道路の中心線もかすんで見えない状態だったので、とにかく低速での安全運転を心がけてなんとかたどり着くことができました。</p> <h2 id="復路">復路</h2> <p>慣れたこともあり、往路よりはだいぶスムーズに帰ることができました。</p> <p>関越道を走行中に<a class="keyword" href="https://d.hatena.ne.jp/keyword/PA">PA</a>で昼食休憩して、その後出発したときに太陽の日差しがポカポカと温かく感じたので、直感的にこれは危険だと感じました。</p> <p>多少の慣れで緊張感が緩んできたので、眠気がきそうな気配を感じたのです。</p> <p>これはまずいと思ったので、走行して10分程度ですぐに次の<a class="keyword" href="https://d.hatena.ne.jp/keyword/PA">PA</a>で休憩しました。</p> <p>首都高に入った後は、友人からのアド<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%D0%A5%A4%A5%B9">バイス</a>通り山手トンネルを使いました。ほぼ一直線なので本当に楽でした。</p> <h1 id="終わりに">終わりに</h1> <p>普段から運転に慣れている人にとってはバカバカしい内容だったかもしれませんが、慣れていない自分にとっては常識のようなことも全然わからないので大変でした。</p> <p>ペーパードライバーを卒業したい人は参考にしてみてください。</p> shiumachi ChatGPTで個人開発を爆速にする hatenablog://entry/4207575160645645531 2023-05-03T17:46:31+09:00 2023-05-04T07:55:39+09:00 ChatGPTが登場してから始めての大型連休で、自分も久々にまとまった時間がとれたので個人開発をしていました。 ほこりがつもったソフトウェアプロジェクトを取り出すと、大抵の場合はライブラリのアップデートや連携サービスのアップデート対応などに時間を費やしてしまい、せっかくの貴重な休日を環境構築だけに費やすというのが大変憂鬱でした。 しかし、ChatGPTのおかげでこうした個人開発も全く苦ではなくなりました。 以下、自分が取った方法を説明します。 ここでは、個人のプライベートリポジトリでの開発プロジェクトを想定しています。 OSSの場合はこの方法をそのまま適用すると色々課題があると思うのでご注意く… <p>ChatGPTが登場してから始めての大型連休で、自分も久々にまとまった時間がとれたので個人開発をしていました。</p> <p>ほこりがつもったソフトウェアプロジェクトを取り出すと、大抵の場合はライブラリのアップデートや連携サービスのアップデート対応などに時間を費やしてしまい、せっかくの貴重な休日を環境構築だけに費やすというのが大変憂鬱でした。</p> <p>しかし、ChatGPTのおかげでこうした個人開発も全く苦ではなくなりました。</p> <p>以下、自分が取った方法を説明します。</p> <p>ここでは、個人のプライベー<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%C8%A5%EA%A5%DD%A5%B8">トリポジ</a>トリでの開発プロジェクトを想定しています。 <a class="keyword" href="https://d.hatena.ne.jp/keyword/OSS">OSS</a>の場合はこの方法をそのまま適用すると色々課題があると思うのでご注意ください。</p> <h2 id="方法">方法</h2> <ol> <li><a class="keyword" href="https://d.hatena.ne.jp/keyword/GitHub">GitHub</a>(または類似サービス)を開きます。</li> <li>大量のIssueを登録します。登録方法のコツは後述します。</li> <li>各Issueに対してChatGPTに質問し、回答結果をコピーしておきます。</li> <li>Issueを一つずつ解決していきます。ポモドーロタイマーを使って、1-2個のIssueを1ポモドーロで解決すると効率が良いです。</li> <li>作業中に新たな問題やア<a class="keyword" href="https://d.hatena.ne.jp/keyword/%A5%A4%A5%C7%A5%A2">イデア</a>が見つかった場合は、全てIssueに追加します。</li> </ol> <h2 id="Issue登録のコツ">Issue登録のコツ</h2> <ul> <li>あまり真面目に書かない: 個人プロジェクトなので、簡潔に書いても大丈夫です。重要なのは、忘れないようにIssueに記録することです。</li> <li>タグ付けは真面目に行う: どのIssueに取り組むかを決める際に参考になるため、タグ付けは丁寧に行いましょう。例えば、バグと改善案を分けるだけでも役立ちます。</li> <li>細かく分ける: 複数のエラーが同時に発生していても、それぞれが別のエラーであればIssueを分けましょう。</li> </ul> <h2 id="結果">結果</h2> <p>こんなフローでやるだけで、圧倒的に生産性が変わりました。 自分の場合、数年前に作って放置してたソフトウェアプロジェクトを取り出して作業したら、1日でIssueを35個登録し、18個クローズできました。</p> <p>それだけでなく、退屈な環境構築問題潰しの時間も減るのでモチベーションも上がり、さらに作業が明確になったIssueリストが残るので休暇が終わってもスキマ時間に作業しやすくなり、継続的な開発のモチベーションが上がります。(多分。まだ休暇明けてないので希望的観測)</p> <p>もう一つ気づいたのが、ChatGPTによる教育効果です。</p> <p>ChatGPTの結果をコピペするだけでも、きちんと内容を理解していくことでかなりの勉強の効果を感じました。</p> <p>今までだと環境構築などで色々回り道をして、へとへとになってようやく正解にたどりつく、みたいにしていましたが(それももちろん勉強になることは知っていますが)、確実に問題の本質をとらえ、それに対する解説をしてくれると勉強効率が桁違いです。</p> <p>「それでも地道に勉強するほうが身につく」という人もいるでしょうが、どのみちChatGPTでは解決できない問題もまだまだあるので(例えば最新バージョン固有の問題など)、従来どおりの地道な調査がなくなるわけではないです。</p> <p>そうした苦労を全部の問題に対してやる必要は自分はないと思います。</p> shiumachi ChatGPTとこれからの知識人:新しい時代に求められるスキルとは? hatenablog://entry/4207112889973748505 2023-03-22T07:39:26+09:00 2023-03-22T07:49:35+09:00 あまりに忙しくてブログを更新できていませんが、これだけは今後のために記録を残しておきたいと思い書いておきます。 推敲はほぼしてないので乱文・乱筆をお許しください。 DISCLAIMER ChatGPT関連の記事やツイートは忙しくてほぼ読んでません。 記載されている内容は間違っている可能性があります。 アカウント作成から課金まで 私が初めてOpenAIのアカウントを作ったのは2023/3/19(日)でした。 世間がChatGPTで盛り上がるようになってからずいぶん遅れての参加となりました。 無料でも少し使えるのですがレスポンスがかなり遅く、このタイミングでは正直おもちゃ程度にしか感じませんでした… <p>あまりに忙しくてブログを更新できていませんが、これだけは今後のために記録を残しておきたいと思い書いておきます。</p> <p>推敲はほぼしてないので乱文・乱筆をお許しください。</p> <h2 id="DISCLAIMER">DISCLAIMER</h2> <p>ChatGPT関連の記事やツイートは忙しくてほぼ読んでません。</p> <p>記載されている内容は間違っている可能性があります。</p> <h2 id="アカウント作成から課金まで">アカウント作成から課金まで</h2> <p>私が初めてOpenAIのアカウントを作ったのは2023/3/19(日)でした。</p> <p>世間がChatGPTで盛り上がるようになってからずいぶん遅れての参加となりました。</p> <p>無料でも少し使えるのですがレスポンスがかなり遅く、このタイミングでは正直おもちゃ程度にしか感じませんでした。</p> <p>なので月20ドルという有料版の価格は割高に感じました。</p> <p>しかし、GPT4を試してみたいという気持ちもあり、1ヶ月だけでも課金してみるかと思って課金してみました。</p> <p>全く世界が変わりました。</p> <p>GPT4については、利用回数が少ないこと(2023/03/22時点で3時間に25回)、レスポンスが遅いことなどから、正直そこまで実用性は感じられませんでした。GPT3.5を高速なレスポンスで使い放題になることが真の価値だったと課金して気づきました。</p> <h2 id="あらゆる知的活動をアシスト">あらゆる知的活動をアシスト</h2> <p>ChatGPTは、自分が普段行っている知的活動のほとんどについてアシストしてくれます。</p> <p>ここまで汎用的とは全く想像していませんでした。</p> <p>多大な生産性向上の体験を一瞬のうちに提供してくれるサービスとしては、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Google">Google</a>検索やDeepL以来の衝撃です。</p> <p>「Hooked」にあるようなフックモデルを完璧に実践しています。</p> <p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/dp/B00KKN3JAK?tag=shiumachijigo-22&amp;linkCode=osi&amp;th=1&amp;psc=1" class="hatena-asin-detail-image-link" target="_blank" rel="noopener"><img src="https://m.media-amazon.com/images/I/51M+6Lv6dCL._SL500_.jpg" class="hatena-asin-detail-image" alt="Hooked ハマるしかけ 使われつづけるサービスを生み出す[心理学]×[デザイン]の新ルール" title="Hooked ハマるしかけ 使われつづけるサービスを生み出す[心理学]×[デザイン]の新ルール"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/dp/B00KKN3JAK?tag=shiumachijigo-22&amp;linkCode=osi&amp;th=1&amp;psc=1" target="_blank" rel="noopener">Hooked ハマるしかけ 使われつづけるサービスを生み出す[心理学]×[デザイン]の新ルール</a></p><ul class="hatena-asin-detail-meta"><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/Nir%20Eyal" class="keyword">Nir Eyal</a>,<a href="http://d.hatena.ne.jp/keyword/Ryan%20Hoover" class="keyword">Ryan Hoover</a></li><li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%E6%C6%B1%CB%BC%D2">翔泳社</a></li></ul><a href="https://www.amazon.co.jp/dp/B00KKN3JAK?tag=shiumachijigo-22&amp;linkCode=osi&amp;th=1&amp;psc=1" class="asin-detail-buy" target="_blank" rel="noopener">Amazon</a></div></div></p> <h2 id="どのくらいChatGPTがすごいのか">どのくらいChatGPTがすごいのか</h2> <p>世間では有史以来の衝撃とか大騒ぎしていますが、正直そこまでのものかは私には分かりません。</p> <p>最初盛り上がってもその後沈んでいく製品やサービスは山ほどありました。</p> <p>ChatGPTがそうならない保証はどこにもありません。</p> <p>今のところの自分の評価としては、こんな感じです。</p> <ul> <li>2022-2023年の「世界史」に確実に名を残す。21世紀前半の歴史に名前が残るかは今のところ不明(別のサービスが今後<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%D5%A5%A1%A5%AF%A5%C8">デファクト</a>になっていくかもしれないので)。</li> <li>インターネット史には確実に名を残す。コンピュータ史に名を残すかは今のところ不明</li> <li>対話型AIという一般化された概念としては21世紀の世界史に名を残すしコンピュータ史にも名を残す</li> </ul> <h2 id="自分なりのChatGPTの使い方">自分なりのChatGPTの使い方</h2> <p>以下の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%AF%A5%EA%A1%BC%A5%F3%A5%B7%A5%E7%A5%C3%A5%C8">スクリーンショット</a>は、特に断りがない限りGPT3.5を用いています。</p> <h3 id="人力検索の代替"><a class="keyword" href="http://d.hatena.ne.jp/keyword/%BF%CD%CE%CF%B8%A1%BA%F7">人力検索</a>の代替</h3> <p>多くの人が一番価値を感じているのが検索だと思います。特に、キーワード検索が難しく、人に聞かなければいけないような質問には完全に答えてくれます。</p> <p>長いので前半部分だけ貼ります。</p> <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20230322/20230322073414.png" width="1120" height="1200" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span></p> <p>他にも、冠婚葬祭や礼儀作法などで、自分の具体例を挙げて質問することができ、自分に合った答えをもらうことができます。</p> <p>個人的には、少なくとも今のままの<a class="keyword" href="http://d.hatena.ne.jp/keyword/Yahoo%21%C3%CE%B7%C3%C2%DE">Yahoo!知恵袋</a>やStack Overflowにある質問のかなりの部分はChatGPTに代替されていくだろうと思っています。</p> <p>ただし、回答が合っている保証はないので、このあとさらに追加で自分で調べる作業は必要です。</p> <p>しかし、完全に一から調べるよりも遥かに手間が省けます。</p> <h3 id="学習用対話システム">学習用対話システム</h3> <p>コンテンツを使った学習システムは、大抵の場合読書や視聴によるインプットが主体で、アウトプット可能なものでも選択式など非常に限定的なものばかりでした。</p> <p>なので、フィードバックを得られる対面指導には大きな価値がありました。</p> <p>ChatGPTは対話によって自分の回答に対してフィードバックしてくれます。</p> <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20230322/20230322073444.png" width="1127" height="1200" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span></p> <p>なにかを学習するのにアウトプットをするというのはとても効率がいいことは知られています。</p> <p>これができるだけでもChatGPTは他の教育サービスと一線を画しています。</p> <p>ただし、回答が正しい保証もないので、この回答をさらに自分で調べていき正確性を確認するところまでをセットで行う必要があります。</p> <h3 id="子供用の簡単な童話創作">子供用の簡単な童話創作</h3> <p>子供の寝かしつけ用に簡単なお話を創作してみましたがなかなかいいできのものができます。</p> <p>注文をつけてリテイクしても柔軟に対応してくれます。</p> <p>以下の例はGPT4で作成しました。</p> <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20230322/20230322073513.png" width="1119" height="1200" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span></p> <h3 id="タイトルを考える">タイトルを考える</h3> <p>このブログ記事のタイトルもChatGPTに考えてもらいました。</p> <p>以下はGPT4で作成しています。</p> <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20230322/20230322073818.png" width="1200" height="609" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span></p> <p>一見創造的に見えるこうした作業はChatGPTにほぼ丸投げできます。</p> <p>プロのコピーライターでもない限り、一般人にはこれで十分です。</p> <h2 id="ChatGPT時代の知識人">ChatGPT時代の知識人</h2> <p>膨大な知識を単に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%B8%C0%B8%EC">自然言語</a>としてアウトプットするだけ、という知識人はこれからかなり立場を悪くしていくことになるでしょう。</p> <p>また、独創性のあるア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%C7%A5%A2">イデア</a>を出すというのもChatGPTはかなりのレベルでできると感じました。ア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%C7%A5%A2">イデア</a>を出すだけではかなり生き残るのが難しいと思います。</p> <p>一方で、過去のシステムと同様、未知の質問を作る能力はありません。</p> <p>これからの知識人は、今まで以上に新しい質問を創造する能力が問われてきます。</p> <p>いい質問を作るには、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%B2%BD">言語化</a>、抽象化の能力の他、問題の構造化や分割などの能力が必要になります。</p> <p>今まで<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BF%CD%CE%CF%B8%A1%BA%F7">人力検索</a>でいい質問を作れた人たちは、今後もChatGPT相手にその価値を最大限に引き出す質問をしていくでしょう。</p> <p>また、ChatGPTでは人から話を聞き出すことができません。</p> <p>人との対話を通じて話を引き出していく、LISTENの技術はまだまだ人間の独壇場でしょう。</p> <p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/dp/B099582LR7?tag=shiumachijigo-22&amp;linkCode=osi&amp;th=1&amp;psc=1" class="hatena-asin-detail-image-link" target="_blank" rel="noopener"><img src="https://m.media-amazon.com/images/I/312s-AmGOSL._SL500_.jpg" class="hatena-asin-detail-image" alt="LISTEN――知性豊かで創造力がある人になれる" title="LISTEN――知性豊かで創造力がある人になれる"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/dp/B099582LR7?tag=shiumachijigo-22&amp;linkCode=osi&amp;th=1&amp;psc=1" target="_blank" rel="noopener">LISTEN――知性豊かで創造力がある人になれる</a></p><ul class="hatena-asin-detail-meta"><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%B1%A5%A4%A5%C8%A1%A6%A5%DE%A1%BC%A5%D5%A5%A3" class="keyword">ケイト・マーフィ</a></li><li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%FC%B7%D0BP">日経BP</a></li></ul><a href="https://www.amazon.co.jp/dp/B099582LR7?tag=shiumachijigo-22&amp;linkCode=osi&amp;th=1&amp;psc=1" class="asin-detail-buy" target="_blank" rel="noopener">Amazon</a></div></div></p> <h2 id="万人向けのツールではない">万人向けのツールではない</h2> <p>質問の切り出しや<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%B2%BD">言語化</a>が苦手な人にとってはChatGPTはあまり使い勝手がいいものではありません。</p> <p>万人向けのツールではなく、知的労働者の一部の人が多大な恩恵を預かれるツールというのが現状の認識です。</p> <p>とはいえ、知的労働者という非常に広範なくくりの中の一部なので、それでも想定ユーザーは膨大な規模となるでしょう。</p> <h2 id="1ヶ月でいいから課金しろ">1ヶ月でいいから課金しろ</h2> <p>正直、月20ドルを払い続けるというのが万人にとって価値があるかどうかまだわかりません。</p> <p>ですが、1ヶ月だけ20ドル払って試すというのは間違いなく全員におすすめできます。</p> <p>映画1本みるか、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%DF%A5%E5%A1%BC%A5%BA">アミューズ</a>メントパークに1回いくのと同じだけの金額で次の未来を体験できるものなら安いものです。</p> <p>今まで試したことがなかった人も、無料版でちょこっと試しただけの人も、一度は有料版を触わることをおすすめします。</p> shiumachi pyspa-bot開発報告2022 hatenablog://entry/4207112889947238721 2022-12-23T09:00:00+09:00 2022-12-23T09:00:05+09:00 (UnsplashのDesola Lanre-Ologunが撮影した写真) この記事はpyspa アドベントカレンダー 2022の23日目です。昨日は@shinyorkeでした。過去のpyspa-bot関連記事は以下のとおりです。shiumachi.hatenablog.comshiumachi.hatenablog.com pyspa-botの概要 pyspa-botは、pyspaのSlackチャンネル内で稼働しているbotです。初期バージョンが開発されてから10年以上の歴史が経っています。2010年ごろにDjango Appとして動作するSkype Botとして初期バージョンが稼働しました… <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20221222/20221222145322.jpg" width="1200" height="800" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span><br /> (<a href="https://unsplash.com/ja/%E5%86%99%E7%9C%9F/IgUR1iX0mqM?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>の<a href="https://unsplash.com/@disruptxn?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Desola Lanre-Ologun</a>が撮影した写真)<br /> </p><p>この記事は<a href="https://adventar.org/calendars/7432">pyspa &#x30A2;&#x30C9;&#x30D9;&#x30F3;&#x30C8;&#x30AB;&#x30EC;&#x30F3;&#x30C0;&#x30FC; 2022</a>の23日目です。昨日は<a href="https://shinyorke.hatenablog.com/entry/python2023">@shinyorke</a>でした。</p><p>過去のpyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>関連記事は以下のとおりです。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2021%2F12%2F04%2F000000" title="pyspa-bot移行作業報告 - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2021/12/04/000000">shiumachi.hatenablog.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2015%2F12%2F18%2F114202" title="voluntas-bot の歴史を振り返る - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2015/12/18/114202">shiumachi.hatenablog.com</a></cite><br /> </p> <div class="section"> <h4 id="pyspa-botの概要">pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>の概要</h4> <p>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>は、pyspaのSlackチャンネル内で稼働している<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>です。</p><p>初期バージョンが開発されてから10年以上の歴史が経っています。</p><p>2010年ごろに<a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a> Appとして動作する<a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Bot">Bot</a>として初期バージョンが稼働しました。(当時のpyspaは<a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a>でチャットしていました)。これを便宜上バージョン1とします。</p><p>2013年ごろにSlackに移行したタイミングで<a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Bot">Bot</a>がSlackにも対応するようになりましたが、開発者の<a href="https://twitter.com/moriyoshit">@moriyoshit</a>が個人でメンテナンスしてたこともあり、落ちたら誰も起動できなくなるといった保守上の問題がありました。</p><p>そこで2016年に、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a>依存をなくし、<a href="https://github.com/slackapi/python-rtmbot">rtmbot</a>をベースにしたチャットボットシステムに移行しました。これを便宜上バージョン2とします。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgithub.com%2Fslackapi%2Fpython-rtmbot" title="GitHub - slackapi/python-rtmbot: A framework for receiving and interacting with events from Slack&#39;s RTM API" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://github.com/slackapi/python-rtmbot">github.com</a></cite></p><p></p> </div> <div class="section"> <h4 id="pyspa-bot-ver2-の2021年時点での技術概要">pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a> ver.2 の2021年時点での技術概要</h4> <ul> <li><a href="https://github.com/slackapi/python-rtmbot">python-rtmbot</a>ベースの<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>サーバ</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a> 3.8 (ver.2 移行時は3.6だったが一度アップグレードを実施)</li> <li>DBは<a class="keyword" href="http://d.hatena.ne.jp/keyword/SQLite">SQLite</a>を使用(これはver.1時代のものをそのまま流用)</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/Google">Google</a> Cloudで稼働 (初期の頃は無料のマイクロ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%BF%A5%F3%A5%B9">インスタンス</a>を使っていたが今はn1-standard-1を使用)</li> <li>手動デプロイ。サービスはsystemdで管理</li> </ul> </div> <div class="section"> <h4 id="2022年の主な作業">2022年の主な作業</h4> <div class="section"> <h5 id="GitLabからGitHubへの移行">GitLabから<a class="keyword" href="http://d.hatena.ne.jp/keyword/GitHub">GitHub</a>への移行</h5> <p><a href="https://gitlab.com/">GitLab</a>が<a href="https://www.publickey1.jp/blog/22/gitlabcomsaas56.html">&#x7121;&#x6599;&#x7248;&#x306E;&#x30D7;&#x30E9;&#x30A4;&#x30D9;&#x30FC;&#x30C8;&#x30EA;&#x30DD;&#x30B8;&#x30C8;&#x30EA;&#x306E;&#x30E6;&#x30FC;&#x30B6;&#x30FC;&#x6570;&#x3092;5&#x4EBA;&#x307E;&#x3067;&#x306B;&#x5236;&#x9650;&#x3057;&#x305F;&#x305F;&#x3081;</a>、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EA%A5%DD%A5%B8%A5%C8%A5%EA">リポジトリ</a>を<a href="https://github.com/">GitHub</a>に移行しました。</p><p><a href="https://github.com/piceaTech/node-gitlab-2-github">node-gitlab-2-github</a>を使ってIssueなども全てきれいに移行しました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgithub.com%2FpiceaTech%2Fnode-gitlab-2-github" title="GitHub - piceaTech/node-gitlab-2-github: Migrate Issues, milestones etc from gitlab to github" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://github.com/piceaTech/node-gitlab-2-github">github.com</a></cite></p><p></p> </div> <div class="section"> <h5 id="SQLiteからCloud-SQLPostgreSQLへの移行"><a class="keyword" href="http://d.hatena.ne.jp/keyword/SQLite">SQLite</a>からCloud <a class="keyword" href="http://d.hatena.ne.jp/keyword/SQL">SQL</a>(<a class="keyword" href="http://d.hatena.ne.jp/keyword/PostgreSQL">PostgreSQL</a>)への移行</h5> <p><a href="https://shiumachi.hatenablog.com/entry/2021/12/04/000000">&#x6628;&#x5E74;&#x306E;&#x8A18;&#x4E8B;</a>ではCDに持っていくことを目標としていましたが、一度に全てを行うのが難しかったため、DB移行のみ実施しました。<br /> <br /> </p> </div> <div class="section"> <h5 id="インスタンスの移動"><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%BF%A5%F3%A5%B9">インスタンス</a>の移動</h5> <p>過去に無料<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%BF%A5%F3%A5%B9">インスタンス</a>を使っていた関係で北米リージョンで<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%BF%A5%F3%A5%B9">インスタンス</a>を稼働していましたが、既に有料<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%BF%A5%F3%A5%B9">インスタンス</a>を利用しているため北米リージョンを選び続ける理由はありませんでした。</p><p>現在は東アジアリージョンで稼働させています。</p> </div> <div class="section"> <h5 id="Python-310-への移行"><a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a> 3.10 への移行</h5> <p>特に問題なくアップグレードを完了しました。</p> </div> <div class="section"> <h5 id="古いslackclientからslack-sdkへの移行">古いslackclientからslack-<a class="keyword" href="http://d.hatena.ne.jp/keyword/sdk">sdk</a>への移行</h5> <p>2022年9月に<a href="https://api.slack.com/changelog/2021-10-rtm-start-to-stop">Slack API&#x306E;rtm.start&#x304C;&#x5EC3;&#x6B62;&#x3055;&#x308C;&#x305F;</a>影響を受けて、pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>が稼働しなくなりました。</p><p>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>はrtmbotに依存している関係でslackclientというライブラリにも依存していましたが、既にどちらもメンテナンスされていません。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fpypi.org%2Fproject%2Fslackclient%2F" title="slackclient" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://pypi.org/project/slackclient/">pypi.org</a></cite></p><p>rtmbotは既にフォークしてメンテを続けていますが、slackclientはライブラリをそのまま使い続けていました。</p><p>この機会に新しいslack-<a class="keyword" href="http://d.hatena.ne.jp/keyword/sdk">sdk</a>に移行しました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgithub.com%2Fslackapi%2Fpython-slack-sdk" title="GitHub - slackapi/python-slack-sdk: Slack Developer Kit for Python" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://github.com/slackapi/python-slack-sdk">github.com</a></cite></p><p></p> </div> <div class="section"> <h5 id="新機能開発-新KudosBot">新機能開発: 新KudosBot</h5> <p>pyspa++と<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>に入力すると、`pyspa`のスコアがインクリメントされるというKudosという機能を持つ<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>を刷新しました。</p><p>これにより、以下の機能が追加されました。</p><p>(1) a+++のように記号を連続させた場合、連続した記号の数-1の数だけインクリメントあるいはデクリメントする</p><p>例えばpyspa++++++++++++++++++と連続してプラスを書くと、書いた分だけインクリメントできるようになりました。</p><br /> <p>(2) コードブロック(バックスラッシュ3つで囲まれた文字列)やコード(バックスラッシュ1つで囲まれた文字列)は無視する</p><p>コードを貼り付けるときのコードブロック内のインクリメントに反応するのが煩わしかったので反応しないようにしました。</p><br /> <p>(3) <a class="keyword" href="http://d.hatena.ne.jp/keyword/C%2B%2B">C++</a>を無視する</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/C%2B%2B">C++</a>のような頻繁に使われる用語を無視するようになりました。従来版ではこのおかげでCがやたらとインクリメントされていました。<br /> <br /> </p> </div> </div> <div class="section"> <h4 id="課題とTODO">課題とTODO</h4> <div class="section"> <h5 id="CD">CD</h5> <p>昨年に続きCDが課題です。</p><p>残るタスクは下記のとおりです。</p> <ul> <li>サービスのDocker化</li> <li>Cloud Buildでビルドするように変更</li> <li>Cloud Runから継続的にデプロイするよう変更</li> </ul> </div> <div class="section"> <h5 id="rtmbot依存の脱却">rtmbot依存の脱却</h5> <p>現在のpyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>はrtmbotをフォークして独自にメンテナンスを続けている状態ですが、あまり健全な状態ではありません。bolt-<a class="keyword" href="http://d.hatena.ne.jp/keyword/python">python</a>等への移行をしていく予定です。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgithub.com%2Fslackapi%2Fbolt-python" title="GitHub - slackapi/bolt-python: A framework to build Slack apps using Python" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;" loading="lazy"></iframe><cite class="hatena-citation"><a href="https://github.com/slackapi/bolt-python">github.com</a></cite></p><p></p> </div> <div class="section"> <h5 id="型アノテーションの導入">型<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%CE%A5%C6%A1%BC%A5%B7%A5%E7%A5%F3">アノテーション</a>の導入</h5> <p>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>は<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a> 2.x時代に作られた<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%AC%A5%B7%A1%BC%A5%B7%A5%B9%A5%C6%A5%E0">レガシーシステム</a>であるため型<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%CE%A5%C6%A1%BC%A5%B7%A5%E7%A5%F3">アノテーション</a>が導入されていませんでした。</p><p>例えば以下のコードを見てください。</p> <pre class="code lang-python" data-lang="python" data-unlink><span class="synStatement">class</span> <span class="synIdentifier">Node</span>(typing.NamedTuple): <span class="synIdentifier">type</span>: <span class="synIdentifier">str</span> value: typing.Union[<span class="synIdentifier">str</span>, <span class="synIdentifier">float</span>, <span class="synIdentifier">int</span>, typing.Sequence[<span class="synConstant">&quot;Node&quot;</span>], <span class="synConstant">&quot;Node&quot;</span>, <span class="synIdentifier">None</span>] pos: typing.Optional[<span class="synIdentifier">int</span>] image: <span class="synIdentifier">str</span> <span class="synStatement">if</span> node[<span class="synConstant">0</span>] == <span class="synConstant">&quot;FUNCTION&quot;</span>: <span class="synStatement">if</span> node[<span class="synConstant">1</span>][<span class="synConstant">0</span>][<span class="synConstant">0</span>] == <span class="synConstant">&quot;IDENTIFIER&quot;</span>: name = node[<span class="synConstant">1</span>][<span class="synConstant">0</span>][<span class="synConstant">1</span>] </pre><p>2行目と3行目の第2インデックスはNodeのリスト、それ以外は全てNodeになっています。</p><p>こんなコードが至る所にあります。</p><p><a href="https://mypy-lang.blogspot.com/2022/09/mypy-0981-released.html">mypy 0.981&#x304B;&#x3089;&#x518D;&#x5E30;&#x578B;&#x3092;&#x691C;&#x67FB;&#x3067;&#x304D;&#x308B;&#x3088;&#x3046;&#x306B;&#x306A;&#x3063;&#x305F;</a>ので上記のNodeを検査できるようになりました。</p><p>これで型<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%CE%A5%C6%A1%BC%A5%B7%A5%E7%A5%F3">アノテーション</a>の付与を進められるようになります。</p><p>今はほぼ毎日型<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%CE%A5%C6%A1%BC%A5%B7%A5%E7%A5%F3">アノテーション</a>をつけるという作業を進めています。<br /> <br /> </p> </div> <div class="section"> <h5 id="Slack依存の脱却">Slack依存の脱却</h5> <p>現在のpyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>では、slackAPIを直接叩いているところがあちこちにあったり、rtmbotの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3">プラグイン</a>のコードにロジックがかかれていたりなどして、Slack及びSlackライブラリに強く依存してしまっている状態です。</p><p>これらを完全に分離して、任意のサービスにpyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>を対応できるようにする予定です。</p> </div> <div class="section"> <h5 id="テストの整備">テストの整備</h5> <p>2016年の移行時はノーテストだったため、そのタイミングでテストは色々書きましたけど私の技術力が低かったこともあり、今見ると品質の悪いテストがたくさん入ってしまっています。</p><p>これらのテストを整備して、意味のあるテストを追加していく予定です。<br /> <br /> </p> </div> <div class="section"> <h5 id="パッケージ構造の改善">パッケージ構造の改善</h5> <p>rtmbotをフォークしたこともあり、トッ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%EC%A5%D9">プレベ</a>ルパッケージが以下のように複数存在しており、保守が煩雑になっています。</p> <ul> <li>rtmbot <ul> <li>rtmbotからフォークしたパッケージ</li> </ul></li> <li>plugins <ul> <li>rtmbot用の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3">プラグイン</a>を管理するパッケージだが、pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>独自のロジックが多く含まれてしまっている</li> </ul></li> <li>pyspabot <ul> <li>pyspabot独自のコマンドなどが管理されている</li> </ul></li> </ul><p>これを以下のように整理する予定です。</p> <ul> <li>pyspabot <ul> <li>platform: 各<a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>・チャットプラットフォームごとのパッケージをここで管理 <ul> <li>slack <ul> <li>rtmbot: 旧rtmbot</li> <li>plugins: 旧plugins。ただしpyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>独自のロジックは含めない</li> </ul></li> </ul></li> <li>core: 旧pyspabot</li> </ul></li> </ul> </div> </div> <div class="section"> <h4 id="よくある質問">よくある質問</h4> <div class="section"> <h5 id="いつ開発してますか">いつ開発してますか?</h5> <p>仕事の息抜きとか寝る前のちょっとしたすきま時間に開発してます。</p><p>1日10~30分程度です。</p> </div> <div class="section"> <h5 id="一から作り直した方がよくないですか">一から作り直した方がよくないですか?</h5> <p>まとまった時間取れないのでアプリを壊さないよう慎重に開発しています。</p> </div> <div class="section"> <h5 id="息抜きの割にはかなり作り方が本格的じゃないですか">息抜きの割にはかなり作り方が本格的じゃないですか?</h5> <p>息抜きだから他にしがらみなく自由に開発できます。</p> </div> <div class="section"> <h5 id="どれくらいコード書いてますか">どれくらいコード書いてますか?</h5> <p>この3ヶ月で4043行(+2478、-1565)でした。<br /> <br /> </p> </div> </div> <div class="section"> <h4 id="最後に">最後に</h4> <p>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>の開発には多くのメンバーが関わっています。現在の主なメンバーは以下のとおりです。</p> <ul> <li><a href="https://twitter.com/aodag">@aodag</a></li> <li><a href="https://twitter.com/moriyoshit">@moriyoshit</a></li> <li><a href="https://twitter.com/ymotongpoo">@ymotongpoo</a></li> <li><a href="https://twitter.com/takabow">@takabow</a></li> </ul><p>特に<a href="https://twitter.com/aodag">@aodag</a>は日々のコードレビューをこなし続けてくれていて、大変感謝しています。ありがとう!</p><br /> <p>明日の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%C9%A5%D9%A5%F3%A5%C8%A5%AB%A5%EC%A5%F3%A5%C0%A1%BC">アドベントカレンダー</a>は<a href="https://twitter.com/torufurukawa">@torufurukawa</a>です。</p> </div> shiumachi pyspa-bot移行作業報告 hatenablog://entry/13574176438037375520 2021-12-04T00:00:00+09:00 2021-12-04T08:49:32+09:00 Photo by Alex Kotliarskyi on Unsplash この記事はpyspa アドベントカレンダー 2021の4日目です。昨日は@kumagiでした。 pyspa-botとは? pyspa-botは、pyspaのSlackチャンネル内で稼働しているbotです。 様々な機能があって全てを説明することは難しいので省略します。一部の機能については以下の記事で触れているのでそちらを読んでください。(当時はvoluntas-botと呼んでいましたが、今はpyspa-botと呼ばれています) shiumachi.hatenablog.com 初期バージョンが開発されてから10年以上の歴… <p><figure class="figure-image figure-image-fotolife" title="Photo by Alex Kotliarskyi on Unsplash"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20211128/20211128154841.jpg" alt="f:id:shiumachi:20211128154841j:plain" width="1200" height="800" loading="lazy" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>Photo by <a href="https://unsplash.com/@frantic?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Alex Kotliarskyi</a> on <a href="https://unsplash.com/s/photos/programming?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a> </figcaption></figure></p> <p>この記事は<a href="https://adventar.org/calendars/6234">pyspa アドベントカレンダー 2021</a>の4日目です。昨日は<a href="https://twitter.com/kumagi">@kumagi</a>でした。</p> <h2>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>とは?</h2> <p>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>は、pyspaのSlackチャンネル内で稼働している<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>です。</p> <p>様々な機能があって全てを説明することは難しいので省略します。一部の機能については以下の記事で触れているのでそちらを読んでください。(当時は<code>voluntas-bot</code>と呼んでいましたが、今は<code>pyspa-bot</code>と呼ばれています)</p> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2015%2F12%2F18%2F114202" title="voluntas-bot の歴史を振り返る - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2015/12/18/114202">shiumachi.hatenablog.com</a></cite></p> <p>初期バージョンが開発されてから10年以上の歴史が経っています。</p> <p>2010年頃に<a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a> Appとして動作する<a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Bot">Bot</a>として初期バージョンが稼働しました。(当時のpyspaは<a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a>でチャットしていました)。これを便宜上バージョン1とします。</p> <p>2013年頃にSlackに移行したタイミングで<a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Bot">Bot</a>がSlackにも対応するようになりましたが、開発者の<a href="https://twitter.com/moriyoshit">@moriyoshit</a>が個人でメンテナンスしてたこともあり、落ちたら誰も起動できなくなるなど、保守上の問題がありました。</p> <p>そこで2016年に、私をはじめとした数名で、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a>依存をなくし、<a href="https://github.com/slackapi/python-rtmbot">rtmbot</a>をベースにしたチャットボットシステムに移行しました。これを便宜上バージョン2とします。</p> <h2>pyspa-<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a> ver.2 の現在の技術概要</h2> <ul> <li><a href="https://github.com/slackapi/python-rtmbot">python-rtmbot</a> ベースの<a class="keyword" href="http://d.hatena.ne.jp/keyword/bot">bot</a>サーバ</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a> 3.8 (ver.2 移行時は3.6だったが一度アップグレードを実施)</li> <li>DBは<a class="keyword" href="http://d.hatena.ne.jp/keyword/SQLite">SQLite</a>を使用(これはver.1時代のものをそのまま流用)</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/Google">Google</a> Cloudで稼働 (初期の頃は無料マイクロ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B9%A5%BF%A5%F3%A5%B9">インスタンス</a>を使っていたが今はn1-standard-1を使用)</li> <li>手動デプロイ。サービスはsystemdで管理</li> </ul> <h2>現在の課題と移行プロジェクトのスタート</h2> <p>一番大きな課題は、手動デプロイ運用のため、コードを修正してpushしても自動でデプロイされないことです。 これができないので開発や保守をスキマ時間に行うのがとても難しくなっています。</p> <p>2016年に構築した環境はもはや時代に合わなくなって来ているものも増えています。例えば<code>rtmbot</code>は既に開発が終了していますし、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a> 3.8 をはじめ、依存パッケージが最新版に追随できていなくなっています。</p> <p>また、Pyspa自体もSlackだけでなくDiscord等他のチャットプラットフォームを使い始めているということもあり、長期的には<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%EB%A5%C1%A5%D7%A5%E9%A5%C3%A5%C8%A5%D5%A5%A9%A1%BC%A5%E0">マルチプラットフォーム</a>に対応しなければなりません。</p> <p>そこで、環境移行をしようというプロジェクトが始まりました。</p> <p>以下の作業を実施して、自動デプロイできる環境を作ることをゴールとします。</p> <ul> <li>DBの<a class="keyword" href="http://d.hatena.ne.jp/keyword/SQLite">SQLite</a>からCloud <a class="keyword" href="http://d.hatena.ne.jp/keyword/SQL">SQL</a> (<a class="keyword" href="http://d.hatena.ne.jp/keyword/PostgreSQL">PostgreSQL</a>) への移行</li> <li>サービスのDocker化</li> <li>Cloud Buildでビルドするように変更</li> <li>Cloud Runから継続的にデプロイするよう変更</li> </ul> <p>作業の詳細に興味があれば、下記ドキュメントを読んでみてください。</p> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fcloud.google.com%2Frun%2Fdocs%2Fcontinuous-deployment-with-cloud-build" title="Continuous deployment from Git using Cloud Build" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://cloud.google.com/run/docs/continuous-deployment-with-cloud-build">cloud.google.com</a></cite></p> <p>この中で私が主に担当しているのがDB<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%A4%A5%B0%A5%EC%A1%BC%A5%B7%A5%E7%A5%F3">マイグレーション</a>の部分なので、この記事ではここの作業を中心に紹介します。</p> <h2>事前調査</h2> <p>最初に行うことは、現在のDBがどうなっているかの調査です。</p> <p>最初に作られた10年前の構成がベースになっていますが、かなりいい加減に移行した上にその後テーブルやフィールドを追加していってたので、色々と問題がありました。</p> <ul> <li>間違ったユニークキー制約がORM(SQLAlchemy)上でついているのに<a class="keyword" href="http://d.hatena.ne.jp/keyword/SQLite">SQLite</a>上では存在しない</li> <li>外部キー制約が入っているべきところに入っていない</li> <li>orphan recordがいたるところにある</li> </ul> <p>制約を正しく設定し直す必要がありますが、その際にアプリが正しく動作するかどうかも確認する必要があります。</p> <p>そして調べてみると、テストもかなりいい加減に作っていたため(書いたのは全部過去の自分ですが……)、これらのテストも正しく直す必要があることがわかりました。</p> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/SQLite">SQLite</a>と<a class="keyword" href="http://d.hatena.ne.jp/keyword/PostgreSQL">PostgreSQL</a>の仕様の違いについても調査する必要がありました。</p> <p>例えば<a href="https://www.sqlite.org/datatype3.html">SQLiteではBOOLはINTEGERでしかない</a>ので、移行するにあたっては適切に値を変換する必要があります。</p> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/PostgreSQL">PostgreSQL</a>ではシーケンス管理をしているため、移行の最後に正しいシーケンス値を与える必要もあります。</p> <h2>開発環境の作成</h2> <p>開発用のDocker環境もなかったので、まずDockerfileとdocker-compose.ymlを書いて移行テストをローカルで簡単に行えるようにしました。</p> <h2><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%A4%A5%B0%A5%EC%A1%BC%A5%B7%A5%E7%A5%F3">マイグレーション</a>ツールの作成</h2> <p>先の調査結果を元に、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%A4%A5%B0%A5%EC%A1%BC%A5%B7%A5%E7%A5%F3">マイグレーション</a>ツールを作成しました。Click + SQLAlchemyを使った、DBを読み込んで適切な変換処理して書き出すだけのシンプルなツールですが、先述の問題にたびたびぶつかったために結構手間取りました。</p> <p>スキマ時間で開発してたので、1ヶ月はかかったと思います。</p> <h2>次のステップ</h2> <p>DB<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%A4%A5%B0%A5%EC%A1%BC%A5%B7%A5%E7%A5%F3">マイグレーション</a>の準備が完了したので、あとは自動デプロイの準備が完了すれば移行はできるはずです。</p> <p>移行完了したら、最初に着手するのはパッケージ等のバージョンの更新の予定です。</p> <p>最新版に対応して、それからようやく新規の開発に着手できるようになるでしょう。</p> <p>明日の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%C9%A5%D9%A5%F3%A5%C8%A5%AB%A5%EC%A5%F3%A5%C0%A1%BC">アドベントカレンダー</a>は<a href="https://twitter.com/rokujyouhitoma">@rokujyouhitoma</a>です。</p> shiumachi 営業から開発まで全部やる hatenablog://entry/26006613802474163 2021-08-29T14:12:55+09:00 2021-08-29T14:12:55+09:00 この1年くらいずっと自社サービスの開発に関わっています。(リリースしたのは半年前)前職でも製品のプロトタイプ開発に関わったりしていましたが、営業もマーケティングも自分が行っているわけではなく、開発も単なるプロトタイピングなので業務コードではないし、プロダクト開発という意味ではかなり限定的な仕事でした。今回は、営業、マーケティング、開発など、サービス運営に必要なタスク全てに関わっています。(一応念のため言っておくと一人で100%全部やってるわけではないです。あくまでチームの一員として全てのパートに関わっているというだけ) サポート、プリセールス、ポストセールスとキャリアを歩んできましたが、そのキ… <p>この1年くらいずっと<a href="https://kenall.jp/">&#x81EA;&#x793E;&#x30B5;&#x30FC;&#x30D3;&#x30B9;</a>の開発に関わっています。(リリースしたのは半年前)</p><p>前職でも<a href="https://shiumachi.hatenablog.com/entry/2019/12/23/132402">&#x88FD;&#x54C1;&#x306E;&#x30D7;&#x30ED;&#x30C8;&#x30BF;&#x30A4;&#x30D7;&#x958B;&#x767A;&#x306B;&#x95A2;&#x308F;&#x3063;&#x305F;&#x308A;&#x3057;&#x3066;&#x3044;&#x307E;&#x3057;&#x305F;</a>が、営業も<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>も自分が行っているわけではなく、開発も単なるプロトタイピングなので業務コードではないし、プロダクト開発という意味ではかなり限定的な仕事でした。</p><p>今回は、営業、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>、開発など、サービス運営に必要なタスク全てに関わっています。(一応念のため言っておくと一人で100%全部やってるわけではないです。あくまでチームの一員として全てのパートに関わっているというだけ)</p><br /> <p>サポート、プリセールス、ポストセールスとキャリアを歩んできましたが、そのキャリアを通してずっと悩み続けていたのが「なぜお客様の課題を解決する製品やソリューションを提供できないのか」というものでした。</p><p>サポート時代はプリセールスやポストセールスと違い製品軸の技術的課題解決しかできないことに苦労していて、もっと幅広いアプローチの仕方で課題解決したいと考えていました。</p><p>プリセールスやポストセールスのときは、お客様だけでなく、営業、プロダクトマネージャー、開発など、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%C6%A1%BC%A5%AF%A5%DB%A5%EB%A5%C0%A1%BC">ステークホルダー</a>全体での課題の共有や解決策の共有などに苦心していました。</p><p>結局お客様の課題の解決がうまくできないことも多く、本当に正しく価値を出せているのか分からなくなることもありました。</p><br /> <p>結果、たどりついた結論が「じゃあ営業から開発まで全部自分でやればいいじゃないか」というものでした。</p><p>自分でお客様の声を聞き自分で開発するのなら、そこにミスコミュニケーションは発生しないはずです。</p><br /> <p>そこでネックになるのが開発力です。</p><p>今までの自分のキャリアでは、業務サービスとして提供するコードを書くには力が不足していました。</p><p>なので、とにかく開発力を短期間で上げられるように以下のようなことに特に気をつけて努力していました。<br /> <br /> </p> <ul> <li>コードを読む。どの行を読んでもきちんと意味が説明できるようにする。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B5%A1%BC%A5%C9%A5%D1%A1%BC%A5%C6%A5%A3">サードパーティ</a>ライブラリのコードも必要に応じて追いかける。</li> <li>公式ドキュメントを読む。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B5%A1%BC%A5%C9%A5%D1%A1%BC%A5%C6%A5%A3">サードパーティ</a>ライブラリが使われているコードが出てきたらその挙動を正しく理解する。</li> <li>速く書く。速く書くというと「コピペとかしていい加減に書く」ように聞こえるが、そういう適当な書き方すると大抵の場合もっと時間がかる。頭をフル回転させて素早く実装を設計して書き出していくと、結果としてコードがきれいになる。</li> <li>PRにはきちんと説明を書く。どういうPRなのか、何をしようとしているのか、なぜこういう実装になっているのか、なぜこのPRを出そうとしたのかなどを書く。必要に応じて別途設計書を書く。</li> <li>テストをきちんと書く。きちんと書くとは、上記PRに書いた内容をテストしてることがわかるテストを書くということ。</li> <li>テストデータは時間をかけて作る。テストデータが正しくないと全部の結果がおかしくなる。</li> <li>コメントをきちんと書く。きちんと書くとは、コードから読み取れないコンテキストをコメントとして残しておくということ。</li> <li>レビューの指摘は、なぜその指摘なのかを一言一句ちゃんと理解してから指摘を直す。</li> <li>レビューするときは、レビュー対象のコードが何をするものなのかを自分が説明できるレベルまで読み込む。</li> <li>テストだけでなく、自分の手できちんと動作確認をして、期待した挙動に本当になっているのかを確認する。</li> </ul><p><br /> その結果1年でそこそこコードを書けるようにはなった気がします。</p><br /> <p>営業から開発まで全部できるようになると以下のような流れで仕事ができるようになります。</p> <ul> <li>お客様と話をして、解決したい課題を確認する</li> <li>手元でPoCのコードを書いて、課題を解決できるかを確認する</li> <li>新規開発で解決できることがわかったら、設計を書く</li> <li>設計のレビューを受けたら開発する</li> <li>開発したらお客様に見せて、課題解決ができているか確認する</li> <li>できていない場合は再設計、再修正する</li> <li>完成したらリリースする</li> </ul><p>「お客様の課題を本当に解決できているのかわからないけど開発しなければならない」といった開発サイドの悩みや、「開発側がお客様のペインをきちんと理解してくれない」といった営業サイドの悩みが一切ないというのが大きいです。</p><p>デメリットというか懸念点としては、こういう何でも屋的スキルセットは世の中の需要がないので今後のキャリアにはあまりプラスになりそうにないということですね。</p><p>どれか一つの専門性を高めていった方が転職市場での需要はあると思います。</p><br /> <p>サービスとしては始まったばかりなのでまだまだ課題はたくさんありますし、自分個人としても営業、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>、開発など全ての方面で能力をもっと高めていかないといけないので、まだまだどちらも発展途上の身ではありますが、近況報告を兼ねて書き出してみました。</p> shiumachi デッドライン: 「なれる!プロジェクトマネージャー」 hatenablog://entry/26006613683166371 2021-01-26T11:46:15+09:00 2021-01-26T11:46:15+09:00 デッドライン作者:トム デマルコ発売日: 2013/08/23メディア: Kindle版voluntasさんのおすすめ本にあったのですが、読んだことなかったので読んでみました。 TL;DR デッドライン、「七人の侍的な感じで集まったドリームチームのプロジェクトに突如クソ上司が登場してめちゃくちゃに引っ掻き回すけど最後はデウスエクスマキナがいい感じにクソ上司を退場させてプロジェクトが成功する」って内容のITプロジェクト管理ラノベだった— Sho Shimauchi (@shiumachi) 2021年1月25日 デッドライン読んで一番印象に残ってるのが「やっぱデスマの根本原因となるクソ上司にクス… <p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00EQ25BBQ/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41G+zM8rhdL.jpg" class="hatena-asin-detail-image" alt="デッドライン" title="デッドライン"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00EQ25BBQ/shiumachijigo-22/">デッドライン</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%20%A5%C7%A5%DE%A5%EB%A5%B3" class="keyword">トム デマルコ</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2013/08/23</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><a href="https://voluntas.medium.com/%E7%8B%AC%E5%AD%A6%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%92%E5%AD%A6%E3%82%93%E3%81%A7%E3%81%8D%E3%81%A6%E8%AA%AD%E3%82%93%E3%81%A7%E8%89%AF%E3%81%8B%E3%81%A3%E3%81%9F%E6%9C%AC-cff7a7e4db1b">voluntas&#x3055;&#x3093;&#x306E;&#x304A;&#x3059;&#x3059;&#x3081;&#x672C;</a>にあったのですが、読んだことなかったので読んでみました。</p> <div class="section"> <h4>TL;DR</h4> <p><blockquote data-conversation="none" class="twitter-tweet" data-lang="ja"><p lang="ja" dir="ltr">デッドライン、「<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%B7%BF%CD%A4%CE%BB%F8">七人の侍</a>的な感じで集まったドリームチームのプロジェクトに突如クソ上司が登場してめちゃくちゃに引っ掻き回すけど最後は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A6%A5%B9%A5%A8%A5%AF%A5%B9%A5%DE%A5%AD%A5%CA">デウスエクスマキナ</a>がいい感じにクソ上司を退場させてプロジェクトが成功する」って内容のITプロジェクト管理<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%CE%A5%D9">ラノベ</a>だった</p>&mdash; Sho Shimauchi (@shiumachi) <a href="https://twitter.com/shiumachi/status/1353511999137673218?ref_src=twsrc%5Etfw">2021年1月25日</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> </p><p><blockquote data-conversation="none" class="twitter-tweet" data-lang="ja"><p lang="ja" dir="ltr">デッドライン読んで一番印象に残ってるのが「やっぱデスマの根本原因となるクソ上司にクスリを盛って始末できる優秀なパートナーって最高だなあ」ってことなので、多分本の重要なパートを少しも習得できてない</p>&mdash; Sho Shimauchi (@shiumachi) <a href="https://twitter.com/shiumachi/status/1353513647222362112?ref_src=twsrc%5Etfw">2021年1月25日</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> <br /> <br /> </p> </div> <div class="section"> <h4>概要</h4> <p>デッドラインは、トム・デマルコの書いた、プロジェクト管理についての小説です。小説の体を借りたプロジェクト管理についての専門書、と書くべきなのかもしれませんが、正直、専門書と呼ぶには内容が体系だっておらず、概念的・思想的な話が多いので、「専門的な話を多く含む小説」と認識した方がいい気はします。<br /> <br /> </p> </div> <div class="section"> <h4>あらすじ</h4> <p>米国大企業のITプロジェクトマネージャー、ウェブスター・<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>は、謎の美女ラークサー・フーリハンに誘拐され、東欧の小国モロビアでソフトウェア開発プロジェクトの責任者として働くことになります。この国は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%BD%A5%D5%A5%C8%A5%A6%A5%A7%A5%A2%BB%BA%B6%C8">ソフトウェア産業</a>で世界トップになることを目標としていて、そのために6つのソフトウェアを開発しようとしています。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>には、1500名の優秀なソフトウェアエンジニアが与えられ、それらの開発プロジェクトを2年弱で成功させるというミッションが与えられます。この膨大なプロジェクトを達成するにあたり、様々な仲間が次々に加わり、それぞれの専門分野に応じた助言を与えていくという形式で話は進んでいきます。例えば、風変わりな女性だけどプロジェクトマネジメントの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%DA%A5%B7%A5%E3">スペシャ</a>リストのベリンダ・バインダは、プロジェクトマネージャの面接におけるアド<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D0%A5%A4%A5%B9">バイス</a>を<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>に与えていきます。</p> <blockquote> <p> 「わたしたちが求めているのは、世界を知ったらそれを変えていく、自分や部下が目指しているものに合わせて変えていくという意識を持っている管理者よ」 (p.67)</p> </blockquote> <p>ラークサーによって誘拐された人は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>だけではありません。ヘクター・リッツォーリ博士はプロジェクト管理の権威ですが、ラークサーによって強制的に旅程を変更させられて、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>と議論するよう仕向けられます。博士もまた、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>に助言していきます。</p> <blockquote> <p>ソフトウェア開発はリスクの多い仕事だ。その仕事を管理することは、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EA%A5%B9%A5%AF%B4%C9%CD%FD">リスク管理</a>を実践することだと言っていい(p.82)</p> </blockquote> <p>その他にも、モロビアの大総統NNL、モロビアの将軍ガブリエル・マルコフ、プロジェクト分析モデルについての若き研究者アブドゥール・ジャミッド博士など、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>のもとに優秀な人物たちが集まってきて、プロジェクトは順調に進むかのように見えます。</p><p>ところが、総統NNL不在のときに、内務大臣アレア・ベロックがプロジェクトを危機に陥れます。ITに限らず、なんらかのプロジェクトに携わった経験がある人なら、「現場のことは一切わかろうとせず、金の話など自分の都合だけでプロジェクトを引っ掻き回す、厄介なボス」という存在を目にしたことがあるでしょう。ベロックは、そうしたプロジェクトを破綻させるトップの権化のような存在です。彼が行っていく悪行には以下のようなものがあります。</p> <ul> <li>プロジェクトの締め切りを「リリースが1日遅れるたびに自分が損をするから」という理由だけで一方的に半年短縮する</li> <li>その代わりに、わざと小規模にしていたチームに大量に人員を投下してやる、といって実際に人員を大幅に増やしてしまう(人月の神話を読んだことがあれば、これがどれほど愚かしい行為かわかるでしょう)</li> <li>プロジェクトの真っ最中に、<a href="https://ja.wikipedia.org/wiki/%E8%83%BD%E5%8A%9B%E6%88%90%E7%86%9F%E5%BA%A6%E3%83%A2%E3%83%87%E3%83%AB%E7%B5%B1%E5%90%88">CMMI</a> (本文中では<a class="keyword" href="http://d.hatena.ne.jp/keyword/CMM">CMM</a>だがこれは1997年に廃止)の等級を上げるなどして標準化を無理やり進めようとする</li> <li>当初の契約になかった第7のプロジェクト(それも、航空管制システムを2年でス<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%C3%A5%C1">クラッチ</a>から開発するという恐ろしい案件)に無理やり<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%B5%A5%A4">アサイ</a>ンする</li> <li>エンジニア達に残業をさせないようしていたところ、残業時間が平均2時間以下ということに憤慨し、「週80時間でも働かせろ」と言い始める</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>がなんとか半年短縮された締切に間に合うよう調整を進めているのを見て、さらに1ヶ月締切を短縮させる</li> <li>その締切に間に合わせるため、週7日労働を命令する</li> </ul><p>どれ一つ取っても、想像するだけで身の毛がよだつような恐ろしい行為です。この悪役ベロックによってプロジェクトを引っ掻き回されつつも、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%E0%A5%AD%A5%F3%A5%B9">トムキンス</a>はさらなる仲間を獲得しながらプロジェクトを進めていきます。</p><p>最終的には、長期の出張から戻ったラークサーがベロックをあっさりと排除することによって、プロジェクトは順調に進み始め、ついにはリリースにこぎつけることに成功します。<br /> <br /> </p> </div> <div class="section"> <h4>所感</h4> <p>プロジェクト管理について幅広いトピックをカバーしていて、プロジェクト管理をしたことがなくても、メンバーの一員として何らかのプロジェクトに関わったことがある人であれば、「あーこういうのあるよね」と楽しめる内容がもりだくさんです。文章は読みやすいしストーリーは単純で、1日でサクッと読めます。ITの専門知識がなくても読めると思います。知っていた方が楽しいのは事実ですが、なにせ原著の出版が1997年ということもあり、ITの描写についてはかなり古臭いです。ソフトウェアをCD-ROMを焼いて販売するとか、今の20代より若い世代だと理解できないかもしれません。</p><p>冒頭に書いた通り、プロジェクト管理の専門書とみなすにはかなり難があります。どのトピックも触りしか説明しておらず、アド<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D0%A5%A4%A5%B9">バイス</a>の根拠や参考文献などが示されていないので、インデックスとしても使いづらいです。純粋にこういう小説だと割り切って楽しんで読むのがいい気がします。個人的には、プロジェクト管理に役立つというよりは、悪役アレア・ベロックの所業を読んで過去のトラウマを蘇らせて楽しむための本という印象でした。</p><p>間違ってることとかデタラメを書いてるわけではないので、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%F3%A5%C7%A5%E2%CB%DC">トンデモ本</a>というわけでは全くありません。あくまで、他の専門書を既に読了していたり、過去の経験から十分学んでいる人が読むと、復習にはなっても新たな知見を得るには至らず、また入門者が読んでもさらなる勉強の足がかりとするには心もとない、という感想です。</p><p>既にプロジェクト経験が豊富であるか、プロジェクト管<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%FD%B7%D0">理経</a>験をしたことがある人が気軽に読むか、あるいはまだ業界に入って間もない人で、プロジェクト管理について雰囲気をさらっと学びたいという人にはいいかもしれません。</p><p>ストーリーは単純ではありますが、登場人物や展開が割とご都合主義な部分もあり、自分の感覚としては<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%CE%A5%D9">ラノベ</a>を読んでる感覚に近かったです。登場人物などを<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%ED%A1%BC%A5%AB%A5%E9%A5%A4%A5%BA">ローカライズ</a>して、ITの描写を現代風にアレンジした<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%CE%A5%D9">ラノベ</a>とかが出版されたら読みたいかもしれないです。</p> </div> shiumachi 今年こそは自宅トレで痩せたい人のための、AIパーソナルトレーナーFreeletics入門(2021年版) hatenablog://entry/26006613676969911 2021-01-11T18:26:49+09:00 2021-01-11T18:29:00+09:00 この記事は去年書いた記事の改訂版です。2020年版はこちら通勤がなくなったり外出を控えたりして、運動不足になった人はたくさんいると思います。自宅でできるトレーニングアプリ Freeletics を使って、今年こそ運動不足を解消しましょう。Freeleticsは、ユーザにとって最適なトレーニングプランを提供してくれる、いわゆるAIパーソナルトレーナーアプリです。数分単位の短い時間にきついトレーニングをこなす、いわゆる高強度インターバルトレーニング (HIIT) をベースにしています。Freeleticsは、 自宅でできる 短時間 自分だけのトレーニングメニューを作ってくれる と、痩せたい、筋肉つ… <p>この記事は去年書いた記事の改訂版です。2020年版は<a href="https://shiumachi.hatenablog.com/entry/2020/01/26/174818">&#x3053;&#x3061;&#x3089;</a></p><p>通勤がなくなったり外出を控えたりして、運動不足になった人はたくさんいると思います。自宅でできるト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グアプリ <a href="https://www.freeletics.com/ja/">Freeletics</a> を使って、今年こそ運動不足を解消しましょう。</p><p>Freeleticsは、ユーザにとって最適なト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グプランを提供してくれる、いわゆるAI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリです。数分単位の短い時間にきついト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをこなす、いわゆる<a href="https://ja.wikipedia.org/wiki/%E9%AB%98%E5%BC%B7%E5%BA%A6%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%90%E3%83%AB%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0">&#x9AD8;&#x5F37;&#x5EA6;&#x30A4;&#x30F3;&#x30BF;&#x30FC;&#x30D0;&#x30EB;&#x30C8;&#x30EC;&#x30FC;&#x30CB;&#x30F3;&#x30B0;</a> (HIIT) をベースにしています。</p><p>Freeleticsは、</p> <ul> <li>自宅でできる</li> <li>短時間</li> <li>自分だけのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューを作ってくれる</li> </ul><p>と、痩せたい、筋肉つけたいけど忙しい、という人に最適な特長を持っています。</p><p>このブログでも何度か紹介していますので、興味のある方は過去記事も読んでみてください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F05%2F25%2F220052" title="AIパーソナルトレーナーFreeleticsを使って、自宅で毎日トレーニングしよう - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/05/25/220052">shiumachi.hatenablog.com</a></cite><br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F09%2F15%2F131353" title="Freeleticsで半年間自宅トレーニングしたら食制限なしで6kg痩せた - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/09/15/131353">shiumachi.hatenablog.com</a></cite><br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F06%2F09%2F070000" title="在宅勤務で自宅トレーニングを長く続けるための7つのコツ - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/06/09/070000">shiumachi.hatenablog.com</a></cite></p><p></p> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを始めるにあたり必要なもの</h4> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グマットは必須といっていいレベルなので買いましょう。私はALINCOのマットを使っています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0007TT7I0/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/315HtE1AQpL.jpg" class="hatena-asin-detail-image" alt="ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め" title="ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0007TT7I0/shiumachijigo-22/">ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2012/04/05</li><li><span class="hatena-asin-detail-label">メディア:</span> スポーツ用品</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グウェアもほぼ必須です。適当に自分に合ったものを買いましょう。最初はあまり汗をかかないだろうし、毎日ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グできないでしょうから1着でもいいと思いますが、最終的に3着ほどあると便利です。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07SYY1BQ7/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41KfXEi7pwL.jpg" class="hatena-asin-detail-image" alt="[アンダーアーマー] テック ショートスリーブ Tシャツ(トレーニング) 1358553 メンズ 036 日本 LG (日本サイズL相当)" title="[アンダーアーマー] テック ショートスリーブ Tシャツ(トレーニング) 1358553 メンズ 036 日本 LG (日本サイズL相当)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07SYY1BQ7/shiumachijigo-22/">[アンダーアーマー] テック ショートスリーブ Tシャツ(トレーニング) 1358553 メンズ 036 日本 LG (日本サイズL相当)</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2019/06/07</li><li><span class="hatena-asin-detail-label">メディア:</span> ウェア&amp;シューズ</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0725KF22F/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41yBAIe1+uL.jpg" class="hatena-asin-detail-image" alt="[アンダーアーマー] MK-1 ショーツ(トレーニング) 1306434 メンズ BLK/BLK/SLG 日本 XL (日本サイズL相当)" title="[アンダーアーマー] MK-1 ショーツ(トレーニング) 1306434 メンズ BLK/BLK/SLG 日本 XL (日本サイズL相当)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0725KF22F/shiumachijigo-22/">[アンダーアーマー] MK-1 ショーツ(トレーニング) 1306434 メンズ BLK/BLK/SLG 日本 XL (日本サイズL相当)</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2019/04/26</li><li><span class="hatena-asin-detail-label">メディア:</span> スポーツ用品</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グシューズは、最初はなくてもいいかもしれませんがそのうち揃えた方がいいでしょう。私も最近まで裸足でト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしていたのですが、足の裏の皮がボロボロになってきたので最近はシューズを履いてト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07CTN73J4/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/31X3CJU7pGL.jpg" class="hatena-asin-detail-image" alt="[アンダーアーマー] TR96(トレーニングシューズ/Dフィット) 3021296 メンズ Black 25.5 cm" title="[アンダーアーマー] TR96(トレーニングシューズ/Dフィット) 3021296 メンズ Black 25.5 cm"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07CTN73J4/shiumachijigo-22/">[アンダーアーマー] TR96(トレーニングシューズ/Dフィット) 3021296 メンズ Black 25.5 cm</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span> ウェア&amp;シューズ</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>フィットネスバンドは、必須ではありませんが、心拍数を計測するのに便利です。脂肪燃焼に有効な運動を行うには心拍数の維持が重要なので、持っている人は使ってみてもいいでしょう。私はずっとFitbit を愛用しています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B085M5SXVS/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/311ThQv0JoL.jpg" class="hatena-asin-detail-image" alt="Fitbit Charge4 GPS搭載フィットネストラッカー Black/Black L/Sサイズ [日本正規品] FB417BKBK-FRCJK" title="Fitbit Charge4 GPS搭載フィットネストラッカー Black/Black L/Sサイズ [日本正規品] FB417BKBK-FRCJK"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B085M5SXVS/shiumachijigo-22/">Fitbit Charge4 GPS搭載フィットネストラッカー Black/Black L/Sサイズ [日本正規品] FB417BKBK-FRCJK</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2020/04/14</li><li><span class="hatena-asin-detail-label">メディア:</span> エレクトロニクス</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h4>購入方法</h4> <p> <a href="https://www.freeletics.com/ja/">Freeletics</a>は有料のアプリです。年間1万円の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B5%A5%D6%A5%B9%A5%AF%A5%EA%A5%D7%A5%B7%A5%E7%A5%F3">サブスクリプション</a>です。<br /> 3ヶ月プランや6ヶ月プランもあるので、続ける自信がないという人はこちらを購入してもいいです。14日間は返金に応じてくれるので、試しに買ってみて、合わなかったら返金しましょう。</p><p>Freeleticsを始めてみたいという人は、下記のリンクから購入すれば20%オフで買えます。 </p><p><a href="https://www.freeletics.com/r/124871187">https://www.freeletics.com/r/124871187</a></p><p>Coach と Nutrition (食生活改善)の二種類が出てきますが、Nutrition は自分は試していません。運動だけなら Coach で十分と思いますが、誰か Nutrition を試した人がいたら感想教えてください。<br /> <br /> </p> </div> <div class="section"> <h4>インストール</h4> <p>購入したら自分の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%DE%A5%DB">スマホ</a>にアプリをインストールして、ログインします。</p><p><div style="text-align: left;" id="appreach-box"><img src="https://is5-ssl.mzstatic.com/image/thumb/Purple113/v4/62/d8/8f/62d88fd9-1972-8fd3-e80b-3748ff164e71/source/512x512bb.jpg" alt="Freeletics: トレーニング&フィットネス" style="float: left; margin: 10px; width: 25%; max-width: 120px; border-radius: 10%;" id="appreach-image"><div class="appreach-info" style="margin: 10px;"><div id="appreach-appname">Freeletics: ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ&フィットネス</div><div id="appreach-developer" style="font-size: 80%; display: inline-block;">開発元:<span id="appreach-developerurl">Freeletics <a class="keyword" href="http://d.hatena.ne.jp/keyword/GmbH">GmbH</a></span></div><div id="appreach-price" style="font-size: 80%; display: inline-block;">無料</div><div class="appreach-powered" style="font-size: 80%; display: inline-block;">posted with<a href="http://mama-hack.com/app-reach/" title="アプリーチ" target="_blank" rel="nofollow">アプリーチ</a></div><div class="appreach-links" style="float: left;"><div id="appreach-itunes-link" style="display: inline-block;"><a id="appreach-itunes" href="https://itunes.apple.com/jp/app/freeletics-%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0-%E3%83%95%E3%82%A3%E3%83%83%E3%83%88%E3%83%8D%E3%82%B9/id654810212?mt=8&amp;uo=4" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/itune_ja.svg" style="height: 40px; width: 135px;"></a></div><div id="appreach-gplay-link" style="display: inline-block;"><a id="appreach-gplay" href="https://play.google.com/store/apps/details?id=com.freeletics.lite" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/gplay_ja.png" style="height: 40px; width: 134.5px;"></a></div></div></div><div class="appreach-footer" style="margin-bottom: 10px; clear: left;"></div></div></p><p></p> </div> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グジャーニーを選ぶ</h4> <p>まず、運動の目的を選んでいきます。「脂肪を燃やす」「筋肉を鍛える」など、いくつかの目的のうち上位3つを選択します。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111154617.png" alt="f:id:shiumachi:20210111154617p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>次に、どういうスタイルで運動したいかを選択していきます。自重トレ、バーベルを使ったウェイトトレ、ランニングの三択です。自宅トレをやるなら「自分の体重を使う」を選びます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111155731.png" alt="f:id:shiumachi:20210111155731p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グジャーニーを選んでいきます。ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グジャーニーというのは6週間あるいは12週間のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グコースです。自分の目的に合わせて選んでいきます。途中から変更できるので、適当に選んでから後で変更してもいいでしょう。先程の質問に基づいておすすめのジャーニーが最初に紹介されますが、もし迷ったら「スタートストロング(男性)/スタートスマート(女性)」という6週間の初級コースを選べばいいです。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111155908.png" alt="f:id:shiumachi:20210111155908p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160007.png" alt="f:id:shiumachi:20210111160007p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160025.png" alt="f:id:shiumachi:20210111160025p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <p>次に、どういう環境・スケジュールでト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを行うかを入力していきます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160228.png" alt="f:id:shiumachi:20210111160228p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>まずト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ日数ですが、これは週2~5日の間で選ぶことができます。ここで決めた曜日通りに運動する必要はないので、自分のペースでやるといいです。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160255.png" alt="f:id:shiumachi:20210111160255p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>次に、利用可能なト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ器具を選択していきます。なくても全く問題ないですが、あるとト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューの幅が広がります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160322.png" alt="f:id:shiumachi:20210111160322p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160338.png" alt="f:id:shiumachi:20210111160338p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>2020年のアップデートから大幅に利用可能な器具が増えました。</p> <ul> <li>低めのバー</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%B8%A5%B9%A5%BF">レジスタ</a>ンスバンド</li> <li>懸垂バー</li> <li>ポール</li> <li>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グボックス</li> <li>壁</li> <li>縄跳び</li> <li>フォームローラー</li> <li>棒、タオル、もしくは紐</li> </ul><p>最後に、いくつかのオプションを選択していきます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111160228.png" alt="f:id:shiumachi:20210111160228p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <p>「スプリントやランニングはなし」を選択すると、スプリント(<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%C3%A5%B7%A5%E5">ダッシュ</a>)やランニングがメニューに組み込まれなくなります。自宅でト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グする場合は必ず選択しましょう。</p><p>「限られたト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グスペース」を選択すると、20mカエル飛びのような、短距離の移動を含む運動がメニューに組み込まれなくなります。これも必ず選択しましょう。</p><p>「静かにト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グする」を選択すると、ジャンプのように、足音が響くような運動がメニューに組み込まれなくなります。マンション住まいなど、音が気になる人は選択しましょう。</p><br /> <p>これで、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの準備は完了です。<br /> <br /> </p> </div> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グする</h4> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューから、今日のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを選択します。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111175019.png" alt="f:id:shiumachi:20210111175019p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>1日のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは、ウォーミングアップ→ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ→クールダウンという流れで行います。1回のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは、初級だと20分程度、中級コースだと30分程度に調整されています。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111175053.png" alt="f:id:shiumachi:20210111175053p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グで行う運動にはビデオが付属しているので、それを見ながら正しいフォームで体を動かしていきます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111175138.png" alt="f:id:shiumachi:20210111175138p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを行ったあとにフィードバックを入力します。このフィードバックによって、今後のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ内容が変わります。「全く休まずできたら右端、休憩したけどなんとか完走したら真ん中、途中でリタイアしたら左端」くらいに覚えておけばいいでしょう。<br /> <br /> </p> </div> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グのTips</h4> <div class="section"> <h5>水分補給を欠かさない</h5> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ前は必ずコップ1杯の水を飲みましょう。ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ中も常に水分補給ができる状態にしておきましょう。ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グが終わったら後もコップ1杯の水を飲みましょう。</p> </div> <div class="section"> <h5>ウォーミングアップ・クールダウンはサボらない</h5> <p>ケガの防止にもなりますのでサボらずやりましょう。<br /> <br /> </p> </div> </div> <div class="section"> <h4>こんなときどうする?</h4> <div class="section"> <h5>○○のため、今日は運動できない</h5> <p>忙しい、筋肉痛が残ってる、今日は出張等でいつもと違う場所にいる、など、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしない理由は色々あるかと思います。</p><p>Freeleticsは、そういうときでもト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グできるように、その日限りのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グのカスタマイズを行うことができます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20210111/20210111175346.png" alt="f:id:shiumachi:20210111175346p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>「器具がない」を選択すると、器具を使う運動が登場しなくなります。</p><p>「静かにト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グする必要がある」を選択すると、ジャンプのように、足音が響くような運動がメニューに組み込まれなくなります。</p><p>「違うセッションを行いたい」を選択すると、別パターンのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューが登場します。</p><p>「特定の体の部位を除外したい」を選択すると、その部位を使う運動が登場しなくなります。</p><p>「難易度を変更したい」を選択すると、現在の難易度を標準として、全5段階で難易度調節ができます。いつもよりガッツリやりたいという場合にも使えます。</p><p>「時間がない」を選択すると、15分コースや30分コースなどを選択できるようになります。<br /> <br /> </p> </div> <div class="section"> <h5>家の中だけだと飽きる</h5> <p>ランニング用のジャーニーがあるのでそちらを選択しましょう。<br /> <br /> </p> </div> <div class="section"> <h5>自重トレだけだと飽きる</h5> <p>2020年のアップデートで、縄跳びを使ったト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グなど、器具を使った運動が色々追加されました。気分転換したいという人はこちらをやってみてもいいでしょう。<br /> <br /> </p> </div> <div class="section"> <h5>とにかくやりたくない</h5> <p>そういう日もあります。おとなしく休みましょう。<br /> <br /> </p> </div> <div class="section"> <h5>なんか身体が痛い</h5> <p>筋肉痛の場合は、特定部位だけ除外するオプションを追加してト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしましょう。全身筋肉痛でどうしてもできない場合は休みましょう。</p><p>もし筋肉痛でない、関節や骨の痛みを感じた場合はト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを中断しましょう。怪我が一番の大敵です。<br /> <br /> </p> </div> </div> <div class="section"> <h4>困ったら公式サポートに質問する</h4> <p>アプリとしては比較的安定しており、落ちることはありませんが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%BF%A1%BC%A5%D5%A5%A7%A5%A4%A5%B9">インターフェイス</a>が使いづらかったり、訳が間違ってたり、ほしい機能がなかったりなど、色々と気になることが出てきます。そんなときは公式サポートに質問しましょう。プロフィール→設定→お問い合わせから問い合わせできます。日本語も対応していますので安心して質問できます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126173422.png" alt="f:id:shiumachi:20200126173422p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>その他</h4> <p>実際にFreeleticsを使っていて気づいたこと、知ったことなどを共有しておきます。</p> <div class="section"> <h5><a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>連携は<a class="keyword" href="http://d.hatena.ne.jp/keyword/Instagram">Instagram</a>しかない</h5> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>連携はかなり貧弱です。<a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>周りを強化してほしい場合は機能要望をどんどん出していきましょう。<br /> <br /> </p> </div> <div class="section"> <h5><a class="keyword" href="http://d.hatena.ne.jp/keyword/API">API</a>が公開されていない</h5> <p>個人的にこれはかなり残念です。サポートに問い合わせしましたけど現在提供予定はないとのこと。ほしい場合は機能要望を出しましょう。<br /> <br /> </p> </div> </div> <div class="section"> <h4>関連記事</h4> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F12%2F07%2F080000" title="Freeleticsで神に挑む - ゴッドワークアウト一巡り - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/12/07/080000">shiumachi.hatenablog.com</a></cite></p> </div> shiumachi 2020年まとめ hatenablog://entry/26006613672227458 2020-12-31T11:32:00+09:00 2020-12-31T11:33:44+09:00 最近自分のことについてブログに書く時間を取れてなかったので、簡単に書いておきます。 仕事 2020年3月までLuminosoという会社で働いていました。1年ちょっとと短い期間ではありましたが、新製品のプロトタイプの開発に携わったりと、今までにない新しい試みをいくつかできたのでとてもいい経験ができました。shiumachi.hatenablog.com4月からは @moriyoshi の会社、オープンコレクターで働き始めました。shiumachi.hatenablog.com夏頃まではHadoop案件をやっていたので、その知見をまとめたりしていました。shiumachi.hatenablog.c… <p>最近自分のことについてブログに書く時間を取れてなかったので、簡単に書いておきます。<br /> <br /> </p> <div class="section"> <h4>仕事</h4> <p>2020年3月までLuminosoという会社で働いていました。1年ちょっとと短い期間ではありましたが、新製品のプロトタイプの開発に携わったりと、今までにない新しい試みをいくつかできたのでとてもいい経験ができました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F03%2F24%2F170000" title="ルミノソジャパン合同会社を退職しました - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/03/24/170000">shiumachi.hatenablog.com</a></cite></p><p>4月からは <a href="https://twitter.com/moriyoshit">@moriyoshi</a> の会社、オープンコレクターで働き始めました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F04%2F06%2F090000" title="株式会社オープンコレクターに転職しました - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/04/06/090000">shiumachi.hatenablog.com</a></cite></p><p>夏頃までは<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>案件をやっていたので、その知見をまとめたりしていました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F07%2F20%2F080000" title="Hadoop DistCp実践ガイド2020年版 - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/07/20/080000">shiumachi.hatenablog.com</a></cite></p><p>ブログとしてはあまりまとめていませんが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>やデータ分析関連の案件もやっていたので、そちらの知見も色々たまってはいました。Zennに初投稿したAltairのまとめはその知見の一部です。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fzenn.dev%2Fshiumachi%2Farticles%2F2c1da128f5b2daf6ff5b" title="Altairメモ" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://zenn.dev/shiumachi/articles/2c1da128f5b2daf6ff5b">zenn.dev</a></cite></p><p>夏以降の仕事は今はまだあまり話せませんが、開発をやりながらプロジェクトマネージャやプロダクトマネージャのようなことも少し携わったりしていました。</p><p>私が尊敬する、カンムCOOの @achiku の記事と、そこで紹介している本を熟読したりしていました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fakirachiku.com%2Fpost%2F2019-09-22-marketing-books%2F" title="マーケティング素人のエンジニアが1年間マーケティングをやった際に読んだ本" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://akirachiku.com/post/2019-09-22-marketing-books/">akirachiku.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fakirachiku.com%2Fpost%2F2020-04-27-user-interview%2F" title="カンムでマーケティングチームがやってるユーザーインタビュー" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://akirachiku.com/post/2020-04-27-user-interview/">akirachiku.com</a></cite></p><p></p> </div> <div class="section"> <h4>ライフスタイル</h4> <p>多くの人が、COVID-19の影響によりライフスタイルを大きく変えることになった2020年ですが、実は私はほとんど影響がありませんでした。というのも、そもそも私は2019年の夏から在宅勤務にシフトしていたため、家から一歩も出ずに仕事することが基本となっていました。なので、せいぜいマスクをつけて外出するとか、たまにあった友人との飲み会がなくなった程度なので生活はほとんど変わっていませんでした。<br /> <br /> </p> </div> <div class="section"> <h4>運動と健康</h4> <p>今年もFreeleticsというAI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリを継続した結果、体重は4kg、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C2%CE%BB%E9%CB%C3%CE%A8">体脂肪率</a>は4%近く落ちました。2019年の3月の運動開始時から比較すると9kg体重が減りました。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201231/20201231113119.jpg" alt="f:id:shiumachi:20201231113119j:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>食制限等は一切せず、好きなものを好きなだけ飲み食いしてます。飲み会が減ったので、自宅で飲酒する習慣のない私はすっかりお酒を飲まなくなったため、接種カロリー量は割と減った気はします。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F06%2F09%2F070000" title="在宅勤務で自宅トレーニングを長く続けるための7つのコツ - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/06/09/070000">shiumachi.hatenablog.com</a></cite></p><p>最近は夜早寝するようになり、朝型生活にシフトするようになって、さらに健康になってきた気がします。<br /> <br /> </p> </div> <div class="section"> <h4>ゲーム</h4> <p>今年一番のゲームを挙げるなら、間違いなくこのHadesです。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fstore.steampowered.com%2Fapp%2F1145360%2FHades%2F%3Fl%3Djapanese" title="Steam で 20% オフ:Hades" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://store.steampowered.com/app/1145360/Hades/?l=japanese">store.steampowered.com</a></cite></p><p>すでにあちこちで話題になっているので今更私が説明するまでもないですが、めちゃくちゃ面白くてしかもケチをつけるところがない、完璧な作品でした。英語だからと尻込みするのはもったいないのでやりましょう。</p><p>次点はOuter Wildsですね。ストーリーが素晴らしかった。ゲームとしてはちょっと難易度高すぎるのと理不尽な仕掛けがいくつかあるので不満がないわけではないですが、謎解きアド<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D9%A5%F3%A5%C1%A5%E3%A1%BC">ベンチャー</a>好きな人はおすすめです。プレイする人はストーリーのネタバレは見ないほうがいいですが、攻略についてはサイトみないとかなり難しいものがいくつかあるので、攻略だけうまく覗きにいくといいです。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fstore.steampowered.com%2Fapp%2F753640%2FOuter_Wilds%2F%3Fl%3Djapanese" title="Steam で 40% オフ:Outer Wilds" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://store.steampowered.com/app/753640/Outer_Wilds/?l=japanese">store.steampowered.com</a></cite></p><p>それ以外でやったゲームをいくつか挙げると、Noita、One Step From Eden、Dimension Reign、Dead Cells、Xmorph Defense、Surviving Mars、XCOM Chimera Squad、Undertale、そして<a class="keyword" href="http://d.hatena.ne.jp/keyword/Factorio">Factorio</a> Seablock mod ですね。ちょこっと触ってみただけのゲームはさらにたくさんあります。<br /> <br /> </p> </div> <div class="section"> <h4>本</h4> <p>今年読んだ本ではないですが、今年最も自分にとって価値のあった本は、超予測力でした。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F12%2F09%2F070000" title="超予測力: 未来を予測する技術を学べる本 - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/12/09/070000">shiumachi.hatenablog.com</a></cite></p><p>専門家でさえ先を予測できないコロナ禍の中で、この本に書いてある予測の手法は自分の行動指針を決めるのに大きく役に立ちました。</p><br /> <p>先程の @achiku の記事にも紹介されていましたが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>の本をいくつか読んだ中で、この本が一番勉強になりました。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07P6XKQ14/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51rhY2nttBL.jpg" class="hatena-asin-detail-image" alt="たった一人の分析から事業は成長する 実践 顧客起点マーケティング(MarkeZine BOOKS)" title="たった一人の分析から事業は成長する 実践 顧客起点マーケティング(MarkeZine BOOKS)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07P6XKQ14/shiumachijigo-22/">たった一人の分析から事業は成長する 実践 顧客起点マーケティング(MarkeZine BOOKS)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%C0%BE%B8%FD%20%B0%EC%B4%F5" class="keyword">西口 一希</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2019/04/08</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>製品やサービスのトレンドを追いかけるという点では、アフターデジタル2が一番印象に残っています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B08D6B4MJB/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51K7WPkAvaL.jpg" class="hatena-asin-detail-image" alt="アフターデジタル2 UXと自由" title="アフターデジタル2 UXと自由"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B08D6B4MJB/shiumachijigo-22/">アフターデジタル2 UXと自由</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%C6%A3%B0%E6%20%CA%DD%CA%B8" class="keyword">藤井 保文</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2020/07/23</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>ハイパーハードボイルドグルメリポートも面白かったですね。本編の映像だけでは見られない様々な話が書かれていて、世界の現実をつきつけてくるパワーがありました。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B08616YJWF/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41N4zuQVRpL.jpg" class="hatena-asin-detail-image" alt="ハイパーハードボイルドグルメリポート" title="ハイパーハードボイルドグルメリポート"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B08616YJWF/shiumachijigo-22/">ハイパーハードボイルドグルメリポート</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%BE%E5%BD%D0%A1%A1%CE%CB%CA%BF" class="keyword">上出 遼平</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2020/03/19</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>読んだ漫画の中で一番よかったのは<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%AA%A5%A2%A5%B7">アオアシ</a>ですね。最近まで存在を知らなかったのですが、あまりに面白かったので全巻購入してしまいました。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00Z6HQWYU/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51IXbuM3zhL.jpg" class="hatena-asin-detail-image" alt="アオアシ(1) (ビッグコミックス)" title="アオアシ(1) (ビッグコミックス)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00Z6HQWYU/shiumachijigo-22/">アオアシ(1) (ビッグコミックス)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%BE%AE%CE%D3%CD%AD%B8%E3" class="keyword">小林有吾</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2015/06/19</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h4>買ったものいろいろ</h4> <p>どれか一つを挙げるなら、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BE%DD%B0%F5">象印</a>の加湿器ですね。今年は特に乾燥が気になったので買ってみたのですが、もっと早く買っておけばよかったと思いました。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07VKZHW8J/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/31w7UqqKbiL.jpg" class="hatena-asin-detail-image" alt="象印 加湿器 3.0L 木造8畳/プレハブ洋室13畳対応 スチーム式 蒸気式 フィルター不要 自動加湿3段階 入タイマー&amp;切タイマー搭載 お手入れ簡単 ホワイト EE-RP50-WA" title="象印 加湿器 3.0L 木造8畳/プレハブ洋室13畳対応 スチーム式 蒸気式 フィルター不要 自動加湿3段階 入タイマー&amp;切タイマー搭載 お手入れ簡単 ホワイト EE-RP50-WA"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07VKZHW8J/shiumachijigo-22/">象印 加湿器 3.0L 木造8畳/プレハブ洋室13畳対応 スチーム式 蒸気式 フィルター不要 自動加湿3段階 入タイマー&amp;切タイマー搭載 お手入れ簡単 ホワイト EE-RP50-WA</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2019/08/21</li><li><span class="hatena-asin-detail-label">メディア:</span> ホーム&amp;キッチン</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>今まで耐熱の計量<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AB%A5%C3%A5%D7">カップ</a>を持っていなかったのですが、これも買ってよかったものの一つです。熱湯を安心して注げるというのは料理するのに意外と便利でした。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00ZVUKMBG/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41LCcQydnhL.jpg" class="hatena-asin-detail-image" alt="貝印 KAI 計量カップ Kai House Select 耐熱 500ml どこでも 注げる 日本製 DH7121" title="貝印 KAI 計量カップ Kai House Select 耐熱 500ml どこでも 注げる 日本製 DH7121"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00ZVUKMBG/shiumachijigo-22/">貝印 KAI 計量カップ Kai House Select 耐熱 500ml どこでも 注げる 日本製 DH7121</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span> ホーム&amp;キッチン</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%A4%A5%BD%A1%BC">ダイソー</a>の100均タイマーも買って満足したものの一つです。他の100均で買ったものは磁石が弱いのとボタンが押しにくくて料理に使いづらかったのですが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%A4%A5%BD%A1%BC">ダイソー</a>の100均タイマーはそのあたりの不満を解決してくれてとてもいい商品でした。</p><p>家の中にUSB-C製品が増えてきたので、Ankerの充電ポートを新たに1つ購入したのですが、これもいい買い物でした。やはり充電ポートはAnkerが一番いいですね。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B072KBG9W4/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/31TYmK3t0sL.jpg" class="hatena-asin-detail-image" alt="Anker PowerPort I PD - 1 PD &amp; 4 PowerIQ(PD対応 60W 5ポート USB-C急速充電器)【PSE認証済/PD対応/PowerIQ】 iPhone 12 / 12 Pro / 11 / XR、MacBook、Galaxy S10 / S10+、その他Android各種対応(ブラック)" title="Anker PowerPort I PD - 1 PD &amp; 4 PowerIQ(PD対応 60W 5ポート USB-C急速充電器)【PSE認証済/PD対応/PowerIQ】 iPhone 12 / 12 Pro / 11 / XR、MacBook、Galaxy S10 / S10+、その他Android各種対応(ブラック)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B072KBG9W4/shiumachijigo-22/">Anker PowerPort I PD - 1 PD &amp; 4 PowerIQ(PD対応 60W 5ポート USB-C急速充電器)【PSE認証済/PD対応/PowerIQ】 iPhone 12 / 12 Pro / 11 / XR、MacBook、Galaxy S10 / S10+、その他Android各種対応(ブラック)</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span> エレクトロニクス</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>3年ほど使っていたFitbit Charge 2 から、 Charge 4 に乗り換えました。アクティブゾーンの計算機能というものが導入されたのですが、想像してたより遥かに便利でよかったです。単に時間で運動を区切るのではなく、自分が実際に心拍数が上がった時間で記録ができるので、運動量のコン<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A5%ED%A1%BC%A5%EB">トロール</a>にとても便利でした。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B085LFG2XQ/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41XSB55CdYL.jpg" class="hatena-asin-detail-image" alt="Fitbit Charge4 GPS搭載フィットネストラッカー Rosewood L/Sサイズ [日本正規品] FB417BYBY-FRCJK" title="Fitbit Charge4 GPS搭載フィットネストラッカー Rosewood L/Sサイズ [日本正規品] FB417BYBY-FRCJK"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B085LFG2XQ/shiumachijigo-22/">Fitbit Charge4 GPS搭載フィットネストラッカー Rosewood L/Sサイズ [日本正規品] FB417BYBY-FRCJK</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2020/04/30</li><li><span class="hatena-asin-detail-label">メディア:</span> エレクトロニクス</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h4>まとめ</h4> <p>色々先行き不透明な世の中ですが、そんな中でも公私ともに楽しんで過ごせるよう、来年も精一杯頑張りたいと思います。</p><p>よいお年を!</p> </div> shiumachi Freeleticsで神に挑む - ゴッドワークアウト一巡り hatenablog://entry/26006613661109089 2020-12-07T08:00:00+09:00 2020-12-08T11:21:47+09:00 Photo by Gordon Cowie on Unsplashこの記事は pyspa Advent Calendar 2020 の 7日目の記事です。昨日は rokujyouhitoma でした。昨年はプロダクト開発についての話を書きましたが、今年はガラッと方向性を変えて、筋トレの話をすることにします。2019年3月からFreeleticsというAIパーソナルトレーナーアプリを使ってトレーニングを続けています。Freeleticsについては過去にいくつか記事を書いているので、Freeleticsって何?って人は記事末尾の関連記事を読んでみてください。さて、Freeleticsでは、複数のト… <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206165919.jpg" alt="f:id:shiumachi:20201206165919j:plain" title="" class="hatena-fotolife" itemprop="image"></span><br /> <span>Photo by <a href="https://unsplash.com/@gcowie?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Gordon Cowie</a> on <a href="https://unsplash.com/collections/79564340/%E3%83%96%E3%83%AD%E3%82%B0%E7%94%A8/761ca4b484965adfc8d2f22ac79f6479?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></span></p><p>この記事は <a href="https://adventar.org/calendars/5310">pyspa Advent Calendar 2020</a> の 7日目の記事です。昨日は <a href="https://rokujyouhitoma.hatenablog.com/entry/2020/12/06/000000">rokujyouhitoma</a> でした。</p><p>昨年は<a href="https://shiumachi.hatenablog.com/entry/2019/12/23/132402">&#x30D7;&#x30ED;&#x30C0;&#x30AF;&#x30C8;&#x958B;&#x767A;&#x306B;&#x3064;&#x3044;&#x3066;&#x306E;&#x8A71;</a>を書きましたが、今年はガラッと方向性を変えて、筋トレの話をすることにします。</p><p>2019年3月から<a href="https://www.freeletics.com/ja/targeting/real-results-1/?&utm_source=gad&utm_term=nul&utm_medium=pse&utm_content=sea&utm_campaign=(gad_pfb,jp)web_ua_sea_brand&CID=(gad_pfb,jp)web_ua_sea_brand&gclid=CjwKCAiA_Kz-BRAJEiwAhJNY7xwbewOit7PfKVsOUDsijtuEozUSsz1HXqYzUpnQx7kNrUkV5RhElRoCC6wQAvD_BwE">Freeletics</a>というAI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリを使ってト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを続けています。</p><p>Freeleticsについては過去にいくつか記事を書いているので、Freeleticsって何?って人は記事末尾の関連記事を読んでみてください。</p><p>さて、Freeleticsでは、複数のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを組み合わせたワークアウトを多数用意しています。それぞれに神話の神々の名前をつけていて、これらは<b>ゴッドワークアウト</b>と呼ばれています。</p><p>このゴッドワークアウトでスターを獲得する(途中で休まず、正しいフォームでワークアウトを完走する)、そして自己ベストタイムを超えていくことがFreeleticsでの大きな目標の一つとなります。</p><p>この記事では、このゴッドワークアウトの中から代表的なものをピックアップし、紹介していきます。</p><p>誰でもすぐ試せるよう、基本的には器具なし、ランニングなしのワークアウトのみを選んでいます。(一部例外あり)<br /> <br /> </p> <ul class="table-of-contents"> <li><a href="#初級編">初級編</a><ul> <li><a href="#アテナ">アテナ</a></li> <li><a href="#モルペウス">モルペウス</a></li> <li><a href="#レイア">レイア</a></li> <li><a href="#メティス">メティス</a></li> <li><a href="#セレネ">セレネ</a></li> </ul> </li> <li><a href="#中級編">中級編</a><ul> <li><a href="#プロメテウス">プロメテウス</a></li> <li><a href="#アマゾナ">アマゾナ</a></li> <li><a href="#アフロディテ">アフロディテ</a></li> </ul> </li> <li><a href="#上級編">上級編</a><ul> <li><a href="#ヘカテ">ヘカテ</a></li> <li><a href="#ケルベロス">ケルベロス</a></li> <li><a href="#ウェヌス">ウェヌス</a></li> <li><a href="#ヘリオス">ヘリオス</a></li> <li><a href="#ゼウス-器具あり最難関">ゼウス (器具あり最難関)</a></li> </ul> </li> <li><a href="#さらなる高みを目指して">さらなる高みを目指して</a></li> <li><a href="#こんなんできるか">こんなんできるか!</a></li> <li><a href="#Freeleticsに興味を持った人へ">Freeleticsに興味を持った人へ</a></li> <li><a href="#pyspaアドベントカレンダーの次回予告">pyspaアドベントカレンダーの次回予告</a></li> <li><a href="#関連記事">関連記事</a></li> </ul><figure class="figure-image figure-image-fotolife" title="ゴッドワークアウト"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153231.png" alt="f:id:shiumachi:20201206153231p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>ゴッドワークアウト</figcaption></figure><p><br /> ゴッドワークアウトは初級・中級・上級の三段階にわかれているので、それぞれからいくつかピックアップして紹介していきます。</p><p>しかし、注意しなければいけないのは、この<b>難易度分類は全く当てにならない</b>ということです。</p><p>初級なのに明らかに中級以上の負荷のものもあれば、非常に簡単なのに中級に当てはまっているものもあり、単にこの難易度分類だけを見てワークアウトを選択すると大変なことになります。</p><p>(この分類いい加減見直してほしい…)</p><p>ここではあくまで便宜上の分類だと思ってください。</p><p>可能な限り公式の動画を引用しますが、公式の動画が存在しないものについては、Freeletics上での動きと同様の動画を引用しています。</p><p>同じ名前の運動でもジムやトレーナーによって動きが微妙に違ったりしますので注意してください。<br /> <br /> </p> <div class="section"> <h4 id="初級編">初級編</h4> <div class="section"> <h5 id="アテナ">アテナ</h5> <p>日本でも有名な、<a href="https://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%86%E3%83%BC%E3%83%8A%E3%83%BC">&#x30AE;&#x30EA;&#x30B7;&#x30E3;&#x306E;&#x5B88;&#x8B77;&#x5973;&#x795E;&#x30A2;&#x30C6;&#x30CA;</a>です。</p> <figure class="figure-image figure-image-fotolife" title="アテナ"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153332.png" alt="f:id:shiumachi:20201206153332p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>アテナ</figcaption></figure> <table> <tr> <th>1セット目</th> <td>クライマー x 25</td> <td>シットアップ x 25</td> <td>スクワット x 25</td> <td>休憩 25秒</td> </tr> <tr> <th>2セット目</th> <td>クライマー x 20</td> <td>シットアップ x 20</td> <td>スクワット x 20</td> <td>休憩 20秒</td> </tr> <tr> <th>3セット目</th> <td>クライマー x 15</td> <td>シットアップ x 15</td> <td>スクワット x 15</td> <td>休憩 15秒</td> </tr> <tr> <th>4セット目</th> <td>クライマー x 10</td> <td>シットアップ x 10</td> <td>スクワット x 10</td> <td>休憩 10秒</td> </tr> <tr> <th>5セット目</th> <td>クライマー x 5</td> <td>シットアップ x 5</td> <td>スクワット x 5</td> <td> </td> </tr> </table><p>Freeleticsを代表するワークアウトの一つです。Freeleticsユーザーで挑戦したことがない人はいないはず。<br /> スクワットは有名なので説明は省略しますが、クライマーとシットアップという2つの運動を覚える必要があります。</p><p>クライマーは、両手をついて足を伸ばしたハイ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>の状態から、片足づつ交互に手元まで踏み込んでいくという運動です。</p><p><div style="width:100%;height:0;padding-bottom:51%;position:relative;"><iframe src="https://giphy.com/embed/ME6aL2xFFtFcwhoMSa" width="100%" height="100%" style="position:absolute" frameBorder="0" class="giphy-embed" allowFullScreen></iframe></div><p><a href="https://giphy.com/gifs/ME6aL2xFFtFcwhoMSa">クライマー</a></p></p><p>シットアップは、一般的な腹筋運動をさらにきつくしたものです。腹筋運動のポーズをしてから、頭の上と脚の前を両手で交互に触っていく運動です。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/jaYch6U6Mkc"></iframe><br><a href="https://youtube.com/watch?v=jaYch6U6Mkc">シットアップ</a></p><p>運動習慣がない人にとっては腹筋がめちゃくちゃきつくなります。私は、最初の2セットでお腹がつりました。しかし、Freeleticsに慣れてくるとアテナくらいの負荷はむしろ休憩に感じてくるくらい簡単に思えてきます。<br /> <br /> </p> </div> <div class="section"> <h5 id="モルペウス">モルペウス</h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%AB%E3%83%9A%E3%82%A6%E3%82%B9">&#x5922;&#x306E;&#x795E;&#x30E2;&#x30EB;&#x30DA;&#x30A6;&#x30B9;</a>です。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%C8%A5%EA%A5%C3%A5%AF%A5%B9">マトリックス</a>のモーフィアスの方が有名かもしれないです。</p><p>アテナと並んで、最も有名なゴッドワークアウトの一つです。</p><p>中級に位置づけられていますが、あまりに簡単すぎるのと、内容がわかりやすいので初級編で紹介しています。</p><p>プッシュアップができるかどうかがポイントです。</p> <figure class="figure-image figure-image-fotolife" title="モルペウス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153358.png" alt="f:id:shiumachi:20201206153358p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>モルペウス</figcaption></figure> <table> <tr> <th>1セット目</th> <td>プッシュアップ x 5</td> <td>ランジ x 10</td> <td>ジャンピングジャック x 20</td> </tr> <tr> <th>2セット目</th> <td>プッシュアップ x 7</td> <td>ランジ x 15</td> <td>ジャンピングジャック x 30</td> </tr> <tr> <th>3セット目</th> <td>プッシュアップ x 10</td> <td>ランジ x 20</td> <td>ジャンピングジャック x 40</td> </tr> <tr> <th>4セット目</th> <td>プッシュアップ x 7</td> <td>ランジ x 15</td> <td>ジャンピングジャック x 30</td> </tr> <tr> <th>5セット目</th> <td>プッシュアップ x 5</td> <td>ランジ x 10</td> <td>ジャンピングジャック x 20</td> </tr> </table><p><br /> プッシュアップは、ご存知腕立て伏せです。Freeleticsのプッシュアップは、地面に胸をつけて両手を一度浮かせるのが特徴です。</p><p><div style="width:100%;height:0;padding-bottom:51%;position:relative;"><iframe src="https://giphy.com/embed/dyMqa2SvEvC9L4iyfj" width="100%" height="100%" style="position:absolute" frameBorder="0" class="giphy-embed" allowFullScreen></iframe></div><p><a href="https://giphy.com/gifs/dyMqa2SvEvC9L4iyfj">プッシュアップ</a></p></p><p>ランジは、直立した状態から脚を交互に前に出して膝立ちの状態になる運動です。</p><p><div style="width:100%;height:0;padding-bottom:51%;position:relative;"><iframe src="https://giphy.com/embed/66eBzBOMVE1Tr4MxDe" width="100%" height="100%" style="position:absolute" frameBorder="0" class="giphy-embed" allowFullScreen></iframe></div><p><a href="https://giphy.com/gifs/66eBzBOMVE1Tr4MxDe">ランジ</a></p></p><p>ジャンピングジャックは、直立の状態からジャンプして両手両足を開き、その後もう一度ジャンプして脚を閉じながら両手を頭の後ろに組む運動です。ラジオ体操などでも似たような運動があるので、ほとんどの人は簡単にできるでしょう。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/gKyCtTb_Y3E"></iframe><br><a href="https://youtube.com/watch?v=gKyCtTb_Y3E">ジャンピングジャック</a></p><p></p> </div> <div class="section"> <h5 id="レイア">レイア</h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%83%AC%E3%82%A2%E3%83%BC">&#x5927;&#x5730;&#x306E;&#x5973;&#x795E;&#x30EC;&#x30A2;</a>です。</p><p>Freeleticsのゴッドワークアウトの中で最も簡単なものです。</p> <figure class="figure-image figure-image-fotolife" title="レイア"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153426.png" alt="f:id:shiumachi:20201206153426p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>レイア</figcaption></figure> <table> <tr> <th>1セット目</th> <td>ハイニー x 20</td> <td>クランチ x 20</td> <td>スクワット x 20</td> </tr> <tr> <th>2セット目</th> <td>ハイニー x 15</td> <td>クランチ x 15</td> <td>スクワット x 15</td> </tr> <tr> <th>3セット目</th> <td>ハイニー x 10</td> <td>クランチ x 10</td> <td>スクワット x 10</td> </tr> </table><p><br /> ハイニーは、要するにもも上げです。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/x4ISQVdWOjA"></iframe><br><a href="https://youtube.com/watch?v=x4ISQVdWOjA">ハイニー</a></p><p>自分の経験上は、レイア単体で出てくることはまずなく、レイア x2 で出てきたことしかありません。それでも3分ちょっとで終わるので非常に簡単です。<br /> <br /> </p> </div> <div class="section"> <h5 id="メティス">メティス</h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%83%A1%E3%83%BC%E3%83%86%E3%82%A3%E3%82%B9">&#x77E5;&#x6075;&#x306E;&#x5973;&#x795E;&#x30E1;&#x30FC;&#x30C6;&#x30A3;&#x30B9;</a>です。</p><p>このあたりからFreeletics のヤバいメニューの紹介に移っていきます。<br /> 初級に位置付けられてますが、先に紹介したモルペウスより遥かにキツいです。</p> <figure class="figure-image figure-image-fotolife" title="メティス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153454.png" alt="f:id:shiumachi:20201206153454p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>メティス</figcaption></figure> <table> <tr> <th>1セット目</th> <td>バーピー x 10</td> <td>クライマー x 10</td> <td>ジャンプ x 10</td> </tr> <tr> <th>2セット目</th> <td>バーピー x 25</td> <td>クライマー x 25</td> <td>ジャンプ x 25</td> </tr> <tr> <th>3セット目</th> <td>バーピー x 10</td> <td>クライマー x 10</td> <td>ジャンプ x 10</td> </tr> </table><p>バーピーは日本でもかなり有名な<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>ですが、Freeleticsでも頻繁に取り入れられています。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/r8JMElUsOhI"></iframe><br><a href="https://youtube.com/watch?v=r8JMElUsOhI">バーピー</a></p><p>クライマーはアテナの項を参照してください。</p><p>ジャンプは、直立の状態から両足をジャンプさせて膝を腰の上くらいまで持ってきます。(動画は省略)</p><p>一見分量が少なくて簡単そうに見えますが、全ての運動で「脚でジャンプする」という動作が入るため脚が休む暇がなく、またバーピー→クライマーの流れではどちらも肩を使うため肩の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C8%E8%CF%AB">疲労</a>も相当なものになります。</p><p>5分間全力で両足ジャンプし続けるようなものなので、とにかく脚が持ちません。<br /> <br /> </p> </div> <div class="section"> <h5 id="セレネ">セレネ</h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%AC%E3%83%BC%E3%83%8D%E3%83%BC">&#x6708;&#x306E;&#x5973;&#x795E;&#x30BB;&#x30EC;&#x30CD;</a>です。</p><p>初級の中でぶっちぎりで凶悪なワークアウトです。というかこれが初級なのが本当に理解できません。</p> <figure class="figure-image figure-image-fotolife" title="セレネ"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206092308.jpg" alt="f:id:shiumachi:20201206092308j:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>セレネ</figcaption></figure> <table> <tr> <th>1セット目</th> <td>ジャンピングジャック x 50</td> <td>クランチ x 20</td> <td>ランジ x 20</td> <td>バーピー x 20</td> </tr> <tr> <th>2セット目</th> <td>ジャンピングジャック x 50</td> <td>クランチ x 20</td> <td>ランジ x 20</td> <td>バーピー x 20</td> </tr> <tr> <th>3セット目</th> <td>ジャンピングジャック x 50</td> <td>クランチ x 20</td> <td>ランジ x 20</td> <td>バーピー x 20</td> </tr> <tr> <th>4セット目</th> <td>ジャンピングジャック x 50</td> <td>クランチ x 20</td> <td>ランジ x 20</td> <td>バーピー x 20</td> </tr> <tr> <th>5セット目</th> <td>ジャンピングジャック x 50</td> <td>クランチ x 20</td> <td>ランジ x 20</td> <td>バーピー x 20</td> </tr> </table><p>クランチは、多くの人がよく知る腹筋運動に一番近いです。頭の上と膝を両手で交互に触っていきます。</p><p><div style="width:100%;height:0;padding-bottom:51%;position:relative;"><iframe src="https://giphy.com/embed/VK92yrtyLp2SdK7pqB" width="100%" height="100%" style="position:absolute" frameBorder="0" class="giphy-embed" allowFullScreen></iframe></div><p><a href="https://giphy.com/gifs/VK92yrtyLp2SdK7pqB">クランチ</a></p></p><p>セレネはバーピーを合計100回行うのみならず、メティスと同様、バーピー→ジャンピングジャックの流れでジャンプ運動を連続して行うため、ジャンピングジャックでさえ凄まじくきつく感じます。</p><p>クランチだけが唯一の癒やしポイントになります。腹筋が鍛えられていないと癒やしにはなりませんが、セレネに挑戦する人がクランチ100回をできないということはまずないでしょう。<br /> <br /> </p> </div> </div> <div class="section"> <h4 id="中級編">中級編</h4> <div class="section"> <h5 id="プロメテウス">プロメテウス</h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%83%A1%E3%83%BC%E3%83%86%E3%82%A6%E3%82%B9">&#x706B;&#x306E;&#x795E;&#x30D7;&#x30ED;&#x30E1;&#x30C6;&#x30A6;&#x30B9;</a>です。</p> <figure class="figure-image figure-image-fotolife" title="プロメテウス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153544.png" alt="f:id:shiumachi:20201206153544p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>プロメテウス</figcaption></figure> <table> <tr> <th>1セット目</th> <td>クライマー x 30</td> <td>プッシュアップ x 10</td> <td>シットアップ x 30</td> <td>スクワット x 30</td> <td>ジャンピングジャック x 50</td> <td>休憩 30秒</td> </tr> <tr> <th>2セット目</th> <td>クライマー x 20</td> <td>プッシュアップ x 7</td> <td>シットアップ x 20</td> <td>スクワット x 20</td> <td>ジャンピングジャック x 50</td> <td>休憩 30秒</td> </tr> <tr> <th>3セット目</th> <td>クライマー x 10</td> <td>プッシュアップ x 5</td> <td>シットアップ x 10</td> <td>スクワット x 10</td> <td>ジャンピングジャック x 50</td> <td>休憩 30秒</td> </tr> <tr> <th>4セット目</th> <td>クライマー x 20</td> <td>プッシュアップ x 7</td> <td>シットアップ x 20</td> <td>スクワット x 20</td> <td>ジャンピングジャック x 50</td> <td>休憩 30秒</td> </tr> <tr> <th>5セット目</th> <td>クライマー x 30</td> <td>プッシュアップ x 10</td> <td>シットアップ x 30</td> <td>スクワット x 30</td> <td>ジャンピングジャック x 50</td> <td> </td> </tr> </table><p>アテナの上位版みたいな内容で、初級コースの大半を完走できれば問題なくできるワークアウトです。</p><p>サーキットの後半でだんだん分量が増えていくのがちょっと大変ですが、インターバルが30秒あるので非常に良心的な内容です。</p><p>アテナとモルペウスに飽きたらこれをやるのがおすすめです。<br /> <br /> </p> </div> <div class="section"> <h5 id="アマゾナ">アマゾナ</h5> <p>このワークアウトは開発された時期が異なるのか、かなり特殊なワークアウトです。神々の名前がついていないというのも特異ですが、その内容もかなり変わっていて、このワークアウトでしか登場しない運動がいくつもあります。<br /> 全身運動が多いゴッドワークアウトの中で、ひたすら下半身に特化しているというのも特徴です。そのため、肩を痛めたときによくこれをやってました。</p> <figure class="figure-image figure-image-fotolife" title="アマゾナ"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153634.png" alt="f:id:shiumachi:20201206153634p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>アマゾナ</figcaption></figure> <table> <tr> <th>1セット目</th> <td>ランジ x 20</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%B5%A5%C3%A5%AF%A5%B9">コサックス</a>クワット x 20</td> <td>スプリットランジ x 20</td> <td>リバースランジ x 20</td> <td>スクワットジャンプ x 20</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>レッグリフト x 100</td> </tr> <tr> <th>2セット目</th> <td>ランジ x 20</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%B5%A5%C3%A5%AF%A5%B9">コサックス</a>クワット x 20</td> <td>スプリットランジ x 20</td> <td>リバースランジ x 20</td> <td>スクワットジャンプ x 20</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>レッグリフト x 100</td> </tr> </table><p><br /> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%B5%A5%C3%A5%AF%A5%B9">コサックス</a>クワットは、片足を伸ばし、もう片足を曲げる、屈伸運動のような動作をする<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CA%D2%C2%AD%A5%B9%A5%AF%A5%EF%A5%C3%A5%C8">片足スクワット</a>です。見た目は簡単そうですがかなり負荷のある運動です。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/uK5bgeZixIY"></iframe><br><a href="https://youtube.com/watch?v=uK5bgeZixIY">コサックスクワット</a></p><p>スプリットランジは、ランジの格好からジャンプして脚を交互に入れ替える運動です。ジャンプ運動なのでかなり脚に負荷がかかります。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/ltx_cR7yNPA"></iframe><br><a href="https://youtube.com/watch?v=ltx_cR7yNPA">スプリットランジ</a></p><p>リバースランジは、ランジの逆で、膝をつく方の脚を後ろに出し、膝を立てる方の脚をその場に残してランジします。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/xrPteyQLGAo"></iframe><br><a href="https://youtube.com/watch?v=xrPteyQLGAo">リバースランジ</a></p><p>スクワットジャンプは、スクワットして膝を曲げた後に伸ばしてジャンプする運動です。これもジャンプ運動でかなり負荷がかかります。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/ueTKdVxFSQ4"></iframe><br><a href="https://youtube.com/watch?v=ueTKdVxFSQ4">スクワットジャンプ</a></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>レッグリフトは、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>の状態で交互に脚を上げる運動です。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/s1MeMvqSNqA"></iframe><br><a href="https://youtube.com/watch?v=s1MeMvqSNqA">プランクレッグリフト</a></p><p>連続して大腿筋に負荷をかけていくので、後半のスクワットジャンプと<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>レッグリフトがかなりきつくなります。インターバルがないので、2セット目は特にきついです。<br /> <br /> </p> </div> <div class="section"> <h5 id="アフロディテ"><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a></h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%97%E3%83%AD%E3%83%87%E3%82%A3%E3%83%BC%E3%83%86%E3%83%BC">&#x611B;&#x3068;&#x7F8E;&#x306E;&#x5973;&#x795E;&#x30A2;&#x30D5;&#x30ED;&#x30C7;&#x30A3;&#x30FC;&#x30C6;</a>です。最近はなくなりましたが、昔のFreeleticsのアプリの更新履歴には「<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a>が終わるより早くバグ対応します!」と書かれていたりしました。</p><p>内容もとてもシンプルで、Freeleticsを代表するワークアウトの一つです。</p><p>あまりにきつすぎて私はまだ挑戦したことありませんが。</p> <figure class="figure-image figure-image-fotolife" title="アフロディテ"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153707.png" alt="f:id:shiumachi:20201206153707p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a></figcaption></figure> <table> <tr> <th>1セット目</th> <td>バーピー x 50</td> <td>スクワット x 50</td> <td>シットアップ x 50</td> </tr> <tr> <th>2セット目</th> <td>バーピー x 40</td> <td>スクワット x 40</td> <td>シットアップ x 40</td> </tr> <tr> <th>3セット目</th> <td>バーピー x 30</td> <td>スクワット x 30</td> <td>シットアップ x 30</td> </tr> <tr> <th>4セット目</th> <td>バーピー x 20</td> <td>スクワット x 20</td> <td>シットアップ x 20</td> </tr> <tr> <th>5セット目</th> <td>バーピー x 10</td> <td>スクワット x 10</td> <td>シットアップ x 10</td> </tr> </table><p>バーピー→スクワット→シットアップのサーキットをインターバルなしでそれぞれ150回づつ行うというもの。初級最難関のセレネでさえバーピー100回やクランチ100回なので、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a>がどれだけ凶悪かおわかりでしょうか。</p><p>リーダーボードを見てみると、上級者達はこの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a>を15分以下で完走してます。<br /> <br /> </p> </div> </div> <div class="section"> <h4 id="上級編">上級編</h4> <p>ここから先は私もほぼ未踏の領域です。(ハーフセット等は挑戦したことあるけどフルセットはほぼ未体験)</p> <div class="section"> <h5 id="ヘカテ">ヘカテ</h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%83%98%E3%82%AB%E3%83%86%E3%83%BC">&#x51A5;&#x754C;&#x306E;&#x5973;&#x795E;&#x30D8;&#x30AB;&#x30C6;&#x30FC;</a>です。</p> <figure class="figure-image figure-image-fotolife" title="ヘカテ"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206153731.png" alt="f:id:shiumachi:20201206153731p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>ヘカテ</figcaption></figure> <table> <tr> <th>1セット目</th> <td>クラッピングプッシュアップ x 16</td> <td>ピストルスクワット x 16</td> </tr> <tr> <th>1セット目</th> <td>クラッピングプッシュアップ x 12</td> <td>ピストルスクワット x 12</td> </tr> <tr> <th>1セット目</th> <td>クラッピングプッシュアップ x 8</td> <td>ピストルスクワット x 8</td> </tr> <tr> <th>1セット目</th> <td>クラッピングプッシュアップ x 6</td> <td>ピストルスクワット x 6</td> </tr> <tr> <th>1セット目</th> <td>クラッピングプッシュアップ x 4</td> <td>ピストルスクワット x 4</td> </tr> </table><p>クラッピングプッシュアップは、プッシュアップの上位版で、腕を伸ばす代わりに腕でジャンプして拍手するというものです。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/EYwWCgM198U"></iframe><br><a href="https://youtube.com/watch?v=EYwWCgM198U">クラッピングプッシュアップ</a></p><p>ピストルスクワットは要するに<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CA%D2%C2%AD%A5%B9%A5%AF%A5%EF%A5%C3%A5%C8">片足スクワット</a>です。脚への負荷も相当なものですが、バランスを取るのがとても難しい運動です。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/Wldnl_GeIug"></iframe><br><a href="https://youtube.com/watch?v=Wldnl_GeIug">ピストルスクワット</a></p><p>どちらも肘・肩と膝にものすごい負荷がかかるので、よほど筋力に自信がない限りやめた方がいいです。</p><p>一方で心肺機能としての負荷はそこまで高くないので、筋力が十分あれば上級の中では比較的とっつきやすいのではないかと思います。(といいつつ私はまだフルセット未チャレンジですが)<br /> <br /> </p> </div> <div class="section"> <h5 id="ケルベロス"><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B1%A5%EB%A5%D9%A5%ED%A5%B9">ケルベロス</a></h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%82%B1%E3%83%AB%E3%83%99%E3%83%AD%E3%82%B9">&#x5730;&#x7344;&#x306E;&#x756A;&#x72AC;&#x30B1;&#x30EB;&#x30D9;&#x30ED;&#x30B9;</a>です。ひたすら<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>を行うワークアウトで、その姿勢が四つん這いなので<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B1%A5%EB%A5%D9%A5%ED%A5%B9">ケルベロス</a>(=犬)の名前をつけたのではないかと思います。</p> <figure class="figure-image figure-image-fotolife" title="ケルベロス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206092547.jpg" alt="f:id:shiumachi:20201206092547j:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B1%A5%EB%A5%D9%A5%ED%A5%B9">ケルベロス</a></figcaption></figure> <table> <tr> <th>1セット目</th> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>ホールド 60秒</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>スイッチ x 10</td> <td>スクワット x10</td> </tr> <tr> <th>2セット目</th> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>ホールド 120秒</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>スイッチ x 20</td> <td>スクワット x 20</td> </tr> <tr> <th>3セット目</th> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>ホールド 180秒</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>スイッチ x 30</td> <td>スクワット x 30</td> </tr> </table><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>スイッチは、ハイ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>の状態から肩肘づつ曲げていきロー<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>の状態に移り、そこからまた肩肘づつ伸ばしてハイ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>の状態に戻るという運動です。</p><p>アプリ内の説明動画では、昔はロー<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>→ハイ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>→ロー<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>という運動だったのですが、最近のアップデートで説明動画が更新されると、なぜかハイ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>→ロー<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>→ハイ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>という動作になりました。以下の動画は旧バージョンの動きなので注意してください。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/bz9hHRNbhJY"></iframe><br><a href="https://youtube.com/watch?v=bz9hHRNbhJY">プランクスイッチ(旧バージョン)</a></p><p>とにかく<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>ホールド合計6分間がきついです。この間なにもできずにじっとしてるだけなので肉体的のみならず精神的にもきついです。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>ホールドが終わった直後の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>スイッチもきついです。スクワット合計60回は完全におまけです。<br /> <br /> </p> </div> <div class="section"> <h5 id="ウェヌス"><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A6%A5%A7%A5%CC%A5%B9">ウェヌス</a></h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%82%A6%E3%82%A7%E3%83%8C%E3%82%B9">&#x611B;&#x3068;&#x7F8E;&#x306E;&#x5973;&#x795E;&#x30F4;&#x30A3;&#x30FC;&#x30CA;&#x30B9;</a>です。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AE%A5%EA%A5%B7%A5%E3">ギリシャ</a>神話の神々の名前が多く用いられる中、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A6%A5%A7%A5%CC%A5%B9">ウェヌス</a>は珍しく<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%ED%A1%BC%A5%DE%BF%C0%CF%C3">ローマ神話</a>からの引用です。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a>の別名とも言われています。</p><p>メニューも<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%ED%A5%C7%A5%A3%A5%C6">アフロディテ</a>と同様にとてもシンプルです。</p> <figure class="figure-image figure-image-fotolife" title="ウェヌス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206092540.jpg" alt="f:id:shiumachi:20201206092540j:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A6%A5%A7%A5%CC%A5%B9">ウェヌス</a></figcaption></figure> <table> <tr> <th>1セット目</th> <td>プッシュアップ x 50</td> <td>クランチ x 20</td> <td>スクワット x 50</td> </tr> <tr> <th>2セット目</th> <td>プッシュアップ x 50</td> <td>クランチ x 20</td> <td>スクワット x 50</td> </tr> <tr> <th>3セット目</th> <td>プッシュアップ x 50</td> <td>クランチ x 20</td> <td>スクワット x 50</td> </tr> <tr> <th>4セット目</th> <td>プッシュアップ x 50</td> <td>クランチ x 20</td> <td>スクワット x 50</td> </tr> </table><p>つまり、腕立て200回腹筋80回スクワット200回をやるだけ。とてもシンプルです。腕立て50回 x 4セットをインターバルなしでできる人なら問題ないはず。私はできません。<br /> <br /> </p> </div> <div class="section"> <h5 id="ヘリオス"><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D8%A5%EA%A5%AA%A5%B9">ヘリオス</a></h5> <p><a href="https://ja.wikipedia.org/wiki/%E3%83%98%E3%83%BC%E3%83%AA%E3%82%AA%E3%82%B9">&#x592A;&#x967D;&#x795E;&#x30D8;&#x30EA;&#x30AA;&#x30B9;</a>です。おそらくランニングなし + 器具なしのゴッドワークアウトの中では最難関と思われます。</p> <figure class="figure-image figure-image-fotolife" title="ヘリオス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206092615.jpg" alt="f:id:shiumachi:20201206092615j:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D8%A5%EA%A5%AA%A5%B9">ヘリオス</a></figcaption></figure> <table> <tr> <th>1セット目</th> <td>バーピー x 100</td> <td>ランジ x 125</td> <td>クライマー x 150</td> <td>シットアップ x 125</td> <td>クライマー x 150</td> <td>ランジ x 125</td> <td>バーピー x 100</td> </tr> </table><p>なんと1セットのみ。別に変わった運動が入るわけでもなく、シンプルに分量が膨大なワークアウトとなっています。</p><p>バーピー200回、ランジ250回、クライマー300回、シットアップ125回をインターバルなしで走り切るのは相当な身体能力が要求されます。</p><p>リーダーボードを見ると、上級者はこの内容を30分以下で完走しています。恐ろしい…。<br /> <br /> </p> </div> <div class="section"> <h5 id="ゼウス-器具あり最難関">ゼウス (器具あり最難関)</h5> <p>ご存知、<a href="https://ja.wikipedia.org/wiki/%E3%82%BC%E3%82%A6%E3%82%B9">&#x5168;&#x80FD;&#x306E;&#x795E;&#x30BC;&#x30A6;&#x30B9;</a>です。ゼウスの名を冠するだけあってその難易度もかなりのものなので、参考までに紹介しておきます。</p><p>倒立するための壁と、懸垂をするためのバーが必要になります。</p> <figure class="figure-image figure-image-fotolife" title="ゼウス"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206092706.jpg" alt="f:id:shiumachi:20201206092706j:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>ゼウス</figcaption></figure> <table> <tr> <th>1セット目</th> <td>ストリクトハンドスタンドプッシュアップ x 10</td> <td>プルアップ x 20</td> <td>プッシュアップ x 30</td> <td>シットアップ x 40</td> <td>スクワット x 50</td> </tr> <tr> <th>2セット目</th> <td>ストリクトハンドスタンドプッシュアップ x 10</td> <td>プルアップ x 20</td> <td>プッシュアップ x 30</td> <td>シットアップ x 40</td> <td>スクワット x 50</td> </tr> <tr> <th>3セット目</th> <td>ストリクトハンドスタンドプッシュアップ x 10</td> <td>プルアップ x 20</td> <td>プッシュアップ x 30</td> <td>シットアップ x 40</td> <td>スクワット x 50</td> </tr> <tr> <th>4セット目</th> <td>ストリクトハンドスタンドプッシュアップ x 10</td> <td>プルアップ x 20</td> <td>プッシュアップ x 30</td> <td>シットアップ x 40</td> <td>スクワット x 50</td> </tr> </table><p>ストリクトハンドスタンドプッシュアップは、要するに壁を使った逆立ち腕立て伏せです。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/eTV4Wgq3bvI"></iframe><br><a href="https://youtube.com/watch?v=eTV4Wgq3bvI">ストリクトハンドスタンドプッシュアップ</a></p><p>プルアップは、反動を使った懸垂です。ちなみに私はハーフラックで懸垂を行っているので反動を使うとさすがにひっくり返るため、プルアップは全て反動なしで行っています(その方が効く)。</p><p><iframe width="560" height="315" frameborder="0" allowfullscreen="" src="//www.youtube.com/embed/c6NkITIwf0o"></iframe><br><a href="https://youtube.com/watch?v=c6NkITIwf0o">プルアップ</a></p><p>まず、逆立ち腕立てができない人は門前払いです。できたとしても、逆立ち腕立て→懸垂→腕立てを連続して行うのはかなりの強靭な肉体がないと厳しいでしょう。<br /> <br /> </p> </div> </div> <div class="section"> <h4 id="さらなる高みを目指して">さらなる高みを目指して</h4> <p>ゴッドワークアウト1セットでは物足りない、という人たち向けに、Freeleticsでは最大3セットまでゴッドワークアウトを連続実行できるようになっています。</p><p>リーダーボードを見ると、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D8%A5%EA%A5%AA%A5%B9">ヘリオス</a>3セットを完走している人が何人かいます。恐ろしい体力です…。</p> <figure class="figure-image figure-image-fotolife" title="鉄人達が並ぶリーダーボード"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206154732.jpg" alt="f:id:shiumachi:20201206154732j:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>鉄人達が並ぶリーダーボード</figcaption></figure> </div> <div class="section"> <h4 id="こんなんできるか">こんなんできるか!</h4> <p>はい、初級はともかく中級以上でフルセットやるのは普通の人にはまず無理です。</p><p>実際のFreeleticsでは部分セットだけをメニューに組み込むなど、アスリートの身体能力に合わせたメニューを用意してくれるので安心してください。</p><p>(例えば「セレネ 1セット目のみ」「<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B1%A5%EB%A5%D9%A5%ED%A5%B9">ケルベロス</a> 1セット目のみ」など)</p><p>ですが、部分セットだけをこなしても記録の見直しができないので、やっぱりフルセットできるようになる方が楽しいです。フルセットのゴッドワークアウトをこなすと、以下のようなログに記録が残ります。</p> <figure class="figure-image figure-image-fotolife" title="アテナの記録"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20201206/20201206154119.png" alt="f:id:shiumachi:20201206154119p:plain" title="" class="hatena-fotolife" itemprop="image"></span><figcaption>アテナの記録</figcaption></figure> </div> <div class="section"> <h4 id="Freeleticsに興味を持った人へ">Freeleticsに興味を持った人へ</h4> <p>Freeleticsは有料のアプリです。年間1万円の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B5%A5%D6%A5%B9%A5%AF%A5%EA%A5%D7%A5%B7%A5%E7%A5%F3">サブスクリプション</a>です。<br /> 3ヶ月プランや6ヶ月プランもあるので、続ける自信がないという人はこちらを購入してもいいです。14日間は返金に応じてくれるので、試しに買ってみて、合わなかったら返金しましょう。</p><p>Freeleticsを始めてみたいという人は、下記のリンクから購入すれば20%オフで買えます。 Coach と Nutrition (食生活改善)の二種類が出てきますが、Nutrition は自分は試していません。運動だけなら Coach で十分と思いますが、誰か Nutrition を試した人がいたら感想教えてください。</p><p><a href="https://www.freeletics.com/r/124871187">https://www.freeletics.com/r/124871187</a></p><p></p> </div> <div class="section"> <h4 id="pyspaアドベントカレンダーの次回予告">pyspa<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%C9%A5%D9%A5%F3%A5%C8%A5%AB%A5%EC%A5%F3%A5%C0%A1%BC">アドベントカレンダー</a>の次回予告</h4> <p>明日は、Freeleticsのゴッドワークアウトなんて鼻歌交じりに完走できるほど屈強な肉体を手に入れてしまった <a href="https://ymotongpoo.hatenablog.com/entry/2020/12/08/000000">ymotongpoo</a> です。<br /> <br /> </p> </div> <div class="section"> <h4 id="関連記事">関連記事</h4> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F06%2F09%2F070000" title="在宅勤務で自宅トレーニングを長く続けるための7つのコツ - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/06/09/070000">shiumachi.hatenablog.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F01%2F26%2F174818" title="今年こそは自宅で運動を始めたい人のためのFreeleticsガイド(2020年版) - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/01/26/174818">shiumachi.hatenablog.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F09%2F15%2F131353" title="Freeleticsで半年間自宅トレーニングしたら食制限なしで6kg痩せた - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/09/15/131353">shiumachi.hatenablog.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F05%2F25%2F220052" title="AIパーソナルトレーナーFreeleticsを使って、自宅で毎日トレーニングしよう - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/05/25/220052">shiumachi.hatenablog.com</a></cite></p> </div> shiumachi pandas.concatでcsvファイルを読み込み、連結する際に簡易的に整合性チェックを行う hatenablog://entry/26006613628028117 2020-09-15T09:00:00+09:00 2020-09-15T09:00:01+09:00 @hurutoriya さんが、先日以下の記事を投稿していました。shunyaueta.comその後ツイッター上でやりとりしているうちにこんな話がありました。ご指摘ありがとうございます!おっしゃるとおりだと思うので、変更しました☺️フィードバックありがたいですhttps://t.co/S1MDDovpUj最近、shiumachi さんのツイートでhttps://t.co/2ByvPpj2dQを知ったので、次はこれを使ってスキーマが同一かテストして連結するパターンも試してみます : )— Shunya Ueta (@hurutoriya) 2020年9月11日 当初は簡単にできるかなと思ったので… <p><a href="https://twitter.com/hurutoriya">@hurutoriya</a> さんが、先日以下の記事を投稿していました。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshunyaueta.com%2Fposts%2F2020-09-09%2F" title="pandas を使って特定のディレクトリのCSVファイルをすべて連結して一つのCSVファイルを作成 • Software Engineer as Data Scientist" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shunyaueta.com/posts/2020-09-09/">shunyaueta.com</a></cite></p><p>その後<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C4%A5%A4%A5%C3%A5%BF%A1%BC">ツイッター</a>上でやりとりしているうちにこんな話がありました。</p><p><blockquote data-conversation="none" class="twitter-tweet" data-lang="ja"><p lang="ja" dir="ltr">ご指摘ありがとうございます!<br>おっしゃるとおりだと思うので、変更しました☺️<br>フィードバックありがたいです<a href="https://t.co/S1MDDovpUj">https://t.co/S1MDDovpUj</a><br><br>最近、shiumachi さんのツイートで<a href="https://t.co/2ByvPpj2dQ">https://t.co/2ByvPpj2dQ</a><br>を知ったので、次はこれを使って<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%AD%A1%BC%A5%DE">スキーマ</a>が同一かテストして連結するパターンも試してみます : )</p>&mdash; Shunya Ueta (@hurutoriya) <a href="https://twitter.com/hurutoriya/status/1304438167689293824?ref_src=twsrc%5Etfw">2020年9月11日</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script> </p><p>当初は簡単にできるかなと思ったのですが、mergeならともかくconcatとなると、そんなに簡単にはいきません。</p><p>こうしたコードを使うケースというのは、大抵の場合探索的データ分析していたり、「素早く手軽に読み込みたい」というものなので、手軽さを失わないようにしながら最低限のチェックを行っていく必要があります。</p><p>連続した<a class="keyword" href="http://d.hatena.ne.jp/keyword/csv">csv</a>を読み込むときにひっかかるケースの大きなものとしては、カラムの不一致とデータ型の不一致です。なので、この2つに絞ってバリデーションを行う、validate関数を作ってみました。</p><p>コードは長くなるので記事の末尾に載せています。</p><p>使い方は簡単で、まず、dfのリストの代わりに、 (pathlib.Path, df) のタプルのリストを作ります。</p> <pre class="code lang-python" data-lang="python" data-unlink> data = [(path, pd.read_csv(<span class="synIdentifier">str</span>(path))) <span class="synStatement">for</span> path <span class="synStatement">in</span> pathlib.Path(f_path).glob(<span class="synConstant">'*.csv'</span>)] </pre><p>あとはこれを validate(data) に入れて、 pd.concat に渡すだけです。</p> <pre class="code lang-python" data-lang="python" data-unlink> pd.concat(validate(data)) </pre><p>もしカラムが一致していない場合は以下のようなエラーが出ます。</p> <pre class="code lang-python" data-lang="python" data-unlink><span class="synType">ValueError</span>: ambiguous columns: file2.csv, file3.csv </pre><p>もしカラムが一致していてもdtypeが一致していない場合は以下のようなエラーが出ます。</p> <pre class="code lang-python" data-lang="python" data-unlink><span class="synType">ValueError</span>: inconsistent dtypes: int64, <span class="synIdentifier">object</span> <span class="synStatement">in</span> file2.csv, file4.csv </pre><p><br /> 適当に作ったコードなのでエラー等あるかもしれません。<br /> もし不具合等あったらお気軽にご報告ください。<br /> <br /> </p> <div class="section"> <h4>コード全体(デモコードつき)</h4> <pre class="code lang-python" data-lang="python" data-unlink><span class="synPreProc">import</span> pathlib <span class="synPreProc">import</span> typing <span class="synPreProc">import</span> pandas <span class="synStatement">as</span> pd <span class="synComment"># data definition</span> <span class="synComment">## valid data</span> df1 = pd.DataFrame( [ {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">100</span>, <span class="synConstant">&quot;c2&quot;</span>: <span class="synConstant">&quot;a100&quot;</span>}, {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">101</span>, <span class="synConstant">&quot;c2&quot;</span>: <span class="synConstant">&quot;a101&quot;</span>}, ] ) <span class="synComment">## valid data</span> df2 = pd.DataFrame( [ {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">200</span>, <span class="synConstant">&quot;c2&quot;</span>: <span class="synConstant">&quot;a200&quot;</span>}, {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">202</span>, <span class="synConstant">&quot;c2&quot;</span>: <span class="synConstant">&quot;a202&quot;</span>}, ] ) <span class="synComment">## invalid data: ambiguous column names</span> df3 = pd.DataFrame( [ {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">300</span>, <span class="synConstant">&quot;c3&quot;</span>: <span class="synConstant">&quot;a300&quot;</span>}, {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">301</span>, <span class="synConstant">&quot;c3&quot;</span>: <span class="synConstant">&quot;a301&quot;</span>}, ] ) <span class="synComment">## invalid data: inconsistent dtypes</span> df4 = pd.DataFrame( [ {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">&quot;400&quot;</span>, <span class="synConstant">&quot;c2&quot;</span>: <span class="synConstant">&quot;a400&quot;</span>}, {<span class="synConstant">&quot;c1&quot;</span>: <span class="synConstant">401</span>, <span class="synConstant">&quot;c2&quot;</span>: <span class="synConstant">&quot;a401&quot;</span>}, ] ) <span class="synComment">## dataset test case 1: ambiguous column names</span> data1 = [ (pathlib.Path(<span class="synConstant">&quot;file1.csv&quot;</span>), df1), (pathlib.Path(<span class="synConstant">&quot;file2.csv&quot;</span>), df2), (pathlib.Path(<span class="synConstant">&quot;file3.csv&quot;</span>), df3), ] <span class="synComment">## dataset test case 2: inconsistent dtypes</span> data2 = [ (pathlib.Path(<span class="synConstant">&quot;file1.csv&quot;</span>), df1), (pathlib.Path(<span class="synConstant">&quot;file2.csv&quot;</span>), df2), (pathlib.Path(<span class="synConstant">&quot;file4.csv&quot;</span>), df4), ] <span class="synStatement">def</span> <span class="synIdentifier">validate</span>( data: typing.Sequence[typing.Tuple[pathlib.Path, typing.Sequence[pd.DataFrame]]] ) -&gt; typing.Sequence[pd.DataFrame]: <span class="synConstant">&quot;&quot;&quot;simple data validation</span> <span class="synConstant"> :param data: [(path, df)]</span> <span class="synConstant"> :return: [df]</span> <span class="synConstant"> &quot;&quot;&quot;</span> <span class="synStatement">for</span> x, y <span class="synStatement">in</span> <span class="synIdentifier">zip</span>(data, data[<span class="synConstant">1</span>:]): <span class="synStatement">if</span> x[<span class="synConstant">1</span>].columns.tolist() != y[<span class="synConstant">1</span>].columns.tolist(): <span class="synStatement">raise</span> <span class="synType">ValueError</span>(f<span class="synConstant">&quot;ambiguous columns: {x[0]}, {y[0]}&quot;</span>) <span class="synStatement">for</span> xd, yd <span class="synStatement">in</span> <span class="synIdentifier">zip</span>(x[<span class="synConstant">1</span>].dtypes, y[<span class="synConstant">1</span>].dtypes): <span class="synStatement">if</span> xd != yd: <span class="synStatement">raise</span> <span class="synType">ValueError</span>(f<span class="synConstant">&quot;inconsistent dtypes: {xd}, {yd} in {x[0]}, {y[0]}&quot;</span>) <span class="synStatement">return</span> [x[<span class="synConstant">1</span>] <span class="synStatement">for</span> x <span class="synStatement">in</span> data] <span class="synIdentifier">print</span>(<span class="synConstant">&quot;### validate ambiguous columns demo ###&quot;</span>) <span class="synStatement">try</span>: pd.concat(validate(data1)) <span class="synStatement">except</span> <span class="synType">ValueError</span> <span class="synStatement">as</span> ve: <span class="synIdentifier">print</span>(ve) <span class="synIdentifier">print</span>(<span class="synConstant">&quot;### validate inconsistent dtypes demo ###&quot;</span>) <span class="synStatement">try</span>: pd.concat(validate(data2)) <span class="synStatement">except</span> <span class="synType">ValueError</span> <span class="synStatement">as</span> ve: <span class="synIdentifier">print</span>(ve) </pre> </div> <div class="section"> <h4>謝辞</h4> <p><a href="https://twitter.com/aodag">@aodag</a> (zipのエレガントな書き方を教えてくれてありがとうございます)</p> </div> shiumachi Hadoop DistCp実践ガイド2020年版 hatenablog://entry/26006613600670033 2020-07-20T08:00:00+09:00 2020-07-20T08:00:20+09:00 Hadoop DistCp (distributed copy, でぃすとしーぴー、でぃすとこぴー) は、MapReduceを用いてHadoopクラスタ間でデータコピーするためのツールです。保守運用している場合を除き、おそらく2020年においても運用上の選択肢として残っている最後のMapReduceのツールです。この記事では、DistCpの紹介と実践的な使い方の基本について説明していきます。内容としては以下の通りです。 Distcpの概要と原理 実践DistCp DistCpにドライランはない コピーとアップデートの挙動の違いを押さえる スナップショットを取得する ソースと宛先、どちらのクラス… <p><a href="https://hadoop.apache.org/docs/current/hadoop-distcp/DistCp.html">Hadoop DistCp</a> (distributed copy, でぃすとしーぴー、でぃすとこぴー) は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>を用いて<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>間でデータコピーするためのツールです。保守運用している場合を除き、おそらく2020年においても運用上の選択肢として残っている最後の<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>のツールです。この記事では、DistCpの紹介と実践的な使い方の基本について説明していきます。内容としては以下の通りです。</p> <ul> <li>Distcpの概要と原理</li> <li>実践DistCp <ul> <li>DistCpにドライランはない</li> <li>コピーとアップデートの挙動の違いを押さえる</li> <li>スナップショットを取得する</li> <li>ソースと宛先、どちらの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>でDistCpを実行するか</li> <li>異なるメジャーバージョン間でのデータ転送にwebhdfsを使う</li> <li>-p オプションの挙動</li> <li>2つのコピー戦略: uniformizeとdynamic</li> <li>map数の調整</li> <li>転送帯域</li> </ul></li> </ul> <div class="section"> <h4>なんで今更DistCp?</h4> <p>DistCpの使い方についてきちんと書いているドキュメントがなかったので書きました。<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>のバイブルである象本さえ、DistCpについては本当に簡単なことしか書いておらず、実際の使い方についてまとめているドキュメントがありませんでした。<a href="https://www.cloudera.com/">Cloudera</a>のようなベンダーの場合は <a href="https://docs.cloudera.com/documentation/enterprise/6/6.3/topics/cm_bdr_replication_intro.html">Cloudera Manager &#x3068;&#x3044;&#x3046;&#x7D20;&#x6674;&#x3089;&#x3057;&#x3044;&#x30C4;&#x30FC;&#x30EB;&#x304C;&#x6301;&#x3064;&#x30C7;&#x30FC;&#x30BF;&#x30EC;&#x30D7;&#x30EA;&#x30B1;&#x30FC;&#x30B7;&#x30E7;&#x30F3;&#x6A5F;&#x80FD;</a>に包含されていて、ユーザーはボタン一発で<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>間データ転送ができるため、DistCpについて細かい話を知る必要はありません。そこで、素の<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>を使う人のためのDistCpの記事を書いておくことにしました。</p><p>DistCpについての機能一覧などの詳細については公式ドキュメントを参照してください。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4873116295/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/519I6YtkP+L._SL160_.jpg" class="hatena-asin-detail-image" alt="Hadoop 第3版" title="Hadoop 第3版"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4873116295/shiumachijigo-22/">Hadoop 第3版</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/Tom%20White" class="keyword">Tom White</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2013/07/26</li><li><span class="hatena-asin-detail-label">メディア:</span> 大型本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fhadoop.apache.org%2Fdocs%2Fcurrent%2Fhadoop-distcp%2FDistCp.html" title="Apache Hadoop Distributed Copy – DistCp Guide" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://hadoop.apache.org/docs/current/hadoop-distcp/DistCp.html">hadoop.apache.org</a></cite></p><p></p> </div> <div class="section"> <h4>DistCpの概要</h4> <p>DistCp は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>を用いて<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>間で高速にデータコピーするためのツールで、<a href="https://hadoop.apache.org/">Apache Hadoop</a> の標準リリースに含まれています。<a class="keyword" href="http://d.hatena.ne.jp/keyword/Apache">Apache</a> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>は、分散ストレージの<a class="keyword" href="http://d.hatena.ne.jp/keyword/HDFS">HDFS</a>(<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a> Distributed File System、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%CA%AC%BB%B6%A5%D5%A5%A1%A5%A4%A5%EB%A5%B7%A5%B9%A5%C6%A5%E0">分散ファイルシステム</a>)と、分散コンピューティング<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%EC%A1%BC%A5%E0%A5%EF%A1%BC%A5%AF">フレームワーク</a>のYARNから構成されている分散処理<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%EC%A1%BC%A5%E0%A5%EF%A1%BC%A5%AF">フレームワーク</a>で、<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>はYARN上で動く代表的なアプリケーションの一つです。 <a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>間と書きましたが、正確には分散ストレージ間と言った方が正しいでしょう。DistCpは、<a class="keyword" href="http://d.hatena.ne.jp/keyword/HDFS">HDFS</a>だけでなく、<a href="https://aws.amazon.com/jp/s3/">Amazon S3</a> や<a href="https://docs.microsoft.com/ja-jp/azure/hdinsight/hdinsight-hadoop-use-blob-storage">Azure Storage</a> といったオブジェクトストレージにも対応しています。</p><p>DistCpは<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%DE%A5%F3%A5%C9%A5%E9%A5%A4%A5%F3">コマンドライン</a>ツールで、以下のような形式で実行します。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre><p>これは、cluster1という<a class="keyword" href="http://d.hatena.ne.jp/keyword/HDFS">HDFS</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>の、 /foo/bar というパスを、cluster2 という<a class="keyword" href="http://d.hatena.ne.jp/keyword/HDFS">HDFS</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>の、 /foo という<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リにコピーする、というコマンドとなります。<br /> <br /> </p> </div> <div class="section"> <h4>DistCpの原理</h4> <p>DistCpは、<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%EC%A1%BC%A5%E0%A5%EF%A1%BC%A5%AF">フレームワーク</a>で動作します。まず、<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>について簡単におさらいします。<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>は、複数のノードで別個に計算処理を行うMap、特定のキーごとにデータを転送して集約するShuffle、集約されたデータに対し、Mapと同様、ノードごとに独立して処理を行うReduceという3つのフェーズで分散処理を行う<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%EC%A1%BC%A5%E0%A5%EF%A1%BC%A5%AF">フレームワーク</a>です。<br /> 以下の図は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>の処理の流れを表しています。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200719/20200719122107.png" alt="f:id:shiumachi:20200719122107p:plain" title="f:id:shiumachi:20200719122107p:plain" class="hatena-fotolife" itemprop="image"></span></p><p>DistCpは、Map処理のみを使い、何も計算せず(恒等関数)、入力と出力を別の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>で行うという形で<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>を使用しています。</p><p>以下の図は、DistCpの処理の流れを表しています。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200719/20200719122509.png" alt="f:id:shiumachi:20200719122509p:plain" title="f:id:shiumachi:20200719122509p:plain" class="hatena-fotolife" itemprop="image"></span></p><p>DistCpのソース(読み込み元)と宛先(書き込み先)は<a class="keyword" href="http://d.hatena.ne.jp/keyword/URI">URI</a>で表されます。先程の例では、宛先を <a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a>://cluster2/foo としましたが、この宛先は s3a://bucket1/foo でも問題なく動作します。これは、S3上の bucket1 という<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D0%A5%B1%A5%C3%A5%C8">バケット</a>の配下にある foo という<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CC%BE%C1%B0%B6%F5%B4%D6">名前空間</a>にデータをコピーすることを意味します。<br /> <br /> </p> </div> <div class="section"> <h4>実践DistCp: ドライランはない</h4> <p>DistCpは、非常に大規模かつ不可逆変更を行うツールであるにも関わらず、ドライランに相当する機能が存在しないという点に注意してください。ドライランがないということは、十分に検証<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>でテストした後、本番での実行が成功することを、神(あるいはあなたが信仰する何か)に祈るしかなくなります。そして大抵の場合その祈りが届くことはありません。頑張りましょう。</p><p>ドライランについては6年間オープンしているJIRAがありますので、我こそはという方は実装お待ちしています。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fissues.apache.org%2Fjira%2Fbrowse%2FHADOOP-10323" title="[HADOOP-10323] Allow users to do a dryrun of distcp - ASF JIRA" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://issues.apache.org/jira/browse/HADOOP-10323">issues.apache.org</a></cite><br /> </p> </div> <div class="section"> <h4>実践DistCp: コピーとアップデートの挙動の違いを押さえる</h4> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/hadoop">hadoop</a> distcp コマンドは、何もオプションをつけない場合は、コピーという挙動になります。これは、以下の操作を行います。</p> <ul> <li>ソースにパスが存在し、宛先に存在しない場合はコピーする</li> <li>ソースと宛先に同じパスが存在する場合は何もしない</li> <li>ソースにパスが存在せず、宛先に存在する場合は何もしない</li> </ul><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/hadoop">hadoop</a> distcp -update では、以下のように挙動が変わります。</p> <ul> <li>ソースにパスが存在し、宛先に存在しない場合はコピーする</li> <li>ソースと宛先に同じパスが存在する場合、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C1%A5%A7%A5%C3%A5%AF%A5%B5%A5%E0">チェックサム</a>などコンテンツの中身を確認し、コンテンツが異なる場合はコピーする。コンテンツが同一の場合は何もしない</li> <li>ソースにパスが存在せず、宛先に存在する場合は何もしない</li> </ul><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/hadoop">hadoop</a> distcp -update -delete では、以下のように挙動が変わります。</p> <ul> <li>ソースにパスが存在し、宛先に存在しない場合はコピーする</li> <li>ソースと宛先に同じパスが存在する場合、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C1%A5%A7%A5%C3%A5%AF%A5%B5%A5%E0">チェックサム</a>などコンテンツの中身を確認し、コンテンツが異なる場合はコピーする。コンテンツが同一の場合は何もしない</li> <li>ソースにパスが存在せず、宛先に存在する場合はそのパスを削除する</li> </ul><p>これらの挙動をまとめると、以下の図のようになります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200719/20200719122945.png" alt="f:id:shiumachi:20200719122945p:plain" title="f:id:shiumachi:20200719122945p:plain" class="hatena-fotolife" itemprop="image"></span></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/hadoop">hadoop</a> distcp に -update をつける場合、コンテンツの中身を比較するため、オーバーヘッドが発生します。そのため、-updateなしに比べて処理性能が落ちることに注意してください。</p><br /> <p>DistCpのコピーとアップデートの挙動の違いは間違えやすく、そしてその間違いが重大な事故を起こしてしまう可能性がありますので絶対に覚えてください。</p><p>以下の2つの例を見てください。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink><span class="synComment"># 例1</span> $ hadoop distcp hdfs://cluster1/foo/bar hdfs://cluster2/foo <span class="synComment"># 例2: 誤った方法</span> $ hadoop distcp -update hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre><p>例1は、cluster2/foo の直下に cluster1/foo/bar をコピーするので、結果として cluster2/foo/bar が作成されます。<br /> 例2は、 cluster2/foo を cluster1/foo/bar の内容でアップデートするので、 cluster2/foo/bar は作成されず、cluster2/foo のコンテンツが cluster1/foo/bar と同じものになります。</p><p>図にすると以下のようになります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200719/20200719123329.png" alt="f:id:shiumachi:20200719123329p:plain" title="f:id:shiumachi:20200719123329p:plain" class="hatena-fotolife" itemprop="image"></span></p><p>この一例だけだとピンとこないかもしれませんので、もっと実務上実行する可能性のあるコマンドでみてみましょう。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink><span class="synComment"># 例3</span> $ hadoop distcp hdfs://cluster1/user/sato hdfs://cluster2/user <span class="synComment"># 例4: 誤った方法</span> $ hadoop distcp -update -delete hdfs://cluster1/user/sato hdfs://cluster2/user </pre><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/hadoop">hadoop</a> distcp の -delete オプションは -update オプションと一緒に使わないと利用できないオプションで、ソース<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>には存在しないけど宛先<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>には存在する全てのパスを削除します。つまり、-delete を付与すると、ソースと宛先のコンテンツが全く同一のものとなります。<br /> 例3は、 cluster1/user/sato を、 cluster2/user/ にコピーします。よって、cluster2/user/sato が作成されます。<br /> 例4は、 cluster2/user のコンテンツが、cluster1/user/sato と全く同じものになります。つまり、 /user <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リ配下に存在する全てのユーザーデータが完全に削除され、その代わりにユーザ sato のコンテンツだけが置かれるようになります。</p><p>図に表すと、以下のようになります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200719/20200719123553.png" alt="f:id:shiumachi:20200719123553p:plain" title="f:id:shiumachi:20200719123553p:plain" class="hatena-fotolife" itemprop="image"></span></p><p>「ゴミ箱機能があるから即座に削除されることはないのでは?」と思うかもしれませんが、DistCpのバグでゴミ箱は機能しません。この問題は2020/07/15現在未解決です。詳細については以下のJIRAも参照してください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fissues.apache.org%2Fjira%2Fbrowse%2FHDFS-9913" title="[HDFS-9913] DistCp to add -useTrash to move deleted files to Trash - ASF JIRA" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://issues.apache.org/jira/browse/HDFS-9913">issues.apache.org</a></cite></p><p>運用者はこのコマンドを誤って実行した時点で、即座に緊急事態のアラートを出さなければいけなくなるでしょう。</p><p>この例4は、正しくは以下のように書くべきでした。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink><span class="synComment"># 例4: 誤った方法</span> $ hadoop distcp -update -delete hdfs://cluster1/user/sato hdfs://cluster2/user <span class="synComment"># 例5: 例4の正しい書き方</span> $ hadoop distcp -update -delete hdfs://cluster1/user/sato hdfs://cluster2/user/sato </pre><p>では、ここでもう一つの例を紹介しましょう。cluster2に既に/userが存在するときに、以下のコマンドを実行すると何が起きるでしょうか。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink><span class="synComment"># 例6: 誤った方法</span> $ hadoop distcp hdfs://cluster1/user hdfs://cluster2/user </pre><p>これが、-update ( -delete ) がついていたならば、問題なかったかもしれません。しかし、今回は -update がついていません。よって、 cluster1/user が cluster2/user の配下にコピーされます。つまり、 cluster2/user/user が作成されます。これは、多くの運用者にとって意図した挙動ではないでしょう。</p><p>このとき、安易に cluster2/user/user を削除することはできません。なぜなら、 cluster2/user/user という<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リはコピー前から存在していた可能性があり、その中にコンテンツが存在していた可能性があるからです。一度混じってしまえば、cluster1由来のコンテンツとcluster2オリジナルのコンテンツをふるい分けるのは困難でしょう。-update オプションがないときも決して油断してはいけません。<br /> cluster1の/userをcluster2の/userにコピーする場合、以下のように書くべきでした。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink><span class="synComment"># 例6: 誤った方法</span> $ hadoop distcp hdfs://cluster1/user hdfs://cluster2/user <span class="synComment"># 例7: 例6の正しい書き方</span> $ hadoop distcp hdfs://cluster1/user hdfs://cluster2/ </pre><p>図に表すと、以下のようになります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200719/20200719124216.png" alt="f:id:shiumachi:20200719124216p:plain" title="f:id:shiumachi:20200719124216p:plain" class="hatena-fotolife" itemprop="image"></span></p><p>手動・自動での実行に関わらず、パスの確認は絶対に最後の最後まで確実に行うようにしてください。<br /> <br /> </p> </div> <div class="section"> <h4>実践DistCp: スナップショットを取得する</h4> <p>DistCpは、通常非常に膨大な時間がかかります。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>全体のデータ転送の場合、1日や2日は当たり前で、1週間や1ヶ月に渡って転送し続ける、ということは頻繁に起こります。DistCpは<a class="keyword" href="http://d.hatena.ne.jp/keyword/MapReduce">MapReduce</a>実行前に対象パスの一覧を取得しますので、転送中にソースファイルが変化しても一切考慮することはできません。大抵の場合、転送中にファイルが削除され、何日もかけたDistCpが失敗することになるでしょう。運良く転送に成功したとしても、コンテンツの中身に不整合が発生していれば、Hive等の別のアプリケーションでの処理結果が意図しないものとなり、いいことは一つもありません。そのため、ソースはスナップショットを指定するのが鉄則です。<br /> スナップショットの取得は、以下の2つのコマンドを順番に実行します。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hdfs dfsadmin -allowSnapshot hdfs://cluster1/foo/bar $ hdfs dfs -createSnapshot hdfs://cluster1/foo/bar snapshot1 </pre><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a> dfsadmin -allowSnapshot は <a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a> ユーザでないと実行できませんが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a> dfs -createSnapshot は、対象<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リの権限を持っている一般ユーザでも実行可能です。上記コマンドを実行すると、 <a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a>://cluster1/foo/bar/.snapshot/snapshot1 という<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リが作成され、この配下には <a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a>://cluster1/foo/bar のコンテンツと全く同じハードリンクが作成されます。<br /> snapshot1はスナップショット名なので、自由に変更してコマンドを実行してください。</p><p>スナップショットを使ったDistCpは以下のように記述します。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp hdfs://cluster1/foo/bar/.snapshot/snapshot1 hdfs://cluster2/foo </pre> </div> <div class="section"> <h4>実践DistCp: ソースと宛先、どちらの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>でDistCpを実行するか</h4> <p>DistCpは、基本的には宛先<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>側で実行することを推奨します。DistCpを宛先<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>側で実行しなければならないケースとしては以下のようなものがあります。</p> <ul> <li>非セキュア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>からセキュア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>にデータをコピーする場合</li> <li>低いメジャーバージョンの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>から高いメジャーバージョンにデータをコピーする場合</li> </ul><p>また、新規<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>へのデータ移行の場合、ソース<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>は通常業務のアプリケーションが稼働している一方、宛先<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>は大抵の場合本番稼働前なので、ソース<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>の負荷を増やさずに、宛先のリソースを有効活用することができます。</p><p>DistCpをソース<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>で実施しなければいけないケースもあります。例えば、セキュア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>から非セキュア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>へデータを転送する場合です。</p><p>Clouderaの以下のドキュメントの記載を引用します。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fdocs.cloudera.com%2Fdocumentation%2Fenterprise%2Flatest%2Ftopics%2Fcdh_admin_distcp_secure_insecure.html" title="Copying Data between a Secure and an Insecure Cluster using DistCp and WebHDFS | 6.3.x | Cloudera Documentation" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://docs.cloudera.com/documentation/enterprise/latest/topics/cdh_admin_distcp_secure_insecure.html">docs.cloudera.com</a></cite><br /> </p> <blockquote> <p>You can use DistCp and WebHDFS to copy data between a secure cluster and an insecure cluster. Note that when doing this, the distcp commands should be run from the secure cluster.</p> </blockquote> <p>セキュア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>におけるDistCpの方法についてはこの記事では扱いませんが、DistCpをどちらの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>で実施するかを検討する場合には頭の片隅にとどめておいてください。<br /> <br /> </p> </div> <div class="section"> <h4>実践DistCp: 異なるメジャーバージョン間でのデータ転送にwebhdfsを使う</h4> <p>webhdfs<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C8%A5%B3%A5%EB">プロトコル</a>を使うことで、メジャーバージョンの低いバージョンから高いバージョンへのデータ転送を行うことができます。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp webhdfs://cluster1/foo/bar hdfs://cluster2/foo </pre><p>以下は参考リンクです。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fdocs.cloudera.com%2Fdocumentation%2Fenterprise%2Flatest%2Ftopics%2Fcdh_admin_distcp_data_cluster_migrate.html" title="Copying Cluster Data Using DistCp | 6.3.x | Cloudera Documentation" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://docs.cloudera.com/documentation/enterprise/latest/topics/cdh_admin_distcp_data_cluster_migrate.html">docs.cloudera.com</a></cite></p><p></p> </div> <div class="section"> <h4>実践DistCp: -p オプションの挙動</h4> <p>デフォルトでは、DistCpはファイル属性等はコピーしません。ファイル属性をコピーするには -p オプションを使いますが、このオプションの挙動には様々な制約事項が存在します。例えば、 -update オプションはコンテンツの中身が同一のパスに対してはコピーを実施しませんが、このときファイル属性だけが違っていてもその属性を更新したりはしません。<br /> 以下の例で、両<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>に /foo/bar/file1 というファイルがあるとします。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp -update hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre><p>このとき、cluster1/foo/bar/file1 の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%DF%A5%C3%A5%B7%A5%E7%A5%F3">パーミッション</a>が644で、 cluster2/foo/bar/file1 の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%DF%A5%C3%A5%B7%A5%E7%A5%F3">パーミッション</a>が600となっていて、ファイルのコンテンツが全く同一である場合、cluster2/foo/bar/file1 の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%DF%A5%C3%A5%B7%A5%E7%A5%F3">パーミッション</a>は 600 のまま変更されません。</p><p>別の例を紹介しましょう。 -pt オプションを使うと更新日時などを保持できますが、このオプションは、NameNodeの設定の一つ、 dfs.namenode.accesstime.precision (デフォルト1時間) が0(無効)の場合利用できません。dfs.namenode.accesstime.precision を 0 にしたまま以下のコマンドを実行しても、失敗します。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp -pt hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre><p>このとき、以下のようなエラーが出力されます。</p> <blockquote> <p>Error: org.<a class="keyword" href="http://d.hatena.ne.jp/keyword/apache">apache</a>.<a class="keyword" href="http://d.hatena.ne.jp/keyword/hadoop">hadoop</a>.ipc.RemoteException(<a class="keyword" href="http://d.hatena.ne.jp/keyword/java">java</a>.io.IOException): <a class="keyword" href="http://d.hatena.ne.jp/keyword/Access">Access</a> time for <a class="keyword" href="http://d.hatena.ne.jp/keyword/hdfs">hdfs</a> is not configured. Please set dfs.namenode.accesstime.precision configuration parameter.</p> </blockquote> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%AF%A5%BB%A5%B9%BB%FE%B4%D6">アクセス時間</a>の設定はパフォーマンスの最適化のために0にするのが推奨で、Ambari / HDP はデフォルト0になっていますが、コミュニティ版もClouderaもデフォルト1時間なので、設定そのものを知らない人も多いと思います。 -p オプションを使うときはドキュメントを読むだけで設計せず、必ず検証をしてください。<br /> <br /> </p> </div> <div class="section"> <h4>実践DistCp: 2つのコピー戦略: uniformizeとdynamic</h4> <p>DistCpが各Mapタスクに処理対象のパスを振り分ける戦略は2タイプ存在します。デフォルトはuniformizeという、データサイズで分割する方法です。例えば転送対象のデータが100TBあり、mapタスクを1000で設定した場合、各mapタスクは100GBのデータを転送するように、ファイルパスを振り分けられます。この挙動は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%BD%A1%BC%A5%B9%A5%B3%A1%BC%A5%C9">ソースコード</a>を読めばわかりますが、リストされたファイルを上から順に取り出していきサイズを足していき、転送対象の全データサイズ/map数を超えたら次のmapタスクに渡す、という操作を行っています。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgithub.com%2Fapache%2Fhadoop%2Fblob%2Ftrunk%2Fhadoop-tools%2Fhadoop-distcp%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fhadoop%2Ftools%2Fmapred%2FUniformSizeInputFormat.java%23L79-L131" title="apache/hadoop" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://github.com/apache/hadoop/blob/trunk/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/mapred/UniformSizeInputFormat.java#L79-L131">github.com</a></cite></p><p>理想的な<a class="keyword" href="http://d.hatena.ne.jp/keyword/HDFS">HDFS</a>の環境ではこれで問題ないのですが、小さいファイルが大量にある環境の場合は、uniformizeではうまくいきません。<br /> uniformizeでは、どれだけたくさんのファイルがあっても、一定のサイズを超えない限りはそれらのファイルが1mapタスクに割り当てられてしまいます。割り当てられるファイルは、ファイルリストの上から順にファイルを取り出されます。ファイルリストは、単純に対象<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リの配下のファイル・<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リを<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BA%C6%B5%A2">再帰</a>的にリストしているだけなので、同一<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リのファイルは一箇所に固まっています。その結果、ある<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リのファイルは1タスクに集中することになります。<br /> 1ファイルに対する<a class="keyword" href="http://d.hatena.ne.jp/keyword/HDFS">HDFS</a>アクセスは非常に遅いです。環境にもよりますが、1ファイルあたり数msのオーダーは見たほうがいいでしょう。そのため、スモールファイルが多いストレージでは、データ転送速度は非常に遅くなります。そして、多くの場合、スモールファイルは局所化しています。これはすなわち、特定の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リにスモールファイルが集中していることを意味します。<br /> まとめると、特定の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8">ディレクト</a>リに集中したスモールファイル群がまとめて1つのmapタスクに割り当てられる結果、mapタスクのスキューが発生し、そのmapタスクだけが極端に遅くなるという現象が発生します。</p><p>このような環境では、dynamic というもう一つのコピー戦略を使います。dynamic はファイル数でタスクあたりの割当を分割するオプションです。例えば、1億ファイルあるシステムで1000mapタスクで処理を分割する場合、1タスクあたり10万ファイルを担当することになります。<br /> dynamicオプションを使う場合、uniformizeと逆に、極端にファイルサイズが大きいデータが集中しているケースに注意してください。ファイルサイズを考慮しないでデータを分割するため、特定のタスクだけ極端に大きなデータを処理しなければいけないというリスクが発生します。転送対象のデータ特性は必ず事前に調査しましょう。<br /> dynamic 戦略を使うには、以下のようにオプションを与えます。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp -strategy dynamic hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre> </div> <div class="section"> <h4>実践DistCp: map数の調整</h4> <p>デフォルトではDistCpは20mapタスクしか使用しません。データ量やリソース状況に応じて、map数の調整をしたほうがいいでしょう。以下の例は、map数を100とする場合の例です。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp -m <span class="synConstant">100</span> hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre><p>map数の調整は、基本的な<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>アプリケーションと同様、ストレージIOやリソースに応じて調整する必要があります。リソースをフルに使えるのであれば、総ディスク数の1~2倍くらいにしておくのがいいと思いますが、例えばスモールファイル中心の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>の場合IOよりもCPU依存になるはずなので、CPUコア数からタスク数を計算した方がいいかもしれませんし、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>のリソースが逼迫している状態であればむしろmap数を減らしてゆっくり処理した方がいいかもしれません。このあたりの計算に自信がなければ、まずはデフォルトで試験的に転送してみて、転送速度を計算した上で必要があればチューニングするという程度でいいと思います。<br /> <br /> </p> </div> <div class="section"> <h4>実践DistCp: 転送帯域</h4> <p>ネットワークの帯域リソースが逼迫している場合は、転送用の帯域を制御した方がいいでしょう。以下のように設定することで、1mapあたりの転送帯域を10MB/sに抑えることができます。</p> <pre class="code lang-zsh" data-lang="zsh" data-unlink>$ hadoop distcp -bandwidth <span class="synConstant">10</span> hdfs://cluster1/foo/bar hdfs://cluster2/foo </pre> </div> <div class="section"> <h4>この記事で書いていないこと</h4> <p>ただコピーするといっても、細かい要件はプロジェクトによって異なり、それに応じてDistCpの様々な機能を活用していく必要があります。<br /> この記事でカバーしていない内容は以下の通りです。</p> <ul> <li>snapshot diff を使った定常的な<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BA%B9%CA%AC%A5%D0%A5%C3%A5%AF%A5%A2%A5%C3%A5%D7">差分バックアップ</a></li> <li>HA<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>でのDistCp</li> <li>セキュア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>でのDistCp</li> <li>オブジェクトストレージを対象としたDistCp</li> </ul><p>そして、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%E9%A5%B9%A5%BF">クラスタ</a>移行という話になったときは、必要な作業はDistCpだけではありません。例えば、HiveメタストアDBのデータ移行や、管理ツールのデータ移行など、考えるべき課題は他にもあります。これらについて、最新の情報をベースに体系的にまとめられた書籍は存在しないので、もし自信がないという場合はCloudera等のベンダーに相談することをおすすめします。<br /> <br /> </p> </div> <div class="section"> <h4>参考リンク</h4> <p>既出も含めて、参考リンクをまとめておきます。</p> <ul> <li><a href="https://hadoop.apache.org/docs/current/hadoop-distcp/DistCp.html">Apache Hadoop &#x306E; DistCp &#x306E;&#x30C9;&#x30AD;&#x30E5;&#x30E1;&#x30F3;&#x30C8;</a></li> <li><a href="https://docs.cloudera.com/documentation/enterprise/latest/topics/cdh_admin_distcp_data_cluster_migrate.html">Cloudera Enterprise &#x306E;&#x30C9;&#x30AD;&#x30E5;&#x30E1;&#x30F3;&#x30C8;</a></li> <li><a href="http:// https://docs.cloudera.com/HDPDocuments/HDP3/HDP-3.1.5/administration/content/using-distcp-to-copy-files.html">HDP &#x306E;&#x30C9;&#x30AD;&#x30E5;&#x30E1;&#x30F3;&#x30C8;</a></li> </ul> </div> <div class="section"> <h4>謝辞</h4> <p>本記事の執筆にあたり、以下の方々にレビューしていただきました。この場を借りてお礼申し上げます。(順不同、敬称略)</p> <ul> <li><a href="https://twitter.com/chezou">chezou</a></li> <li><a href="https://twitter.com/d1ce_">d1ce_</a></li> <li><a href="https://twitter.com/kernel023">kernel023</a></li> <li><a href="https://twitter.com/kmizumar">kmizumar</a></li> <li><a href="https://twitter.com/moriyoshit">moriyoshit</a></li> <li><a href="https://twitter.com/nyaxt">nyaxt</a></li> <li><a href="https://twitter.com/takabow">takabow</a></li> </ul> </div> shiumachi 自然言語処理ナイト #dllab hatenablog://entry/26006613592915994 2020-07-03T06:00:00+09:00 2020-07-03T06:00:01+09:00 dllab.connpass.comNLPに関するイベントとして目に入ってきたので参加してみました。業界関係者でも自分がきちんと知っている分野でもなく、純粋に勉強目的で一参加者として勉強会に参加したのは久々でしたが、非常に内容の濃いイベントで面白かったです。主催されたマイクロソフト様と登壇者の皆様、ありがとうございます。以下、自分の理解の範囲で書いたまとめを記しておきます。 Attention is all you need !!! を入門するまえに! (Microsoft 得上竜一さん)Transformer論文 Attention is All You Need を読むための前提知識を紹介… <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fdllab.connpass.com%2Fevent%2F177785%2F" title="自然言語処理ナイト (2020/07/02 18:00〜)" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://dllab.connpass.com/event/177785/">dllab.connpass.com</a></cite></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>に関するイベントとして目に入ってきたので参加してみました。</p><p>業界関係者でも自分がきちんと知っている分野でもなく、純粋に勉強目的で一参加者として勉強会に参加したのは久々でしたが、非常に内容の濃いイベントで面白かったです。主催された<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%A4%A5%AF%A5%ED%A5%BD%A5%D5%A5%C8">マイクロソフト</a>様と登壇者の皆様、ありがとうございます。</p><p>以下、自分の理解の範囲で書いたまとめを記しておきます。</p> <div class="section"> <h4>Attention is all you need !!! を入門するまえに!</h4> <p>(<a class="keyword" href="http://d.hatena.ne.jp/keyword/Microsoft">Microsoft</a> 得上竜一さん)</p><p>Transformer論文 Attention is All You Need を読むための前提知識を紹介したセッション。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Farxiv.org%2Fabs%2F1706.03762" title="Attention Is All You Need" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://arxiv.org/abs/1706.03762">arxiv.org</a></cite></p><p>Attention is All You Need の解説記事は日本語でもあります。</p><p><iframe src="https://hatenablog-parts.com/embed?url=http%3A%2F%2Fdeeplearning.hatenablog.com%2Fentry%2Ftransformer" title="論文解説 Attention Is All You Need (Transformer) - ディープラーニングブログ" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="http://deeplearning.hatenablog.com/entry/transformer">deeplearning.hatenablog.com</a></cite></p><br /> <p></p> <ul> <li>Attentionは、注目したデータに従って出力する仕組み <ul> <li>例: 画像処理</li> <li>背景が映った画像をそのまま処理すると背景情報を取り込んでしまう</li> <li>Attentionを使うことで人だけに注目することができる</li> <li>人間は、人間が移ったとき写真について背景を無視することを自然とできるが、それと同じ</li> <li>Convolution を二層に分岐して片方でsigmoidで出力して最後に分岐を合流させる。sigmoidが0に近い値はその後の処理に影響を与えなくなる</li> </ul></li> <li>SENet <ul> <li>Convolutionによって複数の出力を得る。縦横のエッジ、色、明るさなど</li> <li>普通のCNNではこれら全ての特徴を後続の層でも利用する</li> <li>人間が注目する場合はどこに注目するかはケースバイケース</li> <li>SENetでは画像の特徴をダイナミックに決定するアテンションになる</li> <li>画像全体に対して<a class="keyword" href="http://d.hatena.ne.jp/keyword/Avg">Avg</a>. Poolingを取り、Conv(1,1)で特徴をとり最後にSigmoidを取る</li> <li>このような仕組みを各Conv Unit で使えば、少し演算量増える程度で性能を上げることが確認できている</li> </ul></li> <li>言語処理におけるAttention <ul> <li>典型的な文章分類問題</li> <li>特定の位置にある単語に注目するようにネットワークを構成することができる</li> <li>単語の特徴量を得られているとすると、それに対しアテンションを計算し、特徴ベクトルに掛け合わせる</li> </ul></li> <li>翻訳 <ul> <li>Encoderで特徴抽出を行い、Decoderで別の言語に書き出していく</li> <li>LSTMでは単語から次の単語への出力を行っていく</li> <li>契約書などでは単語の対応などの正確性が必要</li> <li>Attentionを用いて、最初に翻訳すべき単語を決める</li> <li>その単語をもとに次のAttentionを決めていく</li> <li>各単語の特徴とDecoderの初期ベクトルの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%E2%C0%D1">内積</a>を取る。これがAttentionの初期スコアになる。このスコアにSoftmaxをかけると、それがAttentionのスコアになる</li> <li>画像のときはSigmoidを使って全ての<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D4%A5%AF%A5%BB%A5%EB">ピクセル</a>で注目するか否かを表現していたが、言語の場合はsoftmaxを使って、周りに比べて注目すべきかどうかを考える</li> <li>どのような翻訳をするのかを出力するQuery <a class="keyword" href="http://d.hatena.ne.jp/keyword/vector">vector</a> と Key <a class="keyword" href="http://d.hatena.ne.jp/keyword/vector">vector</a> の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%E2%C0%D1">内積</a>をとってsoftmaxにかける</li> </ul></li> <li>Self Attention <ul> <li>Query /Key / <a class="keyword" href="http://d.hatena.ne.jp/keyword/Value">Value</a> をEncoder / Decoder ではなく同じタイミングで特徴抽出を行う</li> <li>ある単語は文章中の他の単語に依って意味が変わる</li> <li>あなたを「嫌い」では「ない」</li> <li>Self Attentionは他の単語に特徴づける動作をもたせることができる</li> <li>嫌いというQueryと全ての単語のKeyとの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%E2%C0%D1">内積</a>を取り、softmaxを出し、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Value">Value</a>とかけたものを現在の単語ベクトルに足す</li> <li>Self Attentionで他の単語を使って自分自身を特徴づけることができる</li> </ul></li> <li>Attention is All You Need <ul> <li>Transformerの話</li> <li>RNNの問題点: 一つ前の単語の計算が終わるまで次の単語の計算ができない</li> <li>RNNのレイヤーをSelf AttentionのレイヤーにおきかえるのがTransformer</li> <li>BERT / GPT-2 などもTransformerを使う</li> <li>これで基礎知識はついたのでこの論文を読んでね</li> </ul></li> </ul> </div> <div class="section"> <h4>生成系<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>の研究動向</h4> <p>(<a class="keyword" href="http://d.hatena.ne.jp/keyword/Microsoft">Microsoft</a> 伊藤 駿汰さん)</p><p>今回このセッションを聞くために参加しましたが、非常にいい内容でした。</p> <ul> <li>文生成とは <ul> <li>文字: 言語を表記するために使われる記号の最小単位</li> <li>単語: 文字を組み合わせて作られる、意味を表し構文上の働きを持つ最小単位</li> <li>文: 単語を組み合わせて作られるまとまりある考え</li> <li>単語列: 単語を並べたもの。文も単語列の一種</li> <li>文生成: 単語の数、単語の種類、単語の順番を決定すること</li> <li>一定の制限を入れないと解けない。次の単語を予測を骨格とした文生成</li> <li>次単語予測: ある単語列が与えられたとき、次に来る単語を予測すること。例: <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%DE%A5%DB">スマホ</a>の予測入力</li> <li>ある単語列が与えられたとき、次にどの単語になるか確率を計算し、最も確率が大きい単語を選ぶ</li> <li>文生成最初の単語Aを予測し、AからBを予測し、という流れを文が終わるまで繰り返す</li> </ul></li> <li>文生成モデルの歴史 <ul> <li>文生成モデルの歴史は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>の歴史と絡んでいる</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>: ある文wが生じる確率を与える確率分布P(w)のこと</li> <li>P(w)がわかると <ul> <li>複数文で尤度比較ができる</li> <li>分布からいくらでも文を生成できそう</li> </ul></li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a> <ul> <li>文を構成する単語の数は可変</li> <li>1種類の言語には数万程度の単語が存在</li> </ul></li> <li>P(w)の計算は無理 <ul> <li>逐次的アプローチで近似する</li> <li>次に来る単語はそれより前の単語が何かで決まると仮定</li> </ul></li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/N-gram">N-gram</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a> <ul> <li>ある単語より前の単語全部を見るのがつらいので見る数を決めて計算を軽くする</li> <li>前のN-1個の単語の並びに対し、次にきそうな単語の確率がわかればP(w)が計算できる</li> <li>たくさんのデータから統計的に確率は得られる</li> <li>P(wi|wi+1-N, Wi-1)があれば次単語予測ができて文生成ができる</li> </ul></li> <li>統計的手法を用いる文生成 <ul> <li>現実には5-gram程度が限界</li> <li><a href="https://projecteuclid.org/download/pdf_1/euclid.aop/1024404422">Pitman-Yor&#x904E;&#x7A0B;</a>を使って可変長<a class="keyword" href="http://d.hatena.ne.jp/keyword/N-Gram">N-Gram</a>なども使われる</li> <li>現代ではあまり使われていない</li> </ul></li> <li>DNNの学習 <ul> <li>入力と正解が必要</li> <li>予測が正解に近くなるよう学習を進めていく</li> <li><a href="https://www.isca-speech.org/archive/archive_papers/interspeech_2010/i10_1045.pdf">RNN&#x8A00;&#x8A9E;&#x30E2;&#x30C7;&#x30EB;(Mikolov 2010) </a></li> <li><a href="https://www.nature.com/articles/323533a0">RNN (Rumelhart 1986) </a></li> <li>P(w)が得られない変わりに、ある単語をいれたとき、次に来る単語の確率を予測させる</li> <li>入力: 単語、正解: 次の単語</li> </ul></li> <li>RNNの問題点 <ul> <li>プレーンRNNは遠い過去のデータの情報が急速に消えていくもしくは爆発的に増大していく</li> <li><a href="https://www.mitpressjournals.org/doi/10.1162/neco.1997.9.8.1735">LSTM( Hochreiter 1997)</a> や <a href="https://www.aclweb.org/anthology/D14-1179/">GRU( Cho 2014)</a> といった手法によって十分学習可能な水準に到達</li> </ul></li> <li><a href="https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf">Seq2Seq (Sutskever 2014)</a> <ul> <li>文の意味を取り出す<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A8%A5%F3%A5%B3%A1%BC%A5%C0%A1%BC">エンコーダー</a>RNN、取り出した意味から文を生成する<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%B3%A1%BC%A5%C0">デコーダ</a>ーRNNをつなげて、文から文への変換を行うモデル</li> </ul></li> <li><a href="https://arxiv.org/abs/1511.06114">S2S + Attention (Luong 2015)</a> <ul> <li>過去の情報を重み付けして再度利用するAttention機構をSeq2Seqに追加して精度を改善したモデル</li> </ul></li> <li>生じてきた問題: RNNは過去の情報を処理してからでないと処理できない</li> <li><a href="https://arxiv.org/abs/1706.03762">Transformer (Vaswani 2017)</a> <ul> <li>Seq2Seqと同じ文変換を行うモデル</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%BA%C6%B5%A2">再帰</a>構造を持たないNNとAttentionのみで構成され、高速</li> <li>翻訳タスクにおいて、RNN系手法よりはるかに少ない学習でSOTA</li> <li>長期依存を取れない問題を解決</li> <li>軽量・高速で並列化向きの構造</li> </ul></li> <li><a href="https://arxiv.org/abs/1810.04805">BERT (Devlin 2018)</a> <ul> <li>巨大な12層のTransformer Encoder </li> <li>2種類の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>的事前学習 <ul> <li>マスクされた単語の予測</li> <li>文の連続判定: 2つの文が連続した文であるかどうかの確率値</li> </ul></li> <li>膨大なデータで事前学習 + 少数のデータで目的タスクに転移学習</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>の幅広い<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D9%A5%F3%A5%C1%A5%DE%A1%BC%A5%AF">ベンチマーク</a>でSOTA</li> <li>少量のデータで学習できるというのが産業利用上非常に大きかった</li> <li>工夫された事前学習によってTransformerの双方向学習が可能に。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>的事前学習の有効性を示す</li> </ul></li> <li>GPT-2 (Radford 2019) <ul> <li>巨大なTransformer Decoder </li> <li>膨大なデータを使って<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>的な学習を行ったモデル</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/N-gram">N-gram</a>やRNN<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>と同じ逐次的に単語を予測していく文生成モデル</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A7%A5%A4%A5%AF%A5%CB%A5%E5%A1%BC%A5%B9">フェイクニュース</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D1%A5%E0%A5%E1%A1%BC%A5%EB">スパムメール</a>に悪用されることが懸念され、<a href="https://gigazine.net/news/20190821-openai-releases-gpt-2-language-model/">&#x4E00;&#x6642;&#x7684;&#x306B;&#x516C;&#x958B;&#x3092;&#x505C;&#x6B62;&#x3057;&#x305F;&#x307B;&#x3069;(&#x5F8C;&#x306B;&#x518D;&#x516C;&#x958B;)</a></li> </ul></li> <li><a href="https://arxiv.org/abs/1905.03197">UniLM(Dong 2019)</a> <ul> <li>Transformer Prefix LM を使った事前学習モデル</li> <li>複数種類の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>学習</li> <li>読解系タスクでBERT並、生成系タスクでSOTA</li> </ul></li> <li><a href="https://arxiv.org/abs/1910.10683">T5 (Raffel 2019)</a> <ul> <li>Encoder - Decoder 構造を持つ巨大事前学習モデル(Transformerと同じ)</li> <li>全てのタスクを文変換として事前学習を行う</li> </ul></li> <li><a href="https://arxiv.org/abs/2005.14165">GPT-3 (Brown 2020</a>) <ul> <li>1750億パラメータの超巨大モデル</li> <li>BERT: 3.4億</li> <li>T5: 110億</li> <li>構造はGPT-2を踏襲</li> <li>モデルのパラメータを増やすことで少ないデータの転移学習でも性能を出せるようになる</li> </ul></li> <li>トレンドの推移 <ul> <li>2018年 <ul> <li>LSTM→Transformer</li> <li>Transformer改善</li> <li>BERT</li> </ul></li> <li>2019年 <ul> <li>BERTの流れを組む巨大事前学習モデル</li> <li>生成系タスクでGPT-2, T5が台頭</li> </ul></li> <li>2020年 <ul> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>は<a class="keyword" href="http://d.hatena.ne.jp/keyword/GPU">GPU</a>とお金で殴る世界。GPU4000台並べるような世界</li> <li>GPT-3</li> </ul></li> </ul></li> </ul></li> <li>今後のトレンド予測 <ul> <li>Self-AttentionなどのTransformerの各要素の有効性についての知見が集積</li> <li>Transformerは精度改善や軽量化の亜種が登場</li> <li>GPT-3の方向性は実用上極めて重要</li> </ul></li> <li>発表者の研究 <ul> <li>Memory Attention</li> <li>Seq2Seq に発話に対する応答生成をAttentionを使って選んでいく</li> <li>研究から得られた知見 <ul> <li>Attentionとは実質類似度の計算、情報の抽出に利用できる</li> <li>計算負荷も小さい、大小関係、解釈性</li> <li>Transformerは新しい情報の流れを追加することが難しいが、LSTMベースのSeq2Seqは比較的簡単</li> <li>シンプルなため、実装や構造検討に時間がかからない、とりあえずの実装として価値あり</li> <li>文生成の自動評価は難しい、対話系生成モデルは自動評価が極めて困難 <ul> <li>BLEUやMETEOR等もあるけど不適切</li> </ul></li> </ul></li> </ul></li> </ul> </div> <div class="section"> <h4><a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>ソリューション開発の最前線</h4> <p>(ISID <a class="keyword" href="http://d.hatena.ne.jp/keyword/%BF%BC%C3%AB">深谷</a>勇次さん、小川雄太郎さん、ファイサルさん) </p><p>ISIDが5月にリリースした新製品の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A1%BC%A5%AD%A5%C6%A5%AF%A5%C1%A5%E3">アーキテクチャ</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a>の解説。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fisid-industry.jp%2Fproduct_and_service%2Fdetail%2FAI_implementation%2FTexAIntelligence" title="TexAIntelligence 文章の検索、分類、要約の自動化ソリューション AI技術で文書処理を自動化PRODUCTS &amp; SERVICES | isid-industry" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://isid-industry.jp/product_and_service/detail/AI_implementation/TexAIntelligence">isid-industry.jp</a></cite><br /> </p> <ul> <li>フロントエンド <ul> <li>Azure Blob Storage に静的サイトをデプロイ</li> <li>Vue.js / Nuxt.js <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%EC%A1%BC%A5%E0%A5%EF%A1%BC%A5%AF">フレームワーク</a>で静的サイトを構築し、axiosでバックエンドと通信</li> </ul></li> <li>APサーバ <ul> <li>Azure <a class="keyword" href="http://d.hatena.ne.jp/keyword/VM">VM</a>上でDocker Compose を使ってコンテナ管理 <ul> <li>ACIはマルチコンテナ運用が困難で、<a class="keyword" href="http://d.hatena.ne.jp/keyword/k8s">k8s</a>は重たかった</li> </ul></li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a> + <a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a> REST Framework</li> <li>非同期処理: <a class="keyword" href="http://d.hatena.ne.jp/keyword/Celery">Celery</a> + RabbitMQ</li> <li>DB: Azure <a class="keyword" href="http://d.hatena.ne.jp/keyword/PostgreSQL">PostgreSQL</a></li> <li>運用監視・ログ収集: Azure Log Analytics & Azure Logic Apps</li> </ul></li> <li>MLサービス <ul> <li>Azure ML</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/GPU">GPU</a>搭載のDSVMをAzure ML に紐付け</li> <li>APサーバからMLサービスを経由しDSVMに<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>ファイルと引数を投げて実行</li> </ul></li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C0%B8%EC%A5%E2%A5%C7%A5%EB">言語モデル</a> <ul> <li>ISIDオリジナルALBERTを作った</li> <li>業務システムに組み込む要件として<a class="keyword" href="http://d.hatena.ne.jp/keyword/GPU">GPU</a>リソースのコストとパフォーマンスの問題があったため、高速・小規模なモデルを選定した</li> </ul></li> <li>ALBERT <ul> <li>埋め込み行列の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B0%F8%BF%F4%CA%AC%B2%F2">因数分解</a></li> <li>レイヤーパラメーターの共有 <ul> <li>12個のレイヤーで1つのパラメータを使う</li> </ul></li> <li>NSPの代わりにSentence-Order Predictionの新補助タスク</li> <li>LAMB <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%EB%A5%B4%A5%EA%A5%BA%A5%E0">アルゴリズム</a>使用 <ul> <li>大きいバッチで学習</li> </ul></li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/n-gram">n-gram</a> マスキング</li> <li>SentencePiece対応</li> </ul></li> <li>ALBERT日本語版はまだ1つしかない <ul> <li><a href="https://github.com/alinear-corp/albert-japanese">https://github.com/alinear-corp/albert-japanese</a></li> <li>モデルの長さは512語で、実際の業務文書が入っていない</li> <li>SentencePieceを使用している</li> </ul></li> <li>ISIDオリジナルALBERT <ul> <li>モデル長1024語</li> <li>Sudachiを使用。これは<a class="keyword" href="http://d.hatena.ne.jp/keyword/NICT">NICT</a>の実験結果により、事前に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B7%C1%C2%D6%C1%C7%B2%F2%C0%CF">形態素解析</a>を行ったら良い精度が達成できることがわかっているため</li> <li>Whole Word Masking (WWM) を使う</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A1%BC%A5%D1%A5%B9">コーパス</a>: <a class="keyword" href="http://d.hatena.ne.jp/keyword/Wikipedia">Wikipedia</a>日本語</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C8%A1%BC%A5%AF">トーク</a>ナイザー: Sudachi モードC + Wordpiece </li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/Livedoor%A5%CB%A5%E5%A1%BC%A5%B9">Livedoorニュース</a>でファインチューニング</li> </ul></li> <li>今後の課題 <ul> <li>最長の長さを1024にしたため推論時間に影響がある</li> <li>ナレッジ蒸留手法 DistillBERTなどの検討、Sparse Attentionの使用</li> </ul></li> </ul> </div> <div class="section"> <h4>Azure ML <a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%B8%C0%B8%EC%BD%E8%CD%FD">自然言語処理</a>の最新動向</h4> <p>(<a class="keyword" href="http://d.hatena.ne.jp/keyword/Microsoft">Microsoft</a> 女部田啓太さん)</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fgithub.com%2Finterpretml%2Finterpret-text" title="interpretml/interpret-text" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://github.com/interpretml/interpret-text">github.com</a></cite><br /> </p> <ul> <li>Classical Text Explainer <ul> <li>古典的な<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B5%A1%B3%A3%B3%D8%BD%AC">機械学習</a>パイプライン</li> <li>sklearn の線形モデル coefs_</li> <li>Treeベースのアンサンブルモデル feature_importances</li> <li>デフォルト 1-gram BoW + sklern CountVectorizer + LR</li> </ul></li> <li><a href="https://www.microsoft.com/en-us/research/publication/towards-a-deep-and-unified-understanding-of-deep-neural-models-in-nlp/">Unified Information Explainer (Guan 2019)</a> <ul> <li>MSのSOTAの研究</li> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%EA%B8%DF%BE%F0%CA%F3%CE%CC">相互情報量</a>をベースにした post-hoc のアプローチ</li> <li>DNNの隠れ層についての説明</li> <li>現在はBERTのみ対応</li> </ul></li> <li><a href="http://people.csail.mit.edu/tommi/papers/YCZJ_EMNLP2019.pdf">Introspective Rationale Explainer (Yu 2019)</a> <ul> <li>MSのEMNLPで発表した研究</li> <li>モデル学習の仕組みに埋め込むタイプ</li> <li>内省的生成機(Introspective Generator) を前処理で利用</li> <li>入力テキストを根拠(raitionales) と半根拠(anti-rationales) に分岐</li> <li>根拠のみを使って精度が最大になるように学習</li> <li>モデルは入力テキストから生成された根拠しかみない</li> </ul></li> </ul> </div> shiumachi オープンコレクターに入社して3ヶ月が経った hatenablog://entry/26006613592087279 2020-07-01T09:00:00+09:00 2020-07-01T09:00:13+09:00 オープンコレクターに入社してからあっという間に3ヶ月が経ちました。ここでの仕事は、とにかく密度が濃いです。ミーティングは週2-3回ある程度で、余計な割り込みが一切なくひたすら技術に関係することばかりやってます。こんなにミーティングがないのはClouderaの最初の1-2年のときくらいかもしれません。仕事は案件対応をやっています。HadoopやNLPなど、自分がClouderaやLuminosoで得た技術をフルに使う仕事をやっています。2年前、別の分野で一から始めたいと思ってClouderaを飛び出しましたが、結局仕事になるのは自分が培ってきた技術や知識なので、なかなかそこから逃れるのは難しいですね。 <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200701/20200701012420.jpg" alt="f:id:shiumachi:20200701012420j:plain" title="f:id:shiumachi:20200701012420j:plain" class="hatena-fotolife" itemprop="image"></span></p><p><span>Photo by <a href="https://unsplash.com/@zoltantasi?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Zoltan Tasi</a> on <a href="https://unsplash.com/s/photos/fitness?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></span></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F04%2F06%2F090000" title="株式会社オープンコレクターに転職しました - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/04/06/090000">shiumachi.hatenablog.com</a></cite></p><p><a href="https://www.open-c.jp/">&#x30AA;&#x30FC;&#x30D7;&#x30F3;&#x30B3;&#x30EC;&#x30AF;&#x30BF;&#x30FC;</a>に入社してからあっという間に3ヶ月が経ちました。</p><p>ここでの仕事は、とにかく密度が濃いです。ミーティングは週2-3回ある程度で、余計な割り込みが一切なくひたすら技術に関係する仕事だけに取り組んでいます。</p><p>こんなにミーティングがないのはClouderaの最初の1-2年のときくらいかもしれません。</p><br /> <p>仕事は案件対応をやっています。<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>など、自分がClouderaやLuminosoで得た技術をフルに使う仕事をやっています。</p><p>二年前、別の分野で一から始めたいと思ってClouderaを飛び出しましたが、結局仕事になるのは自分が培ってきた技術や知識なので、なかなかそこから逃れるのは難しいですね。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2018%2F11%2F30%2F170000" title="Clouderaを退職しました - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2018/11/30/170000">shiumachi.hatenablog.com</a></cite></p><p>データ基盤と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B5%A1%B3%A3%B3%D8%BD%AC">機械学習</a>/<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>の知識を両方持っているというのはそれなりに希少価値があるはずなので、このあたりを自分の得意分野として伸ばしていければいいかなと考えています。</p><br /> <p>とはいえ、いざ案件対応すると、今まで習得した自分の知識だけでは全然足りないということを実感します。</p><p>ベンダーにいた頃に想定する環境は、いわば理想的なきれいな環境でした。実案件においては、お客様のビジネス要件や様々な制約を伴う環境と直面します。</p><p>あるべき論は通用せず、目の前にある様々な条件を考慮した上で課題を解決していく必要が出てきます。</p><p>正論の知識だけでは全く通用しない、実戦の技術というものが要求される中で、自分の実力不足を日々痛感しています。</p><br /> <p>仕事の負荷としては全く高くなく、非常に快適です。</p><p>10年ぶりに深夜・早朝のメール・チャット・ミーティングなどに悩まされない生活を過ごしていますが、これは精神衛生上とてもいいです。規則正しい生活になるだけで身体の負担が全く違います。</p><p>通勤も全くないので、仕事量の割には<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C8%E8%CF%AB">疲労</a>が少なく、かなり健全な生活サイクルになっています。</p><br /> <p>英語を日常的に書かなくなったというのも大きな変化です。</p><p>海外とやりとりすることもあるので全くないというわけではないのですが、基本的には日本語だけで仕事ができています。</p><p>とはいえ、あまり自分にとってはどちらの言語使ってもそんなに変わらないので体感的にはあまり気になりません。</p><p>前回の記事でも書いたように、社長の <a href="https://twitter.com/moriyoshit">@moriyoshit</a> をはじめ、オープンコレクターのメンバーは技術力が非常に高く、一緒に仕事して楽しい人達ばかりです。</p><p>いい人達と一緒に仕事をするということの方が、言語的な問題よりも大きいとあらためて実感します。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F05%2F13%2F090000" title="とびきりのハッカーと同じチームで仕事をすることは福利厚生である - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/05/13/090000">shiumachi.hatenablog.com</a></cite></p><br /> <p>自分の実力はまだまだですが、さらに知識と技術を身につけていき、新しい取り組みを色々とこなしていきたいと考えています。</p> shiumachi 在宅勤務で自宅トレーニングを長く続けるための7つのコツ hatenablog://entry/26006613580885413 2020-06-09T07:00:00+09:00 2021-01-14T07:54:00+09:00 2021年版のFreeleticsガイドができました!この記事より新しいので、そちらを参照してください。shiumachi.hatenablog.com 最近在宅勤務する人が増えてジムが利用禁止になったからか、 AIパーソナルトレーナーアプリのFreeleticsを始める仲間が増えてきました…が、どうも皆さんきついのか長続きしないようです。6割近くの人がコロナ太りしたというニュースもあり、在宅勤務において継続的な運動は必須の習慣となっています。www3.nhk.or.jp そこで、Freeleticsを1年3ヶ月続けた経験から、自宅トレーニングを長く続けるコツをいくつか紹介したいと思います。 … <blockquote> <p><b>2021年版のFreeleticsガイドができました!</b>この記事より新しいので、そちらを参照してください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2021%2F01%2F11%2F182649" title="今年こそは自宅トレで痩せたい人のための、AIパーソナルトレーナーFreeletics入門(2021年版) - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2021/01/11/182649">shiumachi.hatenablog.com</a></cite></p> </blockquote> <p></p><p>最近在宅勤務する人が増えてジムが利用禁止になったからか、 AI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリの<a href="https://www.freeletics.com/ja/">Freeletics</a>を始める仲間が増えてきました…が、どうも皆さんきついのか長続きしないようです。</p><p>6割近くの人がコロナ太りしたというニュースもあり、在宅勤務において継続的な運動は必須の習慣となっています。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fwww3.nhk.or.jp%2Fnews%2Fhtml%2F20200602%2Fk10012454461000.html" title="「コロナ太り」57%が体重増加 専門家「生活習慣病のおそれ」 | NHKニュース" class="embed-card embed-webcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 155px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://www3.nhk.or.jp/news/html/20200602/k10012454461000.html">www3.nhk.or.jp</a></cite></p><br /> <p>そこで、Freeleticsを1年3ヶ月続けた経験から、自宅ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを長く続けるコツをいくつか紹介したいと思います。</p><br /> <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200609/20200609005030.png" alt="f:id:shiumachi:20200609005030p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> <div class="section"> <h4>大原則: 長続きさせることを目的にする!</h4> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グが長く続かないのは、「<b>一日でも早く</b>痩せなきゃ」とか、「以前よりも<b>もっと高い負荷で</b>やらなきゃ」とか、キツい目的を掲げるから逆に尻込みしてしまうというのも原因の一つです。</p><p>まずそういうのを一旦おいて、とにかく長続きさせるということだけ考えてください。重要なのは、「<b>長続きさせれば楽でもいい</b>」ということです。</p><p>ちょっとこの辺はFreeleticsの思想と外れますが、<b>重要なのは習慣化</b>であり、習慣化したあとにゆっくり負荷を上げればいいと私は思ってます。</p><p>今日スクワット100回やって2日休むよりも、3日間毎日50回やる方が結果的にたくさんの運動を行っています。</p><p>習慣化することだけに注力しましょう。<br /> <br /> </p> </div> <div class="section"> <h4>コツ1: 疲れてるときは休むことを恐れない</h4> <p>1つ目の話を踏まえた上で、疲れたらきっちり休むというのを心がけましょう。</p><p>オンライン飲み会のあとで寝不足だったり二日酔いだったりするときは無理してやるのをやめましょう。</p><p>その代わり、<b>その日のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは「体調を整えて、早く寝る」こと</b>だと気持ちを切り替えます。</p><p>体調を万全に整えた方がやる気が出ます。<br /> <br /> </p> </div> <div class="section"> <h4>コツ2: ブランク明けのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは軽めに</h4> <p>サボったりするとどうしても今までのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グがきつく感じて、「今日はやめとこう…」と尻ごみしてそのままト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをやめてしまいます。</p><p>今までの進捗が後退するのはどうしても抵抗を感じてしまいます。</p><p>勇気を出して、しばらくはとにかく軽めなものをやるだけにしましょう。</p><p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを再開したというのはそれだけですごいことです。喜びましょう!</p><p>幸い、最新のFreeleticsではその日の強度を変更する機能がついているので、<b>勇気を出して負荷を軽く</b>しましょう。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200609/20200609003113.png" alt="f:id:shiumachi:20200609003113p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>コツ3: ウォーミングアップとクールダウンはサボらない</h4> <p>他の人に話を聞くと、結構みんなカジュアルにウォーミングアップとクールダウンをサボっているので驚きます。</p><p><b>ウォーミングアップとクールダウンは絶対にやりましょう</b>。これやるだけで<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C8%E8%CF%AB">疲労</a>が全然違うし怪我のリスクも下がります。あとはト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グのやる気を出すための儀式的な意味もあります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200609/20200609003442.png" alt="f:id:shiumachi:20200609003442p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>コツ4: ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グウェアを着る</h4> <p>前は普通のTシャツをそのまま使っていたのですが、やっぱりト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グウェアを用意した方が気分的な意味でト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをやる気になります。</p><p>安いものでいいのであった方がいいでしょう。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B016QCKJAG/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41OYL8JUQPL.jpg" class="hatena-asin-detail-image" alt="[ミズノ] トレーニングウェア 半袖Tシャツ ナビドライ Uネック 吸汗速乾 メンズ 32JA6150 14 ドレスネイビー×ホワイト M" title="[ミズノ] トレーニングウェア 半袖Tシャツ ナビドライ Uネック 吸汗速乾 メンズ 32JA6150 14 ドレスネイビー×ホワイト M"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B016QCKJAG/shiumachijigo-22/">[ミズノ] トレーニングウェア 半袖Tシャツ ナビドライ Uネック 吸汗速乾 メンズ 32JA6150 14 ドレスネイビー×ホワイト M</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2020/01/31</li><li><span class="hatena-asin-detail-label">メディア:</span> ウェア&amp;シューズ</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h4>コツ5: フィットネスマットを敷く</h4> <p>怪我防止や防音効果も重要ですが、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グウェアと同様、やはり「これからト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをやる」という気持ちを高めるためにもあるに越したことはないです。</p><p>自重ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グはかなり負荷がかかるので、可能な限り厚めのマットを選んでおくといいでしょう。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07DR9LSLW/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41XpQE3kBnL.jpg" class="hatena-asin-detail-image" alt="YUREN メンズ用 トレーニングマッ ト 幅広 90*185cm 極厚 15mm 特大 ヨガマット 高密度 ニトリルゴム 筋トレマット ピラティス エクササイズ マット 滑り止め 初心者 収納バッグ付き" title="YUREN メンズ用 トレーニングマッ ト 幅広 90*185cm 極厚 15mm 特大 ヨガマット 高密度 ニトリルゴム 筋トレマット ピラティス エクササイズ マット 滑り止め 初心者 収納バッグ付き"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B07DR9LSLW/shiumachijigo-22/">YUREN メンズ用 トレーニングマッ ト 幅広 90*185cm 極厚 15mm 特大 ヨガマット 高密度 ニトリルゴム 筋トレマット ピラティス エクササイズ マット 滑り止め 初心者 収納バッグ付き</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><br /> <p></p> </div> <div class="section"> <h4>コツ6: ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ用スマートウォッチをつける(オプション)</h4> <p>それなりの値段がするので「できればあった方がいい」程度ですが、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ中に心拍数を見て運動強度を見たり、心拍数記録から運動状況を把握するのに使うことはできます。</p><p>私は Fitbitしか持っていないのですが、Freeleticsのスマートウォッチ連携は<a class="keyword" href="http://d.hatena.ne.jp/keyword/Apple%20Watch">Apple Watch</a>にしか対応していません。</p><p>お金に余裕があるとか、すでに<a class="keyword" href="http://d.hatena.ne.jp/keyword/Apple%20Watch">Apple Watch</a>を持っているならそれを使うべきですが、「これから運動を始める人のやる気を高める」という目的で進めるにはあまりに高いんですよね<a class="keyword" href="http://d.hatena.ne.jp/keyword/Apple%20Watch">Apple Watch</a>……。</p><p>個人的には、今何もスマートウォッチ持っていないなら、3-5万する<a class="keyword" href="http://d.hatena.ne.jp/keyword/Apple%20Watch">Apple Watch</a>を買うよりは最安1万弱で変えるFitbitの方がいいと思います。私は上位機種のChargeを使ってますが、それでも1万円台です。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B085LFGCBW/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41eu0096qnL.jpg" class="hatena-asin-detail-image" alt="Fitbit Charge4 Special Edition GPS搭載フィットネストラッカー Black/Charcoal Woven L/Sサイズ [日本正規品] FB417BKGY-FRCJK" title="Fitbit Charge4 Special Edition GPS搭載フィットネストラッカー Black/Charcoal Woven L/Sサイズ [日本正規品] FB417BKGY-FRCJK"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B085LFGCBW/shiumachijigo-22/">Fitbit Charge4 Special Edition GPS搭載フィットネストラッカー Black/Charcoal Woven L/Sサイズ [日本正規品] FB417BKGY-FRCJK</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2020/11/27</li><li><span class="hatena-asin-detail-label">メディア:</span> エレクトロニクス</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h4>コツ7: 過度な食制限と並行でやらない</h4> <p>運動でつらい思いをしながら、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C5%FC%BC%C1%C0%A9%B8%C2">糖質制限</a>とか無茶な食制限をすると、凄まじいストレスがかかります。</p><p>ただでさえ自宅から出れなくてストレスが溜まっている状況でこんなことしたらそれだけで心身ともに病気になってしまいます。</p><p>食制限しなくても運動だけで6kg痩せたので、<b>食事は気にせず食べた方がいい</b>です。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F09%2F15%2F131353" title="Freeleticsで半年間自宅トレーニングしたら食制限なしで6kg痩せた - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/09/15/131353">shiumachi.hatenablog.com</a></cite></p><p>余談ですが、今年に入ってからほぼ自宅から出ていませんしお酒も甘いものも普通に飲み食いしてますが、さらに3kgほど痩せました。<br /> <br /> </p> </div> <div class="section"> <h4>まとめ</h4> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを始めようというときはキツいト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グも頑張ろうという気持ちが高くてある程度は出来ますが、それだけでは長続きしません。</p><p>とにかく、常に「<b>どうすれば習慣化できるか</b>」「<b>どうすればサボっても復帰できるか</b>」を考えながらやることが重要だと思います。</p><p>健康的な在宅ライフを!<br /> <br /> </p> </div> <div class="section"> <h4>Freeleticsの購入方法</h4> <p> <a href="https://www.freeletics.com/ja/">Freeletics</a>は有料のアプリです。年間1万円の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B5%A5%D6%A5%B9%A5%AF%A5%EA%A5%D7%A5%B7%A5%E7%A5%F3">サブスクリプション</a>です。<br /> 3ヶ月プランや6ヶ月プランもあるので、続ける自信がないという人はこちらを購入してもいいです。14日間は返金に応じてくれるので、試しに買ってみて、合わなかったら返金しましょう。</p><p>Freeleticsを始めてみたいという人は、下記のリンクから購入すれば20%オフで買えます。 Coach と Nutrition (食生活改善)の二種類が出てきますが、Nutrition は自分は試していません。運動だけなら Coach で十分と思いますが、誰か Nutrition を試した人がいたら感想教えてください。</p><p><a href="https://www.freeletics.com/r/124871187">https://www.freeletics.com/r/124871187</a></p><p></p> </div> <div class="section"> <h4>関連記事</h4> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F01%2F26%2F174818" title="今年こそは自宅で運動を始めたい人のためのFreeleticsガイド(2020年版) - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/01/26/174818">shiumachi.hatenablog.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F09%2F15%2F131353" title="Freeleticsで半年間自宅トレーニングしたら食制限なしで6kg痩せた - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/09/15/131353">shiumachi.hatenablog.com</a></cite></p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F05%2F25%2F220052" title="AIパーソナルトレーナーFreeleticsを使って、自宅で毎日トレーニングしよう - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/05/25/220052">shiumachi.hatenablog.com</a></cite></p> </div> shiumachi とびきりのハッカーと同じチームで仕事をすることは福利厚生である hatenablog://entry/26006613566574151 2020-05-13T09:00:00+09:00 2020-05-13T09:00:01+09:00 先日、社長の moriyoshi と一緒にある案件を行っていました。 リリース直前の前夜、どうしても現在のライブラリでは技術的に不可能な問題が発覚しました。 入社して一ヶ月も経てば、仕事の場でmoriyoshiがどう動くのか大体わかるようになります。「じゃあ作るしかないな」 「できそう?」moriyoshiは答えません。次の答えはもう分かっていたので、私はmoriyoshiが作成しているであろうプラグインを組み込むことを想定したテストコードとそのデプロイ手順を確認します。私がテストコードとデプロイの準備を整えた頃、moriyoshiはSlackに再び現れました。「できた」予想通りの答えでした。… <p>先日、社長の <a href="https://twitter.com/moriyoshit">moriyoshi</a> と一緒にある案件を行っていました。<br /> リリース直前の前夜、どうしても現在のライブラリでは技術的に不可能な問題が発覚しました。<br /> 入社して一ヶ月も経てば、仕事の場でmoriyoshiがどう動くのか大体わかるようになります。</p><p>「じゃあ作るしかないな」<br /> 「できそう?」</p><p>moriyoshiは答えません。次の答えはもう分かっていたので、私はmoriyoshiが作成しているであろう<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3">プラグイン</a>を組み込むことを想定したテストコードとそのデプロイ手順を確認します。</p><p>私がテストコードとデプロイの準備を整えた頃、moriyoshiはSlackに再び現れました。</p><p>「できた」</p><p>予想通りの答えでした。私はすぐさま<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3">プラグイン</a>を<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EA%A5%DD%A5%B8%A5%C8%A5%EA">リポジトリ</a>に取り込み、テストを実行し、デプロイ作業を実施しました。</p><p>~~~</p><p>最近は、特に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B3%B0%BB%F1">外資</a>系ではどの会社も様々な福利厚生を用意しています。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/Google">Google</a>の<a href="https://purako-blog.com/googlelunch/">&#x30E9;&#x30F3;&#x30C1;</a>や<a href="http://kumagi.hatenablog.com/entry/ikukyu">&#x80B2;&#x5150;&#x4F11;&#x6687;</a>は有名ですし、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%A4%A5%AF%A5%ED%A5%BD%A5%D5%A5%C8">マイクロソフト</a>は<a href="https://sustainablejapan.jp/2020/04/13/gafam-employee-covid-19/48284">&#x65B0;&#x578B;&#x30B3;&#x30ED;&#x30CA;&#x30A6;&#x30A3;&#x30EB;&#x30B9;&#x306B;&#x5BFE;&#x5FDC;&#x3059;&#x308B;&#x305F;&#x3081;&#x5168;&#x5F93;&#x696D;&#x54E1;&#x306B;12&#x9031;&#x9593;&#x306E;&#x6709;&#x7D66;&#x4F11;&#x6687;&#x3092;&#x4ED8;&#x4E0E;&#x3059;&#x308B;</a>など、世界に名だたる大企業は争うように手厚い福利厚生を提供することで人材の獲得に必死になっています。</p><p>しかし、どのような会社も、とびきりの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CF%A5%C3%A5%AB%A1%BC">ハッカー</a>と同じチームで仕事ができることを福利厚生として提供してはいません。</p><p>もちろん、上記の会社には優秀な社員がたくさんいるのは知っていますし、オープンコレクターだって別にそんなことを福利厚生として定義しているわけではありません。</p><p>ですが、金銭以外の報酬によって社員のロイヤリティを高めることが福利厚生であるならば、moriyoshiと一緒に仕事することは間違いなく自分が今まで経験した中で最高の福利厚生です。</p><br /> <p><a href="https://www.open-c.jp/">&#x30AA;&#x30FC;&#x30D7;&#x30F3;&#x30B3;&#x30EC;&#x30AF;&#x30BF;&#x30FC;</a>は、Joel Spolsky がソフトウェア開発者採用ガイドの中で言うところの、「頭が良く、物事を成し遂げる(p.95)」の集団です。オープンコレクターのメンバーは誰もが高い技術力とチーム同士の協力を惜しまない、本当に優秀なエンジニアの集まりです。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4798115827/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51POj39-1xL._SL160_.jpg" class="hatena-asin-detail-image" alt="ソフトウェア開発者採用ガイド" title="ソフトウェア開発者採用ガイド"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4798115827/shiumachijigo-22/">ソフトウェア開発者採用ガイド</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/Joel%20Spolsky" class="keyword">Joel Spolsky</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2008/03/20</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本(ソフトカバー)</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>その中でも社長のmoriyoshiは正真正銘の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CF%A5%C3%A5%AB%A1%BC">ハッカー</a>であり、見栄えのいい<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A5%EF%A5%DD">パワポ</a>資料を作ったり、世界を変える壮大な夢を描いて万人にそれを語ったりする代わりにコードを書くことで価値を示す、まさに「<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CF%A5%C3%A5%AB%A1%BC">ハッカー</a>と画家」から飛び出してきたような、とびきりの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CF%A5%C3%A5%AB%A1%BC">ハッカー</a>です。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4274065979/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/511SV9NXW2L._SL160_.jpg" class="hatena-asin-detail-image" alt="ハッカーと画家 コンピュータ時代の創造者たち" title="ハッカーと画家 コンピュータ時代の創造者たち"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4274065979/shiumachijigo-22/">ハッカーと画家 コンピュータ時代の創造者たち</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%DD%A1%BC%A5%EB%20%A5%B0%A5%EC%A5%A2%A5%E0" class="keyword">ポール グレアム</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2005/01/01</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>一流の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CF%A5%C3%A5%AB%A1%BC">ハッカー</a>のそばにいて一緒に仕事をしながら学ぶことができるという福利厚生は、どんなにお金を積んでも買えるものではありません。</p><br /> <p>このような恵まれた環境で働くということに幸せを感じるとともに、いつか自分もそう思われるよう、努力を重ねていきたいと思っています。<br /> <br /> </p> <div class="section"> <h4>関連記事</h4> <p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2020%2F04%2F06%2F090000" title="株式会社オープンコレクターに転職しました - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2020/04/06/090000">shiumachi.hatenablog.com</a></cite><br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2017%2F06%2F01%2F230731" title="「プログラミングを独習するには10年かかる」を読んでから10年以上経った - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2017/06/01/230731">shiumachi.hatenablog.com</a></cite></p> </div> shiumachi TEAM OF TEAMS: 米軍による、最新ITを駆使した21世紀の組織変革戦略 hatenablog://entry/26006613556792161 2020-04-27T09:00:00+09:00 2020-04-27T09:50:55+09:00 TEAM OF TEAMS (チーム・オブ・チームズ)作者:スタンリー・マクリスタル,タントゥム・コリンズ,デビッド・シルバーマン,クリス・ファッセル発売日: 2016/04/01メディア: 単行本 この本は、イラクとアフガニスタンで米軍の司令官を務めた将軍が記した、複雑で予測不可能な社会に対応するための、21世紀の組織論を書いた本です。20世紀においては、事業部制に代表されるような、きれいに組織化され、作業を分割され、個人や部門が特定の作業に集中できるようにする効率化された組織が大成功を収めました。その集大成とも言えるものが、イラクやアフガニスタンに派遣された米軍でしたが、装備や練度で大幅に… <p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4822251543/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51WBA3zZ33L._SL160_.jpg" class="hatena-asin-detail-image" alt="TEAM OF TEAMS (チーム・オブ・チームズ)" title="TEAM OF TEAMS (チーム・オブ・チームズ)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4822251543/shiumachijigo-22/">TEAM OF TEAMS (チーム・オブ・チームズ)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%BF%A5%F3%A5%EA%A1%BC%A1%A6%A5%DE%A5%AF%A5%EA%A5%B9%A5%BF%A5%EB" class="keyword">スタンリー・マクリスタル</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%BF%A5%F3%A5%C8%A5%A5%A5%E0%A1%A6%A5%B3%A5%EA%A5%F3%A5%BA" class="keyword">タントゥム・コリンズ</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%D3%A5%C3%A5%C9%A1%A6%A5%B7%A5%EB%A5%D0%A1%BC%A5%DE%A5%F3" class="keyword">デビッド・シルバーマン</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%EA%A5%B9%A1%A6%A5%D5%A5%A1%A5%C3%A5%BB%A5%EB" class="keyword">クリス・ファッセル</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2016/04/01</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><br /> <p>この本は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%E9%A5%AF">イラク</a>と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%AC%A5%CB%A5%B9%A5%BF%A5%F3">アフガニスタン</a>で米軍の司令官を務めた将軍が記した、複雑で予測不可能な社会に対応するための、21世紀の組織論を書いた本です。</p><p>20世紀においては、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BB%F6%B6%C8%C9%F4%C0%A9">事業部制</a>に代表されるような、きれいに組織化され、作業を分割され、個人や部門が特定の作業に集中できるようにする効率化された組織が大成功を収めました。その集大成とも言えるものが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%E9%A5%AF">イラク</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D5%A5%AC%A5%CB%A5%B9%A5%BF%A5%F3">アフガニスタン</a>に派遣された米軍でしたが、装備や練度で大幅に劣るはずのAQI(=<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%EB%A5%AB%A5%A4%A5%C0">アルカイダ</a>)に翻弄されていきます。その中で著者は、20世紀型のマネジメントに原因があると気づき、組織の構造の根本的な改革に取り組みます。そのときに着目したのが「チーム」という存在でした。</p><p>チーム単位の組織論は20世紀においても十分な進化を遂げていました。チームは互いを信頼し、全ての情報を透明性を持って共有し、硬直化した意思決定プロセスを捨てて誰もがア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%C7%A5%A2">イデア</a>を出していく、そのようなチームが成功を収めていました。その代表例は航空機業界における<a href="https://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%AB%E3%83%BC%E3%83%BB%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E3%83%BB%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88">CRM(&#x30AF;&#x30EB;&#x30FC;&#x30EA;&#x30BD;&#x30FC;&#x30B9;&#x30DE;&#x30CD;&#x30B8;&#x30E1;&#x30F3;&#x30C8;)</a>や<a href="https://ja.wikipedia.org/wiki/Navy_SEALs">&#x7C73;&#x56FD;&#x6D77;&#x8ECD;&#x306E;Navy SEALs </a>などです。</p><p>しかし、当時の米軍では、チームレベルでは協調ができていても、組織全体は完全な縦割りで、組織の壁でコミュニケーションが遮られていました。「自分のチームさえよければ他のチームはどうでもいい」という感情は、チーム間の競争を生み、組織全体の目的よりも優先されてしまうこともあります。著者は、組織全体としてチームと同様の一体感を作るには、「チームの中のチーム(TEAM OF TEAMS)」が必要だと考えるようになりました。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CD%A5%A4%A5%D3%A1%BC%A5%B7%A1%BC%A5%EB%A5%BA">ネイビーシールズ</a>のような、一体感を持ったチームを、部門横断でいくつも作ることで、全員が互いの顔を知らなくても、2-3ホップでチームとして繋がれるようなネットワークを組める、というのがア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%C7%A5%A2">イデア</a>の骨子です。では、それをどう実現するか?著者がそのときに採用した三つの施策が、情報統制の撤廃による透明性の向上、要員交換プログラムによる横の結束の構築、そして徹底的な権限委譲でした。</p><p>米軍では、オペレーションアンドインフォメーション状況報告、通称O&Iと呼ばれる会議が存在します。一般企業でいう進捗報告会議です。2003年の米国において著者が実施したことは、セキュアなビデオ会議の導入でした。<br /> <br /> </p> <blockquote> <p>最先端の軍の装備と言われたら普通は兵器を想像するはずで、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%AB%A5%A4%A5%D7">スカイプ</a>の拡大版だとは思わないだろう。(p.289)</p> </blockquote> <p><br /> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Skype">Skype</a>(最近ではZoomの方が一般的でしょうが)のようなビデオ会議ツールを、著者ははっきりと「兵器」と言っています。それだけではなく、「チャットルーム、ウェブポータル、そして電子メール(p.290)」、要するに今でいうところの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B0%A5%EB%A1%BC%A5%D7%A5%A6%A5%A7%A5%A2">グループウェア</a>を導入していったのです。2020年の今となってはMSやG Suiteを導入するのは当たり前ですが、当時はまだ2003年です。その時代に、著者は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B0%A5%EB%A1%BC%A5%D7%A5%A6%A5%A7%A5%A2">グループウェア</a>を組織変革のための「兵器」とみなしていたのです。</p><p>そして、著者はこの進捗会議を全員参加にするだけでなく、どんなに極秘な情報であっても全て公開情報としてこの会議で取り上げました。米軍のようなミッションクリティカルな領域においては情報を秘匿するのが常識でしたが、著者は共有する方がリスクよりもメリットがあると判断しました。<br /> <br /> </p> <blockquote> <p>役に立つものは目に見えないが、漏えい事件は新聞のトップ記事になる。そのせいで、判断を誤ってはならない。…経験上確かなのは、情報を共有すれば膨大な数の命を救えるということだ。(p.300-301)</p> </blockquote> <p><br /> 二つ目の施策は、要員交換プログラムでした。チーム間で人員を転属させる仕組みなのですが、部隊からは強い反発を受けました。長年の訓練で築き上げた強い結束を崩して他のチームと組むなど言語道断といった感じです。しかし、いざ命令が下りると、各隊は部隊代表としてエースを送り込み始めます。こうしたエースは他者との関係を築く才能があることが多く、新たなチームを作り出すことができます。それだけではなく、各チームからの代表がそれぞれのチームとのパイプ役となり、チーム同士の対立を避け、勝利のためのチーム同士の結束が可能となっていきました。</p><p>同時に、O&Iもチーム同士の結束に活用していきました。リソース(多くの企業でいうところのヒト・モノ・カネ)の部署間の取り合いはどの組織でもあることですが、このリソース配分会議をO&Iの最中に、すなわち部隊の全員が見ている中で行い始めました。これにより、部隊全員が全体像を把握することができるようになり、勝利を目指すためにリソースを譲るべきかどうかを判断できるようになりました。</p><p>最後の施策が、権限の委譲でした。部隊の司令官だった著者は、部下から作戦の説明を聞いて、それに対して承認する(日本で言うところのハンコを押す)だけの役割が多かったのですが、一瞬のチャンスを逃さないためにはそれは不要だと考えるようになりました。</p><p>現代の技術を使えば、戦場のあらゆる情報をリアルタイムに指揮官の元に集めることができ、また指揮官の号令は世界中どこにでも一瞬で届けることができます。しかし、それこそが、現場の自律的な活動を阻害する要因であると著者は気づきました。<br /> <br /> </p> <blockquote> <p>(あらゆる情報がリアルタイムに集まる環境について)頭のなかに全体像を描くには素晴らしい環境だったが、そのせいで悪夢のような書類仕事と承認手続きが生じ、本当の問題を解決するために使えたはずの時間を奪われてしまった。…今では、最も優秀なリーダーですら、必要とされる判断のスピードと量に追いつけず、組織の下のものに権限を与えざるを得ない(p.364)</p> </blockquote> <p><br /> そして、著者は個別の作戦の判断をやめて、一連の流れを監督することに徹します。これにより、一ヶ月間の作戦行動を月あたり10-18回から、月あたり300回まで増やすことに成功したのです。</p><p>著者は、上記の体験を元に、これからのリーダー像についても論じています。従来型のリーダーは、英雄的リーダーでした。我々はリーダーに対し、高度で戦略的な先見性を求める一方で、些細な問題についても知っていることをリーダーに求め、知らないとなればなぜ知らないのかと追い打ちをかけたりします。しかし、そのようなリーダーはもはや成り立たないと著者は記しています。<br /> <br /> </p> <blockquote> <p>リーダーは、自分が複雑な状況を理解し、予測できるような気になってしまう。しかし、変化が早く、相互依存的な環境においては、我々の目が届くスピードより問題が深刻化するスピードの方がずっと早い。(p.387)</p> </blockquote> <p><br /> ではリーダーは不要なのか?そうではありません。著者は新しいリーダーのあり方をこう記しています。<br /> <br /> </p> <blockquote> <p>上に立つ者の役割は、糸を引いて人形を操ることではなくなり、共感によって文化を創造することになったのである。(p.388)</p> </blockquote> <blockquote> <p>新たな環境でうまく機能するリーダーシップとは、チェスより菜園づくりに似ていると考え始めた。…組織を育て、構造や手続き、ひいてはその文化を改善し、配下の組織が「賢く自立的」に動けるようにする方が効果的なのである。(p.392)</p> </blockquote> <blockquote> <p>より多くのことを決定する力を持ったまさにそのときに、自分の決断機会を減らさなければならないと気づいたのである。(p.394)</p> </blockquote> <p><br /> 著者は、何を優先すべきかを話し合い、率先して手本を示すことでそれを明確化することで、部隊の関心をそこに集中させることが自分の第一の仕事だと認識しました。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%C8%A5%E9%A5%CD%A5%C3%A5%C8">イントラネット</a>に伝えたいことを、シンプルに、繰り返し記述し、行動とメッセージがぶれないように気をつけました。若いメンバーの意見は、たとえ知っているようなことが多かったとしても、聞いていたという姿勢を見せ、出来がよくなくても褒めることで、隊員に自信を与えていきました。</p><p>また、頭に浮かんだことを声に出して、思考プロセスを共有することで、部隊全体に考えを共有したりもしました。視察中は常に誰かとのコミュニケーションの時間に費やし、自分の考えを共有していきました。<br /> <br /> </p> <blockquote> <p>テク<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CE%A5%ED">ノロ</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B8%A1%BC">ジー</a>は…従業員の働きぶりを細かく見張るためではなく、チームの一人ひとりにリーダーの姿をみせるために使わなければならない。リーダーは指示を出すよりも、自分の透明性を示さなければならない。これこそ新たなリーダーの理想像である。(p.405)</p> </blockquote> <p><br /> この本を読み終えたとき、私の脳裏に浮かんだのは、まだ200-300人の頃のClouderaでした。今でも私にとってはあの頃のClouderaが最高の組織だったと信じて疑っていませんが、それはおそらく、この本でいうところの「大きい1つのチーム」だったからだと感じました。創業者のMike Olsonは300人規模になるまで、全社員の最終面接を行っていたのですが、彼はそれが会社の文化を守るのに必要だからと確信していたからだと思っていたのは間違いありません。実際、当時のClouderaは、非常に透明性が高く、部門を超えて連携する、一つのチームとして機能していました。しかし、会社が大きくなってからは、One Clouderaという標語を明記するのに反して、部門ごとの縦割りが進んでいき、以前のような一体感を失っていきました。</p><p>唯一の例外はサポートチームで、サポートチームだけが初期のCloudera文化を引き継いだまま大組織化に成功しましたが、この本を読むと、おそらくサポートケースを対処するための部門横断チーム、すなわちTEAM OF TEAMSを作っていくことに成功したからではないかなと思いました。実際、初期の頃のClouderaでは、サポートケースに開発チームやポストセールス、営業などが書き込んでいき、お客様との対応を全員で行っていたのでそうしたTEAM OF TEAMSを作る土壌はあったように思います。</p><p>この本に書いてあることが本当に正しいか、まだ私は確信は持てていません。一つは、結局米軍は大統領、あるいは国から目標を与えられていく存在のため、自ら目標を作っていかなければいけない組織においては成り立たないのではないかという疑念があります。もう一つは、米軍は当然優秀で士気が高い精鋭集団のため、そこまで優秀ではなく士気も高くない組織でこの理屈が成り立つのかという懸念です。しかし、私が過去の経験から抱いた疑問にいくつかの解答案を示しているものであり、その意味でこの本は大きな価値があると感じました。</p><p>本書にもある通り、この本はノウハウ本のような「これをすればうまくいく」といった単純な内容ではありませんが、組織論としては面白い内容なので、そういうのに興味がある人は読んで損はないと思います。</p><p>ただ、前半250ページくらいは従来の事例の話が多く、組織論をある程度かじっている人は前半は読み飛ばして、O&Iの話あたりから読み始めればいいと思います。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4822251543/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51WBA3zZ33L._SL160_.jpg" class="hatena-asin-detail-image" alt="TEAM OF TEAMS (チーム・オブ・チームズ)" title="TEAM OF TEAMS (チーム・オブ・チームズ)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4822251543/shiumachijigo-22/">TEAM OF TEAMS (チーム・オブ・チームズ)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%BF%A5%F3%A5%EA%A1%BC%A1%A6%A5%DE%A5%AF%A5%EA%A5%B9%A5%BF%A5%EB" class="keyword">スタンリー・マクリスタル</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%BF%A5%F3%A5%C8%A5%A5%A5%E0%A1%A6%A5%B3%A5%EA%A5%F3%A5%BA" class="keyword">タントゥム・コリンズ</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%D3%A5%C3%A5%C9%A1%A6%A5%B7%A5%EB%A5%D0%A1%BC%A5%DE%A5%F3" class="keyword">デビッド・シルバーマン</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%AF%A5%EA%A5%B9%A1%A6%A5%D5%A5%A1%A5%C3%A5%BB%A5%EB" class="keyword">クリス・ファッセル</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2016/04/01</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><br /> <p>(2020/04/27 追記: 細かい<a class="keyword" href="http://d.hatena.ne.jp/keyword/typo">typo</a>の修正)</p> shiumachi 高い予測精度を有する専門家の特徴 hatenablog://entry/26006613552787657 2020-04-20T09:00:00+09:00 2020-04-20T09:50:17+09:00 今年の初め、新型コロナウィルスがこれほど世界的に流行するなど、私は全く想像していませんでした。しかし、このような事態になって、あらためて「超予測力」に書いてあったことが正しかったと実感しています。超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)作者:フィリップ・E・テトロック,ダン・ガードナー発売日: 2018/05/02メディア: 文庫超予測力の書評については、去年私が記事を書いているので、そちらも是非読んでみてください。shiumachi.hatenablog.comその記事の後半から一部を引用します。 2001年4月11日、当時の米国国務長官ドナルド・ラムズ… <p>今年の初め、新型コロナウィルスがこれほど世界的に流行するなど、私は全く想像していませんでした。しかし、このような事態になって、あらためて「超予測力」に書いてあったことが正しかったと実感しています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150505225/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/41MaR0pPxJL._SL160_.jpg" class="hatena-asin-detail-image" alt="超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)" title="超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150505225/shiumachijigo-22/">超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A3%A5%EA%A5%C3%A5%D7%A1%A6E%A1%A6%A5%C6%A5%C8%A5%ED%A5%C3%A5%AF" class="keyword">フィリップ・E・テトロック</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%F3%A1%A6%A5%AC%A1%BC%A5%C9%A5%CA%A1%BC" class="keyword">ダン・ガードナー</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2018/05/02</li><li><span class="hatena-asin-detail-label">メディア:</span> 文庫</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>超予測力の書評については、去年私が記事を書いているので、そちらも是非読んでみてください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F12%2F09%2F070000" title="超予測力: 未来を予測する技術を学べる本 - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/12/09/070000">shiumachi.hatenablog.com</a></cite></p><p>その記事の後半から一部を引用します。</p> <blockquote> <p>2001年4月11日、当時の米国<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%F1%CC%B3%C4%B9%B4%B1">国務長官</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C9%A5%CA%A5%EB%A5%C9%A1%A6%A5%E9%A5%E0%A5%BA%A5%D5%A5%A7%A5%EB%A5%C9">ドナルド・ラムズフェルド</a>が、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B8%A5%E7%A1%BC%A5%B8%A1%A6W%A1%A6%A5%D6%A5%C3%A5%B7%A5%E5">ジョージ・W・ブッシュ</a>大統領と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%C3%A5%AF%A1%A6%A5%C1%A5%A7%A5%A4%A5%CB%A1%BC">ディック・チェイニー</a>副大統領宛に、リントン・ウェルズ博士が執筆した、1900年から2000年までの、10年ごとの戦略的状況の分析メモを送付しました。</p><p>その内容は、10年ごとの戦略分析は「全て」的外れであるということを示していました。例えば、1930年の国防計画基準には「今後10年は戦争はしない」と記されていますが、実際には9年後に世界大戦が勃発しています。1960年の時点では、まだ米国国民の大半は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D9%A5%C8%A5%CA%A5%E0">ベトナム</a>という国を知らず、1990年にはインターネットという概念を国民の大半が知らない、という状態でした。<br /> 「2010年の状況は、我々の想定しているものとは全く異なるものだから、それを前提にして計画を立てるべき」とそのメモは締めくくられていました。</p><p>そしてその半年後、<a class="keyword" href="http://d.hatena.ne.jp/keyword/911">911</a>が発生したのです。</p> </blockquote> <p>もし、米国政府で今も同様のメモが更新されているのであれば、この新型コロナウィルス<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A5%F3%A5%C7%A5%DF%A5%C3%A5%AF">パンデミック</a>も末尾に書き足されていることでしょう。</p><p>未来を予測できないからこそ、予測するというのが本書の目的の一つとなっています。</p><br /> <p>予測のテクニックは思った以上に難しく、我々一般人が真似をすることはかなり困難です。</p><p>しかし、他者の予測を評価する、すなわち予測<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EA%A5%C6%A5%E9%A5%B7%A1%BC">リテラシー</a>についてはある程度学ぶことができます。</p><p>本記事では、「超予測力」の3章を主に引用し、専門家達の予測の評価方法を紹介していきます。<br /> <br /> </p> <div class="section"> <h4>デタラメ以下の専門家達</h4> <p>本書の3章では、専門家達の予測能力を図る実験を行っています。実験の内容を簡単に説明すると、政治に関するいくつかの予測を専門家達に行ってもらい、一定時間経過したあとにその結果を検証するというものです。</p><p>その結果に基づき、専門家達をグループ1(デタラメ以下の予測力)、グループ2(デタラメよりマシ)に分類しました。</p><p>グループ1には以下のような特徴がありました。</p> <ul> <li>自らの思想信条を中心に思考する。思想信条の内容そのものは無関係</li> <li>複雑な問題をお気に入りの因果関係のテンプレートに押し込もうとする</li> <li>テンプレートにそぐわないものはノイズとして捨てる</li> <li>分析結果は非常に明快</li> <li>「そのうえ」「しかも」といった言葉を連発し、自分の主張が正しく他の主張が間違っている理由を並べ立てる</li> <li>極端に自信にあふれ、さまざまな事象について「起こり得ない」「確実」などと言い切る傾向が高い</li> <li>自らの結論を固く信じ、予測が明らかに誤っていることがわかっても、なかなか考えを変えようとしない</li> </ul><p>グループ1の思想信条は、予測の正確さを高めるどころかむしろ歪めていました。また、グループ1は、多くの情報を集めても、全てを色眼鏡で見るために活用できなませんでした。</p><p>しかし、メディアにおいてはグループ1は成功しています。メディアや一般大衆は、シンプルで好きのない明快なストーリーを好むので、自信にあふれ、確実であると言い切るグループ1は人気が高くなるのです。</p><p>(2020/04/20 追記) ここでいうメディアとは、旧来のマスメディア、すなわち、テレビや新聞などを主体に考えていることに注意してください。本文には明記されていませんが、個人が直接<a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>で発信することは含まれておりません。<br /> <br /> </p> </div> <div class="section"> <h4>デタラメよりも予測精度の高い専門家達</h4> <p>一方、グループ2には以下のような特徴がありました。</p> <ul> <li>現実的</li> <li>直面した問題に応じてさまざまな分析ツールを駆使</li> <li>できるだけ多くの情報源から、できるだけ多くの情報を集めようとする</li> <li>思考するときに頭の中のギアを頻繁に切り替える</li> <li>「しかし」「だが」「とはいえ」「それに対して」といった転換語が目立つ</li> <li>確実性ではなく、可能性や確率に言及する</li> <li>グループ1に比べ、自らの誤りを認め、考えを変える傾向がある</li> </ul><p>グループ2は、メディアでは成功しません。グループ1ほど自信がなく、何かが確実あるいは不可能と言うことを避けます。「かもしれない」といったぼんやりとした表現を選ぶだけでなく、1つの問題をさまざまな視点から見るので、その説明は「しかし」や「一方」が多く、難解です。</p><p>聴衆は不確実性を好まないので、グループ2はメディア人気が低くなる傾向があるのです。<br /> <br /> </p> </div> <div class="section"> <h4>まとめ</h4> <p>今回の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A5%F3%A5%C7%A5%DF%A5%C3%A5%AF">パンデミック</a>において様々な専門家達が意見を述べていて、どの意見を信じたらいいかは難しいですが、以下の言葉は参考になるかもしれません。</p> <blockquote> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%C3%CE%CC%BE%C5%D9">知名度</a>と正確さには逆相関が見られたのだ。有名な専門家ほど、その予測の正確さは低かった。(p.109)</p> </blockquote> <p>(2020/04/20 追記) ここでいう「有名」とは、テレビや新聞などの旧来型マスメディアに頻繁に登場する人だと考えてください。</p><br /> <p>当然ながらこの言葉は普遍の法則ではありません。しかし、何度もメディアに登場し、明確に「こうなる」と断言するような専門家の意見については、多少の警戒心を持って接しても損はないでしょう。</p><br /> <p>(2020/04/20 追記) タイトルが本文の内容を反映していないとの指摘があったため、タイトルを修正しました。</p> </div> shiumachi インビクタス「頭に訴えず、心に訴える」 hatenablog://entry/26006613548893588 2020-04-13T08:00:00+09:00 2020-04-13T10:27:19+09:00 昨年のラグビーワールドカップが盛り上がってた頃に、昔からのラグビーファンだった d1ce_ に勧められたので読みました。インビクタスは映画の方が有名ですが、d1ce_ からは本の方がお勧めということなので本を読んでみました。映画は未視聴です。インビクタス 負けざる者たち作者:ジョン カーリン発売日: 2009/12/23メディア: 単行本(ソフトカバー)優勝を手にした南アフリカ代表、スプリングボクスと、南アフリカの英雄、ネルソン・マンデラの話なのですが、話の中心はマンデラであり、スプリングボクスはその理想の実現を目指す実行部隊という位置づけの話です。恥ずかしながらアパルトヘイトについての自分の… <p>昨年の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC%A5%EF%A1%BC%A5%EB%A5%C9%A5%AB%A5%C3%A5%D7">ラグビーワールドカップ</a>が盛り上がってた頃に、昔からの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>ファンだった <a href="https://twitter.com/d1ce_">d1ce_</a> に勧められたので読みました。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%D3%A5%AF%A5%BF%A5%B9">インビクタス</a>は映画の方が有名ですが、d1ce_ からは本の方がお勧めということなので本を読んでみました。映画は未視聴です。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4140814063/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51Foo9rTwWL._SL160_.jpg" class="hatena-asin-detail-image" alt="インビクタス 負けざる者たち" title="インビクタス 負けざる者たち"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4140814063/shiumachijigo-22/">インビクタス 負けざる者たち</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%B8%A5%E7%A5%F3%20%A5%AB%A1%BC%A5%EA%A5%F3" class="keyword">ジョン カーリン</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2009/12/23</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本(ソフトカバー)</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>優勝を手にした<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%EE%A5%A2%A5%D5%A5%EA%A5%AB">南アフリカ</a>代表、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>と、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%EE%A5%A2%A5%D5%A5%EA%A5%AB">南アフリカ</a>の英雄、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CD%A5%EB%A5%BD%A5%F3%A1%A6%A5%DE%A5%F3%A5%C7%A5%E9">ネルソン・マンデラ</a>の話なのですが、話の中心は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>であり、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>はその理想の実現を目指す実行部隊という位置づけの話です。</p><p>恥ずかしながら<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%D1%A5%EB%A5%C8%A5%D8%A5%A4%A5%C8">アパルトヘイト</a>についての自分の理解は非常に浅く、「黒人に対する人種差別政策で、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>がそれを廃止した」くらいの知識しかありませんでした。しかし、本書を読むことで、当然ながらそんな単純な話ではありませんでした。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>が政権を獲得するまでの苦難、そして、単に法律だけの話ではなく、白人も黒人も、心から一つにまとまるための道のり、そしてそのキーファクターとして<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>がどのように関わっていったかが本書で描かれています。</p><p>本書を通して特に印象深かったのが、差別側、特権階級側である白人コミュニティが抱く、被差別側、つまり黒人コミュニティに対する恐怖と、一方で自分達が世界から侮蔑の目で観られているということについての劣等感でした。</p><p>「差別は悪いことである」とは世界の誰もが教わる常識ですが、その差別をしている人たちもまた人間であるということは忘れがちです。悪意を持って差別している人ももちろんいるでしょうが、被差別層に復讐されるかもしれないといった恐怖から現状維持を求める者もいれば、単純に政治に対して無関心だったり、日々の生活に手一杯だったり(白人層にも<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C4%E3%BD%EA%C6%C0%BC%D4">低所得者</a>層はたくさんいる)、変化に対して抵抗する人達の理由は様々です。</p><p>一方で黒人コミュニティも、白人に対する憎悪であふれている人も大勢いて、過激な行動に走ってでも自由を勝ち取るという意志を持つものも大勢います。</p><p>そんな黒人コミュニティの代表者である<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>は、27年もの間投獄されるという想像を絶する苦痛の中、憎悪に飲まれるのではなく、白人コミュニティを取り込んでいく上での黒人の解放を目指すという平和的な手段を選んでいきます。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>は、類まれな魅力と会話術によって、収監中であっても看守や上司から、はては国家情報局長までを味方につけていき、最終的には大統領までも説得していって、とうとう釈放の許可をもらうことに成功します。黒人コミュニティからは熱狂的に、白人コミュニティからは不信と不満を持って迎えられた<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>は、その後も地道な演説活動と要人への交渉を続け、最終的には2/3弱の投票を獲得して選挙に勝利します。しかし、白人右翼の40-50%は選挙へ行かず、それどころか、選挙の前週には空港などでテロを敢行し、21名を殺害するという凶行に走りました。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>は、白人コミュニティとさらに融和するべく、苦心することになります。一方で、白人コミュニティも、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>を擁立したはいいものの、本当に黒人コミュニティは復讐しないのか、その不信の念を拭い去ることはできていませんでした。</p> <blockquote> <p>一九九四年の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%EE%A5%A2%A5%D5%A5%EA%A5%AB">南アフリカ</a>は、歴史、文化、人種その他多くの面で、完全に分離した国でした。交渉、演説、制度の改正、これらをいくら積み重ねても、それだけで『<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%EE%A5%A2%A5%D5%A5%EA%A5%AB">南アフリカ</a>人をつくること』はできなかった。国民の心を一つにする、なにかほかのものが必要でした。(p199-200)</p> </blockquote> <p>そして、民族融和の手段として、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>が選ばれたのです。</p><p>今でこそ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%EE%A5%A2%A5%D5%A5%EA%A5%AB">南アフリカ</a>の国技として世界的に知られてはいますが、当時の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>はあくまで白人コミュニティのものでした。黒人コミュニティにとって、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>は差別の象徴であり、憎き白人の象徴でした。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>そのものを嫌悪する人はもちろん、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>を応援するときは<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>の対戦相手を応援することが当たり前でした。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>が白人コミュニティのものであることを象徴的に示す一例は、国歌と国旗です。当時の国歌だった「ディ・ステム」は、植民地開拓をした白人たちの歌であり、黒人コミュニティにとっては差別の象徴でした。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>の国際試合では、黒人コミュニティからの要請にも関わらず、古い国旗が翻り、「ディ・ステム」が歌われ、白人コミュニティの抵抗を象徴する存在となっていました。</p><p>黒人コミュニティには、「ンコシ・シケレリ」という非公式の国歌がありました。多くの黒人国民は、この歌を国歌として制定し、「ディ・ステム」を不要としようとしましたが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>は断固としてそれに反対します。</p> <blockquote> <p>「みなさんが軽く扱った歌には、多くの国民の思いが詰まっています。…みなさんが署名ひとつで崩そうとしたのは、我々が築こうとしているものの、かけがえのない、唯一の土台 ―― 和解です」 (p.187)</p> </blockquote> <p>最終的に、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>の案である、「ディ・ステム」と「ンコシ・シケレリ」を二曲続けて演奏するという案が採用されることになりました。</p><p>このときに<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>が同時に言ったのが、白人コミュニティを味方につけるアド<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D0%A5%A4%A5%B9">バイス</a>でした。それは、たとえ数語でもいいので白人コミュニティの言葉を使って話しかけるというものでした。このときに、タイトルにある「<b>頭に訴えかけてはいけません、心に訴えるのです</b>」と言い残しています。</p><p>この<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>の意志を理解し、実行のための強い意志を固めていったのが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>でした。黒人コミュニティの標準語であるコーサ語を学び、「ンコシ・シケレリ」を歌う練習も何度も重ね、自分達に課せられた使命、すなわち「国を一つにする」という使命を達成するために、必ず試合に勝利しなければいけないというプレッシャーの中、大会を勝ち抜いていきました。そして、ついに白人コミュニティと黒人コミュニティが一つとなり、あたらしい一つの国として<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%D7%A5%EA%A5%F3%A5%B0%A5%DC%A5%AF%A5%B9">スプリングボクス</a>を応援し、そしてチームは見事優勝していったのです。</p><p>この物語の全体を通して感じたことは、民族融和を目指す<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>の根気、優しさ、強さでした。対立する2つのコミュニティを融和させるというのは並大抵の難しさではなく、単なる八方美人で終わってしまうことも少なくないでしょう。しかし<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>は、国歌の選定を始め、必ず通すべきと思った意見は静かに、しかし確実に主張をしています。このとき、「相手の立場もわかってやってくれ」といったような妥協を促す説得を全くしていないというところも驚きでした。黒人はもちろん、白人に対しても理解を示し、いずれのコミュニティに対しても望む結果となるよう最大限の努力を続けていました。人種を超えた、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%EE%A5%A2%A5%D5%A5%EA%A5%AB">南アフリカ</a>国民を信じ続け、そして国民がそれに応えていったのです。</p><p>世間は、コミュニティの対立、個人の対立で溢れかえっています。自分が対立の当事者になることもあれば、対立を仲裁する立場に立たざるをえない場合もあるでしょう。片方に妥協を促すというのはよく行われる手法であり、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A5%F3%A5%C7%A5%E9">マンデラ</a>と同じアプローチを取れる人は多くありません。しかし、「相手を理解する努力をし、相手の罪を許し、相手を尊重する」という彼が持っていたビジョンは、多くのこうした揉め事において、常に心に留めておきたいものだと感じました。口で言うのはたやすいですが……</p> shiumachi 株式会社オープンコレクターに転職しました hatenablog://entry/26006613545627531 2020-04-06T09:00:00+09:00 2020-04-06T09:00:16+09:00 2020年4月6日付で、株式会社オープンコレクターのシステムアーキテクトとして勤務を開始しました。 https://open-c.jp/この会社は、PythonやGo、React Native などの技術を中心として、認証基盤や決済システム、大規模データ処理アプリケーションやチャットボットアプリケーションなどについて、フロントエンドからバックエンドまでの幅広い開発、アーキテクチャ設計からシステムコンサルティング、さらにはCTOレベルの戦略的な技術コンサルティングまでをカバーする、少数精鋭の技術者集団です。 フィンテック関連企業でのプロジェクトを中心に、製造業、小売業、インターネットサービス業な… <p>2020年4月6日付で、株式会社オープンコレクターの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B7%A5%B9%A5%C6%A5%E0%A5%A2%A1%BC%A5%AD%A5%C6%A5%AF%A5%C8">システムアーキテクト</a>として勤務を開始しました。<br /> <a href="https://open-c.jp/">https://open-c.jp/</a></p><p>この会社は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>やGo、React Native などの技術を中心として、認証基盤や決済システム、大規模データ処理アプリケーションやチャットボットアプリケーションなどについて、フロントエンドからバックエンドまでの幅広い開発、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A1%BC%A5%AD%A5%C6%A5%AF%A5%C1%A5%E3">アーキテクチャ</a>設計からシステム<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%B5%A5%EB%A5%C6%A5%A3%A5%F3%A5%B0">コンサルティング</a>、さらにはCTOレベルの戦略的な技術<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%B5%A5%EB%A5%C6%A5%A3%A5%F3%A5%B0">コンサルティング</a>までをカバーする、少数精鋭の技術者集団です。<br /> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A3%A5%F3%A5%C6%A5%C3%A5%AF">フィンテック</a>関連企業でのプロジェクトを中心に、製造業、小売業、インターネットサービス業など、幅広い業界で実績を持っています。</p><p>オープンコレクターに所属するメンバーは、一流のエンジニアばかりです。</p><p>会社代表のmoriyoshiは、上記の技術を始めとして、文字通りあらゆるレイヤーの技術に精通した賢者のような存在です。<br /> <a href="https://github.com/moriyoshi">https://github.com/moriyoshi</a></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a>で有名なtokibitoは、現在ObotAIのCTOとしても働いていて、いち技術者にとどまらない活躍をしています。<br /> <a href="https://employment.en-japan.com/engineerhub/entry/2020/01/30/103000">https://employment.en-japan.com/engineerhub/entry/2020/01/30/103000</a></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>のパッケージングで知らない人はいないであろうaodagもオープンコレクターの一員です。<br /> <a href="https://www.slideshare.net/aodag/presentations">https://www.slideshare.net/aodag/presentations</a></p><p>私よりひと足早く入社したwozozoは、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A3%A5%F3%A5%C6%A5%C3%A5%AF">フィンテック</a>系のフロントエンドエキスパートです。<br /> <a href="https://twitter.com/wozozo">https://twitter.com/wozozo</a></p><p>このような<a class="keyword" href="http://d.hatena.ne.jp/keyword/%EF%A3%A1%B9%A4%BF%A4%EB">錚々たる</a>メンバーの末席に加わることは恐縮ではありますが、彼らに恥じない仕事ができるよう努力したいと思います。</p><p>特に担当があるわけではありませんが、得意分野である大規模データ基盤の設計や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%B5%A5%EB%A5%C6%A5%A3%A5%F3%A5%B0">コンサルティング</a>、データ分析や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%B8%C0%B8%EC%BD%E8%CD%FD">自然言語処理</a>系のアプリケーションの開発などのプロジェクトを主に担当することになると思います。<br /> 今日から早速<a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>の案件が始まります。<br /> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Hadoop">Hadoop</a>コミュニティの皆様、思ったより早く戻ってきました。またよろしくお願いします。</p><p>お仕事のご相談は以下のサイトのお問い合わせフォームをご利用ください。<br /> <a href="https://www.open-c.jp/contact">https://www.open-c.jp/contact</a></p> shiumachi ルミノソジャパン合同会社を退職しました hatenablog://entry/26006613539687647 2020-03-24T17:00:00+09:00 2020-03-24T17:00:01+09:00 2020年3月24日(火)は、ルミノソジャパン合同会社への最終出社日でした。退職日は2020年4月5日(日)になります。2018年12月3日(月)に入社したので、勤続日数は490日でした。転職時の記事はこちら shiumachi.hatenablog.com この会社での仕事はあまり表に書くことがなかったので、どんなことをやっていたのかを簡単に紹介します。一応少しこの辺で触れていました。 shiumachi.hatenablog.com shiumachi.hatenablog.com 夏頃までは、プリセールスとポストセールスを半々くらいで仕事していました。デモを作ったりプレゼン資料を作る一方… <p>2020年3月24日(火)は、ルミノソジャパン<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%E7%C6%B1%B2%F1%BC%D2">合同会社</a>への最終出社日でした。退職日は2020年4月5日(日)になります。2018年12月3日(月)に入社したので、勤続日数は490日でした。</p><p>転職時の記事はこちら<br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2018%2F12%2F03%2F211031" title="ルミノソジャパン合同会社に転職しました - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2018/12/03/211031">shiumachi.hatenablog.com</a></cite></p><br /> <br /> <p>この会社での仕事はあまり表に書くことがなかったので、どんなことをやっていたのかを簡単に紹介します。</p><p>一応少しこの辺で触れていました。<br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F12%2F16%2F000000" title="ワードエンベディングモデルしか触らないNLPエンジニアとしての仕事の紹介 - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/12/16/000000">shiumachi.hatenablog.com</a></cite><br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F12%2F17%2F000000" title="ワードエンベディングベクトルを使った検索アプリを作った話 - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/12/17/000000">shiumachi.hatenablog.com</a></cite></p><br /> <br /> <p>夏頃までは、プリセールスとポストセールスを半々くらいで仕事していました。デモを作ったりプレゼン資料を作る一方で、構築作業や技術サポートなどをメインに仕事していました。</p><p>夏以降はほぼポストセールスに専念する形になり、開発にもかなりの時間を割いていました。(余談ですが、同時に在宅勤務となり、夏以降はほぼ出社していません)</p><p>大体以下のようなものを開発していました。</p> <ul> <li>サービス<a class="keyword" href="http://d.hatena.ne.jp/keyword/API">API</a>を活用した各種ツール</li> <li>サービスが生成したモデルを使った各種デモアプリ(先述の記事参照)</li> </ul><p>開発は全部<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>で行っていました。書いたコードの行数はトータルで2万行いかないくらいです。<br /> (Webアプリのテンプレート等は未カウント)</p><p>この会社での目標として、「お客様にとって本当に必要なものを、自分の手で作る」というものがありましたが、最終的に1年がかりでお客様の要望を整理し、プロトタイプを作成し、本社にプレゼンし、会社として開発を進めていく方向に持っていくことができたので、一定の目標は達成できたと感じています。</p><p>作ったツールについても、VPoEと古参エンジニアに「この品質ならそのまま製品化できる」と言ってもらえたのが自分としてはとても嬉しい成果となりました。</p><p>反面、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%B8%C0%B8%EC%BD%E8%CD%FD">自然言語処理</a>の技術・知識については、そもそも製品がベクトルモデルを作るものである以上、原理の理解以上の応用部分はあまり関与せず、スキルとしてはさほど上達しなかったので、目標達成とは言えませんでした。(少なくとも<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>エンジニアと名乗れるレベルの知識・技術は獲得できていない)</p><br /> <p>4月6日(月)からはまた新たな仕事が始まります。どのような仕事をするのかは次の記事で書くことにしましょう。<br /> <br /> </p> <div class="section"> <h4>明日<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A4%AB%A4%E9%A4%B7">からし</a>ばらく何するの?</h4> <p>情報交換も兼ねて、色々な人に会いたいと思っています。といっても、昨今の新型コロナウィルス流行の状況もあり、世間でもリモートワークが急速に浸透しているので、今回リモートで色々な人と情報交換しようと思っています。既に何人かアポを取らせていただいています。もし、「久々に話したい!」という方がいましたら、お気軽にご連絡ください。リモートでアポとるとかなり詰め込めるのでいくらでも余裕があります!</p> </div> shiumachi 今年こそは自宅で運動を始めたい人のためのFreeleticsガイド(2020年版) hatenablog://entry/26006613502836500 2020-01-26T17:48:18+09:00 2021-01-14T07:52:16+09:00 2021年版のFreeleticsガイドができました!この記事より新しいので、そちらを参照してください。shiumachi.hatenablog.com 新年明けて、心機一転してまた運動を再開しよう、という人がちらほら周りに増えてきたので、私が使い続けているトレーニングアプリ Freeletics について紹介します。Freeleticsは、ユーザにとって最適なトレーニングプランを提供してくれる、いわゆるAIパーソナルトレーナーアプリです。数分単位の短い時間にきついトレーニングをこなす、いわゆる高強度インターバルトレーニング (HIIT) をベースにしています。Freeleticsは、 自宅で… <blockquote> <p><b>2021年版のFreeleticsガイドができました!</b>この記事より新しいので、そちらを参照してください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2021%2F01%2F11%2F182649" title="今年こそは自宅トレで痩せたい人のための、AIパーソナルトレーナーFreeletics入門(2021年版) - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2021/01/11/182649">shiumachi.hatenablog.com</a></cite></p> </blockquote> <p>新年明けて、心機一転してまた運動を再開しよう、という人がちらほら周りに増えてきたので、私が使い続けているト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グアプリ <a href="https://www.freeletics.com/ja/">Freeletics</a> について紹介します。</p><p>Freeleticsは、ユーザにとって最適なト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グプランを提供してくれる、いわゆるAI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリです。数分単位の短い時間にきついト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをこなす、いわゆる<a href="https://ja.wikipedia.org/wiki/%E9%AB%98%E5%BC%B7%E5%BA%A6%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%90%E3%83%AB%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0">&#x9AD8;&#x5F37;&#x5EA6;&#x30A4;&#x30F3;&#x30BF;&#x30FC;&#x30D0;&#x30EB;&#x30C8;&#x30EC;&#x30FC;&#x30CB;&#x30F3;&#x30B0;</a> (HIIT) をベースにしています。</p><p>Freeleticsは、</p> <ul> <li>自宅でできる</li> <li>短時間</li> <li>自分だけのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューを作ってくれる</li> </ul><p>と、運動したいけど忙しい、という人に最適な特長を持っています。</p><p>このブログでも何度か紹介していますので、興味のある方は過去記事も読んでみてください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F05%2F25%2F220052" title="AIパーソナルトレーナーFreeleticsを使って、自宅で毎日トレーニングしよう - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/05/25/220052">shiumachi.hatenablog.com</a></cite><br /> <iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F09%2F15%2F131353" title="Freeleticsで半年間自宅トレーニングしたら食制限なしで6kg痩せた - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/09/15/131353">shiumachi.hatenablog.com</a></cite></p><p></p> <div class="section"> <h4>購入方法</h4> <p> <a href="https://www.freeletics.com/ja/">Freeletics</a>は有料のアプリです。年間1万円の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B5%A5%D6%A5%B9%A5%AF%A5%EA%A5%D7%A5%B7%A5%E7%A5%F3">サブスクリプション</a>です。<br /> 3ヶ月プランや6ヶ月プランもあるので、続ける自信がないという人はこちらを購入してもいいです。14日間は返金に応じてくれるので、試しに買ってみて、合わなかったら返金しましょう。</p><p>Freeleticsを始めてみたいという人は、下記のリンクから購入すれば20%オフで買えます。 Coach と Nutrition (食生活改善)の二種類が出てきますが、Nutrition は自分は試していません。運動だけなら Coach で十分と思いますが、誰か Nutrition を試した人がいたら感想教えてください。</p><p><a href="https://www.freeletics.com/r/124871187">https://www.freeletics.com/r/124871187</a></p><p></p> </div> <div class="section"> <h4>インストール</h4> <p>購入したら自分の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B9%A5%DE%A5%DB">スマホ</a>にアプリをインストールして、ログインします。</p><p><div style="text-align: left;" id="appreach-box"><img src="https://is5-ssl.mzstatic.com/image/thumb/Purple113/v4/62/d8/8f/62d88fd9-1972-8fd3-e80b-3748ff164e71/source/512x512bb.jpg" alt="Freeletics: トレーニング&フィットネス" style="float: left; margin: 10px; width: 25%; max-width: 120px; border-radius: 10%;" id="appreach-image"><div class="appreach-info" style="margin: 10px;"><div id="appreach-appname">Freeletics: ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ&フィットネス</div><div id="appreach-developer" style="font-size: 80%; display: inline-block;">開発元:<span id="appreach-developerurl">Freeletics <a class="keyword" href="http://d.hatena.ne.jp/keyword/GmbH">GmbH</a></span></div><div id="appreach-price" style="font-size: 80%; display: inline-block;">無料</div><div class="appreach-powered" style="font-size: 80%; display: inline-block;">posted with<a href="http://mama-hack.com/app-reach/" title="アプリーチ" target="_blank" rel="nofollow">アプリーチ</a></div><div class="appreach-links" style="float: left;"><div id="appreach-itunes-link" style="display: inline-block;"><a id="appreach-itunes" href="https://itunes.apple.com/jp/app/freeletics-%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0-%E3%83%95%E3%82%A3%E3%83%83%E3%83%88%E3%83%8D%E3%82%B9/id654810212?mt=8&amp;uo=4" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/itune_ja.svg" style="height: 40px; width: 135px;"></a></div><div id="appreach-gplay-link" style="display: inline-block;"><a id="appreach-gplay" href="https://play.google.com/store/apps/details?id=com.freeletics.lite" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/gplay_ja.png" style="height: 40px; width: 134.5px;"></a></div></div></div><div class="appreach-footer" style="margin-bottom: 10px; clear: left;"></div></div></p><p></p> </div> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グジャーニーを選ぶ</h4> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グジャーニーというのは6週間あるいは12週間のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グコースです。自分の目的に合わせて選んでいきます。途中から変更できるので、適当に選んでから後で変更してもいいでしょう。迷ったら「スタートストロング(男性)/スタートスマート(女性)」という6週間の初級コースを選べばいいです。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126172407.png" alt="f:id:shiumachi:20200126172407p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>基本は自重ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グですが、去年からランニングを含むコースも増えました。自重ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グではなくランニングをしたいという人はこちらを選びましょう。逆に自宅でのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしかしないのであればランニングのないコースを選びましょう。私は自宅ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしかしてません。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126172351.png" alt="f:id:shiumachi:20200126172351p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グする</h4> <p>毎週のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ日数を決める必要があるのですが、ここで重要なのは週5日を選ぶということです。週2日などにすると1日ごとの負荷がすごく高くなるため、きつすぎて続けられません。週5日を選んでおいて、日数調整は自分でやった方がいいでしょう。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126172429.png" alt="f:id:shiumachi:20200126172429p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>1日のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは、ウォーミングアップ→ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ→クールダウンという流れで行います。1回のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは、初級だと20分程度、中級コースだと30分程度に調整されています。</p> </div> <div class="section"> <h4>フィードバックする</h4> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを行ったあとにフィードバックを入力します。この入力が次のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの負荷に影響するので正確に行う必要があります。「全く休まずできたら右端、休憩したけどなんとか完走したら真ん中、途中でリタイアしたら左端」くらいに覚えておけばいいでしょう。</p> </div> <div class="section"> <h4>新機能: 毎日のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グでの微調整</h4> <p>2019年12月のアップデートから、<b>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの微調整</b>ができるようになりました。その中で一番の目玉は、リングフィットアド<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D9%A5%F3%A5%C1%A5%E3%A1%BC">ベンチャー</a>でいうところの<span style="color: #ff0000"><b>サイレントモードの実装</b></span>です。</p><p>Freeleticsを薦めたときに友人から一番多く言われたのが、「マンションなので階下に響く運動はできない」というものでした。確かにFreeleticsはジャンプ運動が入るために、そのままでは階下に響いてしまいます。</p><p>しかし、このサイレントモードを使えば、全てのジャンプ運動はスクワットとランジなどの静かなものに変わるため、静かにト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グすることができます。</p><p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの微調整は、毎日のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューを開いて、右下のCボタンを押して行います。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126172701.png" alt="f:id:shiumachi:20200126172701p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>ここで、「静かにト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グする必要がある」を選べば、サイレントモードに変更することができます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126172805.png" alt="f:id:shiumachi:20200126172805p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>たとえば、この日の私のメニューは、クランチ(腹筋) と、マウンテンクライマー(四つん這いになりながら足だけ駆け足する)を交互に行うというメニューです。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126172950.png" alt="f:id:shiumachi:20200126172950p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>これをサイレントモードにすると、プッシュアップ(腕立て)、クランチ、スクワットに変わります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126174200.png" alt="f:id:shiumachi:20200126174200p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>サイレントモード以外にも、「15分モード」や「筋肉痛モード」などもあるので、その日の状況に合わせたト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを選ぶことができます。</p><p>先程と同じメニューを「15分モード」に変えると、ランジ(片脚づつ交互に膝立ちする脚の運動)、ヒールレイズ(四つん這いになってかかとを交互に後ろに上げる運動)、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%E9%A5%F3%A5%AF">プランク</a>ニーズツーチェスト(四つん這いの状態から膝を胸につける腹筋と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C2%CE%B4%B4">体幹</a>の運動)が3セットだけに変わります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126173239.png" alt="f:id:shiumachi:20200126173239p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <p>また、その日のメニューが気分に合わないときは、「違うセッション」を選択することで、別パターンに切り替えることができます。</p><p>これも先程のメニューの例でいうと、スプロール(バーピーの簡易版の激しい全身運動)、パッシブハング(懸垂台でのぶら下がり)に変わります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126174215.png" alt="f:id:shiumachi:20200126174215p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>Tips</h4> <div class="section"> <h5>マットを買う</h5> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グマットは必須といっていいレベルなので買いましょう。私はALINCOのマットを使っています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0007TT7I0/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/315HtE1AQpL.jpg" class="hatena-asin-detail-image" alt="ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め" title="ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0007TT7I0/shiumachijigo-22/">ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2012/04/05</li><li><span class="hatena-asin-detail-label">メディア:</span> スポーツ用品</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h5>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ回数は週5回を選択すること</h5> <p>上でも書いたことですが、これは強く推奨します。週2-3回のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを選択すると負荷が高すぎるためモチベーションが下がります。</p> </div> <div class="section"> <h5>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ実施日数にはこだわらない</h5> <p>アプリ上では何曜日にト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グするかを選択する必要がありますが、あまりそれにこだわらず、できそうなら毎日やった方がいいです。逆に気が乗らない場合はその日は思い切ってサボった方が長続きします。ただし、3日以上空けるとやる気がどんどん下がっていくので、休むのは1日だけ、多くても2日くらいにしておいた方がいいです。</p> </div> <div class="section"> <h5>シングルエクササイズを活用する</h5> <p>通常のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニュー以外にも、特定の種目だけ選択できるシングルエクササイズモードがあります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126173400.png" alt="f:id:shiumachi:20200126173400p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>通常メニューをやる気がないときに、スクワット10回だけなど、ほんのちょっとだけでもやっておくとモチベーションの維持がしやすいです。<br /> 逆に通常メニューが簡単すぎて物足りない場合は、好みのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをいくつか追加していくといいでしょう。<br /> 私は通常ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グに加えて、軽めの運動を少し加えています。</p> </div> <div class="section"> <h5>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ開始前に水を飲む</h5> <p>水分補給は重要なので必ず飲みましょう。また、ルーティンとして組み込むことでト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グのやる気を上げる効果もあります。<br /> <br /> </p> </div> <div class="section"> <h5>ウォーミングアップ・クールダウンはサボらない</h5> <p>ケガの防止にもなりますのでサボらずやりましょう。<br /> <br /> </p> </div> <div class="section"> <h5>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ終了後に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>を飲む</h5> <p>ある程度運動に慣れてきたら、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ後に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>を飲むと、ダイエットにも効果的です。お試し程度に買うのなら、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Amazon">Amazon</a>で買えばすぐ届くのでまずは1kgくらい買ってみてもいいでしょう。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00I95ZWA6/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/31yoQwTxpgL.jpg" class="hatena-asin-detail-image" alt="Myprotein マイプロテイン ホエイ・Impact ホエイプロテイン ナチュラルチョコレート 1kg 1Kg" title="Myprotein マイプロテイン ホエイ・Impact ホエイプロテイン ナチュラルチョコレート 1kg 1Kg"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00I95ZWA6/shiumachijigo-22/">Myprotein マイプロテイン ホエイ・Impact ホエイプロテイン ナチュラルチョコレート 1kg 1Kg</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span> ヘルスケア&amp;ケア用品</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><a href="http://www.myprotein.jp">&#x30DE;&#x30A4;&#x30D7;&#x30ED;&#x30C6;&#x30A4;&#x30F3;</a>は公式サイトでは<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C9%D4%C4%EA">不定</a>期(といってもほぼタイミングは決まっている)タイムセールを開催しているので、慣れてきたら公式サイトから買った方がいいと思います。ただし、海外発送のため時間がかかること、購入代金を調整しないと関税がかかってしまい逆に割高になってしまうことに注意してください。難しそうなら<a class="keyword" href="http://d.hatena.ne.jp/keyword/Amazon">Amazon</a>で買ってしまった方が楽だと思います。</p> </div> <div class="section"> <h5>自分の成長の記録を見てやる気を上げる</h5> <p>過去の自分の記録と比較して、「以前これだけキツかったのが今これだけできるようになったんだ」というのを視覚化できると、達成感をえることができます。</p><p>気が向いたときに、プロフィール→ワークアウトから、過去のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ履歴を眺めてみると楽しくなります。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126174623.png" alt="f:id:shiumachi:20200126174623p:plain" title="" class="hatena-fotolife" itemprop="image"></span><br /> </p> </div> <div class="section"> <h5>ケガしたら無理せず(その部位だけ)休む</h5> <p>Freeleticsでは、筋肉痛のときにその部位を休めるという機能はありますが、ケガしたときまではケアしてくれません。</p><p>もし万一ケガしてしまった場合は、無理せず休んで病院にいきましょう。</p><p>とはいえ、全くやらなくなるとモチベーションが下がってやらなくなるだけなので、例えば肩をケガした場合はスクワットだけはやる、など、シングルエクササイズモードをうまく活用して、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの習慣だけは維持するようにしましょう。<br /> <br /> </p> </div> <div class="section"> <h5>公式サポートに質問する</h5> <p>アプリとしては比較的安定しており、落ちることはありませんが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%BF%A1%BC%A5%D5%A5%A7%A5%A4%A5%B9">インターフェイス</a>が使いづらかったり、訳が間違ってたり、ほしい機能がなかったりなど、色々と気になることが出てきます。そんなときは公式サポートに質問しましょう。プロフィール→設定→お問い合わせから問い合わせできます。日本語も対応していますので安心して質問できます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200126/20200126173422.png" alt="f:id:shiumachi:20200126173422p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> </div> <div class="section"> <h4>その他</h4> <p>実際にFreeleticsを使っていて気づいたこと、知ったことなどを共有しておきます。</p> <div class="section"> <h5><a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>連携は<a class="keyword" href="http://d.hatena.ne.jp/keyword/Instagram">Instagram</a>しかない</h5> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>連携はかなり貧弱です。<a class="keyword" href="http://d.hatena.ne.jp/keyword/SNS">SNS</a>周りを強化してほしい場合は機能要望をどんどん出していきましょう。<br /> <br /> </p> </div> <div class="section"> <h5><a class="keyword" href="http://d.hatena.ne.jp/keyword/API">API</a>が公開されていない</h5> <p>個人的にこれはかなり残念です。サポートに問い合わせしましたけど現在提供予定はないとのこと。ほしい場合は機能要望を出しましょう。</p> </div> </div> shiumachi プロダクトを作るということについて考える hatenablog://entry/26006613488047913 2019-12-23T13:24:02+09:00 2019-12-23T13:24:02+09:00 こちら、pyspa Advent Calendar 2019の23日目の記事です。前日の記事は id:kutakutatriangle さんの34のおっさん(当時)が痔ろう手術するハメになって健康大切だと実感した思い出話(前編)でした。 お前誰? Luminosoという会社でソリューションチームの一員として働いています。業務としては、製品のプロトタイプ開発のような作業が大半です。お客様の要望に応えるために、既存の自社製品だけでは満たせない拡張部分を作っていくのが主な業務になります。 そうした仕事を通して、プロダクトを作るということについて自分なりに考えたことを書いていきます。 できるだけ開発し… <p>こちら、<a href="https://adventar.org/calendars/3896">pyspa Advent Calendar 2019</a>の23日目の記事です。前日の記事は <a href="http://blog.hatena.ne.jp/kutakutatriangle/">id:kutakutatriangle</a> さんの<a href="https://takuan-osho.hatenablog.com/entry/2019/12/22/what-i-learned-from-surgery-of-anal-fistula">34&#x306E;&#x304A;&#x3063;&#x3055;&#x3093;(&#x5F53;&#x6642;)&#x304C;&#x75D4;&#x308D;&#x3046;&#x624B;&#x8853;&#x3059;&#x308B;&#x30CF;&#x30E1;&#x306B;&#x306A;&#x3063;&#x3066;&#x5065;&#x5EB7;&#x5927;&#x5207;&#x3060;&#x3068;&#x5B9F;&#x611F;&#x3057;&#x305F;&#x601D;&#x3044;&#x51FA;&#x8A71;(&#x524D;&#x7DE8;)</a>でした。<br /> <br /> </p> <div class="section"> <h4>お前誰?</h4> <p>Luminosoという会社でソリューションチームの一員として働いています。業務としては、製品のプロトタイプ開発のような作業が大半です。お客様の要望に応えるために、既存の自社製品だけでは満たせない拡張部分を作っていくのが主な業務になります。<br /> そうした仕事を通して、プロダクトを作るということについて自分なりに考えたことを書いていきます。<br /> <br /> </p> </div> <div class="section"> <h4>できるだけ開発しない</h4> <p>既存の製品・機能でできることがあるのであれば、まずそちらを使うべきでしょう。開発は、既存のプロダクトではユーザのニーズに「応えられない」ことがわかった場合に初めて行うものであり、「応えられるかわからない」ときにやるべきではありません。できないことがわかるまで製品や既存のソリューションについて調べるべきでしょう。<br /> <br /> </p> </div> <div class="section"> <h4>ユーザの言葉を鵜呑みにしてはいけない</h4> <p>ユーザは技術的に何ができて何ができないかはわかりません。それどころか、自分たちが本当にしたいことは何かも把握できていないこともよくあります。「君のところが作ってる車で空を飛びたいんだ。空を飛ぶ機能つけてよ」と言われることを想像してみてください。厄介なのが、「空を飛べるようになるなら君のところの車を買うよ」と契約を盾にした要望で、この状態になると社内の営業チームはプロダクトの開発チームに無理を通してでもその機能をつけようとプッシュしてくるようになります。</p><p>この問題に対する有効な解決策は自分ではまだ見つかっていません。予防策としては、以下のようなものがあります。</p> <ul> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>・プリセールスの段階で自分たちのプロダクトができることをはっきりさせておく。特にプリセールスの段階で「できないこと」をユーザにきちんとインプットするよう気をつける。(ただし、風呂敷を広げるタイプの営業はこのような説明を嫌う場合があるので注意)</li> <li>ユーザからの要望が出てきた段階で、早期に課題を明確化するための<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%B5%A5%EB%A5%C6%A5%A3%A5%F3%A5%B0">コンサルティング</a>を行う。プリセールスがやるのが理想だと思うが、営業チームとして売ることが優先になっている場合は別チームの人間がやった方がいいかもしれない</li> </ul> </div> <div class="section"> <h4>ユーザのニーズを元にして開発をしなければならない</h4> <p>一方で、ユーザの話を全く聞かないというのも非常に危険です。開発者が思い込みだけで「こういうのが必要だろう」と思って作ったプロダクトや機能は、大抵の場合期待するほどユーザには受け入れられません。プロダクトの話になるとしばしば耳にする忠告なので、そんなこと本当にあるのかなと思っていましたが、現実にそうした事象を目にすると、とてもよくわかります。開発した動機だけを聞くと、それめっちゃクールだよね、確かにそういうの欲しいよね、と錯覚してしまいます。しかし、そうしたプロダクトを実際にユーザに見せても、お金を払ってでも欲しいと思わせられるかどうかは未知数です。</p><p>前職Clouderaでは、新製品のリリース時には必ずローンチカスタマーがついていました。これは、単に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>的な効果をもたらすだけでなく、ユーザのニーズに基づいて開発することで、本当に必要とされるプロダクトに特化するということを体現していた証だったと思っています。<br /> <br /> </p> </div> <div class="section"> <h4>ユーザのニーズは(例え実現不可能であるように見えても)<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D0%A5%C3%A5%AF%A5%ED%A5%B0">バックログ</a>にいれて管理しなければならない</h4> <p>「この車で空を飛びたい」のような、一見突拍子もないような意見であっても、そうした意見を眺めているうちに本当の問題や本当の解決策にいきあたる場合があります。特に、複数のユーザからそういう突拍子もない意見がでてきた場合は、その要望を再検討する機会はあってもいいと思います。</p><p>そのためには要望の管理が必要です。 <a class="keyword" href="http://d.hatena.ne.jp/keyword/GitHub">GitHub</a> Issues でも JIRA でも Trello でもいいので、とりあえず放り込んでおく、という先は用意しておいた方が後で便利です。<br /> <br /> </p> </div> <div class="section"> <h4>開発は常に保守性を考えなければならない</h4> <p>ソリューションチームにいると、複数のプロダクトを開発していくことは頻繁にありますし、数ヶ月特に保守する必要もなく安定して提供できていたプロダクトに急遽開発要件が生まれるということもあります。また、製品本体や外部ツールのバージョンアップによる非互換性への対応なども必要になります。こういうときに保守性を考慮した開発を行うことで、保守<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%A9%BF%F4">工数</a>を削減するだけでなく、新規開発を素早く行うことができるようになります。</p><p>作成したソリューションやツールなどは、あくまで位置づけとしてはプロトタイプというだけであり、実際に製品化されるかどうかは決まっていません。場合によっては長期的に保守する必要があるため、保守性を高めておくことは重要です。<br /> <br /> </p> </div> <div class="section"> <h4>まとめ</h4> <p>ユーザの話を鵜呑みにせず、しかしきちんと話を聞き、その上で保守性を考慮して開発する、というのがこの一年でプロダクト開発について自分が学んだことでした。ごく当たり前のことしか書いておらず、知っている人にとっては目新しい話は何もありませんが、こうした知識を経験として体得できたというのが大きな収穫だったと感じています。</p><p>明日は<a href="https://twitter.com/wozozo"> @wozozo</a> です。</p> </div> shiumachi ワードエンベディングベクトルを使った検索アプリを作った話 hatenablog://entry/26006613485488108 2019-12-17T00:00:00+09:00 2019-12-17T00:00:40+09:00 この記事は、情報検索・検索エンジン Advent Calendar 2019の17日目の記事です。単語ベクトルを使って文書検索をすること、類似する単語をシノニムとした検索、ベクトル計算の応用、ベクトルを使った検索アプリの実際について書いています。 <p>この記事は、情報検索・<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%A1%BA%F7%A5%A8%A5%F3%A5%B8%A5%F3">検索エンジン</a> Advent Calendar 2019の17日目の記事です。<br /> <a href="https://qiita.com/advent-calendar/2019/search">https://qiita.com/advent-calendar/2019/search</a></p><p><a href="https://shiumachi.hatenablog.com/entry/2019/12/16/000000">&#x6628;&#x65E5;&#x66F8;&#x3044;&#x305F;&#x3001;&#x81EA;&#x7136;&#x8A00;&#x8A9E;&#x51E6;&#x7406; Advent Calendar 2019&#x306E;16&#x65E5;&#x76EE;&#x306E;&#x8A18;&#x4E8B;</a>からの続きになっています。<br /> <br /> </p> <div class="section"> <h4>Luminosoの会社と技術(昨日の記事のおさらい)</h4> <p>アンケートや口コミなどのデータを解析して顧客の声や従業員の声を解析したり、業務報告書などを解析してあいまい検索を行うようなサービスを提供するボストン発のMITスピンアウトのスタートアップです。</p><p>もう少し<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>の技術者向けに説明すると、セマンティック辞書に基づいて補正したワードエンベディングベクトルモデルを、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C9%A5%E1%A5%A4%A5%F3">ドメイン</a>データでfine-tuningすることで、少量のデータで前処理込でユーザ毎のモデルを高速に作成するサービスを提供している会社です。<br /> <br /> </p> </div> <div class="section"> <h4>単語ベクトルを使って文書検索をする</h4> <p>まず、「ベクトルを使って検索する」ということですが、一番シンプルな方法はベクトルの類似度を計算するという方法です。ベクトル検索でいうと<a href="https://ja.wikipedia.org/wiki/%E6%9C%80%E8%BF%91%E5%82%8D%E6%8E%A2%E7%B4%A2">&#x6700;&#x8FD1;&#x508D;&#x63A2;&#x7D22;</a>を思い浮かべる人がいると思いますが、私の会社で扱うデータですと数千レコード程度のごく少量で済むため(昨日の記事参照)、雑に全件分計算しても十分な速度で結果が返ってきます。</p><p>では、単語ベクトルから文書ベクトルをどのように定義するかということですが、我々は単純に文中に出現した単語のベクトルの平均を取ることで表しています。これにより、単語ベクトルと同じ次元で文書ベクトルを表現することができるため、文書と文書の比較だけでなく、単語と文書の比較もできるようになります。</p><p>利点としては、とにかく手軽に検索ができるという点です。辞書も前処理もいらずに数千行のデータに対してあいまい検索ができるようになります。例えば、電化製品の製品レビューコメントを検索するときも、「故障する」と検索するだけで「通電しなくなった」と書かれている文書を検索できるようになります。単にベクトルで距離計算しているだけなので、専用のエンジン等も一切必要ありません。</p><p>欠点としては、BoWなどと同様、文構造や単語の順序を考慮していないため、複雑な文や長文に対して精度が悪くなるということです。<br /> <br /> </p> </div> <div class="section"> <h4>類似する単語をシノニムとした検索</h4> <p>文書検索にはもうひとつの方法があります。単語ベクトルが既に存在しているので、ある検索キーワードと距離が近い単語をシノニムとして検索を行うことです。モデルの性質上、文脈上近い使われ方をしている単語や意味的に近い単語の類似度が高くなるため、類似度の高い高い単語をシノニムとして扱うという手法は有効です。Luminosoではこの方法を標準的な検索方法として採用しています。<br /> <br /> </p> </div> <div class="section"> <h4>ベクトル計算の応用</h4> <p>文書ベクトルを「単語ベクトルの平均」としたのと同様、あるフィルタ条件のベクトルも、「そのフィルタ条件にあてはまる文書ベクトルの平均」とすれば、計算は可能です。これにより、特定の検索クエリにもっとも近い「住所」「性別」「年齢」はどれか、などを計算することができるようになります。これらの属性を「ファイル」や「Webページ」ととらえれば、一般的な検索と同じことをしているということがわかるかと思います。</p><p>Luminosoでは、デモアプリとして単語ベクトルを使ったこのような検索アプリケーションを使用しています。<br /> <br /> </p> </div> <div class="section"> <h4>ベクトルを使った検索アプリの実際</h4> <p>例えばフィルタ処理やAND/ORなど、検索にはさまざまな機能が要求されるため、実際にはベクトル計算だけでは実運用する検索アプリケーションとしては十分な機能を提供できません。また、先述の通り、素朴なベクトル類似度計算では、少しデータが多くなるだけで性能面では全く使い物にならないほど遅くなってしまいます。このように、機能面・性能面を考慮すると、十分に開発が進んだ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%A1%BA%F7%A5%A8%A5%F3%A5%B8%A5%F3">検索エンジン</a>を使う必要がでてくるでしょう。Elasticsearchは、近年ベクトル検索をサポートしています。今年の検索<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%C9%A5%D9%A5%F3%A5%C8%A5%AB%A5%EC%A5%F3%A5%C0%A1%BC">アドベントカレンダー</a>でも<a href="https://qiita.com/masa_kazama/items/5095807b376da40c3b93">Elasticsearch&#x306E;&#x30D9;&#x30AF;&#x30C8;&#x30EB;&#x691C;&#x7D22;&#x3092;&#x4F7F;&#x3063;&#x305F;&#x8A18;&#x4E8B;</a>がありますので、この記事での紹介は省略します。<br /> <br /> <br /> </p> </div> <div class="section"> <h4>で、結局何ができるの?</h4> <p>LuminosoとElasticsearchを組み合わせると、数千行程度のテキストを投げ込むだけで、前処理も辞書作成も行わずに、社内用語や専門用語、類義語や表記ゆれ、<a class="keyword" href="http://d.hatena.ne.jp/keyword/typo">typo</a>などに対応した検索アプリケーションを作成することができます。これができるようになれば、今までコストの面などで苦労していた、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A8%A5%F3%A5%BF%A1%BC%A5%D7%A5%E9%A5%A4%A5%BA">エンタープライズ</a>領域の検索システムもより気軽に導入できるようになるでしょう。</p> </div> shiumachi ワードエンベディングモデルしか触らないNLPエンジニアとしての仕事の紹介 hatenablog://entry/26006613484847209 2019-12-16T00:00:00+09:00 2019-12-16T00:00:45+09:00 この記事は、自然言語処理 Advent Calendar 2019の16日目の記事です。この記事では、私が勤めるLuminosoという会社及びその技術、そこで私がどのような仕事をしているか、ということを紹介します。 <p>この記事は、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%B8%C0%B8%EC%BD%E8%CD%FD">自然言語処理</a> Advent Calendar 2019の16日目の記事です。<br /> <a href="https://qiita.com/advent-calendar/2019/nlp">https://qiita.com/advent-calendar/2019/nlp</a></p><p>この記事では、私が勤める<a href="https://luminoso.com/">Luminoso</a>という会社及びその技術、そこで私がどのような仕事をしているか、ということを紹介します。</p> <div class="section"> <h4>どんな会社なの?</h4> <p>アンケートや口コミなどのデータを解析して顧客の声や従業員の声を解析したり、業務報告書などを解析してあいまい検索を行うようなサービスを提供するボストン発のMITスピンアウトのスタートアップです。</p><p>もう少し<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>の技術者向けに説明すると、セマンティック辞書に基づいて補正したワードエンベディングベクトルモデルを、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C9%A5%E1%A5%A4%A5%F3">ドメイン</a>データでfine-tuningすることで、少量のデータで前処理込でユーザ毎のモデルを高速に作成するサービスを提供している会社です。</p> </div> <div class="section"> <h4>何をやっているの?</h4> <p>ソリューションアーキテクトとして、会社製品の活用について<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B3%A5%F3%A5%B5%A5%EB%A5%C6%A5%A3%A5%F3%A5%B0">コンサルティング</a>したり、出力結果を活用するツールを開発してお客様に提供したりしています。</p> </div> <div class="section"> <h4>自社ワードエンベディングモデルの概要</h4> <p>ConceptNet という、人間の常識を蓄積したオープンナレッジグラフをセマンティック辞書として、従来手法によって作成されたワードエンベディングモデルに<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%C8%A5%ED%A5%D5%A5%A3%A5%C3%A5%C6%A5%A3%A5%F3%A5%B0">レトロフィッティング</a>やバイアス除去などを適用して作成したオープンデータのワードエンベディングモデル、 ConceptNet-Numberbatch をベースとしています。</p><p>詳細はこのビデオのこのあたりを観てください。<br /> <a href="https://youtu.be/IEZxMhm1kV0?t=1289">https://youtu.be/IEZxMhm1kV0?t=1289</a></p><p>ワードエンベディングについてはこの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%C9%A5%D9%A5%F3%A5%C8%A5%AB%A5%EC%A5%F3%A5%C0%A1%BC">アドベントカレンダー</a>の読者のほとんどには既知の話だと思うので省略します。</p><p>ConceptNetは、人間世界における常識をナレッジグラフとして集積したオープンデータです。例えば、「りんご」は「果物」の類型の一つであり、「赤い」や「赤または緑」という要素を持ち、「🍎」という記号で表される、などです。<br /> ConceptNetは公開Webサイトで誰でも試すことができます。りんごの例は以下のURLからアクセスして確認することができます。<br /> <a href="http://conceptnet.io/c/ja/%E3%82%8A%E3%82%93%E3%81%94">http://conceptnet.io/c/ja/%E3%82%8A%E3%82%93%E3%81%94</a></p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%C8%A5%ED%A5%D5%A5%A3%A5%C3%A5%C6%A5%A3%A5%F3%A5%B0">レトロフィッティング</a>(Retrofitting)というのは、ワードエンベディングモデルをセマンティック辞書を使って意味的な情報に基づいて補正をかけるという手法です。例えば、「実行」と「実施」は類義語の関係にあるので、データソースにおいて文脈上何も関係がなかったとしてもベクトルの距離を近づける、などです。</p><p>バイアス除去というのは、元データに存在する様々な偏見を除去するための手法です。例えば、ある国におけるマイノリティがネガティブな単語と結びつくというのはバイアスの一つなので、これの除去を行います。</p><p>こうして作成されたものが ConceptNet-Numberbatch で、出力結果のモデルは<a class="keyword" href="http://d.hatena.ne.jp/keyword/GitHub">GitHub</a>上で公開されています。<br /> <a href="https://github.com/commonsense/conceptnet-numberbatch">https://github.com/commonsense/conceptnet-numberbatch</a></p><p>製品版はここからさらに拡張していて、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C9%A5%E1%A5%A4%A5%F3">ドメイン</a>データを取り込んだ後、前処理を自動で実施した後にfine-tuningして<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C9%A5%E1%A5%A4%A5%F3">ドメイン</a>毎のモデルを作成します。</p> </div> <div class="section"> <h4>どういうメリットがあるの?</h4> <p>数千行のデータで、辞書作成や前処理をせずに、非常に小さい計算リソースしか利用せず(<a class="keyword" href="http://d.hatena.ne.jp/keyword/GPU">GPU</a>も使わない)、数分から数十分という単位でベクトルモデルを作成できます。</p><p>最大のメリットは、未知語、表記ゆれ、略語などに非常に強いということです。たとえば「<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BC%AB%C1%B3%B8%C0%B8%EC">自然言語</a>」と「<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>」は、適切な例文さえ用意できれば辞書がなくても容易に類義語だと見分けることができるでしょう。社内の専門用語も、他のどの用語と意味的に関連が深いかということを見分けることができるようになります。</p> </div> <div class="section"> <h4><a class="keyword" href="http://d.hatena.ne.jp/keyword/%B6%E4%A4%CE%C3%C6%B4%DD">銀の弾丸</a>なの?</h4> <p>残念ながらそうは甘くありません。</p><p>skip-gram モデルによって基礎となる単語ベクトルを作成している以上、単語の出現順番が大きく影響します。そのため、テンプレート文に非常に弱いという特徴があります。「いつもお世話になっております。」という文章が繰り返し出現するだけで、「いつも」と「お世話」が非常に関連が高いと解釈してしまうでしょう。</p><p>文単位での解析しか行わないため、パラグラフ単位や章単位などの大きな単位のメタ情報を考慮できないという問題もあります。しかし、こうした長文を解析したいというニーズはあるため、色々な工夫をしてお客様にご提供しています。(業務に深く関わる話なのでこの辺は省略)<br /> <br /> </p> </div> <div class="section"> <h4>どうやって仕事をしているの?</h4> <p>私は、業務としては<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>を扱うエンジニアではありますが、辞書作成もモデル作成も全くしていません。ひたすらベクトルを扱い続けます。 ELMo や BERT といった流行りの技術も全く扱いません。</p><p>扱うライブラリはほぼ pandas と numpy です。<br /> たとえば一番高頻度に実施する処理は、ドット積を取ることによるベクトルの距離計算です。これはそのまま類似度に使うことができるため、この結果をもとに様々な処理に応用できます。</p><p>テンプレートの削除など、現場では結局のところ前処理が必要になります。不要なテンプレート文の削除などの処理を行わないと、効率よく解析できなくなります。前処理はほとんど<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>標準の文字列関数や<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C0%B5%B5%AC%C9%BD%B8%BD">正規表現</a>で行っていますが、たまに spaCy を使うこともあります。</p><p>解析した結果を使いながら、お客様が望むような仕組みを作るためにコードを書いたり仕組みを設計したりするということを行っています。</p><p>多分、<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>と名のつくエンジニアの中でもかなり特殊な仕事をしているでしょうし、<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>のエンジニアの中には、私のような仕事は<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>ではないと言う人もいるかもしれません。</p><p>製品としてモデルを勝手に作ってくれるので、そのモデルをいじるのではなく、そのクセを考えながら、お客様が望むようなシステムを提供するにはどうすればいいかを検討するというのが普段私がやっている仕事になります。</p><p>仕事の一例として、ベクトルデータを使った検索アプリケーションというものがあります。</p><p>明日の情報検索・<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%A1%BA%F7%A5%A8%A5%F3%A5%B8%A5%F3">検索エンジン</a> Advent Calendar 2019ではそちらについて簡単に触れたいと思います。<br /> <a href="https://qiita.com/advent-calendar/2019/search">https://qiita.com/advent-calendar/2019/search</a><br /> </p> </div> <div class="section"> <h4>まとめ</h4> <p>Luminosoは、自社製のワードエンベディングモデルを提供する会社です。そこで働くエンジニアである私は、辞書作成やモデル作成といったことを行わず、ベクトルばかり触っているという、<a class="keyword" href="http://d.hatena.ne.jp/keyword/NLP">NLP</a>のエンジニアとしてはちょっと変わった仕事をしていますよ、ということを紹介しました。</p> </div> shiumachi 超予測力: 未来を予測する技術を学べる本 hatenablog://entry/26006613478802540 2019-12-09T07:00:00+09:00 2019-12-09T10:39:44+09:00 今年読んだ本の中で一冊を挙げるならば、間違いなく本書、「超予測力 不確実な時代の先を読む10カ条」でした。本書は、非常に予測能力の高い人達はどのように予測をしているのか、ということに注目した本です。本書から、特に汎用性が高く、すぐに使える手法をいくつか紹介します。 <p>今年読んだ本の中で一冊を挙げるならば、間違いなく本書でした。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150505225/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/41MaR0pPxJL._SL160_.jpg" class="hatena-asin-detail-image" alt="超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)" title="超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150505225/shiumachijigo-22/">超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A3%A5%EA%A5%C3%A5%D7%A1%A6E%A1%A6%A5%C6%A5%C8%A5%ED%A5%C3%A5%AF" class="keyword">フィリップ・E・テトロック</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%F3%A1%A6%A5%AC%A1%BC%A5%C9%A5%CA%A1%BC" class="keyword">ダン・ガードナー</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%E1%C0%EE%BD%F1%CB%BC">早川書房</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2018/05/02</li><li><span class="hatena-asin-detail-label">メディア:</span> 文庫</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><br /> <p>本書は、非常に予測能力の高い人達はどのように予測をしているのか、ということに注目した本です。</p><p>米国では、情報先端研究計画局(IARPA)による、<a href="https://goodjudgment.com/">&#x60C5;&#x5831;&#x5206;&#x6790;&#x4E88;&#x6E2C;&#x30C8;&#x30FC;&#x30CA;&#x30E1;&#x30F3;&#x30C8;</a>が開催されています。 本書で登場する「超予測者」は、この予測トーナメントで非常に高い成績を収めた人達です。この超予測者達を調査し、その予測手法についてまとめあげたものが本書です。</p><p>その中から、特に汎用性が高く、すぐに使える手法をいくつか紹介しましょう。</p> <div class="section"> <h4>予測手法1: 確率についての正しい理解</h4> <p>「天気予報だと降水確率80%だったんだけど、雨は結局降らなかったよ」</p><p>我々は普段、このような会話をしますが、大抵は「天気予報が外れた」という意味を込めています。</p><p>確率という観点に立てば、本来は「天気予報が正しかったかどうか、これだけではわからない」というのが正しいはずです。</p><p>降水確率は「80%」なのですから、逆に言えば20%は外れる可能性があるわけです。しかし、我々一般人は、80%という数字を100%であるかのように錯覚してしまいます。</p><p>超予測者達の特徴の一つとして、この確率の粒度が非常に細かいというものがあります。一般人は、ものごとを「はい、いいえ、どちらともいえない」といった粒度で予測を行います。しかし、超予測者は1%刻みで予測を行うのです。</p> <blockquote> <p>頭の中に選択肢が三つしかない人は確率を判断しろと言われると、50%という数字を使いがちだ。50%を「どちらとも言えない」と同義に考えているからだ。このため頻繁に50%を使う人は、予測の正確性が低いと考えられる。(p.204)</p> </blockquote> <p>まず、この確率に対する認識を改めることが、予測力を高める最初の手法となります。<br /> <br /> </p> </div> <div class="section"> <h4>予測手法2: <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A7%A5%EB%A5%DF%BF%E4%C4%EA">フェルミ推定</a></h4> <p>「なんだ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A7%A5%EB%A5%DF%BF%E4%C4%EA">フェルミ推定</a>か」と肩を落としてしまったかもしれません。しかし、本書の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A7%A5%EB%A5%DF%BF%E4%C4%EA">フェルミ推定</a>は、一般に知られている基本的な手法よりも少し奥が深いです。それは、「外側の視点」と本書で呼んでいる手法です。</p><p>「レンゼッティ家には44歳の父親と35歳の母親、5歳の息子がいる。父は引っ越し会社の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B7%D0%CD%FD">経理</a>担当、母は保育士をしている。父親の母も同居している。このとき、レンゼッティ家がペットを飼っている可能性はどれくらいか。」という問題が本書に書かれています。</p><p>一般人は、上記の家族構成や背景についてまず考え始めますが、超予測者は、こうした情報を最初は無視します。その代わり、全国でペットを飼っている世帯の割合を調べます。それはインターネット上で検索すればすぐに答えが見つかります。(本書の記載時点では62%)</p><p>このように、背景を無視した上で得られる、完全に客観的なデータや、それに基づいた<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A7%A5%EB%A5%DF%BF%E4%C4%EA">フェルミ推定</a>を行い、その確率を「基準値」とすることが本書で記載されている手法です。</p><p>基準値がない場合、誤った予測に結びつく可能性が非常に高くなります。「このようなことが起こる確率は高い」と、「通常はこのようなことが起きる確率は5%だが、今回は通常に比べて起こる確率は通常に比べて高い」では、大きく印象が違うでしょう。前者は少なくとも50%以上であるかのように判断してしまいがちですが、後者であれば20-30%であると予想するのではないでしょうか。このように、人間の心理は基準となる値にひきずられてしまいがちです。なので、最初に基準値を設定することは非常に有効なのです。<br /> <br /> </p> </div> <div class="section"> <h4>予測手法3: 逆の意見に耳を傾ける</h4> <p>「X国が3ヶ月以内にY国に軍事侵攻する確率はどのくらいか」という質問があったとします。あなたがX国に詳しくて、X国が政治的にも経済的にもY国に軍事侵攻することを簡単に予測できる場合、この問題は非常に易しくみえてしまうでしょう。超予測者は、そのような場合でも、「X国が3ヶ月以内にY国に軍事侵攻『しない』」という意見に耳を傾けたり、あるいは、どういう条件であれば自分の意見を翻すか、という可能性を考えます。</p><p>本書では、こんな研究が紹介されています。<br /> 予測精度の低い人ほど持論に自信を持っていて、さまざまな事象について「起こり得ない」「確実」などと言い切る傾向が高く、一方で、予測精度の高い人ほど、自らの誤りを認め、考えを変える傾向があり、「しかし」「だが」「とはいえ」「それに対して」といった転換語を多用する、というのです。</p><p>さらに、面白いのはこの一文です。</p> <blockquote> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%C3%CE%CC%BE%C5%D9">知名度</a>と正確さには逆相関が見られたのだ。有名な専門家ほど、その予測の正確さは低かった。(p.109)</p> </blockquote> <p>メディアや一般大衆は、シンプルで好きのない明快なストーリーを好むため、断言しない専門家はメディアでは成功しない、とまで書いています。<br /> <br /> </p> </div> <div class="section"> <h4>予測はできない、だからこそ予測する</h4> <p>本書は、8章までは先述のような超予測者の予測手法にフォーカスを当てていますが、9章以降はチーム論や組織論、リーダーシップ論などにフォーカスを当てて、予測をどのように活用するかを述べています。</p><p>そこで述べられている最も重要なことは、「結局のところ完全な予測はできない」というものです。</p><p>2001年4月11日、当時の米国<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%F1%CC%B3%C4%B9%B4%B1">国務長官</a><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C9%A5%CA%A5%EB%A5%C9%A1%A6%A5%E9%A5%E0%A5%BA%A5%D5%A5%A7%A5%EB%A5%C9">ドナルド・ラムズフェルド</a>が、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%B8%A5%E7%A1%BC%A5%B8%A1%A6W%A1%A6%A5%D6%A5%C3%A5%B7%A5%E5">ジョージ・W・ブッシュ</a>大統領と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C7%A5%A3%A5%C3%A5%AF%A1%A6%A5%C1%A5%A7%A5%A4%A5%CB%A1%BC">ディック・チェイニー</a>副大統領宛に、リントン・ウェルズ博士が執筆した、1900年から2000年までの、10年ごとの戦略的状況の分析メモを送付しました。</p><p>その内容は、10年ごとの戦略分析は「全て」的外れであるということを示していました。例えば、1930年の国防計画基準には「今後10年は戦争はしない」と記されていますが、実際には9年後に世界大戦が勃発しています。1960年の時点では、まだ米国国民の大半は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D9%A5%C8%A5%CA%A5%E0">ベトナム</a>という国を知らず、1990年にはインターネットという概念を国民の大半が知らない、という状態でした。<br /> 「2010年の状況は、我々の想定しているものとは全く異なるものだから、それを前提にして計画を立てるべき」とそのメモは締めくくられていました。</p><p>そしてその半年後、<a class="keyword" href="http://d.hatena.ne.jp/keyword/911">911</a>が発生したのです。</p><br /> <p>ファストアンドスローで有名な<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%CB%A5%A8%A5%EB%A1%A6%A5%AB%A1%BC%A5%CD%A5%DE%A5%F3">ダニエル・カーネマン</a>や、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D6%A5%E9%A5%C3%A5%AF%A1%A6%A5%B9%A5%EF%A5%F3">ブラック・スワン</a>で有名な<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%CA%A5%B7%A1%BC%A5%E0%A1%A6%A5%CB%A5%B3%A5%E9%A5%B9%A1%A6%A5%BF%A5%EC%A5%D6">ナシーム・ニコラス・タレブ</a>が本書に何度か登場します。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150504105/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51LKt1y4lUL._SL160_.jpg" class="hatena-asin-detail-image" alt="ファスト&amp;スロー(上) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)" title="ファスト&amp;スロー(上) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150504105/shiumachijigo-22/">ファスト&amp;スロー(上) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%CB%A5%A8%A5%EB%A1%A6%A5%AB%A1%BC%A5%CD%A5%DE%A5%F3" class="keyword">ダニエル・カーネマン</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%E1%C0%EE%BD%F1%CB%BC">早川書房</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2014/06/20</li><li><span class="hatena-asin-detail-label">メディア:</span> 文庫</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150504113/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51HKpCCVV0L._SL160_.jpg" class="hatena-asin-detail-image" alt="ファスト&amp;スロー(下) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)" title="ファスト&amp;スロー(下) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150504113/shiumachijigo-22/">ファスト&amp;スロー(下) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%CB%A5%A8%A5%EB%A1%A6%A5%AB%A1%BC%A5%CD%A5%DE%A5%F3" class="keyword">ダニエル・カーネマン</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%E1%C0%EE%BD%F1%CB%BC">早川書房</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2014/06/20</li><li><span class="hatena-asin-detail-label">メディア:</span> 文庫</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4478001251/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/41YtC8L14BL._SL160_.jpg" class="hatena-asin-detail-image" alt="ブラック・スワン[上]―不確実性とリスクの本質" title="ブラック・スワン[上]―不確実性とリスクの本質"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4478001251/shiumachijigo-22/">ブラック・スワン[上]―不確実性とリスクの本質</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%CA%A5%B7%A1%BC%A5%E0%A1%A6%A5%CB%A5%B3%A5%E9%A5%B9%A1%A6%A5%BF%A5%EC%A5%D6" class="keyword">ナシーム・ニコラス・タレブ</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%A4%A5%E4%A5%E2%A5%F3%A5%C9%BC%D2">ダイヤモンド社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2009/06/19</li><li><span class="hatena-asin-detail-label">メディア:</span> ハードカバー</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4478008884/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/418YGKMMriL._SL160_.jpg" class="hatena-asin-detail-image" alt="ブラック・スワン[下]―不確実性とリスクの本質" title="ブラック・スワン[下]―不確実性とリスクの本質"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4478008884/shiumachijigo-22/">ブラック・スワン[下]―不確実性とリスクの本質</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%CA%A5%B7%A1%BC%A5%E0%A1%A6%A5%CB%A5%B3%A5%E9%A5%B9%A1%A6%A5%BF%A5%EC%A5%D6" class="keyword">ナシーム・ニコラス・タレブ</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%A4%A5%E4%A5%E2%A5%F3%A5%C9%BC%D2">ダイヤモンド社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2009/06/19</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>カーネマン、タレブ、そして著者の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BB%B0%BC%D4">三者</a>は、「10年先の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C3%CF%C0%AF%B3%D8">地政学</a>的状況あるいは経済を予測できるという<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A8%A5%D3%A5%C7%A5%F3%A5%B9">エビデンス</a>は存在しない」という点で意見が一致しています。</p><p>では予測は役に立たないのか?そうではなく、予測できないからこそ、細かく予測をして準備をするのです。</p><p>予測についてしっかりと考える人は少ない、だから「20年先の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C3%CF%C0%AF%B3%D8">地政学</a>的状況を予測する」とか、「次の一世紀を占う」などの本がべストセラーになるといったバカげた現象が起こる、と本書は断じています。</p><p>特に、以下の二つの文が印象に残りました。</p> <blockquote> <p>わかっていないという現実を認識するのは、わかっていないことをわかっていると思い込むよりましである。(p.337)</p> </blockquote> <blockquote> <p>宇宙規模で考えれば、人間の予測能力などちっぽけなものだ。だがちっぽけな人間の世界で生きている以上、それを軽んじるのは筋違いだ。(p.342)</p> </blockquote> <p>本書は、予測する人だけでなく、他人の予測を評価するための予測<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EA%A5%C6%A5%E9%A5%B7%A1%BC">リテラシー</a>を養うための教科書としても非常に優れています。本書の締めくくりの一部を引用します。</p> <blockquote> <p>本書を読まれたみなさんもそれに気づき、そこから大きな変化が生まれることが私のひそかな願いである。予測にお金を払う人々は、魅力的なストーリーを語る評論家に騙されず、彼らに過去の予測の実績を尋ねてほしい。相手が自慢話や華やかな経歴ばかりを並べたら、それでは答えにならないと突っぱねてほしい。いまではわれわれの口にする医薬品は全て実験で有効性が確認され、ピアレビューを受けている。それと同じように予測を受け入れる前に、それを立てた者が厳格な検証を通じて自らの予測が正確であると証明しているか確認するべきだ。(p.346-347)</p> </blockquote> <p>我々が普段目にする情報には、読みやすく、素晴らしいロジックを持って、「こうに違いない」と確信できるような華やかな「予測」にあふれています。そして、それらを信じる人や、信じない人が言い争うという光景も幾度となく目にしているでしょう。予測<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EA%A5%C6%A5%E9%A5%B7%A1%BC">リテラシー</a>を高めれば、まず一歩引いた状態で情報を分析し、その予測が注目に値するかどうかを確認する武器となることでしょう。</p><p>年末にこの本に目を通してから、「2020年を占う、予測する」といったテレビ番組を眺めてみる、というのも悪くないかもしれませんよ。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150505225/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/41MaR0pPxJL._SL160_.jpg" class="hatena-asin-detail-image" alt="超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)" title="超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4150505225/shiumachijigo-22/">超予測力―ー不確実な時代の先を読む10カ条 (ハヤカワ・ノンフィクション文庫)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%D5%A5%A3%A5%EA%A5%C3%A5%D7%A1%A6E%A1%A6%A5%C6%A5%C8%A5%ED%A5%C3%A5%AF" class="keyword">フィリップ・E・テトロック</a>,<a href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%F3%A1%A6%A5%AC%A1%BC%A5%C9%A5%CA%A1%BC" class="keyword">ダン・ガードナー</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C1%E1%C0%EE%BD%F1%CB%BC">早川書房</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2018/05/02</li><li><span class="hatena-asin-detail-label">メディア:</span> 文庫</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p> </div> shiumachi Freeleticsで半年間自宅トレーニングしたら食制限なしで6kg痩せた hatenablog://entry/26006613433501183 2019-09-15T13:13:53+09:00 2021-01-14T07:53:23+09:00 2021年版のFreeleticsガイドができました!この記事より新しいので、そちらを参照してください。shiumachi.hatenablog.com 前回の投稿からさらに四ヶ月弱経ちましたが、未だにFreeleticsを継続できています。shiumachi.hatenablog.com 半年間自宅で運動を続けた結果、なんと体重がピーク時差分で6.2kg、7日移動平均で4.5kg減りました。画像はFitbitの体重の記録です。半年で体重6.2kg減ジムも行かず、何かを我慢するような食制限を一切せず(食生活の変化はあり、後述)、毎朝30分程度、自宅で運動するだけでここまで痩せることができたのは… <blockquote> <p><b>2021年版のFreeleticsガイドができました!</b>この記事より新しいので、そちらを参照してください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2021%2F01%2F11%2F182649" title="今年こそは自宅トレで痩せたい人のための、AIパーソナルトレーナーFreeletics入門(2021年版) - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2021/01/11/182649">shiumachi.hatenablog.com</a></cite></p> </blockquote> <p>前回の投稿からさらに四ヶ月弱経ちましたが、未だにFreeleticsを継続できています。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2019%2F05%2F25%2F220052" title="AIパーソナルトレーナーFreeleticsを使って、自宅で毎日トレーニングしよう - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2019/05/25/220052">shiumachi.hatenablog.com</a></cite></p><br /> <p>半年間自宅で運動を続けた結果、なんと体重がピーク時差分で6.2kg、7日<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B0%DC%C6%B0%CA%BF%B6%D1">移動平均</a>で4.5kg減りました。画像はFitbitの体重の記録です。</p><p><figure class="figure-image figure-image-fotolife" title="半年で体重6.2kg減"><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20190915/20190915105757.jpg" alt="f:id:shiumachi:20190915105757j:plain:w300" title="" class="hatena-fotolife" style="width:300px" itemprop="image"></span><figcaption>半年で体重6.2kg減</figcaption></figure></p><p>ジムも行かず、何かを我慢するような食制限を一切せず(食生活の変化はあり、後述)、毎朝30分程度、自宅で運動するだけでここまで痩せることができたのは自分でも驚きました。</p> <div class="section"> <h4>なぜ継続できているか</h4> <p>「そりゃ毎日運動してたら痩せるだろ」って思うかもしれないでしょう。それはその通りで、この生活を継続できた理由が一番重要です。</p><p>理由は主に3つあります。</p> <div class="section"> <h5>理由1: 時間が短い</h5> <p>開始から終了まで30分、ジムへの移動等の時間消費は一切なしというのが、忙しい自分の生活にとてもよくマッチしました。</p> </div> <div class="section"> <h5>理由2: 頭を使わなくていい</h5> <p>メニューを自動で組んでくれるので、運動に集中できます。</p> </div> <div class="section"> <h5>理由3: 楽しい</h5> <p>自分の記録を視覚化できるので成長を実感できます。</p> </div> </div> <div class="section"> <h4>どういう運動をしているか</h4> <p>前回の記事で紹介した、<a href="http://www.freeletics.com">Freeletics</a>というアプリを使って、毎朝運動しています。起きてから時間をおいて運動するときは、運動の30分から60分前に<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>を一杯飲んでいます。そして、運動の直前にコップ一杯の水を飲んで、スタートします。終わったらシャワーを浴び、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>を飲みます。これ以外の運動は一切行いません。<br /> 基本的には毎日運動していますが、サボりたいときは一日ならサボっていいことにしています。その代わり、その翌日はどんなにつらくてもやります。過去の経験上、2日空くと途端に継続率が下がったと感じていたので、今回はこの2日目を頑張ってやることに注意しました。</p><p>Freeleticsで選択したジャーニー(12週1セットのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グプラン)は以下の通りです。</p> <ul> <li>カロリー燃焼 (初心者向け<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>コース)</li> <li>カロリー燃焼 (2回目)</li> <li>筋ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%C0">レダ</a>イエットコース (筋トレメ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%B3%A1%BC%A5%B9">インコース</a>)</li> </ul> </div> <div class="section"> <h4>食生活の変化</h4> <p>よく友人に「食制限してないの?」と聞かれるのですが、私は何かを食べるのを我慢したり、お酒を飲むのを控えたりしているわけじゃないので、自分としては食「制限」という意識はありません。なので、あえて「食生活の変化」という表現をしています。<br /> 少しづつ、3つの食生活の変更を行いました。</p> <ul> <li><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>の導入</li> <li>ストウブ料理</li> <li>サラダごはん</li> </ul> <div class="section"> <h5><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a></h5> <p>運動してから3ヶ月目くらいから、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>を飲み始めました。運動前後に飲む他、おやつ代わりに一日2回ほど飲むようになりました。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>は<a href="http://www.myprotein.jp">&#x30DE;&#x30A4;&#x30D7;&#x30ED;&#x30C6;&#x30A4;&#x30F3;</a>というサイトで、<a href="https://www.myprotein.jp/sports-nutrition/impact-whey-protein/10530943.html">Impact&#x30DB;&#x30A8;&#x30A4;&#x30D7;&#x30ED;&#x30C6;&#x30A4;&#x30F3;</a>を購入しています。</p><p>頻繁にキャンペーンをやっていて、特にゾロ目の日や給料日(25日前後)には40%オフなどのセールもやっていますし、一定金額以上購入すると送料無料になるため、購入するときはこうしたセール日を狙ってまとめ買いするのがオススメです。</p><p>公式サイトから購入した方が先のセールなどでかなり安くなるのでオススメです。<a class="keyword" href="http://d.hatena.ne.jp/keyword/Amazon">Amazon</a>で買うこともできますが、セール<a class="keyword" href="http://d.hatena.ne.jp/keyword/%BB%FE%B2%C1">時価</a>格からは割高になりますので、どうしても<a class="keyword" href="http://d.hatena.ne.jp/keyword/Amazon">Amazon</a>から買いたい(あるいは別の<a class="keyword" href="http://d.hatena.ne.jp/keyword/EC%A5%B5%A5%A4%A5%C8">ECサイト</a>から買いたくない)場合はあまりオススメしないです。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00I95ZWA6/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/31yoQwTxpgL.jpg" class="hatena-asin-detail-image" alt="Myprotein マイプロテイン ホエイ・Impact ホエイプロテイン ナチュラルチョコレート 1kg 1Kg" title="Myprotein マイプロテイン ホエイ・Impact ホエイプロテイン ナチュラルチョコレート 1kg 1Kg"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B00I95ZWA6/shiumachijigo-22/">Myprotein マイプロテイン ホエイ・Impact ホエイプロテイン ナチュラルチョコレート 1kg 1Kg</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span> ヘルスケア&amp;ケア用品</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p></p> </div> <div class="section"> <h5>ストウブ</h5> <p>ストウブを使った無水調理を行うようになりました。ストウブは、食材を買ってきて放り込むだけで、簡単においしい料理が作れるようになる調理器具です。毎週末にストウブで鶏むね肉を3枚と野菜を買ってきて調理し、タッパーに入れて保存しています。これを一週間で消費していきます。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0043RSYIG/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/418b5sbE3RL.jpg" class="hatena-asin-detail-image" alt="staub ストウブ 「 ピコ ココット オーバル グランブルー 23cm 」 両手 鋳物 ホーロー 鍋 IH対応 【日本正規販売品】 La Cocotte Oval 40510-268" title="staub ストウブ 「 ピコ ココット オーバル グランブルー 23cm 」 両手 鋳物 ホーロー 鍋 IH対応 【日本正規販売品】 La Cocotte Oval 40510-268"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0043RSYIG/shiumachijigo-22/">staub ストウブ 「 ピコ ココット オーバル グランブルー 23cm 」 両手 鋳物 ホーロー 鍋 IH対応 【日本正規販売品】 La Cocotte Oval 40510-268</a></p><ul><li><span class="hatena-asin-detail-label">メディア:</span> ホーム&amp;キッチン</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20190819/20190819181428.jpg" alt="f:id:shiumachi:20190819181428j:plain:w300" title="" class="hatena-fotolife" style="width:300px" itemprop="image"></span></p><p>ストウブを使うときは、下記の本とセットで買った方がいいでしょう。手軽においしい料理を作れるレシピがたくさん載っています。最初は一番上の本だけ購入し、慣れてきたら二冊目、三冊目と購入するのがいいと思います。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416517386/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51s+E1GG8FL.jpg" class="hatena-asin-detail-image" alt="ストウブで無水調理: 食材の水分を使う新しい調理法 旨みが凝縮した野菜・肉・魚介のおかず" title="ストウブで無水調理: 食材の水分を使う新しい調理法 旨みが凝縮した野菜・肉・魚介のおかず"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416517386/shiumachijigo-22/">ストウブで無水調理: 食材の水分を使う新しい調理法 旨みが凝縮した野菜・肉・魚介のおかず</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%C2%E7%B6%B6%20%CD%B3%B9%E1" class="keyword">大橋 由香</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2017/04/07</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416519370/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51EBJbQKo7L.jpg" class="hatena-asin-detail-image" alt="ストウブで無水調理 肉: 食材の水分を使う調理法/旨みが凝縮した肉のおかず" title="ストウブで無水調理 肉: 食材の水分を使う調理法/旨みが凝縮した肉のおかず"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416519370/shiumachijigo-22/">ストウブで無水調理 肉: 食材の水分を使う調理法/旨みが凝縮した肉のおかず</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%CD%B3%B9%E1%2C%20%C2%E7%B6%B6" class="keyword">由香, 大橋</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2019/04/05</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416519257/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51v4ZOPyfUL.jpg" class="hatena-asin-detail-image" alt="ストウブで無水調理 野菜: 食材の水分を使う調理法/旨みが凝縮した野菜のおかず" title="ストウブで無水調理 野菜: 食材の水分を使う調理法/旨みが凝縮した野菜のおかず"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416519257/shiumachijigo-22/">ストウブで無水調理 野菜: 食材の水分を使う調理法/旨みが凝縮した野菜のおかず</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%CD%B3%B9%E1%2C%20%C2%E7%B6%B6" class="keyword">由香, 大橋</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2019/04/05</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p> </div> <div class="section"> <h5>サラダごはん</h5> <p>さらに、最近はサラダごはんを食べるようになりました。野菜を何種類か買ってきて(葉物の野菜、トマト、たまねぎなど)、ゆで卵、アボカド、先程の鶏むね肉を載せ、後は好きなドレッシングをかけるという食事です。ボリュームたっぷりで、食材を変えることで全く飽きない、とてもおいしい料理です。サラダごはんは、以下の本を参考にしていますが、あまりレシピ通りに作ることはなく、その日の食材や気分で色々とアレンジしています。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4391149729/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51ykO8EZSML.jpg" class="hatena-asin-detail-image" alt="ミックスサラダ" title="ミックスサラダ"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4391149729/shiumachijigo-22/">ミックスサラダ</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%C3%E6%C2%BC%20%C6%E0%C4%C5%BB%D2" class="keyword">中村 奈津子</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2017/03/24</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本(ソフトカバー)</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4865541403/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51Ppki5licL.jpg" class="hatena-asin-detail-image" alt="毎日続ける やせる サラダごはん" title="毎日続ける やせる サラダごはん"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4865541403/shiumachijigo-22/">毎日続ける やせる サラダごはん</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%C3%E6%B8%B6%C8%FE%B9%E1%BB%D2" class="keyword">中原美香子</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2016/07/09</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本(ソフトカバー)</li></ul></div><div class="hatena-asin-detail-foot"></div></div><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416618565/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/51SPdiPT-AL.jpg" class="hatena-asin-detail-image" alt="野菜と栄養たっぷりな具だくさんの主役サラダ200: これ1品で献立いらず!" title="野菜と栄養たっぷりな具だくさんの主役サラダ200: これ1品で献立いらず!"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/4416618565/shiumachijigo-22/">野菜と栄養たっぷりな具だくさんの主役サラダ200: これ1品で献立いらず!</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span><a href="http://d.hatena.ne.jp/keyword/%A5%A8%A5%C0%A5%B8%A5%E5%A5%F3" class="keyword">エダジュン</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2018/05/08</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p> </div> <div class="section"> <h5>食生活を変える</h5> <p>サラダごはんは作るのにそれなりに手間がかかるので、ここまでやる必要はないと思います。こうした食生活の変化を導入するなら、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>→ストウブ→サラダごはんの順に取り入れるのがオススメです。</p><p>もちろん、上記のような食生活を毎日しているわけではなく、他の物が食べたくなったら普通に食べていますし、お酒や揚げ物、甘いものなど一切制限していません。食制限してストレスがかかって継続できなくなるより、長期間継続できる形を優先しています。<br /> <br /> </p> </div> </div> <div class="section"> <h4>Freeletics 利用時のポイント</h4> <p>友人達からもらった質問や、自分で調べたことを元に、Freeletics を使うときのベストプ<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%AF">ラク</a>ティスをいくつか紹介します。</p> <div class="section"> <h5>フォーム優先、それから速度</h5> <p>Freeleticsは<a href="https://ja.wikipedia.org/wiki/%E9%AB%98%E5%BC%B7%E5%BA%A6%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%90%E3%83%AB%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0">HIIT</a>のコンセプトを用いた、<a href="https://help.freeletics.com/hc/en-us/articles/360000267645-Train-short-and-effectively">&#x77ED;&#x6642;&#x9593;&#x306E;&#x30C8;&#x30EC;&#x30FC;&#x30CB;&#x30F3;&#x30B0;</a>を行います。HIITの後のアフターバーン(<a href="https://www.dnszone.jp/magazine/2018/0719-001.php">EPOC</a>)という効果によって、運動していない間もカロリー消費を行うことができるようになります。なので、短時間に高負荷をかけることが重要です。だからといってただ速くやるだけでは高い負荷は得られません。とにかくフォームを優先して、完璧なフォームができてからタイムを短くするようにします。</p> </div> <div class="section"> <h5>フィードバック</h5> <p>フィードバックは厳し目に行った方がいいです。フィードバックを元に次のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グプランが組まれるので、緩めに書くと翌週からやたらときついメニューが組まれ、モチベーションを大きく下げてしまいます。</p><p><a href="https://www.freeletics.com/en/blog/posts/coach-feedback/">&#x516C;&#x5F0F;&#x30D8;&#x30EB;&#x30D7;</a>に書いてある、気をつけるべき点は以下の通りです。</p> <ul> <li>タイム計測。適当にポチポチ押してスキップすると、「すごい速さで終わらせた」とみなされて翌週の負荷が上がります。面倒でもきちんと1つのワークアウトが終わるたびにきちんとクリックして記録を取ってください。</li> <li>「どれだけきつかったか」「正しいフォームでできたか」。この二つのフィードバックの違いはヘルプに書いてないので詳しくはわかりませんが、おそらく前者が持久力的なフィードバックで、後者が筋力的なフィードバックではと推測しています。「正しいフォームでできたか」のフィードバックで「できた」とつけると、そのワークアウトにスターがつきますが、これは明確に「翌週の負荷を上げる」とヘルプに書いてあるので、本当に正しいフォームができたと自信を持って言えるまでは選択しない方がいいです。</li> <li>身長、体重、年齢(生年月日)、性別。メニュー作成に必要なので正しく入力してください。</li> </ul> </div> <div class="section"> <h5>ウォームアップ、クールダウン</h5> <p>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グで一番怖いのがケガで、その次が筋肉痛や筋<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C8%E8%CF%AB">疲労</a>によるモチベーションダウンです。なので、サボらずやることが非常に重要です。</p> </div> <div class="section"> <h5>フォロワーを増やし、いいねを押しまくる</h5> <p>Freeleticsコミュニティは互いに褒め称え合ういい文化で、しかもそれ以上の馴れ合いもない大変ストイックな文化です。他の人がやってるのを見るとモチベーションアップにつながるし、他の人からいいねをもらってもやる気が出てくるので、積極的にフォローするのをオススメします。</p><p>自分は、主なフォロー相手は「日本でト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしている人」「Lv100以上の高レベルアスリート」に絞っています。<br /> Freeleticsはフォロワーを探す機能が貧弱なので、どういう人をフォローしたらいいかわからないという人は、とりあえず私のアカウントを検索して、そこからフォロワーをたどっていけばいいと思います。</p><p>私のアカウントは、私の名前で検索すれば以下のように出てきます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20190915/20190915130204.png" alt="f:id:shiumachi:20190915130204p:plain:w300" title="" class="hatena-fotolife" style="width:300px" itemprop="image"></span><br /> </p> </div> </div> <div class="section"> <h4>まとめ</h4> <ul> <li>Freeleticsを毎日続けたら、きつい食制限なしで半年で6kg痩せた</li> <li>続いた理由は、短時間で頭使わず運動できて、楽しいから</li> <li>食事の変化はいきなり行わず、徐々にやった方がいい。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D7%A5%ED%A5%C6%A5%A4%A5%F3">プロテイン</a>とストウブは買おう</li> <li>Freeleticsはいいぞ!</li> </ul><p><br /> Freeleticsを始めてみたいという人は、下記のリンクから購入すれば20%オフで買えます。 Coach と Nutrition (食生活改善)の二種類が出てきますが、Nutrition は自分は試していません。運動だけなら Coach で十分と思いますが、誰か Nutrition を試した人がいたら感想教えてください。</p><p><a href="https://www.freeletics.com/r/124871187">https://www.freeletics.com/r/124871187</a></p><p>14日間の返金期間がありますので、気になったら一週間くらい試してみるといいでしょう。</p> </div> shiumachi AIパーソナルトレーナーFreeleticsを使って、自宅で毎日トレーニングしよう hatenablog://entry/17680117127167246353 2019-05-25T22:00:52+09:00 2021-01-14T07:53:11+09:00 2021年版のFreeleticsガイドができました!この記事より新しいので、そちらを参照してください。shiumachi.hatenablog.com Freeleticsは、言い訳をさせないことに特化した、硬派なAIパーソナルトレーナーアプリです。とりあえず3ヶ月(15週間)続いたので、紹介してみることにします。Freeletics: トレーニング&フィットネス開発元:Freeletics GmbH無料posted withアプリーチ Freeleticsは、ユーザにとって最適なトレーニングプランを提供してくれる、いわゆるAIパーソナルトレーナーアプリです。数分単位の短い時間にきついトレー… <blockquote> <p><b>2021年版のFreeleticsガイドができました!</b>この記事より新しいので、そちらを参照してください。</p><p><iframe src="https://hatenablog-parts.com/embed?url=https%3A%2F%2Fshiumachi.hatenablog.com%2Fentry%2F2021%2F01%2F11%2F182649" title="今年こそは自宅トレで痩せたい人のための、AIパーソナルトレーナーFreeletics入門(2021年版) - 科学と非科学の迷宮" class="embed-card embed-blogcard" scrolling="no" frameborder="0" style="display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;"></iframe><cite class="hatena-citation"><a href="https://shiumachi.hatenablog.com/entry/2021/01/11/182649">shiumachi.hatenablog.com</a></cite></p> </blockquote> <p><a href="https://www.freeletics.com/ja/">Freeletics</a>は、<b>言い訳をさせない</b>ことに特化した、硬派なAI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリです。とりあえず3ヶ月(15週間)続いたので、紹介してみることにします。</p><p><div style="text-align: left;" id="appreach-box"><img src="https://is5-ssl.mzstatic.com/image/thumb/Purple113/v4/62/d8/8f/62d88fd9-1972-8fd3-e80b-3748ff164e71/source/512x512bb.jpg" alt="Freeletics: トレーニング&フィットネス" style="float: left; margin: 10px; width: 25%; max-width: 120px; border-radius: 10%;" id="appreach-image"><div class="appreach-info" style="margin: 10px;"><div id="appreach-appname">Freeletics: ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ&フィットネス</div><div id="appreach-developer" style="font-size: 80%; display: inline-block;">開発元:<span id="appreach-developerurl">Freeletics <a class="keyword" href="http://d.hatena.ne.jp/keyword/GmbH">GmbH</a></span></div><div id="appreach-price" style="font-size: 80%; display: inline-block;">無料</div><div class="appreach-powered" style="font-size: 80%; display: inline-block;">posted with<a href="http://mama-hack.com/app-reach/" title="アプリーチ" target="_blank" rel="nofollow">アプリーチ</a></div><div class="appreach-links" style="float: left;"><div id="appreach-itunes-link" style="display: inline-block;"><a id="appreach-itunes" href="https://itunes.apple.com/jp/app/freeletics-%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0-%E3%83%95%E3%82%A3%E3%83%83%E3%83%88%E3%83%8D%E3%82%B9/id654810212?mt=8&amp;uo=4" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/itune_ja.svg" style="height: 40px; width: 135px;"></a></div><div id="appreach-gplay-link" style="display: inline-block;"><a id="appreach-gplay" href="https://play.google.com/store/apps/details?id=com.freeletics.lite" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/gplay_ja.png" style="height: 40px; width: 134.5px;"></a></div></div></div><div class="appreach-footer" style="margin-bottom: 10px; clear: left;"></div></div></p><br /> <p>Freeleticsは、ユーザにとって最適なト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グプランを提供してくれる、いわゆるAI<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D1%A1%BC%A5%BD%A5%CA%A5%EB%A5%C8%A5%EC%A1%BC%A5%CA%A1%BC">パーソナルトレーナー</a>アプリです。数分単位の短い時間にきついト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グをこなす、いわゆる<a href="https://ja.wikipedia.org/wiki/%E9%AB%98%E5%BC%B7%E5%BA%A6%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%90%E3%83%AB%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0">&#x9AD8;&#x5F37;&#x5EA6;&#x30A4;&#x30F3;&#x30BF;&#x30FC;&#x30D0;&#x30EB;&#x30C8;&#x30EC;&#x30FC;&#x30CB;&#x30F3;&#x30B0;</a>(HIIT)をベースにしています。<br /> <br /> </p> <div class="section"> <h4>長所1: 部屋の中でできる</h4> <p>2m * 2m のスペースさえあれば、<b>部屋の中でト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ</b>ができます。感覚的には、0.9m * 1.8m のヨガマットを引き、その上に立った状態で自分の腕を自由に振り回せるくらいのスペースです。<br /> ヨガマットは買った方がいいです。自分の体と床の両方を傷つけずに済みますし、階下への振動を押さえるためにも必要でしょう。<br /> 私は、定番のALINCOのマットを使ってます。</p><p><div class="hatena-asin-detail"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0007TT7I0/shiumachijigo-22/"><img src="https://m.media-amazon.com/images/I/315HtE1AQpL.jpg" class="hatena-asin-detail-image" alt="ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め" title="ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="https://www.amazon.co.jp/exec/obidos/ASIN/B0007TT7I0/shiumachijigo-22/">ALINCO(アルインコ) エクササイズフロアマット EXP150 床面保護 衝撃吸収 滑り止め</a></p><ul><li><span class="hatena-asin-detail-label">発売日:</span> 2012/04/05</li><li><span class="hatena-asin-detail-label">メディア:</span> スポーツ用品</li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p><b>外に出なくていい</b>ということは、<b>身支度を一切する必要がない</b>ということです。簡単なスポーツウェアを着るだけでいいので、気軽にスタートできます。<br /> 例えば、スキッピングジャンプ(要するに足踏み)は基本的な運動の一つですが、このような感じでその場でできる運動が揃っています。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080316.png" alt="f:id:shiumachi:20200727080316p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>長所2: 時間が短い</h4> <p>ウォーミングアップとクールダウン含めて20-30分程度で、一番きついメインのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グは5-10分程度。短い場合は3分で終わります。<br /> 近所のジム行ってちょっと運動して帰ってきたり、ランニングしたりしても、移動時間や着替えなども含めて1時間はかかることを考えれば、圧倒的に時間が短いです。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080407.png" alt="f:id:shiumachi:20200727080407p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>長所3: 自分だけのト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューを作ってくれる</h4> <p><a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A6%A5%A7%A5%A4%A5%C8%A5%C8%A5%EC%A1%BC%A5%CB%A5%F3%A5%B0">ウェイトトレーニング</a>をやると、どうしても「次に何をするか」を考えながらやらなければならず、それが結構面倒と思っていましたが、Freeleticsを使えばメニューは全部自分用に作ってくれるので<b>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グメニューを考える必要がありません</b>。<br /> 今日は腹筋メインだったので明日は足メインのメニューなど、ちゃんと順番を考えて作ってくれます。<br /> 面白いのは、ウォーミングアップもその日によって変えてくれるので、飽きがきません。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080529.png" alt="f:id:shiumachi:20200727080529p:plain" title="" class="hatena-fotolife" itemprop="image"></span><br /> </p> </div> <div class="section"> <h4>長所4: 言い訳させない</h4> <p>今日は時間が15分しかない、出張中なので器具がない、など色々な「言い訳」に対応してメニューを変えてくれます。とにかく<b>「言い訳させない」ことを目的している</b>のがよくわかります。<br /> もし筋肉痛だったとしても、その部位を使わないという選択ができます。「<b>諦めるという選択肢はありません</b>」というキャッチフレーズの通り、言い訳させない仕組みがたくさん備わっています。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080552.png" alt="f:id:shiumachi:20200727080552p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p></p> </div> <div class="section"> <h4>欠点</h4> <p>もちろん良い点ばかりでもありません。私が気になった点をいくつか挙げておきます。</p> <ul> <li>過去のデータを見返したいときのUIが貧弱。</li> <li>アプリでしか見れず、PCでログインはできるがほぼ無意味。</li> <li>アプリとしては日本語対応してるが、先述のクーポンを配ってもグッズがもらえるキャンペーンが対象外だったり、<a class="keyword" href="http://d.hatena.ne.jp/keyword/EU">EU</a>/US以外での<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%DE%A1%BC%A5%B1%A5%C6%A5%A3%A5%F3%A5%B0">マーケティング</a>が貧弱。</li> <li>日本でやってる人がほぼいないので情報がほとんどない</li> </ul> </div> <div class="section"> <h4>価格</h4> <p>年間1万円。自分としてはト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グジム行くことに比べたら圧倒的に安いと感じたので即購入しました。</p><p>Freeleticsを始めてみたいという人は、下記のリンクから購入すれば20%オフで買えます。 Coach と Nutrition (食生活改善)の二種類が出てきますが、Nutrition は自分は試していません。運動だけなら Coach で十分と思いますが、誰か Nutrition を試した人がいたら感想教えてください。</p><p><a href="https://www.freeletics.com/r/124871187">https://www.freeletics.com/r/124871187</a></p><p>14日間の返金期間がありますので、気になったら一週間くらい試してみるといいでしょう。<br /> <br /> <br /> </p> </div> <div class="section"> <h4>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの流れ</h4> <div class="section"> <h5>コース選択</h5> <p>最初に、運動の目的について質問されますが、その選択内容によって推奨されるコースが変わります。私が選んだ場合では以下の6種類が表示されました。<br /> このコースは、ダイエットしたいという人から筋肉をつけたいという人まで、色々な目的に合わせることができます。<br /> 私が表示されたもの以外の全てのメニューについては後述します。</p><br /> <p>目標選択画面</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080721.png" alt="f:id:shiumachi:20200727080721p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>初級編: スタートストロング</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080755.png" alt="f:id:shiumachi:20200727080755p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080805.png" alt="f:id:shiumachi:20200727080805p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080842.png" alt="f:id:shiumachi:20200727080842p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <br /> <p>カロリー燃焼</p><br /> <p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080826.png" alt="f:id:shiumachi:20200727080826p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080853.png" alt="f:id:shiumachi:20200727080853p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080914.png" alt="f:id:shiumachi:20200727080914p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <br /> <p>バランス燃焼</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727080950.png" alt="f:id:shiumachi:20200727080950p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081003.png" alt="f:id:shiumachi:20200727081003p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081014.png" alt="f:id:shiumachi:20200727081014p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>筋力&スタミナ</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081028.png" alt="f:id:shiumachi:20200727081028p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081038.png" alt="f:id:shiumachi:20200727081038p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081108.png" alt="f:id:shiumachi:20200727081108p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>筋ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%C0">レダ</a>イエット</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081246.png" alt="f:id:shiumachi:20200727081246p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081301.png" alt="f:id:shiumachi:20200727081301p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081314.png" alt="f:id:shiumachi:20200727081314p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>ハイブリッド筋力</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081338.png" alt="f:id:shiumachi:20200727081338p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081355.png" alt="f:id:shiumachi:20200727081355p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081409.png" alt="f:id:shiumachi:20200727081409p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081418.png" alt="f:id:shiumachi:20200727081418p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><br /> <p>(2019/06/05 追記) Freeletics のヘルプに、コース一覧があったので簡単にまとめました。</p><p><a href="https://help.freeletics.com/hc/en-us/articles/360001805519-Choose-your-Freeletics-Training-Journey">Choose your Freeletics Training Journey &ndash; Help Center</a></p><br /> <p>ダイエット目的</p> <table> <tr> <th>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グコース名</th> <th><a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a></th> <th>筋力</th> <th>コース期間</th> <th>説明</th> </tr> <tr> <td>スタートストロング/Start Strong</td> <td><span style="color: #00cc00">■</span>□□</td> <td><span style="color: #00cc00">■</span>□□</td> <td>6週間</td> <td>初級者や長期間運動してなかったけど復帰した人向け。<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%BF%A1%BC%A5%D0%A5%EB%A5%C8%A5%EC%A1%BC%A5%CB%A5%F3%A5%B0">インターバルトレーニング</a>メインで、持久力と筋力を手に入れるのが目的</td> </tr> <tr> <td>カロリー燃焼/Cardio Burn</td> <td><span style="color: #ff0000">■■■</span></td> <td><span style="color: #00cc00">■</span>□□</td> <td>12週間</td> <td>初級者や長期間運動してなかったけど復帰した人で、易しめの運動でレップ数多めで、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>メイン。ライフスタイルを変えるのが目的</td> </tr> <tr> <td>バランス燃焼/Balanced Burn</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td>12週間</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>と筋力ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グがバランスよく混ざっている。易しめでレップ数多めの運動と、難しくてレップ数少なめの運動が混在。ダイエットの目標体重達成を支援するのが目的。</td> </tr> <tr> <td>筋ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A5%C0">レダ</a>イエット/Shred & Burn</td> <td><span style="color: #00cc00">■</span>□□</td> <td><span style="color: #ff0000">■■■</span></td> <td>12週間</td> <td>筋力の限界を試し、脂肪の最後の一絞りを実現し、6つに割れた腹筋を獲得するためのコース。難しくてレップ数少なめの運動がメインで、爆発的な筋力ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グも含み、しばしば難しい高強度のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グが含まれる。懸垂バー推奨</td> </tr> </table><p><br /> 運動目的 (あるレベルのスポーツの経験やト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ経験があり、運動能力を高めていきたい人向け)</p> <table> <tr> <th>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グコース名</th> <th><a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a></th> <th>筋力</th> <th>コース期間</th> <th>説明</th> </tr> <tr> <td>Fit For Life</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td>6週間</td> <td>Freeleticsの基礎を学び、身体を若く活動的に保つためのコース。比較的低強度の運動と短時間のメニュー。ランニングありを推奨</td> </tr> <tr> <td>Legs, Curves & Core</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td>12週間</td> <td>(女性向け) 脚とお尻と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C2%CE%B4%B4">体幹</a>の運動をメインとした、強靭でパワフルな引き締まった身体を作るためのコース。レップ数多めの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%F3%A5%BF%A1%BC%A5%D0%A5%EB%A5%C8%A5%EC%A1%BC%A5%CB%A5%F3%A5%B0">インターバルトレーニング</a>で、引き締まった体型を手に入れるのが目的。</td> </tr> <tr> <td>Active Endurance</td> <td><span style="color: #ff0000">■■■</span></td> <td><span style="color: #00cc00">■</span>□□</td> <td>12週間</td> <td>持久力とスタミナを試すための、速いペースの<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>メインのコース。スプリント&ランニング推奨。</td> </tr> <tr> <td>筋力&スタミナ/ Strength & Stamina</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td>12週間</td> <td><a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>と筋力ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グがバランスよく混ざっている、全身運動のコース。健康的なライフスタイルを維持するのが目的</td> </tr> <tr> <td>Everyday Strength</td> <td><span style="color: #00cc00">■</span>□□</td> <td><span style="color: #ff0000">■■■</span></td> <td>12週間</td> <td>技術的に高難易度の運動を行い、筋力の限界を試すためのコース。レップ数少なめで爆発的な筋力ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グがメイン。しばしば難しい高強度のト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グが含まれる。懸垂バーを強く推奨</td> </tr> <tr> <td>Freeletics Hardcore</td> <td><span style="color: #ff0000">■■■</span></td> <td><span style="color: #ff0000">■■■</span></td> <td>8週間</td> <td>十分な経験を積んだアスリートが、身体的・精神的な困難に立ち向かうためのコース。上級者向けの高強度の運動を含む。このコースのみ、最終週はクールダウンのためそれまでの週よりも軽くなる(Hell Weekがない)。懸垂バー必須</td> </tr> </table><p>筋トレ目的</p> <table> <tr> <th>ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グコース名</th> <th><a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a></th> <th>筋力</th> <th>コース期間</th> <th>説明</th> </tr> <tr> <td>Explosive Strength</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td><span style="color: #f9ce1d">■■</span>□</td> <td>12週間</td> <td>技術的にも身体的にも難易度の高い運動と、高強度の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%CD%AD%BB%C0%C1%C7%B1%BF%C6%B0">有酸素運動</a>の混ざったコース。懸垂バーを強く推奨</td> </tr> <tr> <td>Everyday Strength</td> <td><span style="color: #00cc00">■</span>□□</td> <td><span style="color: #ff0000">■■■</span></td> <td>12週間</td> <td>筋力の限界を試すためのコース。レップ数少なめで爆発的な筋力ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グがメインで、最後の1レップを絞り出すのが困難なト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グを含む。懸垂バーを強く推奨</td> </tr> </table> </div> <div class="section"> <h5>コースの実施</h5> <p>週のはじめにメニューを決めます。毎週何日ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グするかを選ぶことができます。<br /> また、利用可能な器具(懸垂バーなど)も選ぶことができますので、自宅に懸垂バーがある人も安心です。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081514.png" alt="f:id:shiumachi:20200727081514p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081537.png" alt="f:id:shiumachi:20200727081537p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081548.png" alt="f:id:shiumachi:20200727081548p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>1日のメニューにはウォーミングアップからクールダウンまで含まれているので、寝起きにいきなり開始できます。<br /> もし時間がない場合や出張中でいつもと環境が違う場合でも、その日だけの特別メニューに変更されます。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081713.png" alt="f:id:shiumachi:20200727081713p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>一つのワークアウトを完了すると、フィードバックを送ることができます。どれだけきつかったかを5段階評価で、正しいフォームでできたかを5段階評価で送ります。フィードバックの結果は翌週のメニューに反映されます。<br /> 12週間(初級のみ6週間)の最終週はヘルウィークが待っています。この週は毎日(つまり7日)連続でト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グしなければいけません。といっても、ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グの負荷そのものは通常時とさほど変わらないので、名前に反してそこまで怖いメニューではないです。</p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081841.png" alt="f:id:shiumachi:20200727081841p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p><span itemscope itemtype="http://schema.org/Photograph"><img src="https://cdn-ak.f.st-hatena.com/images/fotolife/s/shiumachi/20200727/20200727081918.png" alt="f:id:shiumachi:20200727081918p:plain" title="" class="hatena-fotolife" itemprop="image"></span></p><p>12週間のコースが終わると、また最初に戻り、5つのコースタイプから選んでいきます。<br /> <br /> </p> </div> </div> <div class="section"> <h4>まとめ</h4> <p>Freeleticsは硬派なデザインで、飾りっ気はありませんが、毎日運動を継続させるための工夫が行き届いていて、とても気に入ったアプリです。<br /> 忙しいけど効率よく運動する習慣をつけたい、という人は試してみる価値はあります。</p><p><div style="text-align: left;" id="appreach-box"><img src="https://is5-ssl.mzstatic.com/image/thumb/Purple113/v4/62/d8/8f/62d88fd9-1972-8fd3-e80b-3748ff164e71/source/512x512bb.jpg" alt="Freeletics: トレーニング&フィットネス" style="float: left; margin: 10px; width: 25%; max-width: 120px; border-radius: 10%;" id="appreach-image"><div class="appreach-info" style="margin: 10px;"><div id="appreach-appname">Freeletics: ト<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%EC%A1%BC%A5%CB%A5%F3">レーニン</a>グ&フィットネス</div><div id="appreach-developer" style="font-size: 80%; display: inline-block;">開発元:<span id="appreach-developerurl">Freeletics <a class="keyword" href="http://d.hatena.ne.jp/keyword/GmbH">GmbH</a></span></div><div id="appreach-price" style="font-size: 80%; display: inline-block;">無料</div><div class="appreach-powered" style="font-size: 80%; display: inline-block;">posted with<a href="http://mama-hack.com/app-reach/" title="アプリーチ" target="_blank" rel="nofollow">アプリーチ</a></div><div class="appreach-links" style="float: left;"><div id="appreach-itunes-link" style="display: inline-block;"><a id="appreach-itunes" href="https://itunes.apple.com/jp/app/freeletics-%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0-%E3%83%95%E3%82%A3%E3%83%83%E3%83%88%E3%83%8D%E3%82%B9/id654810212?mt=8&amp;uo=4" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/itune_ja.svg" style="height: 40px; width: 135px;"></a></div><div id="appreach-gplay-link" style="display: inline-block;"><a id="appreach-gplay" href="https://play.google.com/store/apps/details?id=com.freeletics.lite" target="_blank" rel="nofollow"><img src="https://nabettu.github.io/appreach/img/gplay_ja.png" style="height: 40px; width: 134.5px;"></a></div></div></div><div class="appreach-footer" style="margin-bottom: 10px; clear: left;"></div></div></p> </div> shiumachi 2019年GWに読んだ本 hatenablog://entry/17680117127118617445 2019-05-07T07:13:02+09:00 2019-05-07T07:13:02+09:00 2019年GWに読んだ本の紹介。高次元の統計学、土日でわかるPythonプログラミング教室、サービスデータ解析入門、なるほどデザイン、ペーパープロトタイピング、ALL OUT、北北西に曇と往け <p>とりあえずざっと読んだ程度で、細かくは読んでいません。内容の理解が間違っている可能性がありますのでご注意ください。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4320112636/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/31f6qJFbpmL._SL160_.jpg" class="hatena-asin-detail-image" alt="高次元の統計学 (統計学One Point 11)" title="高次元の統計学 (統計学One Point 11)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4320112636/shiumachijigo-22/">高次元の統計学 (統計学One Point 11)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> 青嶋誠,矢田和善</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%B6%A6%CE%A9%BD%D0%C8%C7">共立出版</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2019/04/27</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li><li><a href="http://d.hatena.ne.jp/asin/4320112636/shiumachijigo-22" target="_blank">この商品を含むブログを見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>d次元のデータについて標本数nのとき、従来は n >> d を仮定していたが、この本では d >> n を仮定しています。<br /> 例えば10000次元のデータでサンプル数100とかのケース。<br /> これを分析するのに、標本共分散行列ではなく双対標本共分散行列というのを使うというのがメインの手法です。<br /> d x d 次元の標本共分散行列の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C7%CD%AD%C3%CD">固有値</a>と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C7%CD%AD%A5%D9%A5%AF%A5%C8%A5%EB">固有ベクトル</a>を、 n x n 次元の双対標本共分散行列の<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C7%CD%AD%C3%CD">固有値</a>と<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B8%C7%CD%AD%A5%D9%A5%AF%A5%C8%A5%EB">固有ベクトル</a>から計算できるということを最初に紹介しています。</p><p>従来のPCAは本書で書かれているようなデータには適用できないので、本書ではノイズ掃き出し法(ベクトルの各次元のパラメータが互いに独立)とクロスデータ行列法(互いに独立と仮定できない場合)という2つの手法を紹介しています。<br /> 高次元ベクトルにおける平均ベクトルの推定も説明されています。さらに、高次元データに対する二値分類の方法も紹介しています。<br /> 私の扱うデータではこの手法を活かせる機会がかなり多そうなので、どこかで試してみようと思いました。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797388978/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51N2Fx4kunL._SL160_.jpg" class="hatena-asin-detail-image" alt="~短期集中講座~ 土日でわかるPythonプログラミング教室 環境づくりからWebアプリが動くまでの2日間コース" title="~短期集中講座~ 土日でわかるPythonプログラミング教室 環境づくりからWebアプリが動くまでの2日間コース"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797388978/shiumachijigo-22/">~短期集中講座~ 土日でわかるPythonプログラミング教室 環境づくりからWebアプリが動くまでの2日間コース</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> フロイデ株式会社吉谷愛</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/SB%A5%AF%A5%EA%A5%A8%A5%A4%A5%C6%A5%A3%A5%D6">SBクリエイティブ</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2017/09/16</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li><li><a href="http://d.hatena.ne.jp/asin/4797388978/shiumachijigo-22" target="_blank">この商品を含むブログを見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>全くの初学者向けなのに、Dockerでコンテナ起動するとこから始めるし、チャットボットのアプリをローンチするためにテキスト解析回り(<a class="keyword" href="http://d.hatena.ne.jp/keyword/MeCab">MeCab</a>とか<a class="keyword" href="http://d.hatena.ne.jp/keyword/%C0%B5%B5%AC%C9%BD%B8%BD">正規表現</a>とか)をやったりWebアプリを作るために<a class="keyword" href="http://d.hatena.ne.jp/keyword/Django">Django</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/JQuery">JQuery</a>に触ったりと、意図してたくさんのライブラリやツールに触れさせる作りになっていて、なかなかおもしろい本でした。<br /> とはいえ自分は初学者ではないので、誰かこれから<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>始めたいという人でこの本を読んだ人の感想を聞いてみたいものです。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4274221822/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/61tA57rVXRL._SL160_.jpg" class="hatena-asin-detail-image" alt="サービスデータ解析入門: サービス価値を見出す統計解析" title="サービスデータ解析入門: サービス価値を見出す統計解析"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4274221822/shiumachijigo-22/">サービスデータ解析入門: サービス価値を見出す統計解析</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> 椿美智子</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AA%A1%BC%A5%E0%BC%D2">オーム社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2018/02/24</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li><li><a href="http://d.hatena.ne.jp/asin/4274221822/shiumachijigo-22" target="_blank">この商品を含むブログ (1件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>統計解析が主体で、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B5%A1%B3%A3%B3%D8%BD%AC">機械学習</a>等の流行りの技術の話はあまり出てこないですが、従来の商品売買の分析ではなくサービスの分析というところに主体を置いて概要を説明するというスタンスの本なので、切り口が違って面白いです。<br /> アンケート結果からの統計解析から始まり、6章では<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%D9%A5%A4%A5%B8%A5%A2%A5%F3">ベイジアン</a>ネットワーク分析を紹介しています。<br /> 全くの初学者向けの入門書ではなく、既に他分野である程度の知識がある人向けの入門書になっていて、内容はそこそこ高度な割に、実際に使えるようなテクニックが書いているわけじゃないので、人によっては役に立たない本って判断するような書籍かもしれないです。<br /> 内容的には「きちんとした、サービスデータの解析についての有料まとめブログ記事」に近い感じです。</p><p>私の場合、まさにこの分野の解析手法について知りたかったのでとても有益な本と感じました。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4844365177/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/41k6HyeHPPL._SL160_.jpg" class="hatena-asin-detail-image" alt="なるほどデザイン〈目で見て楽しむ新しいデザインの本。〉" title="なるほどデザイン〈目で見て楽しむ新しいデザインの本。〉"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4844365177/shiumachijigo-22/">なるほどデザイン〈目で見て楽しむ新しいデザインの本。〉</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> 筒井美希</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A8%A5%E0%A5%C7%A5%A3%A5%A8%A5%CC%A5%B3%A1%BC%A5%DD%A5%EC%A1%BC%A5%B7%A5%E7%A5%F3">エムディエヌコーポレーション</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2015/07/31</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li><li><a href="http://d.hatena.ne.jp/asin/4844365177/shiumachijigo-22" target="_blank">この商品を含むブログ (7件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>人気の本だけあって、非常にわかりやすいいい本でした。<br /> グラフの使い方とかも書いてあるので<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%C0%A5%C3%A5%B7%A5%E5">ダッシュ</a>ボード作成とかの参考にもなりそうです。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4274065669/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51S4FE35NBL._SL160_.jpg" class="hatena-asin-detail-image" alt="ペーパープロトタイピング 最適なユーザインタフェースを効率よくデザインする" title="ペーパープロトタイピング 最適なユーザインタフェースを効率よくデザインする"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4274065669/shiumachijigo-22/">ペーパープロトタイピング 最適なユーザインタフェースを効率よくデザインする</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> Carolyn Snyder,黒須正明</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AA%A1%BC%A5%E0%BC%D2">オーム社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2004/06/01</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本</li><li><span class="hatena-asin-detail-label">購入</span>: 3人 <span class="hatena-asin-detail-label">クリック</span>: 110回</li><li><a href="http://d.hatena.ne.jp/asin/4274065669/shiumachijigo-22" target="_blank">この商品を含むブログ (47件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>これを真面目に実践しようと思うと、想像以上に手間がかかって、簡単なデモアプリとかだと、この手間より普通にアプリ作った方が早そうな気がしてきます。<br /> とはいえ、手法としてはとても面白いので、どこかで試してみたいです。</p><p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B00CAPUEAE/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51adeRavV7L._SL160_.jpg" class="hatena-asin-detail-image" alt="ALL OUT!!(1) (モーニングコミックス)" title="ALL OUT!!(1) (モーニングコミックス)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B00CAPUEAE/shiumachijigo-22/">ALL OUT!!(1) (モーニングコミックス)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%B1%AB%C0%A5%A5%B7%A5%AA%A5%EA">雨瀬シオリ</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%D6%C3%CC%BC%D2">講談社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2013/04/23</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li><li><a href="http://d.hatena.ne.jp/asin/B00CAPUEAE/shiumachijigo-22" target="_blank">この商品を含むブログを見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>今年は<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC%A5%EF%A1%BC%A5%EB%A5%C9%A5%AB%A5%C3%A5%D7">ラグビーワールドカップ</a>もあるということで、読んでみた<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%E9%A5%B0%A5%D3%A1%BC">ラグビー</a>漫画。手にとってから初めて、「ここから今は倫理です。」と同じ作者の作品だと気づきました。</p><p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B076HQGKKP/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51VUsm6IN0L._SL160_.jpg" class="hatena-asin-detail-image" alt="ここは今から倫理です。 1 (ヤングジャンプコミックスDIGITAL)" title="ここは今から倫理です。 1 (ヤングジャンプコミックスDIGITAL)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B076HQGKKP/shiumachijigo-22/">ここは今から倫理です。 1 (ヤングジャンプコミックスDIGITAL)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%B1%AB%C0%A5%A5%B7%A5%AA%A5%EA">雨瀬シオリ</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%BD%B8%B1%D1%BC%D2">集英社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2017/11/22</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li><li><a href="http://d.hatena.ne.jp/asin/B076HQGKKP/shiumachijigo-22" target="_blank">この商品を含むブログを見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>「ここから今は倫理です。」は、独特な雰囲気の教師漫画でしたが、<a class="keyword" href="http://d.hatena.ne.jp/keyword/ALL%20OUT%21%21">ALL OUT!!</a>は正統派のスポーツ漫画。絵にクセはあるので好みは分かれるでしょうが、この作者の勢いのある表現は私はとても好きですね。</p><p>面白いなと思ったのは、コーチや教師目線のエピソードが結構散りばめられていることです。自分も年なのか、こういう高校生のスポーツものを見ると保護者視点で見るようになってきて、そういう自分にはこの視点はとても興味深く感じました。</p><p>なので、個人的に一番好きなエピソードは、8巻のコーチ・顧問による飲み会の回ですね。</p><p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/406388564X/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51jAAiEYQ%2BL._SL160_.jpg" class="hatena-asin-detail-image" alt="ALL OUT!!(8) 通常版? (モーニングKC) (モーニング KC)" title="ALL OUT!!(8) 通常版? (モーニングKC) (モーニング KC)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/406388564X/shiumachijigo-22/">ALL OUT!!(8) 通常版? (モーニングKC) (モーニング KC)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%B1%AB%C0%A5%A5%B7%A5%AA%A5%EA">雨瀬シオリ</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%D6%C3%CC%BC%D2">講談社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2016/02/23</li><li><span class="hatena-asin-detail-label">メディア:</span> コミック</li><li><a href="http://d.hatena.ne.jp/asin/406388564X/shiumachijigo-22" target="_blank">この商品を含むブログ (1件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p> <blockquote> <p>指導者は常に、子供を驚かせる張本人じゃなきゃならない。……突然、海に連れてったりしなさい。突然、相撲させなさい。もちろん明確な意図を伝えてね。"この人についていけば、なにか起きるかも"って思うだけで、意外とみんなついてきてくれるもんですよ。<br /> (<a class="keyword" href="http://d.hatena.ne.jp/keyword/ALL%20OUT%21%21">ALL OUT!!</a> 8巻 p159-161</p> </blockquote> <p><br /> <div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0761LTJML/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51-IQCGqMpL._SL160_.jpg" class="hatena-asin-detail-image" alt="北北西に曇と往け 1巻 (HARTA COMIX)" title="北北西に曇と往け 1巻 (HARTA COMIX)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0761LTJML/shiumachijigo-22/">北北西に曇と往け 1巻 (HARTA COMIX)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%C6%FE%B9%BE%B0%A1%B5%A8">入江亜季</a></li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/KADOKAWA">KADOKAWA</a> / <a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A8%A5%F3%A5%BF%A1%BC%A5%D6%A5%EC%A5%A4%A5%F3">エンターブレイン</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2017/10/13</li><li><span class="hatena-asin-detail-label">メディア:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/Kindle">Kindle</a>版</li><li><a href="http://d.hatena.ne.jp/asin/B0761LTJML/shiumachijigo-22" target="_blank">この商品を含むブログ (3件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><p>17歳の日本人の少年を主人公にした、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%A4%A5%B9%A5%E9%A5%F3%A5%C9">アイスランド</a>での生活と人々とのやりとりを描く漫画。一応ストーリーがあったり、主人公の少年が機械の心を読み取れる超能力者だったりしますが、メインはなんといっても<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A2%A5%A4%A5%B9%A5%E9%A5%F3%A5%C9">アイスランド</a>の紹介で、とてもいい観光漫画です。</p> shiumachi データサイエンスレガシーコード hatenablog://entry/17680117127067419105 2019-04-22T07:00:00+09:00 2019-04-22T07:00:38+09:00 Repro Tech Meetup #7 にて、「データサイエンスレガシーコードに立ち向かう」というタイトルで講演しました。 データサイエンティスト全てというわけではありませんが、データサイエンスのコードは試行錯誤の連続であり、様々な手法を連続して試すことを考えると、最初からきちんとテストを書いた保守性の高いコードを書く、というのはそう簡単ではありません。しかし、そうした試行錯誤を経て出来上がったデータサイエンスのコードを、「動いているから」という理由でそのまま実戦投入していくケースを目にしたことある人はいるのではないでしょうか。このような状況に直面したとき、私が思い出したのは、10年前の、あ… <p><a href="https://repro-tech.connpass.com/event/124326/">Repro Tech Meetup #7</a> にて、「データサイエンスレガシーコードに立ち向かう」というタイトルで講演しました。</p><br /> <p><script async class="speakerdeck-embed" data-id="b3c45d6a46ea43ce83ba1bcdeecba2cf" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script></p><br /> <p>データサイエンティスト全てというわけではありませんが、データサイエンスのコードは試行錯誤の連続であり、様々な手法を連続して試すことを考えると、最初からきちんとテストを書いた保守性の高いコードを書く、というのはそう簡単ではありません。</p><p>しかし、そうした試行錯誤を経て出来上がったデータサイエンスのコードを、「動いているから」という理由でそのまま実戦投入していくケースを目にしたことある人はいるのではないでしょうか。</p><p>このような状況に直面したとき、私が思い出したのは、10年前の、あるプロジェクトのことでした。</p><br /> <p>当時の私はある社内システムの開発に携わったのですが、既存コードには一切テストがなく、かなりの分量の改修が必要で、そして期日が迫っている、という状況でした。</p><p>このとき私のバイブルとして助けになったのが、「レガシーコード改善ガイド」でした。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798116831/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51dVODTDz-L._SL160_.jpg" class="hatena-asin-detail-image" alt="レガシーコード改善ガイド (Object Oriented SELECTION)" title="レガシーコード改善ガイド (Object Oriented SELECTION)"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798116831/shiumachijigo-22/">レガシーコード改善ガイド (Object Oriented SELECTION)</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> マイケル・C・フェザーズ,<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A6%A5%EB%A5%B7%A5%B9%A5%C6%A5%E0%A5%BA">ウルシステムズ</a>株式会社,平澤章,越智典子,稲葉信之,田村友彦,小堀真義</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%E6%C6%B1%CB%BC%D2">翔泳社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2009/07/14</li><li><span class="hatena-asin-detail-label">メディア:</span> 大型本</li><li><span class="hatena-asin-detail-label">購入</span>: 45人 <span class="hatena-asin-detail-label">クリック</span>: 673回</li><li><a href="http://d.hatena.ne.jp/asin/4798116831/shiumachijigo-22" target="_blank">この商品を含むブログ (157件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><br /> <p>まさか10年経ってからこの本を再び開くことになるとは思いませんでした。しかし、そこに書かれている内容は、まさに今の私にとって役に立つ内容ばかりでした。</p><br /> <p>この本の冒頭には、以下の一文が記されています。</p> <blockquote> <p>レガシーコードとは、単にテストのないコードです</p> </blockquote> <p>この一文を読んで、私は「データサイエンスレガシーコード」という言葉を思いつきました。</p><br /> <p>データサイエンティストの考えたモデルがもし本当に有用であれば、コードはきちんと整備され、あるいは書き直されることになるでしょう。しかし、そうなる前の段階、つまり、データサイエンティストの頭の中から一歩踏み出した状態は、保守性の低い、レガシーコード同様となっていることが多いでしょう。このようなときに、この古い書籍は大変役に立ちます。</p><br /> <p>とはいえ、この本で取り上げている例やツールは現代から見ればかなり古く、また、コードも<a class="keyword" href="http://d.hatena.ne.jp/keyword/Java">Java</a>や<a class="keyword" href="http://d.hatena.ne.jp/keyword/C/C%2B%2B">C/C++</a>で書かれているため、私が使う<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>の世界にはそのままでは適用できません。</p><p><a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>でテストを書くための本として、テスト駆動<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>があります。この本は2018年に出たばかりの新しい本であり、内容もわかりやすく、<a class="keyword" href="http://d.hatena.ne.jp/keyword/Python">Python</a>でテストを書くのに慣れていない人にとってはかなり有益な本でしょう。</p><br /> <p><div class="hatena-asin-detail"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798157600/shiumachijigo-22/"><img src="https://images-fe.ssl-images-amazon.com/images/I/51tVqyrVxfL._SL160_.jpg" class="hatena-asin-detail-image" alt="テスト駆動Python" title="テスト駆動Python"></a><div class="hatena-asin-detail-info"><p class="hatena-asin-detail-title"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4798157600/shiumachijigo-22/">テスト駆動Python</a></p><ul><li><span class="hatena-asin-detail-label">作者:</span> Brian Okken,<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B3%F4%BC%B0%B2%F1%BC%D2%A5%AF%A5%A4%A1%BC%A5%D7">株式会社クイープ</a>,安井力</li><li><span class="hatena-asin-detail-label">出版社/メーカー:</span> <a class="keyword" href="http://d.hatena.ne.jp/keyword/%E6%C6%B1%CB%BC%D2">翔泳社</a></li><li><span class="hatena-asin-detail-label">発売日:</span> 2018/08/29</li><li><span class="hatena-asin-detail-label">メディア:</span> 単行本(ソフトカバー)</li><li><a href="http://d.hatena.ne.jp/asin/4798157600/shiumachijigo-22" target="_blank">この商品を含むブログ (1件) を見る</a></li></ul></div><div class="hatena-asin-detail-foot"></div></div></p><br /> <p>ソフトウェアエンジニアと違い、短期間のうちに様々な小さいコードを実装しなければいけないソリューリョンアーキテクト(あるいは、プリ・ポスト含む全てのフィールドエンジニア)がよく口にするのは、「テストなんて書いている時間がない」というものですが、テストを書けば、バグ探しや確認作業のための<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B9%A9%BF%F4">工数</a>が減り、改修作業のときの手戻りを減らし、同僚や他プロジェクトで自分が書いたコードが再利用されるときに発生する質問や支援依頼もぐっと減り、その結果、自分の時間を大きく節約することができます。なので、私は小さなコードであってもなるべくテストは書くべきと考えています。</p><br /> <p>テストを忌避する理由として考えられるのは、推測ですが、「テストが品質向上のためのものであり、テストを書くには分岐網羅などを全て行った、<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%AB%A5%D0%A5%EC%A5%C3%A5%B8">カバレッジ</a>の高いものにしなければいけない」という考えがあるからでは、と思っています。私は、特にソリューションアーキテクトのような立場でコードを書く場合のテストは、単に確認作業の自動化くらいの意味合いで考えれば問題ないと考えています。普段自分が実行しているコマンドや作業を自動化するというくらいの軽い気持ちでテストを書くだけで、必要最低限のテストでの保護は可能となります。そしてそのためのテストコードは数行で書くことができます。</p><br /> <p>新しいア<a class="keyword" href="http://d.hatena.ne.jp/keyword/%A5%A4%A5%C7%A5%A2">イデア</a>、素晴らしい<a class="keyword" href="http://d.hatena.ne.jp/keyword/%B5%A1%B3%A3%B3%D8%BD%AC">機械学習</a>モデル、こうしたものを作ることそのものは確かに誰にもできないことであり、その業績は褒められるべきものです。しかし、せっかくのその傑作を素早く広めていくには、保守性の向上は常に考える必要があります。そのためにも、テストがないコードにテストをかぶせていく手法を学ぶのはとても有益と考えています。</p><br /> <p>テストの話とは外れますが、こうした発想がソリューションアーキテクトという仕事において有益である、という話を、4/24(水) 開催の <a href="https://repro-tech.connpass.com/event/124326/">SA Night #1</a> で少しだけ触れますので、興味がある人は是非ご参加ください。</p> shiumachi