<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Thang Dinh on Medium]]></title>
        <description><![CDATA[Stories by Thang Dinh on Medium]]></description>
        <link>https://medium.com/@dinhthang?source=rss-b3e2d88b9939------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/2*5vxgvJPWd7OF9gQA4DETBA.png</url>
            <title>Stories by Thang Dinh on Medium</title>
            <link>https://medium.com/@dinhthang?source=rss-b3e2d88b9939------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 01:32:09 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@dinhthang/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[I’m Tired of AI]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://dinhthang.medium.com/im-tired-of-ai-fd9b790e129c?source=rss-b3e2d88b9939------2"><img src="https://cdn-images-1.medium.com/max/1158/1*fTKEvmHyiGwuC8Kw2yGLcQ.png" width="1158"></a></p><p class="medium-feed-snippet">I haved work in data science for 6 years. AI changed a lot from the starting point of my career.</p><p class="medium-feed-link"><a href="https://dinhthang.medium.com/im-tired-of-ai-fd9b790e129c?source=rss-b3e2d88b9939------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://dinhthang.medium.com/im-tired-of-ai-fd9b790e129c?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/fd9b790e129c</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Thu, 19 Mar 2026 15:44:49 GMT</pubDate>
            <atom:updated>2026-03-19T15:53:55.459Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Data science self-help 01: How to write data science report]]></title>
            <link>https://dinhthang.medium.com/data-science-self-help-01-how-to-write-data-science-report-accb431ea110?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/accb431ea110</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Thu, 28 Jan 2021 03:00:39 GMT</pubDate>
            <atom:updated>2021-01-28T03:00:39.600Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*gcGBdAT_S7uXqTSt.jpg" /></figure><p>Hi every body, I am a junior DS that work for a digital marketing company in Tokyo. I always struggle for writing report in weekly meeting with my boss. I think that i have to improve my communication and writing skill. That is why i summarize some blog to create a template for my report.</p><p>To write a report, there are 3 steps that we have to do:</p><ul><li>Preparing</li><li>Writing</li><li>Review</li></ul><h3>Preparing</h3><p><strong>Know your audiences: TODO</strong></p><p><strong>Gather and analyze first: TODO</strong></p><p><strong>Organize &amp; Visualize: TODO</strong></p><h3>Writing</h3><p><strong>Introduction</strong></p><ul><li>Summarize the purpose of the report and summarize the data / subject.</li><li>Include important contextual information about the reason for the report.</li><li>Summarize your analysis questions, your conclusions, and briefly outline the report.</li></ul><p><strong>Body — Four Sections</strong></p><ul><li>Data Section — Include written descriptions of data and follow with relevant spreadsheets.</li><li>Methods Section — Explain how you gathered and analyzed data.</li><li>Analysis Section — Explain what you analyzed. Include any charts here.</li><li>Results — Describe the results of your analysis.</li></ul><p><strong>Conclusions</strong></p><ul><li>Restate the questions from your introduction.</li><li>Restate important results.</li><li>Include any recommendations for additional data as needed.</li></ul><p><strong>Appendix</strong></p><ul><li>Include the details of your data and process here.</li><li>Include any secondary data, including references.</li></ul><h3>Review</h3><p>Before you send off your newly finished data analysis report, make sure it has these two important qualities:</p><ul><li><strong>It’s organized</strong> — It’s easy for different audiences to quickly read and find information of interest in your report.</li><li><strong>It’s clearly written</strong> — The writing is style is concise, professional, and direct. This makes your content the focus, and not the writing. To achieve a clear writing style, avoid the following: extra sentences, formal prose, casual language; spelling and grammatical errors; setting too broad or too narrow of a context for your audience and your questions; failing to report procedures and outcomes.</li></ul><p><strong>Ref</strong></p><p><a href="https://career-resource-center.udacity.com/portfolio/data-science-reports">Data Science Reports</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=accb431ea110" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Memo cách viết báo cáo trong khi RnD]]></title>
            <link>https://dinhthang.medium.com/memo-c%C3%A1ch-vi%E1%BA%BFt-b%C3%A1o-c%C3%A1o-trong-khi-rnd-d9186eeeb1ef?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/d9186eeeb1ef</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Thu, 25 Jun 2020 03:02:32 GMT</pubDate>
            <atom:updated>2020-06-25T03:02:32.126Z</atom:updated>
            <content:encoded><![CDATA[<p>Outline của một paper: <a href="http://www.rain.hyarc.nagoya-u.ac.jp/~tsuboki/ronbun/outline_jpn.html">http://www.rain.hyarc.nagoya-u.ac.jp/~tsuboki/ronbun/outline_jpn.html</a></p><p>Khi báo cáo kết quả nghiên cứu của một vấn đề gì đó, ta có outline sau:</p><p>提案内容</p><p>論理展開</p><p>実験設計</p><p>結果</p><p>考察</p><p>参考情報</p><p>Giải thích từng bước:</p><p>提案内容： phân tích yêu cầu của người dùng từ đó nhận ra vấn đề cần giải quyết là gì, đánh giá lợi ích của vấn đề đó và khả năng có thể hoàn thành.</p><p>論理展開： nêu ra giả thiết về cách làm cũng như kết quả có thể có được , cách đánh giá kết quả đấy</p><p>実験設計： mô tả thí nghiệm thực hiện</p><p>結果： đưa ra kết quả và đánh giá kết quả đấy</p><p>考察: kết luận</p><p>参考情報： các tài liệu tham khảo. Paper tham khảo, tool tham khảo, schedule, các chỉnh sửa ở mỗi version khác nhau của report</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d9186eeeb1ef" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[売上の低い営業マンに共通する要因とその対策 | BtoBマーケティングラボ｜ BtoBマーケティングラボ]]></title>
            <link>https://dinhthang.medium.com/%E5%A3%B2%E4%B8%8A%E3%81%AE%E4%BD%8E%E3%81%84%E5%96%B6%E6%A5%AD%E3%83%9E%E3%83%B3%E3%81%AB%E5%85%B1%E9%80%9A%E3%81%99%E3%82%8B%E8%A6%81%E5%9B%A0%E3%81%A8%E3%81%9D%E3%81%AE%E5%AF%BE%E7%AD%96-btob%E3%83%9E%E3%83%BC%E3%82%B1%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E3%83%A9%E3%83%9C-btob%E3%83%9E%E3%83%BC%E3%82%B1%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E3%83%A9%E3%83%9C-90e378f0808c?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/90e378f0808c</guid>
            <category><![CDATA[sales]]></category>
            <category><![CDATA[japanese-business-mind]]></category>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Wed, 08 Apr 2020 02:27:51 GMT</pubDate>
            <atom:updated>2020-04-08T02:27:51.581Z</atom:updated>
            <content:encoded><![CDATA[<p>多少の波はあるものの、どの会社にも、継続して売上の高い営業マンと低い営業マンがいると思います。私が以前在籍していた会社にも、もちろんそれは存在し、その違いは何なのかをずっと考えている時がありました。その結果、次のようなことが要因として考えられるということに気がつきました。</p><p><a href="https://pages.onemarketing.jp/download01.html">BtoBマーケティングスタートアップガイドを無料ダウンロードする</a></p><h3>「営業」と「売上」について</h3><p>本題の前に、まずは「営業」と「売上」について説明させていただきます。</p><p>「営業」と「売上」を公式的に表すと、それぞれ次のような式で説明することができます。</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/570/0*pJYAYIXtookV5Tjb.gif" /></figure><p>この2つの式からは、様々なことが見えてきます。<br>例えば、以下のようなことが重要であると推測することができます。</p><p><strong>・営業ボリュームを上げるには、やりきる力、徹底度の高さが必要。</strong><br><strong> ・営業の質を上げるには、お客様の状況、自社商品のことを熟知すること。</strong><br><strong> ・リピートや引合いの量を向上させるには、お客様からの信頼を獲得すること。</strong><br><strong> ・社外、社内的にも納期を守れていること。</strong></p><p>などです。</p><p>上記に挙げたようなことができているか、できていないか。これが売上の高い営業マンと売り上げの低い営業マンの大きな違いとなるのです。</p><h3>売上の低い営業マンに共通する要因と対策</h3><p>では、売上の低い営業マンに共通するその要因と対策についてまとめていきます。</p><h3>売上の低い営業マンは時間に追われている</h3><p>容易に想像がつくと思いますが、時間に追われている営業マンのパフォーマンスは低いです。納期を守れずに信頼を失くしたり、ギリギリなのでケアレスミスも発生します。</p><p>どのようにすれば対処できるのでしょうか？私の経験からお話すると大きく２つあります。</p><h4>1．タスクとして処理する</h4><p>１つは、タスク的な仕事の処理方法です。</p><p>具体的には、メールの返信、お客様の依頼事（見積りや質問の回答）、社内の仕事（入力作業や集計）などです。<br>これらには、まずざっと目を通し、今やるものと後からやるものを判別します。</p><p>ポイントは、「19時までに○○を完了する」 など、何時までに何をやるかを決めて実行することです。人間は期限を決められると集中力が増します。</p><h4>2．納期より早めに処理する</h4><p>もう１つの対処法は、納期の１日前に提出するということです。優秀な人ほど、これを実践していると思います。またこれができていると社内的にも社外的にも、評価がかなり高くなります。お客様からすると、自分のことを優先して大事にしてくれていると感じますし、社内的には仕事が速く「デキル人」の印象が持たれます。</p><p>もう１つ付け加えますと、仕事の処理の順番に気をつけることです。</p><p>優先順としては、お客様の仕事→社内で複数人関わっている仕事→自分の仕事の順です。重々承知されていると思いますが、後回しにしても結局、仕事は終わりません。仕事はゲームのテトリスのように常に降ってきます。どうせやるなら早くやって良い印象と信頼を獲得しましょう。</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/570/0*HhBwLdTGe4hzvMBR.gif" /></figure><h3>売上の低い営業マンはお客様に愛されていない</h3><p>売上の高い営業マンは、お客様から信頼され、愛されているので引合いも多くなります。</p><p>リピートや引合いは、営業効率が最も良いので是非増やすべきです。信頼を得て、愛されるには知識や経験も必要です。お客様との約束事を守るのも当然必要です。<br>そしてこれらを築くには時間もかかります。しかし、新卒の営業マンからベテランの営業マンまで、すぐに実践できて、お客様に愛してもらう「魔法の技」があります。</p><p>精神論的に聞こえるかもしれませんが、効果は絶大だと思います。</p><p>それは、 <strong>『お客さんのことを意識して好きになること』</strong> です。</p><p>スティーブン・R・コヴィー博士著の「７つの習慣」という有名な本に書いてありますが、「愛」とは日本語では名詞ですが、英語では「love」、動詞です。つまり自分の意識次第で動かせるということです。</p><p>どの営業マンにも１人は苦手なお客様や、ややこしく関わりたくないお客様がいると思います。またそういったお客様に限って売上を握っていたりします。<br>そのお客様を、騙されたと思って一度好きになってみてください。相手も人なので、自分を嫌がっている、腫れ物にさわるように接しているというのは気づいています。しかし逆にいうと、自分のことを好いてくれた人に対して突っ撥ねる態度は取りにくいものです。</p><p>競合の営業マンに対する態度や社内でもそういった態度が変わらない方だったら諦めてもよいと思いますが、しばらく続けると違いを実感できると思います。</p><p>これを私は営業の究極技だと感じています。</p><h3>売上の低い営業マンは決めたことを実行できない</h3><p>いくら素晴らしい会議をして、目標ややることを決めても、実行できなかったら良し悪しの判断ができません。</p><p>例えば売上目標を達成するために、電話を1日50件を行うと決めたとします。しかし、1日30件しか電話できなかったのであれば、ボリュームが少なかったから悪かったのか、当たり先が良くなかったのか、はたまた電話の話す内容が悪かったのかと、どこが悪かったのかが判断できません。</p><p>まずは決めたことを実行することが大切です。そうして初めて、スタートに立ったと言えます。</p><h3>売上の高い営業マンになるには行動と実践が何より重要</h3><p>最終的にはやはり、行動・実践するしかないという話にはなりますが、これらのことは特別な能力が必要なことではなく、誰にでもできることです。少しの差が大きな結果を生むと思いますので、是非一度実践してみてください。そしてどうせなら売上の高い営業マンになって自信を獲得することを目指しましょう。</p><p><em>Originally published at </em><a href="https://www.onemarketing.jp/lab/corporate-sales/corporate-sales_117"><em>https://www.onemarketing.jp</em></a><em>.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=90e378f0808c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Cách mount dữ liệu sử dụng sshfs]]></title>
            <link>https://dinhthang.medium.com/c%C3%A1ch-mount-d%E1%BB%AF-li%E1%BB%87u-s%E1%BB%AD-d%E1%BB%A5ng-sshfs-c141c99f5501?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/c141c99f5501</guid>
            <category><![CDATA[sshfs]]></category>
            <category><![CDATA[ssh]]></category>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Tue, 11 Jun 2019 14:49:30 GMT</pubDate>
            <atom:updated>2019-06-12T04:51:06.204Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Rh9_FbNegLbf4TKizRWAHg.jpeg" /></figure><p>Hẳn các bạn đã có nhiều trường hợp cần phải di chuyển dữ liệu từ một máy này sang một máy khác nhỉ. Thông thường chúng ta có thể sử dụng usb, upload lên cloud rồi tải xuống. Tuy nhiên với những dữ liệu có kích thước vài trăm GB cho đến hàng TB thì sẽ thế nào nhỉ. Hôm nay giới thiệu một cách hiệu quả cho các trường hợp đấy, đó là sử dụng sshfs.</p><h4>Giới thiệu về scp</h4><p>Phần lớn các lập trình viên đều sử dụng ssh để truy nhập vào một server. Thường thì sẽ tạo một folder là .ssh, tạo một file config có ghi hostname, user, identifyFile, .. Sau đó chỉ cần ssh ‘hostname’ thần thánh là xong nhỉ. Bên cạnh đó chúng ta còn được hỗ trợ một phương thức là scp, dùng để copy file từ server này sang server kia. Câu lệnh của scp là:</p><pre>scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2</pre><p>Tuy nhiên scp chỉ hỗ trợ chúng ta chuyển từng file một, chuyện gì sẽ xảy ra khi bạn có hàng tỉ file trong folder cần di chuyển nhỉ? Nén folder lại và scp nó? Không, ở đây chúng ta không làm thế, thay vì scp cho từng file, chúng ta sẽ sử dụng sshfs để mount cả folder đấy về một thiên đường khác ✌️</p><h4>Giới thiệu về sshfs</h4><p>Trước tiên bạn tạo một folder ở nơi mà bạn muốn chuyển dữ liệu tới, gọi là folder2 trên máy destination nhé.</p><p>Bạn chỉ cần chạy câu lệnh sau</p><pre>sshfs [OPTION] [user@]SRC_HOST:]folder1 [user@]DEST_HOST:]folder2</pre><p>Là mọi thứ đã được thực thi. Đơn giản đúng không nào.</p><p>Lưu ý nho nhỏ là dữ liệu trên hai folder này đồng bộ với nhau. Nên nếu bạn xóa dữ liệu trên folder 2 thì nó cũng sẽ biến mất ở folder1 đấy nhé!!!</p><p>Thông thường chúng ta sẽ sử dụng câu lệnh sau để mount dữ liệu về máy của mình.</p><pre>sshfs -o IdentityFile=<em>path_to_file_key_ssh</em> [user@]SRC_HOST:]<em>folder1</em> [user@]DEST_HOST:]<em>folder2</em></pre><p>Cảm ơn các bạn đã đọc những lời xàm xí của mình ✌️</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c141c99f5501" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Cách ghi note của ông Ê]]></title>
            <link>https://dinhthang.medium.com/c%C3%A1ch-ghi-note-c%E1%BB%A7a-%C3%B4ng-%C3%AA-dd77e33ad3c8?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/dd77e33ad3c8</guid>
            <category><![CDATA[notes]]></category>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Thu, 28 Feb 2019 02:31:05 GMT</pubDate>
            <atom:updated>2019-02-28T02:31:05.802Z</atom:updated>
            <content:encoded><![CDATA[<p>— — — — — -</p><p><strong>YYYY-MM-DD: tiêu đề</strong></p><p>— — — — —</p><p><strong>(1) [key point] tiêu đề</strong></p><p><strong>①tiêu đề</strong></p><p>mô tả 1(gạch chân)</p><p>● điều 1</p><p>● điều 2</p><p>mô tả 2(gạch chân)</p><p>● điều 1</p><p>● điều 2</p><p><strong>②tiêu đề</strong></p><p>mô tả</p><p>● điều 1</p><p>● điều 2</p><p><strong>(2) [key point] tiêu đề</strong></p><p><strong>①tiêu đề</strong></p><p>mô tả(gạch chân)</p><p>● điều 1</p><p>● điều 2</p><p><strong>②tiêu đề</strong></p><p>mô tả(gạch chân)</p><p>● điều 1</p><p>● điều 2</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=dd77e33ad3c8" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How and When to Use a Calibrated Classification Model with scikit-learn — Machine Learning Mastery]]></title>
            <link>https://dinhthang.medium.com/how-and-when-to-use-a-calibrated-classification-model-with-scikit-learn-machine-learning-mastery-7857471902b4?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/7857471902b4</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Sun, 02 Sep 2018 19:00:06 GMT</pubDate>
            <atom:updated>2020-04-08T02:37:19.871Z</atom:updated>
            <content:encoded><![CDATA[<h3>How and When to Use a Calibrated Classification Model with scikit-learn — Machine Learning Mastery</h3><p>Instead of predicting class values directly for a classification problem, it can be convenient to predict the probability of an observation belonging to each possible class.</p><p>Predicting probabilities allows some flexibility including deciding how to interpret the probabilities, presenting predictions with uncertainty, and providing more nuanced ways to evaluate the skill of the model.</p><p>Predicted probabilities that match the expected distribution of probabilities for each class are referred to as calibrated. The problem is, not all machine learning models are capable of predicting calibrated probabilities.</p><p>There are methods to both diagnose how calibrated predicted probabilities are and to better calibrate the predicted probabilities with the observed distribution of each class. Often, this can lead to better quality predictions, depending on how the skill of the model is evaluated.</p><p>In this tutorial, you will discover the importance of calibrating predicted probabilities and how to diagnose and improve the calibration of models used for probabilistic classification.</p><p>After completing this tutorial, you will know:</p><ul><li>Nonlinear machine learning algorithms often predict uncalibrated class probabilities.</li><li>Reliability diagrams can be used to diagnose the calibration of a model, and methods can be used to better calibrate predictions for a problem.</li><li>How to develop reliability diagrams and calibrate classification models in Python with scikit-learn.</li></ul><p>Discover bayes opimization, naive bayes, maximum likelihood, distributions, cross entropy, and much more <a href="https://machinelearningmastery.com/probability-for-machine-learning/">in my new book</a>, with 28 step-by-step tutorials and full Python source code.</p><p>Let’s get started.</p><h3>Tutorial Overview</h3><p>This tutorial is divided into four parts; they are:</p><ol><li>Predicting Probabilities</li><li>Calibration of Predictions</li><li>How to Calibrate Probabilities in Python</li><li>Worked Example of Calibrating SVM Probabilities</li></ol><h3>1. Predicting Probabilities</h3><p>A classification predictive modeling problem requires predicting or forecasting a label for a given observation.</p><p>An alternative to predicting the label directly, a model may predict the probability of an observation belonging to each possible class label.</p><p>This provides some flexibility both in the way predictions are interpreted and presented (choice of threshold and prediction uncertainty) and in the way the model is evaluated.</p><p>Although a model may be able to predict probabilities, the distribution and behavior of the probabilities may not match the expected distribution of observed probabilities in the training data.</p><p>This is especially common with complex nonlinear machine learning algorithms that do not directly make probabilistic predictions and instead use approximations.</p><p>The distribution of the probabilities can be adjusted to better match the expected distribution observed in the data. This adjustment is referred to as calibration, as in the calibration of the model or the calibration of the distribution of class probabilities.</p><blockquote><strong>[…] we desire that the estimated class probabilities are reflective of the true underlying probability of the sample. That is, the predicted class probability (or probability-like value) needs to be well-calibrated. To be well-calibrated, the probabilities must effectively reflect the true likelihood of the event of interest.</strong></blockquote><p>- Page 249, <a href="https://amzn.to/2kXE35G">Applied Predictive Modeling</a>, 2013.</p><h3>2. Calibration of Predictions</h3><p>There are two concerns in calibrating probabilities; they are diagnosing the calibration of predicted probabilities and the calibration process itself.</p><h4>Reliability Diagrams (Calibration Curves)</h4><p>A reliability diagram is a line plot of the relative frequency of what was observed (y-axis) versus the predicted probability frequency (x-axis).</p><blockquote><strong>Reliability diagrams are common aids for illustrating the properties of probabilistic forecast systems. They consist of a plot of the observed relative frequency against the predicted probability, providing a quick visual intercomparison when tuning probabilistic forecast systems, as well as documenting the performance of the final product</strong></blockquote><p>- <a href="https://journals.ametsoc.org/doi/abs/10.1175/WAF993.1">Increasing the Reliability of Reliability Diagrams</a>, 2007.</p><p>Specifically, the predicted probabilities are divided up into a fixed number of buckets along the x-axis. The number of events (class=1) are then counted for each bin (e.g. the relative observed frequency). Finally, the counts are normalized. The results are then plotted as a line plot.</p><p>These plots are commonly referred to as ‘ <em>reliability</em>’ diagrams in forecast literature, although may also be called ‘ <em>calibration</em> ‘ plots or curves as they summarize how well the forecast probabilities are calibrated.</p><p>The better calibrated or more reliable a forecast, the closer the points will appear along the main diagonal from the bottom left to the top right of the plot.</p><p>The position of the points or the curve relative to the diagonal can help to interpret the probabilities; for example:</p><ul><li><strong>Below the diagonal</strong>: The model has over-forecast; the probabilities are too large.</li><li><strong>Above the diagonal</strong>: The model has under-forecast; the probabilities are too small.</li></ul><p>Probabilities, by definition, are continuous, so we expect some separation from the line, often shown as an S-shaped curve showing pessimistic tendencies over-forecasting low probabilities and under-forecasting high probabilities.</p><blockquote><strong>Reliability diagrams provide a diagnostic to check whether the forecast value Xi is reliable. Roughly speaking, a probability forecast is reliable if the event actually happens with an observed relative frequency consistent with the forecast value.</strong></blockquote><p>- <a href="https://journals.ametsoc.org/doi/abs/10.1175/WAF993.1">Increasing the Reliability of Reliability Diagrams</a>, 2007.</p><p>The reliability diagram can help to understand the relative calibration of the forecasts from different predictive models.</p><h4>Probability Calibration</h4><p>The predictions made by a predictive model can be calibrated.</p><p>Calibrated predictions may (or may not) result in an improved calibration on a reliability diagram.</p><p>Some algorithms are fit in such a way that their predicted probabilities are already calibrated. Without going into details why, logistic regression is one such example.</p><p>Other algorithms do not directly produce predictions of probabilities, and instead a prediction of probabilities must be approximated. Some examples include neural networks, <a href="https://machinelearningmastery.com/support-vector-machines-for-machine-learning/">support vector machines</a>, and decision trees.</p><p>The predicted probabilities from these methods will likely be uncalibrated and may benefit from being modified via calibration.</p><p>Calibration of prediction probabilities is a rescaling operation that is applied after the predictions have been made by a predictive model.</p><p>There are two popular approaches to calibrating probabilities; they are the Platt Scaling and Isotonic Regression.</p><p>Platt Scaling is simpler and is suitable for reliability diagrams with the S-shape. Isotonic Regression is more complex, requires a lot more data (otherwise it may overfit), but can support reliability diagrams with different shapes (is nonparametric).</p><blockquote><strong>Platt Scaling is most effective when the distortion in the predicted probabilities is sigmoid-shaped. Isotonic Regression is a more powerful calibration method that can correct any monotonic distortion. Unfortunately, this extra power comes at a price. A learning curve analysis shows that Isotonic Regression is more prone to overfitting, and thus performs worse than Platt Scaling, when data is scarce.</strong></blockquote><p>- <a href="https://www.cs.cornell.edu/~alexn/papers/calibration.icml05.crc.rev3.pdf">Predicting Good Probabilities With Supervised Learning</a>, 2005.</p><p><strong>Note, and this is really important</strong>: better calibrated probabilities may or may not lead to better class-based or probability-based predictions. It really depends on the specific metric used to evaluate predictions.</p><p>In fact, some empirical results suggest that the algorithms that can benefit the more from calibrating predicted probabilities include SVMs, bagged decision trees, and random forests.</p><blockquote><strong>[…] after calibration the best methods are boosted trees, random forests and SVMs</strong></blockquote><p>- <a href="https://www.cs.cornell.edu/~alexn/papers/calibration.icml05.crc.rev3.pdf">Predicting Good Probabilities With Supervised Learning</a>, 2005.</p><h3>3. How to Calibrate Probabilities in Python</h3><p>The scikit-learn machine learning library allows you to both diagnose the probability calibration of a classifier and calibrate a classifier that can predict probabilities.</p><h4>Diagnose Calibration</h4><p>You can diagnose the calibration of a classifier by creating a reliability diagram of the actual probabilities versus the predicted probabilities on a test set.</p><p>In scikit-learn, this is called a calibration curve.</p><p>This can be implemented by first calculating the <a href="http://scikit-learn.org/stable/modules/generated/sklearn.calibration.calibration_curve.html">calibration_curve() function</a>. This function takes the true class values for a dataset and the predicted probabilities for the main class (class=1). The function returns the true probabilities for each bin and the predicted probabilities for each bin. The number of bins can be specified via the <em>n_bins</em> argument and default to 5.</p><p>For example, below is a code snippet showing the API usage:</p><h4>Calibrate Classifier</h4><p>A classifier can be calibrated in scikit-learn using the <a href="http://scikit-learn.org/stable/modules/generated/sklearn.calibration.CalibratedClassifierCV.html">CalibratedClassifierCV</a> class.</p><p>There are two ways to use this class: prefit and cross-validation.</p><p>You can fit a model on a training dataset and calibrate this prefit model using a hold out validation dataset.</p><p>For example, below is a code snippet showing the API usage:</p><p>Alternately, the CalibratedClassifierCV can fit multiple copies of the model using k-fold cross-validation and calibrate the probabilities predicted by these models using the hold out set. Predictions are made using each of the trained models.</p><p>For example, below is a code snippet showing the API usage:</p><p>The CalibratedClassifierCV class supports two types of probability calibration; specifically, the parametric ‘ <em>sigmoid</em>’ method (Platt’s method) and the nonparametric ‘ <em>isotonic</em>’ method which can be specified via the ‘ <em>method</em> ‘ argument.</p><h3>4. Worked Example of Calibrating SVM Probabilities</h3><p>We can make the discussion of calibration concrete with some worked examples.</p><p>In these examples, we will fit a support vector machine (SVM) to a noisy binary classification problem and use the model to predict probabilities, then review the calibration using a reliability diagram and calibrate the classifier and review the result.</p><p>SVM is a good candidate model to calibrate because it does not natively predict probabilities, meaning the probabilities are often uncalibrated.</p><p><strong>A note on SVM</strong>: probabilities can be predicted by calling the <em>decision_function()</em> function on the fit model instead of the usual <em>predict_proba()</em> function. The probabilities are not normalized, but can be normalized when calling the <em>calibration_curve()</em> function by setting the ‘ <em>normalize</em>’ argument to ‘ <em>True</em> ‘.</p><p>The example below fits an SVM model on the test problem, predicted probabilities, and plots the calibration of the probabilities as a reliability diagram,</p><p>Running the example creates a reliability diagram showing the calibration of the SVMs predicted probabilities (solid line) compared to a perfectly calibrated model along the diagonal of the plot (dashed line.)</p><p>We can see the expected S-shaped curve of a conservative forecast.</p><p>We can update the example to fit the SVM via the CalibratedClassifierCV class using 5-fold cross-validation, using the holdout sets to calibrate the predicted probabilities.</p><p>The complete example is listed below.</p><p>Running the example creates a reliability diagram for the calibrated probabilities.</p><p>The shape of the calibrated probabilities is different, hugging the diagonal line much better, although still under-forecasting in the upper quadrant.</p><p>Visually, the plot suggests a better calibrated model.</p><p>We can make the contrast between the two models more obvious by including both reliability diagrams on the same plot.</p><p>The complete example is listed below.</p><p>Running the example creates a single reliability diagram showing both the calibrated (orange) and uncalibrated (blue) probabilities.</p><p>It is not really an apples-to-apples comparison as the predictions made by the calibrated model are in fact a combination of five submodels.</p><p>Nevertheless, we do see a marked difference in the reliability of the calibrated probabilities (very likely caused by the calibration process).</p><h3>Further Reading</h3><p>This section provides more resources on the topic if you are looking to go deeper.</p><h3>Summary</h3><p>In this tutorial, you discovered the importance of calibrating predicted probabilities and how to diagnose and improve the calibration of models used for probabilistic classification.</p><p>Specifically, you learned:</p><ul><li>Nonlinear machine learning algorithms often predict uncalibrated class probabilities.</li><li>Reliability diagrams can be used to diagnose the calibration of a model, and methods can be used to better calibrate predictions for a problem.</li><li>How to develop reliability diagrams and calibrate classification models in Python with scikit-learn.</li></ul><p><em>Originally published at </em><a href="https://machinelearningmastery.com/calibrated-classification-model-in-scikit-learn/"><em>https://machinelearningmastery.com</em></a><em> on September 2, 2018.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7857471902b4" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[自然言語処理の前処理・素性いろいろ — Debug me]]></title>
            <link>https://dinhthang.medium.com/%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86%E3%81%AE%E5%89%8D%E5%87%A6%E7%90%86-%E7%B4%A0%E6%80%A7%E3%81%84%E3%82%8D%E3%81%84%E3%82%8D-debug-me-9226fdfbb89?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/9226fdfbb89</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Tue, 29 May 2018 03:00:00 GMT</pubDate>
            <atom:updated>2020-09-10T15:16:00.018Z</atom:updated>
            <content:encoded><![CDATA[<h3>自然言語処理の前処理・素性いろいろ — Debug me</h3><p>ちゃお・・・†</p><p>舞い降り・・・†</p><p>先日、前処理大全という本を読んで自分なりに何か書きたいなと思ったので、今回は 自然言語処理の前処理とそのついでに素性の作り方を <a href="http://d.hatena.ne.jp/keyword/Python">Python</a> コードとともに列挙したいと思います。必ずしも全部やる必要はないので目的に合わせて適宜使ってください。</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/127/0*bb-9qlEEN3bXdXbl.jpg" /></figure><h3>余分な改行やスペースなどを除去</h3><h3>アルファベットの小文字化</h3><pre>text = text.lower()</pre><h3>正規化 (半角/全角変換などなど)</h3><p><a href="https://github.com/ikegami-yukino/neologdn">GitHub — ikegami-yukino/neologdn: Japanese text normalizer for mecab-neologd</a></p><pre>import MeCab mecab_wakati = MeCab.Tagger(&#39;-Owakati&#39;) words = mecab_wakati.parse(text).strip().split()</pre><h3>SentencePiece</h3><p><a href="https://github.com/google/sentencepiece/blob/master/python/README.md">sentencepiece/README.md at master · google/sentencepiece · GitHub</a></p><h3>NLTK</h3><h3>絵文字の除去</h3><p>Slackなどのテキスト処理用です。</p><pre>&gt;&gt; import emoji &gt;&gt; print(emoji.emojize(&#39;Python is :thumbs_up:&#39;)) Python is 👍 &gt;&gt; print(emoji.emojize(&#39;Python is :thumbsup:&#39;, use_aliases=True)) Python is 👍 &gt;&gt; print(emoji.demojize(&#39;Python is 👍&#39;)) Python is :thumbs_up:</pre><p>from <a href="https://pypi.org/project/emoji/">emoji · PyPI</a></p><h3>短縮表現を元に戻す</h3><p>don’t を do not に、won’t をwill not みたいにする処理。</p><p><a href="https://twitter.com/takeda25/status/1001348863691603969">Hiroshi Manabe on Twitter: “こんな感じでどう？ https://t.co/eXj35AOPdl... “</a></p><h3>HTMLタグの除去</h3><pre>import nltk raw = nltk.clean_html(html)</pre><h3>日本語</h3><p><a href="http://svn.sourceforge.jp/svnroot/slothlib/CSharp/Version1/SlothLib/NLP/Filter/StopWord/word/Japanese.txt">SlothLib ストップワードリスト</a>などを使って ストップワード を除外する</p><h3>英語</h3><pre>from nltk.corpus <br>import stopwords <br>stop_words = frozenset(stopwords.words(&#39;english&#39;)) <br>words = list(filter(lambda x: x in stop_words, words))</pre><h3>特定の品詞だけを抽出</h3><h3>Stemming</h3><pre>from nltk.stem.porter import PorterStemmer <br>stemmer = PorterStemmer() <br>words = list(map(stemmer.stem, words))</pre><h3>Lemmatization</h3><h3>英語</h3><pre>from nltk.stem.wordnet import WordNetLemmatizer <br>wnl = WordNetLemmatizer() <br>words = list(map(wnl.lemmatize, words))</pre><h3>日本語</h3><p>以下は英語の <a href="http://d.hatena.ne.jp/keyword/typo">typo</a> を直す処理です</p><pre>import pytypo <br>words = list(map(pytypo.correct, words))</pre><h3>&lt;BOS&gt;や&lt;EOS&gt;をつける</h3><p>文の始まりを表すBOS (Beginning of Sentence) と文の終わりを表すEOS (End of Sentence) をつける</p><h3>単語のID化</h3><pre>from collections import defaultdict <br>word_to_id = defaultdict(lambda: len(word_to_id))</pre><p>sklearnなどでやってくれるので自前で <a href="http://d.hatena.ne.jp/keyword/n-gram">n-gram</a> 化の処理を書くことは少ないです</p><h3>Bag-of-Words</h3><pre>from sklearn.feature_extraction.text <br>import CountVectorizer <br>vectorizer = CountVectorizer() <br>corpus = [ &#39;This is the first document.&#39;, &#39;This is the second second document.&#39;, &#39;And the third one.&#39;, &#39;Is this the first document?&#39;, ] <br>X = vectorizer.fit_transform(corpus)</pre><p><a href="http://scikit-learn.org/stable/modules/feature_extraction.html">6.2. Feature extraction — scikit-learn 0.23.0 documentation</a></p><h3>TF-IDF</h3><pre>from sklearn.feature_extraction.text import TfidfVectorizer vectorizer = TfidfVectorizer() <br>X = vectorizer.fit_transform(corpus)</pre><p><a href="http://scikit-learn.org/stable/modules/feature_extraction.html">6.2. Feature extraction — scikit-learn 0.23.0 documentation</a></p><h3>絵文字の有無</h3><pre>import emoji <br>ALL_EMOJI = set(emoji.EMOJI_UNICODE.values()) <br>def has_emoji(text): <br>   return any(x in text for x in ALL_EMOJI)</pre><h3>パディング</h3><p>固定長の行列に可変長データを入れる処理</p><pre>from keras.preprocessing import sequence <br>X = sequence.pad_sequences(X, maxlen=MAX_LEN)</pre><h3>単語の分散表現</h3><h3>word2vec</h3><pre>import os <br>from gensim.models.word2vec import Word2Vec, PathLineSentences sentences = PathLineSentences(os.path.join(os.getcwd(), &#39;corpus&#39;)) model = Word2Vec(sentences, size=100, window=5, min_count=5, workers=4) model.wv[&#39;computer&#39;]</pre><p><a href="https://radimrehurek.com/gensim/models/word2vec.html">gensim: models.word2vec — Word2vec embeddings</a></p><h3>FastText</h3><pre>from gensim.models import FastText <br>sentences = [[&#39;cat&#39;, &#39;say&#39;, &#39;meow&#39;], [&#39;dog&#39;, &#39;say&#39;, &#39;woof&#39;]] <br>model = FastText(sentences) <br>say_vector = model.wv[&#39;say&#39;] <br>of_vector = model.wv[&#39;of&#39;]</pre><p><a href="https://radimrehurek.com/gensim/models/fasttext.html">gensim: models.fasttext — FastText model</a></p><h3>文書の分散表現</h3><p><a href="https://radimrehurek.com/gensim/models/doc2vec.html">gensim: models.doc2vec — Doc2vec paragraph embeddings</a></p><h3>極大部分文字列</h3><pre>import pykwic <br>kwic = pykwic.EKwic() <br>kwic.add_line(&#39;うなぎうなうなうなぎなう&#39;) <br>kwic.add_line(&#39;うらにはにわにわとりがいる&#39;) <br>kwic.build() <br>maxsubsts = [] <br>for maxsubst in kwic.maxmal_substring():     maxsubsts.append(maxsubst[0])</pre><p><a href="http://nlpyutori.g.hatena.ne.jp/yaruki_nil/20130516/1368693361">はてなグループの終了日を2020年1月31日(金)に決定しました — はてなの告知</a></p><h3>文字種による抽象化</h3><p><a href="http://chasen.org/~taku/software/TinySegmenter/">TinySegmenter</a> などで使われている素性です</p><h3>語の接尾</h3><p>固有表現抽出や、名前から性別を推定するタスクなどに用いられることがあります</p><p><a href="http://d.hatena.ne.jp/keyword/WordNet">WordNet</a>などの オントロジー を使って同義語に置き換えたり上位概念に抽象化したりする</p><p><a href="http://www.nltk.org/howto/wordnet.html">WordNet Interface</a></p><h3>分散表現での類似語による言い換え</h3><pre>from gensim.models.word2vec import Word2Vec model = Word2Vec.load(&#39;w2v.model&#39;) word = &#39;雨&#39; sentence = &#39;雨に唄えば&#39; sentences = [] for (similar_word, score) in model.wv.most_similar([model.wv[word]], [], 5): if word == similar_word: continue sentences.append(sentence.replace(word, similar_word))</pre><p><a href="https://radimrehurek.com/gensim/models/word2vec.html">gensim: models.word2vec — Word2vec embeddings</a></p><h3>トピックモデル・クラスタリングによる文書の抽象化</h3><p><a href="http://d.hatena.ne.jp/keyword/NLP">NLP</a> ではないタスクですが、こんな素性を使うことがありました</p><h3>Latent Dirichlet Allocation</h3><pre>import joblib lda = joblib.load(&#39;lda.model&#39;) lda.transform(X).argmax(axis=1)</pre><p><a href="http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.LatentDirichletAllocation.html">sklearn.decomposition.LatentDirichletAllocation — scikit-learn 0.23.0 documentation</a></p><h3>KMeans</h3><pre>import joblib kmeans = joblib.load(&#39;kmeans.model&#39;) kmeans.predict(X)</pre><p><a href="http://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html">sklearn.cluster.KMeans — scikit-learn 0.23.0 documentation</a></p><h3>文字列同士の距離</h3><h3>word2vec</h3><pre>from gensim.models.word2vec import Word2Vec model = Word2Vec.load(&#39;w2v.model&#39;) model.wv.similarity(word1, word2)</pre><p><a href="https://radimrehurek.com/gensim/models/word2vec.html">gensim: models.word2vec — Word2vec embeddings</a></p><h3>FastText</h3><pre>from gensim.models import FastText model = FastText.load(&#39;fasttext.model&#39;) model.wv.similarity(word1, word2)</pre><p><a href="https://radimrehurek.com/gensim/models/fasttext.html">gensim: models.fasttext — FastText model</a></p><h3>レーベンシュタイン編集距離やハミング距離など</h3><p><a href="https://github.com/doukremt/distance">GitHub — doukremt/distance: Levenshtein and Hamming distance computation</a></p><h3>発音に着目した文字列間の距離</h3><pre>import fuzzy soundex = fuzzy.Soundex(4) soundex(&#39;fuzzy&#39;) dmeta = fuzzy.DMetaphone() dmeta(&#39;fuzzy&#39;) fuzzy.nysiis(&#39;fuzzy&#39;)</pre><h3>文書同士の距離</h3><h3>Doc2Vec</h3><pre>from gensim.models.doc2vec import Doc2Vec model = Doc2Vec.load(&#39;doc2vec.model&#39;) model.docvecs.similarity(doc1, doc2) model.docvecs.similarity_unseen_docs(model, doc1, doc2)</pre><p><a href="https://radimrehurek.com/gensim/models/doc2vec.html">gensim: models.doc2vec — Doc2vec paragraph embeddings</a></p><h3>Normalized compression distance</h3><p><a href="http://techtipshoge.blogspot.jp/2015/07/normalized-compression.html">Tech Tips: Normalized compression distanceとNormalized Google distance</a></p><h3>Lexical Density</h3><p><a href="http://yukinoi.hatenablog.com/entry/2015/12/30/023006">日本語テキストのLexical density測って遊んでみた — Debug me</a></p><p><em>Originally published at </em><a href="https://yukinoi.hatenablog.com/entry/2018/05/29/120000"><em>https://yukinoi.hatenablog.com</em></a><em> on May 29, 2018.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9226fdfbb89" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Git memo]]></title>
            <link>https://dinhthang.medium.com/git-memo-e89b98f2fba7?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/e89b98f2fba7</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Wed, 14 Mar 2018 14:01:19 GMT</pubDate>
            <atom:updated>2018-03-14T14:01:19.337Z</atom:updated>
            <content:encoded><![CDATA[<p>.gitignore file will help you ignore some specified file that you don’t want to commit</p><p>command that will update the commit</p><p>command that will delete the file from work tree</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e89b98f2fba7" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[指名キーワードを配信すべき4つのメリットと2つの活用術 | 運用型広告研究所]]></title>
            <link>https://dinhthang.medium.com/%E6%8C%87%E5%90%8D%E3%82%AD%E3%83%BC%E3%83%AF%E3%83%BC%E3%83%89%E3%82%92%E9%85%8D%E4%BF%A1%E3%81%99%E3%81%B9%E3%81%8D4%E3%81%A4%E3%81%AE%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88%E3%81%A82%E3%81%A4%E3%81%AE%E6%B4%BB%E7%94%A8%E8%A1%93-%E9%81%8B%E7%94%A8%E5%9E%8B%E5%BA%83%E5%91%8A%E7%A0%94%E7%A9%B6%E6%89%80-2d7f0e6a6c00?source=rss-b3e2d88b9939------2</link>
            <guid isPermaLink="false">https://medium.com/p/2d7f0e6a6c00</guid>
            <dc:creator><![CDATA[Thang Dinh]]></dc:creator>
            <pubDate>Fri, 09 Feb 2018 17:47:23 GMT</pubDate>
            <atom:updated>2020-04-13T03:52:17.864Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/789/0*oKBuhB2h8U_2pG_8.jpg" /></figure><p>リスティング広告を運用しているクライアントからよく質問される<br> 「わざわざ広告費をかけて指名キーワードを配信する理由はありますか？」</p><p>みなさんはどう答えていますか？</p><p>指名キーワードの4つのメリット＆デメリット<br> 中～上級者向けの2つの活用術事例を紹介します。</p><p>指名キーワードの向き合い方について掘り下げてみましょう。</p><p>自社のサイト名・サービス名・商品名・会社名がいわゆる指名キーワードと呼ばれるものになります。</p><p>指名キーワードは、ユーザーニーズが顕在化されているため、一般キーワードと比べると下記のような特徴があります。</p><ul><li>クリック単価が安い</li><li>コンバージョン数が多い</li><li>クリック率（CTR）が高い</li><li>コンバージョン率（CVR）が高い</li><li>コンバージョン単価（CPA）が低い</li><li>品質スコアが高く評価されやすい</li><li>広告表示オプションが表示されやすい</li><li>掲載順位上位を取りやすい</li></ul><p>一言でまとめると指名キーワードは<br> 一般キーワードと比べてパフォーマンス（性能）が良いキーワード と言えるでしょう。</p><h3>指名キーワードの4つのメリット</h3><h3>【メリット1】既存顧客の取りこぼしを防ぐ</h3><p>下記の3つの事例では、指名キーワードで検索したユーザーが自社サイトに辿り着きにくいため、ユーザーの流入が阻害されやすい状況にあります。<br> 取りこぼしを防ぐ意味で、指名キーワードは配信すべきでしょう。</p><p>◎機会損失が発生している３つの事例</p><p>1.指名キーワードの広告枠に競合の広告が配信されている<br> →自社の既存顧客が競合に流出するリスク</p><p>2.自社サイトのオーガニック検索順位が1位でない<br> →指名検索なのに自社サイトに辿り着けないリスク</p><p>3.指名キーワードが表記ゆれキーワードで頻繁に検索される形跡がある<br> →表記ゆれキーワードで検索した場合、自社サイトに辿り着けないリスク</p><h3>【メリット2】ユーザビリティが向上する</h3><p>検索順位1位を確保していても、サービスや製品の多さから、ユーザーが目的のページに辿り着けていない場合があります。<br> そこで広告配信で利用できる広告表示オプションを活用することでユーザーが求めている目的のページに簡単にアクセスすることが可能になります。</p><p>大手パソコンメーカーDELLの例を見てみましょう。<br> サイトリンク表示オプションで「個人と法人」「ノートPCとデスクトップPC」でリンク先URLが分かれています。<br> 目的のページにスムーズに辿り着けます。</p><h3>【メリット3】キャンペーン情報を伝える</h3><p>セールやキャンペーンなど既存顧客に対しても伝えたい情報がある場合、広告文や広告表示オプションのテキストにて記載すると良いでしょう。</p><p>設定一つで伝えたい情報をコントロールできるのは非常に便利です。<br> キャンペーン情報を伝える意図で期間中のみ指名キーワードを配信し、コンバージョン率を上げるのも良いでしょう。</p><h3>【メリット4】ブランド認知や好感度を高める</h3><p>特に検索順位1位が取れている場合、指名キーワードを配信することは無意味だと考えられがちです。<br> そのような状況下でも広告を配信することで好感、概要理解、購入意向が高まるブランド認知、形成効果はあります。<br> ※詳細は下記URLを参照</p><p>目先のコンバージョン数だけではなく、ブランディングや長期的目標を見据えて判断しましょう。</p><p><a href="http://adwords-ja.blogspot.jp/2009/06/blog-post_30.html">http://adwords-ja.blogspot.jp/2009/06/blog-post_30.html</a><br> Google AdWords 公式ブログより（検索日2016年12月20日）</p><h3>指名キーワードの4つのデメリット</h3><h3>【デメリット1】無駄なクリックコストが発生してしまう</h3><p>自社社員による間違いクリックも少なからず発生してしまいます。<br> 自社社員によるクリックは自社IPを除外設定に入れてリスクを軽減をする手もありますが、<br> こういった明らかに無駄なクリックであっても、厳密な切り分けが難しいのが現状です。</p><h3>【デメリット2】ネガティブな理由で指名キーワードからの流入が増加する</h3><p>ニュースやテレビ番組で取り上げられると瞬間的に指名キーワードの検索数が増加します。<br> 事件やトラブルが原因でニュースで取り上げられてしまった場合、多くはビジネスの目標に繋がることはありません。注意が必要です。</p><p>日々のニュースに目を配り、アカウントの異変をいち早く察知して、一時的に配信を停止するなど迅速かつ適切な対応が非常に重要です。</p><h3>【デメリット3】指名キーワードのコンバージョン数が多く成果の判断が難しい</h3><p>仮数値を設定して、よく見かけるモデルケースを見てみましょう。</p><p>このように指名キーワードからのコンバージョン数が多い場合、指名＆一般キーワードの合計CPAは1,818円です。</p><p>しかし一般キーワードはCPA10,000円と高く、ここに課題があることを見落としがちです。<br> そこで指名キーワードと一般キーワードそれぞれに役割を持たせて運用して</p><p>指名キーワードと一般キーワードはそれぞれ分けて目標設定する必要があります。</p><p>例えば、指名キーワードはインプレッション数やクリック数、一般キーワードはコンバージョン数やコンバージョン単価で目標設定する。<br> といった個別の目標設定が重要です。</p><h3>【デメリット4】指名キーワードが「一意でない」為、間違いクリックが発生してしまう。</h3><p>指名キーワードが必ずしも一意である（ユニークである）とは限りません。<br> 同名の会社が300社以上存在すると言われる「佐藤工務店」を例に挙げてみましょう。</p><p>同名他社が非常に多いため、ユーザーが「佐藤工務店」で検索していても、必ずしも自社の「佐藤工務店」を探しているとは限りません。</p><p>同名他社との間違いクリックを完全に避けることは難しいでしょう。<br> いくつか同名他社と混同されるリスクを軽減させる対策例を紹介しましょう。</p><p>◎広告文で所在地を記載して絞り込む<br> →広告文で「○○県△△市の佐藤工務店」と会社の所在地を明記する<br> →住所表示オプションを設定して住所を記載する</p><p>◎エリアターゲティングを活用して絞り込む<br> →キャンペーンの配信ターゲティング設定で○○県にのみ配信をする<br> →自社の住所を中心に半径10キロメートルにのみ配信をする</p><p>◎除外キーワードで絞り込む<br> →検索クエリから自社が取り扱っていないサービスなどのキーワードを除外する<br> →検索クエリから地名キーワードを除外する</p><p>◎検索広告向けリマーケティングを活用する<br> →タグマネージャー等で滞在時間が長いユーザーや、直帰ユーザーを除いたユーザーリストを作成して、確度が高いユーザーへのリマーケティングを強化する。<br> ※リマーケティングリストから見込み顧客以外を除外する。</p><h3>指名キーワードの活用事例</h3><p>ここまで指名キーワードを配信することのメリット、デメリットをまとめました。<br> 更に発展させて、成果に繋がる指名キーワードの活用事例を紹介します。<br> ここから先の内容は、中～上級者向けの最新の内容になります。</p><h3>【活用事例1】類似ユーザーリストに活用する</h3><p>類似ユーザーリストは、元となるユーザーのリスト内の共通の興味関心や特徴を元に、類似する見込み顧客のユーザーリストを自動生成する仕組みです。</p><p>指名キーワードは類似ユーザーリスト機能と相性が非常に良いです。</p><p>というのも、指名キーワードからコンバージョンしたユーザーを元に作成された類似ユーザーリストは、以下の理由から通常の類似ユーザーリストと比べて、より高いパフォーマンスを発揮することが期待されます。</p><ul><li>元となるサンプル数（コンバージョン数）が多くなるため精度が高い</li><li>顕在層ユーザーの関心事や特徴を元にリスト作成できる</li></ul><p>さらに指名キーワードからのコンバージョン数獲得が多く狙える場合<br> 【コンバージョンに至ったユーザーを元にした類似ユーザーリスト】を早い段階で容易に生成できるのが最大のメリットです。</p><h3>【活用事例2】DFSAと組み合わせて戦略的な運用を行う</h3><p>AdWordsのDFSA（Demographic for Search Ads）を活用することで、検索広告におけるユーザー属性（年齢、性別）のデータを抽出することが可能です。</p><p>指名キーワードにおけるDFSAデータは、指名キーワードであるが故にロイヤル顧客のデータが垣間見ることが出来るため非常に価値の高い情報です。</p><p>仮に、指名キーワードのDFSAからコンバージョン数が多いユーザー属性が【30代の女性】と判明した場合は、例えば以下のような施策に横展開することが可能です。<br> ターゲットへのアプローチの幅が広がります。</p><ul><li>30代女性に響く広告文を意識して作成する</li><li>30代女性への配信を強化する（検索広告やディスプレイ広告全般）</li><li>SNS広告（Twitter広告、Facebook広告）などの入札戦略に活かす</li><li>ランディングぺージ制作時のペルソナ作成に役立てる</li></ul><p>またコンバージョン数の比率が【30代の女性】から【40代の女性】にシフトしたケースでは、ロイヤル顧客の年齢層が変化した可能性が考えられます。<br> リスティング広告のデータを土台にして、商品開発やサービス見直し、プロモーションなど様々な改善に繋げることが可能です。</p><p>参考：DFSAとは Google Inside AdWords （検索日2016年12月20日）<br><a href="https://adwords.googleblog.com/2016/09/search-audience-ad-innovations-see.html">http://adwords-ja.blogspot.jp/2009/06/blog-post_30.html</a></p><p>「広告費をかけて指名キーワードを配信する理由はありますか？」という疑問に対して、一概に指名キーワードを配信すべきかどうか断言することは難しいです。<br> そこで重要なことは、何を目的として指名キーワードを配信したいのか？どう活かしていくのか？を明確にして考え抜くことだと思います。<br> 目的を具体化して1件でも多くの成果を上げる為に、日々様々なアプローチにチャレンジしていきましょう。</p><p><em>Originally published at </em><a href="https://listing.gaprise.com/blog/nominated-keywords/"><em>https://listing.gaprise.com</em></a><em> on February 9, 2018.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2d7f0e6a6c00" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>