この章では、ドメインの専門家が最初に全体を設計する方法とは別の、ボトムアップ・モデリング(bottom-up modeling)を見ます。講演者は、顧客の反応や活動を観察し、そこに現れるエンティティ(entity)と関係(relationship)を見つけて、オントロジーやグラフに加える方法を説明します。その後で、すでにある分類体系やオントロジーを再利用することを勧めます。
In this chapter, we look at bottom-up modeling, an approach different from one in which domain experts design the whole model first. The speaker explains how to observe customer reactions and activities, identify the entities and relationships that appear there, and add them to an ontology or graph. He then recommends reusing taxonomies and ontologies that already exist.
ボトムアップ・モデリングとは何か
What Is Bottom-Up Modeling?
ボトムアップでは、先に完成したモデルを決めません。まず、実際のデータ、やり取り、顧客の反応や活動を観察します。そこから、どのようなものが登場し、何と何が結び付いているかを整理します。見つかったエンティティと関係を、共有して使えるオントロジー、またはグラフに加えていきます。
In a bottom-up approach, you do not decide on a finished model first. You begin by observing actual data, interactions, and customer reactions or activities. From these observations, you organize what appears and what is connected to what. You then add the entities and relationships you find to an ontology or graph that people can share and use.
ここでいう「加える」とは、データベースに自由なメモを追加することではありません。たとえば、ある反応をドメイン上の概念として表し、その反応がどの顧客や活動と関係するかをモデル化します。こうすると、後で人やエージェントが同じ意味を参照できます。
Here, “adding” does not mean putting a free-form note into a database. For example, you model a reaction as a concept in the domain and represent how that reaction relates to a customer or an activity. This lets people and agents refer to the same meaning later.
トップダウンとの違い
The Difference from Top-Down Modeling
- トップダウン:ドメインの専門家が全体を分析し、必要なエンティティ、プロパティ、関係を決めます。上から共有モデルへ向かいます。
- ボトムアップ:実際の観察や活動から、役に立つエンティティと関係を見つけます。下から共有モデルへ向かいます。
- Top-down: Domain experts analyze the whole domain and decide on the necessary entities, properties, and relationships. It moves from above toward a shared model.
- Bottom-up: You find useful entities and relationships from actual observations or activities. It moves from below toward a shared model.
講演者は、この二つのうち一方がいつでも優れているとは述べていません。違いは、モデルを作り始める方向と、語彙のもとになる情報です。専門家の分析から始めるか、観察された活動から始めるかを分けて考えることが大切です。
The speaker does not say that one of these two methods is always better. The difference is the direction in which modeling begins and the source of the vocabulary. It is important to distinguish between starting with expert analysis and starting with observed activity.
顧客の観察をモデルに変える
Turning Customer Observations into a Model
講演で示されるボトムアップの出発点は、「顧客の反応」です。元の説明はこの反応を具体的な業界や製品に結び付けていません。したがって、ここでは特定の顧客業務を勝手に想定しないようにします。観察された反応と活動から、関係するものと結び付きを取り出す、という点が中心です。
The bottom-up starting point shown in the talk is “customer reactions.” The original explanation does not connect these reactions to a particular industry or product. Therefore, we should not invent a specific customer process here. The central idea is to extract the things and connections involved from observed reactions and activities.
例(補足):あるサービスについて顧客が反応したとします。チームは、顧客、反応、関係する活動を別々の概念として考えます。そして、「この顧客がこの反応を示した」「この反応はこの活動に関係する」のように、必要な関係をグラフで表します。単なる文章の記録を、検索や推論に使える構造へ変えるイメージです。この例は理解のための作成例であり、講演者が特定の顧客ドメインを示したという意味ではありません。
Example (supplement): Suppose a customer reacts to a service. The team considers the customer, the reaction, and the related activity as separate concepts. It then represents necessary relationships in a graph, such as “this customer showed this reaction” and “this reaction relates to this activity.” This is the idea of changing a simple written record into a structure that can support search or reasoning. This is an example created for understanding; it does not mean that the speaker specified a particular customer domain.
既存の語彙を再利用する
Reusing Existing Vocabularies
次に講演者は、分類体系(taxonomy)やオントロジーを毎回ゼロから作らないように勧めます。すでに使われている語彙には、概念の名前だけでなく、概念同士の関係を表す考え方も含まれることがあります。それを調べて使えば、共有しやすい用語を得られ、過去のモデリング作業を重複して行わずに済みます。
The speaker next recommends not creating a taxonomy or ontology from zero every time. An established vocabulary can include not only names for concepts, but also ways to represent relationships among them. By examining and using such a vocabulary, you can obtain terms that are easier to share and avoid repeating earlier modeling work.
分類体系、オントロジー、グラフは同じではない
A Taxonomy, an Ontology, and a Graph Are Not the Same
- **分類体系(taxonomy)**は、概念を分類したり、階層に並べたりするための語彙です。
- **オントロジー(ontology)**は、共有する概念化を形式的に表すモデルです。エンティティ、プロパティ、関係、そして必要なルールを扱えます。
- グラフデータは、そのモデルを使って表された実際の対象と、対象同士のつながりです。グラフデータベースは、そのデータを保存したり扱ったりする実装の一つです。
- Taxonomy: A vocabulary for classifying concepts or arranging them in a hierarchy.
- Ontology: A formal model of a shared conceptualization. It can represent entities, properties, relationships, and necessary rules.
- Graph data: The actual things and connections among things represented using such a model. A graph database is one implementation for storing and working with that data.
これは用語を区別するための補足です。講演者は分類体系、オントロジー、グラフを関連付けて話しますが、それぞれの形式的な違いを詳しく定義してはいません。したがって、名前が付いた語彙をそのまま完成したアプリケーション用グラフだと考えないでください。既存の語彙は、独自のドメインモデルを作るための出発点になり得ます。
This is a supplement to distinguish the terms. The speaker discusses taxonomies, ontologies, and graphs as related ideas, but does not define their formal differences in detail. Therefore, do not assume that a named vocabulary is already a complete application-specific graph. An existing vocabulary can be a starting point for building a domain model of your own.
講演で挙げられた既存語彙
Existing Vocabularies Named in the Talk
講演者は、再利用できる例として次の名前を挙げます。
The speaker names the following as examples that can be reused.
- schema.org:既存の語彙の例として挙げられています。
- FOAF:ソーシャルネットワークに関係する語彙の例です。
- Dublin Core:研究論文や本を説明するための語彙の例です。
- DBpedia:講演者が、Wikipediaのグラフに基づく検索・照会と結び付けて説明するオントロジーの例です。
- schema.org: Named as an example of an existing vocabulary.
- FOAF: An example of a vocabulary related to social networks.
- Dublin Core: An example of a vocabulary for describing research papers and books.
- DBpedia: An example of an ontology that the speaker explains in connection with graph-based lookup over Wikipedia.
WikipediaとDBpediaについての最後の説明は、講演者が示した例として受け取ります。今回の資料には、それを詳しく確認したり、技術的な仕組みを補ったりする情報はありません。ここで重要なのは、すでに整理された知識の語彙やグラフを利用できる、という発想です。
We should treat the final explanation about Wikipedia and DBpedia as an example given by the speaker. The supplied material does not provide information to verify it in detail or add to its technical mechanism. The important idea here is that an already organized vocabulary or graph of knowledge can be used.
エージェントとのつながり
The Connection to Agents
既存の語彙を再利用すると、エージェントに渡すドメインの文脈を、共有された形で用意できます。エージェントが顧客や活動について出力したとき、その出力を同じ語彙とグラフの考え方で確認できます。つまり、ボトムアップで得た観察結果と、既存語彙から借りた意味の枠組みが、後の検証の土台になります。
Reusing an existing vocabulary provides a shared way to prepare the domain context given to an agent. When an agent produces an output about a customer or an activity, that output can be checked using the same vocabulary and graph concepts. In this way, observations gathered bottom-up and a framework of meaning borrowed from existing vocabularies become the basis for later validation.
ただし、既存語彙を使えば自動的に正しいモデルになるわけではありません。自分のドメインで必要な概念や関係を表せるかを確認する必要があります。また、この章の説明だけでは、どの語彙をどのように組み合わせるかまでは決まりません。講演者の提案は、重複を避けながら、すでにある共有の表現を活用することです。
However, using an existing vocabulary does not automatically make the model correct. You must check whether it can represent the concepts and relationships your domain needs. This chapter does not determine how particular vocabularies should be combined. The speaker’s proposal is to use existing shared representations while avoiding duplicated work.
This chapter can be organized as follows.
- 顧客の反応や活動を観察します。
- そこに現れるエンティティと関係を見つけます。
- それらをオントロジーやグラフに、意味のある構造として加えます。
- schema.org、FOAF、Dublin Core、DBpediaのような既存の語彙を調べ、ゼロからの重複作業を減らします。
- その共有された語彙とグラフを、後でエージェントの出力を確認するドメインの文脈として使います。
- Observe customer reactions and activities.
- Find the entities and relationships that appear in them.
- Add them to an ontology or graph as meaningful structure.
- Examine existing vocabularies such as schema.org, FOAF, Dublin Core, and DBpedia to reduce duplicated work from starting at zero.
- Later, use that shared vocabulary and graph as domain context for checking an agent’s output.
このボトムアップの方法は、現実の観察からモデルを育てる方法です。一方、トップダウンの方法は、専門家の分析からモデルを始めます。講演者は両者を対立させるのではなく、エージェントが扱う世界を明確にするための二つの入り口として提示しています。
This bottom-up method grows a model from observations of reality. A top-down method, by contrast, begins with expert analysis. The speaker does not present them as opposites, but as two ways to begin making the world an agent works with explicit.