投稿

ProbSpace 論文被引用数予測コンペ 6th Solution

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 今回はProbSpaceの論文の被引用数予測コンペに参加したので、その参加録となります。 [論文の被引用数予測 | ProbSpace](https://prob.space/competitions/citation_prediction) 結果は、参加者168人(うち提出者数70人)中、 Public 8位、Private 6位 でした! <div class="separator" style="clear: both;"><a href="https://1.bp.blogspot.com/-HulgpH1xk-I/YGChHTNQHyI/AAAAAAAAF3Q/4_egdtj-wgI68yCVTXVcuIrjIXdLJ8MeQCLcBGAsYHQ/s1139/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2021-03-29%2B0.25.53.png" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="600" data-original-height="276" data-original-width="1139" src="https://1.bp.blogspot.com/-HulgpH1xk-I/YGChHTNQHyI/AAAAAAAAF3Q/4_egdtj-wgI68yCVTXVcuIrjIXdLJ8MeQCLcBGAsYHQ/s600/%25E3%2582%25B9%25

虚無のゲーム「ルドー」を実装し先手有利説を検証

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 最近YouTubeのゲーム実況を見ることが多いです。 最初はスプラトゥーンの実況が多かったのですが、Google様のレコメンドのせいで他のゲームの実況も見るようになり、おかげで何をするにも時間が足りない今日この頃です。 そんなゲーム実況にはAmoung usやApexなど色々なゲームがある中で、今回取り上げるのは[「ルドー」](https://en.wikipedia.org/wiki/Ludo_(board_game))というゲームです。 <div class="separator" style="clear: both;"><a href="https://1.bp.blogspot.com/-NXd8zSNsJkc/YFn3y9OCXhI/AAAAAAAAF2M/jo1aVkqlexMWpaSke5m1ZZD7sjcR4cMhACLcBGAsYHQ/s693/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2021-03-23%2B23.14.11.png" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="600" data-original-height="543" data-original-width="693" src="https://1.bp.blogspot.com/-NXd8zSNsJkc/YFn3y9OCXhI/AAAAAAAAF2M/jo1aVkqlexMWpaSke

atmaCup第10回参加録とそのススメ

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 今回、第10回の開催となるatmaCupに参加しました。 [#10 [初心者歓迎!] atmaCup](https://www.guruguru.science/competitions/16/) 他のコンペに最近参加し始め、よくTwitterでatmaCupを見かける and 初心者歓迎!と書いてあったので、今回初参加してきました。 結果は525チーム中、 Public: 64位 -> Private :58位 でした。 <div class="separator" style="clear: both;"><a href="https://1.bp.blogspot.com/-4JApHpnlXAs/YEzYMeGdZcI/AAAAAAAAF1s/le_MRgdpIYwl8a1ctLJRM13E4hdBmuNDgCLcBGAsYHQ/s975/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2021-03-14%2B0.03.59.png" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="600" data-original-height="276" data-original-width="975" src="https://1.bp.blogspot.com/-4JApHpnlXAs/YEzYMeGdZcI/AAAAAAAAF1s/le_MRgdpIYwl8a1ct

fasttextがpip installできない

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 fasttextをpipでいれるときに、gcc,g++を使っているみたいですが、そこでエラーが出ていてinstallできなかったので対処法をメモします。 ``` pip install fastText ``` とすると、長いエラー文がでてきていて、 ``` gcc: error: unrecognized command line option '-stdlib=libc++' ``` という一文が含まれていました。 ``` which gcc ``` としてみると ``` /usr/local/bin/gcc ``` と言われます。 以下の記事に書いた通り、このgccはhomebrewでinstallしたもの(正確にはそのシンボリックリンク)です。 [Homebrewでgccのバージョンを上げシンボリックリンクを貼り直す](https://www.smartbowwow.com/2021/03/homebrewgcc.html) 調べてみると、xcodeに付属しているgccがどうの、とかいう情報が出てくるので、 [pip install ができない件(error: command 'gcc' failed with exit status 1) - Qiita](https://qiita.com/ume1126/items/89d579fb5911522d7191) homebrewで入れた方のgccを使わないようにすればいいのでは、と考えました。 自分の場合は既に`/usr/bin/gcc`にもう1つのgccが入っていたので、こちらを使うようにします。 (いろいろごちゃごちゃXcodeのセットアップツールをインストールしたり試行錯誤していたので、気づいたら入っていたのですが、パスの優先順位が低く使われていませんでした。上のリンク等を参考に入れてもらえればと思います。) ``` which -a gcc /usr/local/bin/gcc /usr/bin/gcc ``` homebrewで入れた方のgc

Homebrewでgccのバージョンを上げシンボリックリンクを貼り直す

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 Homebrewでgccをアップデートしたのですが、古いバージョンの方が使われたままになってしまっていた問題に対処したので、備忘録としてメモを残します。 gcc 10.2.0を入れたはずが、バージョン5を使っているという状態でした。 早速ですが、homebrewは ``` brew install gcc ``` とするとgccを`/usr/local/Celler/`にインストールし、``/usr/local/bin/``にリンクを作ります 下のコマンドを叩いて ``/usr/local/bin`` の配下にあるシンボリックリンクのうち、gccという名前のついたものを見てみると、gcc-10というのがいます。これがhomebrewがインストールしてくれた10.2.0のシンボリックリンクです。 ``` ls /usr/local/bin | grep gcc ``` 今回使いたいバージョンのgccを指しているシンボリックリンクは `/usr/local/bin/gcc-10`なので、gccコマンドを打った時にこれが使われるようにします。 自分のPATHを見てみると既に /usr/local/binが/usr/binよりも左側にいるので、/usr/local/bin/gcc-10を参照する/usr/local/bin/gccというシンボリックリンクを作ると、こちらを優先して使ってくれます。 ``` ln -s /usr/local/bin/gcc-10 /usr/local/bin/gcc ``` (補足) > 自分のPATHを見てみると既に /usr/local/binが/usr/binよりも左側にいる こうなってない場合は、パスを通します ``` export PATH=$PATH:/usr/local/bin ``` ``` $ which gcc /usr/local/bin/gcc ``` となり、homebrewで入れた方のgccを使ってくれていることがわかります。 ちなみに`-a`をつけると全て列挙してくれるので、元

xfeatのaggregationで自作の関数を使いたい

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 特徴量作成のライブラリであるxfeatの集約特徴量を計算してくれるaggregationがとても便利で最近よく使っています。(xfeatはaggregation以外にも様々な機能があります。詳しくはこちらの記事などが参考になると思います。) [特徴量エンジニアリングのライブラリ xfeat を使ってみて便利だったこと - Taste of Tech Topics](https://acro-engineer.hatenablog.com/entry/2020/12/15/120000) 今回はタイトルの通り、xfeatのaggregtionの集約関数として自作の関数を使いたいときにどうするか、という内容について書いてみます。 ## aggregationの基本的な使い方 まずは自作関数を渡す前に、xfeatのaggregationの基本的な使い方をみてみます。 先ほど紹介した記事から引用したコードですが、以下のように書くと「性別ごとのAge,Pclassの平均、最大」が取得できます。 ```python from xfeat import aggregation aggregated_df, aggregated_cols = aggregation(train_df, group_key="Sex", group_values=["Age", "Pclass"], agg_methods=["mean", "max"] ) ``` と書くと |Sex|agg_mean_Age_grpby_Sex|agg_max_Age_grpby_Sex|agg_mean_Pclass_grpby_Sex|agg_max_Pclass_grpby_Sex| |----|----|----|----|----| |Ma

【振り返り】2020年の振り返りと来年の抱負

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 今年も振り返りと、来年の抱負を書いておこうと思います。 去年までは三ヶ月に一度のペースで振り返りを書いていたのですが、今年から社会人になることもあり、一年に一度のペースに変えることにしました。 去年の年末の振り返り記事に書いた今年の目標を振り返り、そのあとそれ以外に達成できたことを書いていこうと思います。 ## 去年の目標を読み返す 去年の振り返り記事はこちら。 【振り返り】2019年10月~12月 去年の振り返り記事に書かれていた、抱負を読み返してみると * 無事修論出して卒業する * 修論の内容を国際会議に通す * 海外にいく * 社会人一年目頑張る * ブログ、Qiita執筆 * 英語の勉強 * 統計検定リベンジ? * kaggleやってみたい * 勉強会とかに参加してみたい * 運動の習慣をつける(卓球にハマりそう) * ポートフォリオサイトの作り直し * スプラでウデマエXになる と書いてありました。 あの頃は新型コロナウイルスでこんな一年になるとは思っていなかったので、いくつか達成不可能なものもありますね。 達成度はこんなかんじでしょうか。 * 無事修論出して卒業する -> ○ * 修論の内容を国際会議に通す -> ○ * 海外にいく -> コロナで行けず * 社会人一年目頑張る -> ○ * ブログ、Qiita執筆 -> ○ * 英語の勉強 -> △ * 統計検定リベンジ? -> コロナで開催されず * kaggleやってみたい -> ○ (ProbSpaceはやった) * 勉強会とかに参加してみたい -> × * 運動の習慣をつける(卓球にハマりそう) -> ○ (ウォーキングの習慣がついた) * ポートフォリオサイトの作り直し -> △ (定期的に更新しています) * スプラでウデマエXになる -> × (S+で停滞しています) 去年の振り返り記事で、国際会議に論文を出してrejectされたことを書いていましたが、無事今年の2月にWWWのワークショッ

ProbSpace スパムメール判別コンペ参加録

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 ProbSpaceで開催されていた、スパムメール判別コンペに参加しました。 [スパムメール判別 | ProbSpace](https://prob.space/competitions/spam_mail) 参加ユーザー数:225 (うち提出ありは88)で、 public:9位 -> private: 9位 ~~でぎりぎり金トロフィー取れました!~~ (追記) [評価システム | ProbSpace ](https://prob.space/progression) の「コンペの規模」の定義が曖昧で誤解していましたが、参加ユーザー数ではなく提出ユーザー数がコンペの規模の定義っぽいので、ぎりぎり銀でした... (ぬか喜びさせないで欲しい) <div class="separator" style="clear: both;"><a href="https://1.bp.blogspot.com/-1GQwMETAdbo/X-ALIY32pcI/AAAAAAAAFig/7KSIm17Ud6QXDCK6NyETtH3ZA1gw7XIzACLcBGAsYHQ/s1127/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2020-12-21%2B11.39.27.png" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="600" data-original-height="270" data

ナイーブベイズの改良版AODEを実装して実験してみる

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 ナイーブベイズは自然言語処理の分類タスクで、実装がシンプルで高速でそれなりに精度が出るということで、はじめに試すモデルだよという方も多いかも知れません。 scikit learnにも実装があるので、サクッと試せて便利ですが、もう少し時間がかかってもいいので精度が欲しい!となった場合にナイーブベイズではどうするのが良いのでしょうか。 ナイーブベイズについてあまり詳しくなかったので、調べてみたところ、いくつか亜種があるそうです。 * [僕はもう、そんなにナイーブじゃないんだ - Qiita](https://qiita.com/cou_z/items/bca93fce0a08b521a3e8) * [no_bayes_no_life_nb_keep_evolving](https://www.slideshare.net/phyllo/nobayesnolifenbkeepevolving) * [不均衡データに対するNaive BayesとComplement Naive Bayes, Negation Naive Bayesの比較 - Debug me](https://yukinoi.hatenablog.com/entry/2016/06/07/121759) 今回は、この中で紹介されているAODE(Averaged One-Dependence Estimators)について興味を持ったので、論文を読みつつ実装し、軽く実験もしてみました。 ## AODE [僕はもう、そんなにナイーブじゃないんだ - Qiita](https://qiita.com/cou_z/items/bca93fce0a08b521a3e8) ここで説明されているので、詳しくはこちらを参照していただきたいです。 ナイーブベイズ(NB)はその名の通りナイーブ、つまりクラスを条件付けた時の文章生成の確率を単語の生成確率の積に分解できるという単純な仮定を置いています。 本当は、単語同士は独立ではないはずなので、その仮定の部分を緩めて性能を向上させよう、というアイデアがAODEの元となっ

ProbSpace 対戦ゲームデータ分析甲子園コンペ参加録

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 ProbSpaceで開催されていた、対戦ゲームデータ分析甲子園コンペに参加しました。 いわゆるスプラトゥーンコンペです。 [対戦ゲームデータ分析甲子園 | ProbSpace](https://prob.space/competitions/game_winner) 参加ユーザー数:554で、 public:44位 -> private: 47位 でぎりぎりシルバー取れました!初めてのデータ分析コンペ参戦にしては健闘できたかな? <div class="separator" style="clear: both;"><a href="https://1.bp.blogspot.com/-GLQxbjP2JPs/X4zn70_fydI/AAAAAAAAFMY/HTE7Icre-GoB4D8LKkFYOeu8YmK3gsYDwCLcBGAsYHQ/s1130/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2020-10-19%2B9.46.30.png" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="600" data-original-height="278" data-original-width="1130" src="https://1.bp.blogspot.com/-GLQxbjP2JPs/X4zn70_fydI/AAAAAAAAFMY/HTE7Icre-GoB4D8LKk

スプラ神経衰弱アプリを公開しました

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 趣味で作った[スプラ神経衰弱](https://guglilac.pythonanywhere.com/)を公開したので、アプリの紹介も兼ねて、実装の一部を解説したりしていきたいと思います。 数学っぽい内容については別記事に切り出したので、興味があるかたはそちらもどうぞ! スプラ神経衰弱で学ぶ!グラフ理論 - Qiita スプラトゥーンと神経衰弱を組み合わせたら面白そう、という単純な思いつきから始まり、簡単にできるかと思いきやいろいろ考えるべき部分も多くて作るのが楽しそうだと思い、勢いで作りました。 せっかくなので公開したので、ぜひ遊んでみてください。 スプラ神経衰弱 ## ルール 基本的には通常の神経衰弱と同じルールです。 ただ、一人で神経衰弱をしても面白くないので、少しルールを変えてみます。 通常の神経衰弱では、同じ数字のカードがペアになり、そのペアの個数が得点になりますが、一人で遊ぶとどうやっても同じ点数になり、面白くありません。 スプラ神経衰弱では、スプラトゥーンのブキが書かれた各カードをめくって、ペアにしていきます。 スプラトゥーンには多くのブキが存在し、各ブキはメインウェポン、サブウェポン、スペシャルウェポンが設定されています。 <div class="separator" style="clear: both;"><a href="https://1.bp.blogspot.com/-FHy95aoeTcM/X31xLQA_FLI/AAAAAAAAFKk/SWniW9MhiQsOQX6wI0dNHe5suw_agXN3wCLcBGAsYHQ/s213/%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AA%25E3%2583%25BC%25E3%2583%25B3%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%2583%25E3%2583%2588%2B2020-10-07%

【書評】Python実践入門

イメージ
こんにちは、ぐぐりら( @guglilac )です。 技術評論社のPython実践入門を読んだので、まとめと感想を書きます。 [Python実践入門 ──言語の力を引き出し、開発効率を高める:書籍案内|技術評論社](https://gihyo.jp/book/2020/978-4-297-11111-3) ## 経緯とか感想とか Pythonをしばらく書いてきて、改めて知識をさらっておきたいなと思って買いました。 よりPython上級者向けの本へ進む前の橋渡し的な立ち位置な気がします。 全体的に丁寧でわかりやすかったです。 想定読者としては、他の言語のプログラミング経験者でPythonに入門する人、というのが帯に書いてあるが、本当にそんな感じ。 言語の文法、環境構築、ライブラリの管理、テスト、と満遍なく書いてあります。 帯に書いてあるとおり、確かに一つ目の言語がPythonで、この本から入ったら多少きついかもしれないと感じました。 自分は最初に大学の授業でCを学んだのですが、あまり身についた感じはせず、そのあとPythonを勉強したという経緯で、ほぼ初めての言語がPythonでした。 当時は別の本でPythonを独学したけれど、この本からプログラミングを始めていたらわからないところも多かったと思います。 あれから数年、大学院やアルバイト、インターンなどでPythonを書いてきて、それなりに理解しているつもりだけど、新卒として入社してよりしっかりとPythonを使いこなせるようになりたいと思い、知識を固めるために読んでみました。 そういう状態で読んだので、もちろん知っている部分も多かったけれど、細かい部分(便利な組み込み関数、ディスクリプタ、PyPIへの登録の仕方、並行処理、importするパスの優先順位とか)など勉強になる部分も多かったです。 というような理由で、出版側の想定としてある「他の言語のプログラミング経験者でpythonに入門する人」の他に、「ある程度Pythonが書けるけど細かいところがよくわかっていない」、「けどいきなり難しい書籍は挫折しそう」という人が知識を補完するのにもお勧めできるかと感じました。 以下ではPython実践入門の内容について、どのようなことが書かれているかをメモ程

【論文紹介】Field-aware Calibration: A Simple and Empirically Strong Method for Reliable Probabilistic Predictions (WWW 2020)

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 今回は、機械学習におけるcalibrationについて、特にField levelのcalibration errorを調べる論文を読んだので、まとめます。 ### 概要 Field-levelでcalibration誤差を測る指標としてField-ECE, Field-RCEを提案。またこれらの指標を考慮したcalibrationの手法としてNeural Calibrationを提案。 ### リンク [[1905.10713] Field-aware Calibration: A Simple and Empirically Strong Method for Reliable Probabilistic Predictions](https://arxiv.org/abs/1905.10713) ### calibrationとは 機械学習におけるcalibrationとは、ある分類器の出力を各クラスに属する確率に近づけることを言います。 分類問題では、あるインスタンスがどのクラスに属するかを判定するモデルを作るわけですが、今回考える問題ではあるクラスに属する確率を予測するモデルを作りたいという状況です。 降水確率や広告のCTRを予測するなど、分類結果自体だけでなく予測された確率が必要なケースも実応用上多いでしょう。 その際、予測された分類結果が正しくても、予測された確率がずれていると、後段の意思決定の処理でその確率を用いた場合にズレが生じてしまいます。 (なお、今回は論文に沿ってbinary classificationに絞って書いていきます。) calibratedな予測かどうかを測る指標としては後述しますが、ざっくりとしたイメージとしては、あるクラスに属する確率を0.7と予測されたデータを集めると、本当に70%がそのクラスに属している、みたいな予測をしていたらcalibrated、というものです。 全体的な傾向としてcalibratedかどうかを可視化する際によく用いられるものとして、calibration curveがあります。 先ほどのざっくりし

LightGBMにカテゴリ変数を入れる

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 LightGBMにカテゴリ変数を入力する際、 `category_feature`を * `lgb.Dataset`で指定する * `model.fit`や`lgb.train`で指定する * DataFrameのカラムをcategory型にする がありますが、三つ目のが良さげなんじゃないかと思いました。 `category_feature`を`lgb.Dataset`や`model.fit`や`lgb.train`で指定するといったやり方があるけど、[warningがでてしまう](https://qiita.com/junkoda/items/ddf35a240e9aa3f0d9f6)のもあるので、 dataframeのカラムの型をcategoryにするのが一番良さそう。 三つ目の方法について、どこかのブログ記事で、 「category_featureの対象にするカラムの型はint or categoryで、label encodingしてから渡すのが推奨」という情報を見かけてちょっと悩んでしまったのでまとめます。 結論category型じゃないとだめそうです。 ## 実験した タイタニックのデータセットで、`"Sex","Embarked","Cabin","Pclass"`の四つのカラムをlabel encodingしてそれぞれの処理をしてfit, predictしたときのaccuracyです。 ``` # dataframeのcolumnをcategory型にして、fitではcategorical featureを指定しない場合 0.8603351955307262 # dataframeのcolをcategory型にして、fitではcategorical featureを指定した場合 0.8603351955307262 # int型にして、fitではcategorical featureを指定する場合 0.8603351955307262 # int型に

僕の好きな鶏白湯ラーメンのお店

イメージ
こんにちは、ぐぐりら(<a href="https://twitter.com/guglilac">@guglilac</a>)です。 みなさんは何ラーメンが好きですか。 醤油ですか、味噌ですか?豚骨ラーメンもいいですね。 どの種類が好きでも、ラーメン好きは皆兄弟なので、仲良くやってこうと思うわけですが、どうしても自分の好きなラーメンについては語りたくなってしまうものです。 今回は、僕の好きな鶏白湯ラーメンの都内のおすすめ店を紹介します。 都内でも人気店が増えてきており、また鶏白湯のおすすめお店まとめ!といった記事も多く存在する(参考文献を参照)ので、本稿では自分が実際に食べに行ったお店から、人気店とあまり記事でまとめられていないお店を織り交ぜて紹介して行こうと思います。 ## 紹介するお店一覧 他の記事でもよく取り上げられているお店 * 麺屋 藤しろ (目黒) * 濃厚鶏そば 麺屋武一 (新橋) * 鶏の穴 (池袋) * 銀座 篝 (銀座) 個人的に紹介したいお店 * 麺や 福十八 (本郷三丁目) * 麺や 美風 (戸越) * 赤坂麺処 友 (赤坂) * 麺屋 楽のすけ (大森) ## 麺屋 藤しろ (目黒) ラーメン激戦区の目黒駅からすぐ。 ビルの中にあるので、雨でも並びやすいです。またラーメン激戦区なので他のお店にチェンジしやすかったりします。 元フレンチのシェフが作っているとかで、おしゃれな味がします。美味しい。 目黒の他にも三軒茶屋などにお店を出しているそうです。 <div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-aM7fbcWQ8Tg/XwBJjiXBXsI/AAAAAAAAEkU/RyaG6D5UB2MOgl4Ex07SwrjAofVbYIE0wCLcBGAsYHQ/s1600/%25E3%2581%25B5%25E3%2581%2597%25E3%2582%2599%25E3%2581%2597%25E3%2582%258D.JPG" imagea