論文 / 著書情報
Article / Book Information
Title

A File Recommendation Method Based on Task Workflow Patterns
Using File-access Logs

Author

Qiang Song, Takayuki Kawabata, Fumiaki Itoh, Yousuke Watanabe,Haruo Yokota

Journal/Book name

Lecture notes in computer science, LNCS, 8056, , pp. 410-417

発行日 / Issue date2013, 8

DOI

http://dx.doi.org/10.1007/978-3-642-40173-2̲33

権利情報 / Copyright

The original publication is available at www.springerlink.com.

Note

このファイルは著者（最終）版です。
This file is author (final) version.

Powered by T2R2 (Science Tokyo Research Repository)

A File Recommendation Method Based on Task
Workflow Patterns Using File-access Logs
Qiang Song1 , Takayuki Kawabata2 , Fumiaki Itoh2 , Yousuke Watanabe1 , andHaruo Yokota1
1

Tokyo Institute of Technology
2
Canon Inc.
{soukyou,watanabe}@de.cs.titech.ac.jp,{kawabata.takayuki,ito.fumiaki}@canon.co.jp,yokota@cs.titech.ac.jp

Abstract. In recent years, oﬃce workers spend much time and eﬀort
searching for the documents required for their jobs. To reduce thesecosts, we propose a new method for recommending ﬁles and operations
on them. Existing technologies for recommendation, such as collaborativeﬁltering, suﬀer from two problems. First, they can only work with documents that have been accessed in the past, so that they cannot recommend when only newly generated documents are inputted. Second, theycannot easily handle sequences involving similar or diﬀerently orderedelements because of the strict matching used in the access sequences. To
solve these problems, such minor variations should be ignored. In our
proposed method, we introduce the concepts of abstract ﬁles as groupsof similar ﬁles used for a similar purpose, abstract tasks as groups of similar tasks, and frequent abstract workﬂows grouped from similar workﬂows, which are sequences of abstract tasks. In experiments using realﬁle-access logs, we conﬁrmed that our proposed method could extract
workﬂow patterns with longer sequences and higher support-count values, which are more suitable as recommendations.
Keywords: File recommendation, File abstraction, Abstract task, Abstract workﬂow, Log analysis

1

Introduction

The numbers of ﬁles in ﬁle systems have grown dramatically. As a consequenceof this increase, oﬃce workers now spend much time and eﬀort searching for
ﬁles that include documents and data required for their business [1]. It is therefore important to ﬁnd methods for reducing the time wasted in ineﬀective andunproductive searching. Also, in oﬃce, the searching targets are not limited to
documents, the abstract working processes which we call them abstract workﬂows in this paper are also being searched by users.
Collaborative ﬁltering is well known as an algorithm for making recommendations. However, it only works with ﬁles accessed in the past. Recommendation
systems based on this algorithm do not work well on newly generated ﬁles. Moreover, collaborative ﬁltering does not handle well sequences that include elements

2

Q. Song, T. Kawabata, F. Itoh, Y. Watanabe, and H. Yokota

Fig. 1. Our Challenges in File Recommendationthat are similar but not identical, or that have a diﬀerent ordering of elements,
because the algorithm uses strict matching of elements in access sequences.
In this paper, we propose a method for recommending ﬁles and types ofoperations on them (e.g. open, close), that supports creative business processes
as an operational tool. We consider the abstract workﬂows for a user. These are
diﬀerent from the ordinary workﬂows described by users, being generated bymining the ﬁle-access histories of the users. To obtain good recommendations,
it is important to ignore small variations in the matching process. In this paper,
we introduce for the ﬁrst time the concepts of abstract ﬁles, abstract tasks,
and frequent abstract workﬂows. The diﬀerences between collaborative ﬁlteringand our proposed method in this paper are that we add the concept of tasks
to weaken the constraint of strict matching for access sequences and we apply
abstraction to ﬁles, tasks, and workﬂows to handle newly generated ﬁles. The
evaluation results indicate that our method extracts workﬂow patterns withlonger sequences and higher support-count values (occurrence times of workﬂow
patterns), which are more suitable as recommendations. Moreover, the results
demonstrate that using the concepts of abstract tasks and abstract workﬂows
improves the quality of the recommendations.
As a previous work, we compared several ﬁle similarity calculation methods[5]. In this paper, we focus on how to abstract tasks and workﬂows for recommendation.

2

Goal and Approach

Figure 1 illustrates an example of the type of workﬂow pattern we are investigating. We assume that user C creates a new ﬁle. The goal is to predict the ﬁlesrequired, for recommendation to user C.
In our approach, we search for similar patterns of operation in logs andmake recommendations based on them. For example, in the two patterns of user
A and B, diﬀerent ﬁles were accessed in diﬀerent orders, but it is consideredthat users A and B were doing essentially the same work. Therefore, we expectA File Recommendation Method Based on Task Workﬂow Patterns

3

to extract an abstract pattern of work. Using this abstract workﬂow pattern,
it becomes possible to recommend ﬁles such as “Example of an estimate” or“product information ﬁle” to user C.
While users access ﬁles located on a ﬁle server, ﬁle-access histories are stored
in a log ﬁle. Each record in the log ﬁle includes timestamp, user, operationand ﬁlename information. Our method extracts abstract tasks and workﬂows
from the log ﬁle, and reserves them in a database. The method then monitors
the current ﬁle accesses by a user, and searches for workﬂows in the databasethat match the access patterns of that user to infer the user’s current workﬂow
pattern. Based on the inferred workﬂow, the method recommends those ﬁles,
together with operations on them.

3

Definition of Workflow Model

In general, the orders of sequences of individual operations will vary, even if
the outlines of the workﬂows are the same. To ignore such subtle diﬀerences inoperational order in similar workﬂows, we introduce the concept of an abstract
task as a group of similar combinations of ﬁle and operation, and an abstract
workﬂow as a sequence of abstract tasks.
[Task]: A task is a subsequence of records in the log ﬁle. It is the basic unit ina working process’s workﬂow. For example, from the log below, we set TGBT=3
minutes.
– Record 1: 12:00 [Open File A]– Record 2: 12:01 [Open File B]– Record 3: 12:10 [Open File C]– Record 4: 13:00 [Open File D]
Three tasks will be extracted from these four records.
– Task 1: {[Open File A], [Open File B]}– Task 2: {[Open File C]}– Task 3: {[Open File D]}[Abstract Task]: An abstract task is a set of combinations of ﬁle and operation derived by clustering similar tasks, in order to ignore small variations in
between tasks. In the above example, three abstract tasks would be derived asfollows.
– Abstract Task 1: [Open File-Cluster 1], [Open File-Cluster 2]– Abstract Task 2: [Open File-Cluster 1]– Abstract Task 3: [Open File-Cluster 3][Abstract Workﬂow]: An abstract workflow is a sequence of abstract tasks.
For the above example, we set TGBW=30 minutes and can extract two abstract
workﬂows that are sequences of the abstract tasks.
– Abstract Workﬂow 1: [Abstract Task 1] → [Abstract Task 2]– Abstract Workﬂow 2: [Abstract Task 3][Frequent Abstract Workﬂow]: Frequent abstract workflows are groupsof similar workﬂows, in which sequences of abstract tasks appear frequently.

4

4

Q. Song, T. Kawabata, F. Itoh, Y. Watanabe, and H. Yokota

Proposed method

The process ﬂow comprises two parts, namely the oﬄine and online parts.

Fig. 2. Oﬄine Part

4.1

Fig. 3. Online Part

Oﬄine Part

The aim of oﬄine part is to extract abstract tasks and frequent abstract workﬂows from ﬁle-access logs.
[Extraction of Tasks and Workﬂow]: We ﬁrst partition the log ﬁle interms of user ID. If there are no ﬁle operations by a user during an interval
longer than a certain time (TGBT for task, TGBW for workﬂow), we inferthat the previous task/workﬂow had ﬁnished before the interval and the nexttask/workﬂow has started after it. We cut out tasks by parameter TGBT (150seconds in experient) and workﬂows by parameter TGBW (1800 seconds in experient). In Figure 2, We partition the log into four tasks and two workﬂows.
[Abstraction of Tasks and Workﬂows]: To treat ﬁles with small differences as the same work, we want to cluster similar ﬁles used for the same
purposes together. Instead of simply using the contents of the ﬁles, we calculate
ﬁles’ similarity based on the copy relationship and the similarity in ﬁlenames.
Using the similarity between ﬁles, we apply agglomerative hierarchical clustering[2] to the ﬁles. Abstraction of ﬁles means replacing ﬁles, which appeared in theaccess log, with the corresponding clusters. We calculate the similarity between
tasks by using the similarity between ﬁles. The similarity between tasks is a metric representing the degree of matching of two tasks in terms of ﬁle operations.
It is large when two tasks have numerous abstract ﬁle operations in common.
Here, we use Dice’s Coeﬃcient to calculate the degree of similarity. The formulafor the similarity between T askA and T askB is
sim(T askA, T askB) =2|T askA ∩ T askB|.
|T askA| + |T askB|(1)

A File Recommendation Method Based on Task Workﬂow Patterns

5

Based on the degree of similarity between tasks, we group tasks with a highdegree of similarity together in a cluster as abstract tasks. We set two thresholds
to ﬁlter out small clusters and unnecessary items inside clusters. First, only whena cluster contains more than Minimum Number of Tasks (MNT, 2 in experiment)tasks, will it be treated as an abstract task. Second, only the ﬁles inside a cluster,which occurrences ratio in tasks is more than a Minimum Emergence Ratio(MER, 0.5 in experiment), will be included in the abstract task. After the task
abstraction, we simply replace each task in a workﬂow with the corresponding
abstract task to obtain the abstract workﬂow.
[Extraction of Frequent Abstract Workﬂows]: To remove any infrequent abstract workﬂows created, we extract those that appear frequently as
frequent abstract workﬂows. Two parameters are used, namely the Minimum
Occurrence Time (MOT, 2 in experiment) and the Minimum Sequence Length(MSL, 2 in experiment) of the workﬂow sequence.
4.2

Online Part

The aim of online part is to ﬁnd matching abstract tasks and frequent abstract
workﬂows in database while monitors user’s current operation, and then recommends ﬁles and operations on them to the user. As mentioned in Section 3, evenwhen users are doing the same type of work, diﬀerent ﬁles are usually being handled. For this reason, we abstract ﬁles being operated on currently by the user.
We then estimate the abstract task and the frequent abstract workﬂow (Figure
3).
[Abstraction of Files]: We abstract ﬁles by the method explained in Section
4.1. If the user is accessing a ﬁle that has a corresponding ﬁle-cluster, we simply
replace the being accessed ﬁle’s ﬁlename in the log by the corresponding ﬁlecluster. However, in some cases, such as newly created ﬁles, some ﬁles do not
own corresponding ﬁle-clusters. In such cases, we ﬁrst replace the ﬁle being
accessed by the most similar ﬁle that does have a corresponding ﬁle-cluster.
[Estimation of Abstract Tasks]: We estimate the current abstract task
being operated on by the user from the abstract ﬁles being accessed. We groupthe abstract ﬁles being accessed into a task, and then compare this task withtasks in the database to ﬁnd the most similar task.
[Estimation of Frequent Abstract Workﬂows]: After estimation of theabstract task, we estimate the frequent abstract workﬂow. Because there areseveral abstract workﬂows that contain the estimated abstract task, we scoreeach frequent abstract workﬂow in the database according to these three criteria.
– Degree of matching between workf low being accessed and workf low in database– Frequent occurrence score for workf low in database– Number of possible tasks in workf low in database for recommendation[Recommendation]: The aim of this step is to recommend ﬁles and operations based on the estimated abstract task and frequent abstract workﬂow. If
we know about the user’s current abstract task and frequent abstract workﬂow,
we can identify and recommend subsequent abstract tasks. However, a frequent

6

Q. Song, T. Kawabata, F. Itoh, Y. Watanabe, and H. Yokota

abstract workﬂow is a sequence of abstract tasks, while an abstract task is a setof pairs of operations and ﬁle-clusters. Each ﬁle-cluster contains several ﬁles. The
problem is how to rank the recommendation candidates. Therefore, the proposed
method extracts the last access time stamp of each ﬁle, ranking ﬁles belonging
to the same ﬁle-cluster by most recent access time stamp.

5

Experiments

Fig. 4. Comparison of Workﬂow Char-Fig. 5. Comparison of Precision, Recall, and F-measure for all Test Cases
acteristics

The goal of our exteriment is to investigate the eﬀectiveness of the featuresof our proposed concept, namely the abstraction of tasks and workﬂows. So we
set up a basic method that did not use abstract tasks for comparison. The basic
method simply extracts sequences of ﬁle operations as workﬂows and calculates
those that are frequently used for recommendation.
The experimental data came from actual ﬁle-access logs provided by a commercial organization. There are 22 users in our log data. The record term isabout 8 months and 9917 records and 1750 ﬁles are recorded in the log data.
We split the log in a ratio of 70% to 30%. The ﬁrst 70% of the log was forlearning tasks and workﬂows and the other 30% was for evaluation. We divided
the log for evaluation in terms of user IDs, using the same TGBW parameter toobtain workﬂows as used by the proposed method and created 151 test cases.
Each test case is a workﬂow sequence. For each test case, the ﬁrst 2 records
from the beginning were input into our recommendation system to acquire a setof recommendation results. The remaining records in the test case were used
as a correct answer set. By matching the examinees set and the results set, we
obtained values for Precision, Recall, and F-measure. A comparison between the
proposed method and the basic method was then made using the average values
for all test cases.
We compared the workﬂows extracted by the two methods in bubble chart
Figure 4. The horizontal axis represents the occurrence value (support-countvalue) for workﬂows, the vertical axis represents the number of ﬁle operations in

A File Recommendation Method Based on Task Workﬂow Patterns

7

workﬂow sequences (sequence length), and the size of the bubbles represents thenumber of workﬂows. Note that basic method’s bubbles are more concentrated
in the lower left corner than proposed method’s bubbles, which means that the
workﬂows extracted by the basic method have smaller support-count values andshorter sequence lengths. Workﬂows with a small support-count value are more
contingent and tend not to be reusable working patterns. In addition, workﬂows
with small sequence lengths are undesirable because of the small amount of
information available for the recommendation. Our proposed method can extract
workﬂows with higher support-count values and greater sequence lengths thanthe basic method, which are more suitable for making recommendations.
We now describe the recommendation results for the evaluation experiment.
Figure 5 shows the average Precision, Recall, and F-measure for all 151 test
cases. Note that the proposed method performs much better than the basic
method for all metrics. In particular, the F-measure score was improved from
0.078 to 0.341. The reason for this large diﬀerence is that the numbers of test
cases that can be recommended are overwhelmingly diﬀerent. Because the basic
method can only recommend ﬁles that have been used in the past, only 25.8%of the test cases returned a result. On the other hand, because of our proposed
method’s abstract ﬁle operations, the proposed method can recommend ﬁlesfrom similar ﬁle operations undertaken in the past. This enables more ﬁles to beavailable for recommendation. About 57.0% of the test cases returned results. We
then focuses on the test cases that returned results. Our proposed method still
performs considerably better than the basic method. The F-measure score was
improved from 0.301 to 0.598. The reason for this is considered to be the qualityof the workﬂows used in the recommendations. We therefore investigated theaverage support-count value for frequent abstract workﬂows that are used in therecommendations. The basic method’s average support-count value for frequent
abstract workﬂows is 4.833, while the proposed method’s value is 20.186. We
can conclude that the proposed method’s workﬂows have higher support-countvalues and more suitable for making recommendations, which will improve therecommendation accuracy greatly.

6

Related Work

Okamoto et al. proposed a Web-page recommendation method using Web-accesslogs [4]. By extracting patterns in combinations of multiple attributes of theaccessed pages, their method can also recommend new Web pages. Althougheach Web page is abstracted in their study, there is no concept of abstract tasks.
Tanaka et al. proposed a personalized document recommendation system
via collaborative ﬁltering [6]. In their system, documents viewed within a shortperiod of time are considered to be related to the same working unit for thesame purpose. They partition the access logs using the time gap between two
records. We adopted this idea when extracting tasks from logs. Another ﬁlerecommendation system was proposed by Lai et al. [3]. Their work proposes
recommendation methods based on the knowledge-ﬂow (KF) model. There are8

Q. Song, T. Kawabata, F. Itoh, Y. Watanabe, and H. Yokota

two diﬀerences between their work and our proposed methods. First, the aims ofﬁle abstraction are diﬀerent. In their work, ﬁles with similar topics (keywords)
are grouped together. On the other side, we group ﬁles not depending on topics,
but the purpose of use, which is more suitable for extracting meanful workﬂows.
Second, their study groups similar ﬁles and then calculates KFs (workﬂows)
directly, whereas our proposed method ﬁrst groups similar ﬁles into tasks andthen calculates the sequences of tasks as workﬂows. By introducing the conceptof abstract task, our method can extract patterns with diﬀerence in order.
SUGOI [7] is for searching ﬁles using ﬁle access logs. SUGOI ﬁnds related
ﬁles using ﬁle-access logs. In their study, a task is deﬁned as the ﬁle set containing related ﬁles in simultaneous use. However, their method does not perform
abstraction on tasks, which is the main diﬀerence from our study.

7

Conclusion and Future WorkIn this paper, we propose a method to extract frequently used abstract-workﬂow
patterns from the history, and to recommend ﬁles and operations by monitoring
the current workﬂow of the target user. There are two points in our proposed
method. First, our proposed method is able to extract general patterns, which
are more suitable for making recommendations by abstracting such ﬁles. Second,
the proposed method introduces abstract tasks to eliminate sequential relations
inside tasks. The experiment results demonstrate that our proposed method ismore suitable for recommendation. Consequently, the F-measure of the recommendation results was improved signiﬁcantly from 0.301 to 0.598. In the future,
we plan to consider a better algorithm for partitioning logs instead of simply
using a ﬁxed time. This might involve using information such as the frequency
and type of operations.

References
1. Feldman, S., Duhl, J., Marobella, J.R., Crawford, A.: The hidden costs of information work. IDC WHITE PAPER (March 2005)
2. Han, J., Kamber, M., Pei, J.: Data Mining: Concepts and Techniques, Second Edition. Morgan Kaufmann (2006)
3. Lai, C., Liu, D.: Integrating knowledge ﬂow mining and collaborative ﬁltering tosupport document recommendation. The Journal of Systems and Software pp. 2023–
2037 (2009)
4. Okamoto, H., Yokota, H.: Access log based web page recommendation using multiple
attributes of web pages (in japanese). Proc. WebDB Forum 2009 (Nov 2009)
5. Song, Q., Kawabata, T., Itoh, F., Watanabe, Y., Yokota, H.: Recommendation
method for ﬁles and operations based on workows of abstract tasks from accesslog (in japanese). IPSJ (2013)
6. Taguchi, H., Sakojo, S., Iwata, M.: Personalized document recommendation for ﬁeld
engineers (in japanese). DEIM (2011)
7. Wu, Y., Otagiri, K., Watanabe, Y., Yokota, H.: A ﬁle search method based onintertask relationships derived from access frequency and rmc operations on ﬁles.
DEXA pp. 364–378 (2011)